Menu
CoddyTech

Размести куб

Часть раздела Основы скриптинга в Unity путешествия по Unity на Coddy. Урок 9 из 85.

У каждого игрового объекта есть компонент Transform: его позиция, поворот и масштаб. Скрипт обращается к компоненту Transform своего объекта через transform, а transform.position задаёт положение центра объекта в виде Vector3: трёх чисел для x (вправо), y (вверх) и z (вперёд, от камеры). Одна единица равна одному метру.

Чтобы поместить объект в нужное место, задайте ему новую позицию в Start(). Высота этой лампы — 2 единицы, и она должна стоять на столе, верхняя поверхность которого находится на высоте y = 2, а центр — в точке x = -2, z = 4. Центр лампы находится на половину её высоты выше поверхности стола, поэтому её координата y равна 2 + 1 = 3:

void Start()
{
    transform.position = new Vector3(-2, 3, 4);
}

Во время игры выберите лампу в окне Hierarchy: в компоненте Transform в окне Inspector отображаются те же три числа, что и в поле Position.

challenge icon

Задание

Легко

Помести синий куб в центр оранжевой платформы.

  1. В Start() задай для transform.position значение new Vector3(x, y, z).
  2. x и z — координаты центра платформы: 3 и 2.
  3. y — высота верхней поверхности платформы (1.5) плюс половина высоты куба: 1.5f + 0.5f.

Нажми «Играть»: куб окажется на платформе. Затем нажми «Проверить».

Попробуйте сами

using UnityEngine;

public class PlaceCube : MonoBehaviour
{
    void Start()
    {
        // x, y, z: измените эти три числа
        transform.position = new Vector3(0f, 1f, 0f);
    }
}

Все уроки раздела Основы скриптинга в Unity

Потренируйтесь самостоятельно: Песочница Unity