Позиционирование игровых объектов
Во время создания игры, вы должны разместить много различных объектов в вашем игровом мире.
Перемещение, вращение и масштабирование
Используйте инструменты трансформаций в панели инструментов для перемещения, вращения и масштабирования отдельных объектов. Каждый инструмент имеет соответствующее гизмо, которое появляется вокруг выделенного игрового объекта в окне Scene. Вы можете использовать мышь и манипулировать любой осью гизмо для изменения компонента Transform игрового объекта, или Вы можете ввести значения непосредственно в числовые поля компонента в инспекторе. Каждый из трех режимов может быть выбран горячими клавишами — W для перемещения, E для вращения и R для масштабирования.

Вы можете зажать и перетащить центр гизмо для перемещения объекта сразу по всем осям. В центре гизмо перемещения находятся три небольших квадрата, которые можно использовать для перемещения объекта вдоль одной плоскости (т.е. могут смещаться одновременно две оси, в то время как третья будет неподвижна). Если у вас есть третья кнопка мыши, вы можете нажать среднюю кнопку и перетащить курсор, чтобы работать с наиболее часто используемой осью (её стрелка изменится на жёлтую).
Если выбран инструмент вращения, вы можете менять поворот объекта зажав и перетаскивая оси гизмо каркасной сферы, отображаемого вокруг объекта. Так же как и с инструментом перемещения, последняя изменённая ось будет покрашена в жёлтый цвет и может быть в дальнейшем изменена кликом и перетаскиванием средней кнопкой мыши.
Инструмент масштабирования позволяет вам менять масштаб объекта равномерно по всем осям сразу с помощью нажатия и перетаскивания куба в центре гизмо. Вы также можете масштабировать оси по отдельности, но вам следует делать это с осторожностью, если у объекта есть дочерние объекты, т.к. эффект может выглядеть довольно странно. И вновь, последняя использованная ось будет подкрашена в жёлтый цвет и может быть использована тасканием средней кнопкой мыши.
Обратите внимание, что в режиме 2D, ось Z не может быть изменена в сцене с помощью гизмо. Тем не менее, бывает полезно использовать ось Z в некоторых методах скриптов для других целей; в таких случаях вы все еще можете установить ось Z в инспекторе.
Для получения дополнительной информации о трансформировании игровых объектов, см. страницу компонента Transform.
Переключатели отображения гизмо
Переключатели отображения гизмо( Gizmo Display Toggles ) используются для определения положения любого из них.

- Center установит гизмо в центре отображаемых границ объекта.
- Pivot установит гизмо в позицию пивота Mesh’а.
- Local установит гизмо для вращения объекта в локальных осях.
- Global установит ориентацию гизмо по мировым осям.
Привязка к сетке
При перетаскивании любой оси гизмо инструмента перемещения, Вы можете зажать клавишу Control ( Command в Mac) для изменения значения с использованием привязки, определенной в Snap Settings .
Вы можете изменить шаг, который используется для привязки, выбрав в меню Edit->Snap Settings…

Привязка к поверхности
При перетаскивании, с использованием центра инструмента перемещения, вы можете зажать Shift и Control ( Command в Mac) для привязки объекта к пересечению с любым коллайдером . Это позволяет очень быстро и точно расставлять объекты.
Вращение взгляда
При использовании инструмента вращения, вы можете зажать клавиши Shift и Control ( Command в Mac) для направления взгляда объекта на точку поверхности любого коллайдера . Это позволяет легко ориентировать объекты относительно друг друга.
Вершинная привязка
Вы можете строить миры еще быстрее с возможностью, которая называется “вершинная привязка”( Vertex snapping ). Эта возможность очень проста, но является очень мощным инструментом в Unity. Она позволяет вам взять один меш за любую вершину и с помощью мышки расположить его в такое же положение вершины другого меша, который вы выберите.
Используя эту возможность, вы можете собирать миры очень быстро. Например, вы могли бы подгонять дороги в гоночной игре с высокой точностью, либо расставлять бонусы на вершинах меша.
Использовать вершинную привязку в Unity достаточно просто. Просто следуйте этим шагам:
- Выберите меш, которым вы хотите манипулировать, и убедитесь что Transform Tool активно.
- Нажмите и держите клавишу V для активации режима вершинной привязки.
- Поместите курсор мыши над вершиной, которую Вы хотите использовать.
- Зажмите левую кнопку мыши когда курсор находится над нужной вершиной, и перетащите меш к любой другой вершине на другом меше.
- Отпустите кнопку мыши и клавишу V когда результат вас устраивает.
- Shift-V работает как переключатель этой функциональности.
- Вы можете привязывать вершину к вершине, вершину к поверхности, и пивот к вершине.
Как зафризить объект на некоторое время ?

Есть какая-то команда для юнити чтобы заморозить мяч после того как забил игрок гол?
Добавлено через 7 минут
или скорость rigidBody до 0 как-то сбросить
Лучшие ответы ( 1 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:

Как сделать, чтобы объект телепортировался в указанные координаты спустя некоторое время?
у меня есть объект и есть триггер. если триггер срабатывает, объект должен "провалиться" и зачем.

Как поставить зафризить проверку ? Unity 2D
Проблема что когда стреляю, можно нажимать сколько угодно и с любой частотой. Хочу чтобы была.
Как заблокировать клавиатуру на некоторое время?
Как заблокировать клавиатуру на некоторое время?
2636 / 1564 / 853
Регистрация: 23.02.2019
Сообщений: 3,876
У RigidBody есть velocity (скорость), можете влиять на неё.
Регистрация: 31.01.2021
Сообщений: 30

Сообщение было отмечено Santiago_Alonso как решение
Решение
У вашего RigidBody есть свойство isKinematic. Оно определяет подвижен ли объект.
1 2 3 4 5
// когда вам нужно заморозить rigidbody.isKinematic = true; // когда вам нужно разморозить rigidbody.isKinematic = false;
Добавлено через 6 минут
Подробнее тут: https://docs.unity3d.com/Scrip. matic.html
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь
Как присвоить некоторое время в переменной?
как присвоить некоторое время в переменную.Я знаю,только как вывести теперешнее время.

Как выключить мышь на некоторое время?
нашёл код, но не понял как воспользоваться. Это элементарно сделать при помощи API: .

Как на некоторое время отсрочить переход к следующей сцене?
Здравствуйте! Есть простенький шутер и в нём три сцены Старт, Игра и Конец игры. Переход в сцену.
Как сделать чтобы интернет завис на некоторое время?
Как сделать чтобы интернет завис на некоторое времья? Посмотрел код, как сделал один человек через.
Как сделать чтобы ProgressBar заполнялся за некоторое время
Подскажите пожалуйста такой момент. на форме есть прогресс бар и таймер. как сделать чтобы бар.
Во время любых игр через некоторое время отключается ноутбук от перегрева
Всем привет, acer aspire e1-571g в последнее время стал выключаться от перегрева спустя некоторое.
Или воспользуйтесь поиском по форуму:
Заморозка движения объектов в unity3d [закрыт]
Вопросы с просьбами помочь с отладкой («почему этот код не работает?») должны включать желаемое поведение, конкретную проблему или ошибку и минимальный код для её воспроизведения прямо в вопросе. Вопросы без явного описания проблемы бесполезны для остальных посетителей. См. Как создать минимальный, самодостаточный и воспроизводимый пример.
Закрыт 4 года назад .
Нужно при соприкосновении заморозить движение объектов.
С заморозкой движения одного объекта я бы и сам справился , но вот есть ли возможность заморозить движения всех объектов , но не их скрипты + изменение цвета с анимацией также должны работать . Думал над Time.timeScale = 0 , но не уверен будет ли работать ,то что описано выше.
Если же нет легкого способа так сделать , то лучше уж просто заморозить движение объекта. Будет ли работать Time.timeScale = 0 так как нужно , если же нет то что стоит здесь сделать?
Отслеживать
задан 3 июн 2019 в 16:19
Merry_Train Merry_Train
269 7 7 серебряных знаков 25 25 бронзовых знаков
Проверил, Time.timeScale = 0 не работает так как нужно.
3 июн 2019 в 16:29
Попробуйте Time.fixedDeltaTime .
3 июн 2019 в 17:17
У rigidbody есть набор атрибутов для заморозки положения и вращения
3 июн 2019 в 17:31
@Stranger in the Q А если у объекта нету rigidbody , а только collider.
3 июн 2019 в 17:52
@Veudd вы ищете объект на сцене ( GameObject.Find )? если так, то, мне кажется, это неверно и есть гораздо более лучший способ «поиска»
3 июн 2019 в 18:09
1 ответ 1
Сортировка: Сброс на вариант по умолчанию
Решение:
1. в скрипте, который висит на объекте, что останавливает все Move-объекты (объекты которые двигаются), объявите событие:
public static event OnCollisionEvent = delegate < >;
(«static» позволит обращаться напрямую к этому событию из любого места)
2. в Move, где-нибудь сделайте метод, который будет содержать логику «остановки» данного объекта
3. в том же Move, где-нибудь в методе Start() вы должны будете подписать ваш Move-объект на глобальное событие остановки. Сделать это можно с помощью следующей строчки:
НазваниеВашегоСкрипта.OnCollisionEvent += НазваниеВашегоМетодаОстановки;
Таким образом, на этот момент, все ваши Move-объекты с момента отработки метода Start будут «слушать» и ждать события OnCollisionEvent
следовательно, вам осталось только вовремя вызвать это событие — а вместе с ним и всех «подписчиков», который следят за событием
4. вызываем событие в том самом скрипте, в методе столкновения (OnCollisionEnter2D) так:
OnCollisionEvent();
Как зафризить объект в unity
eligma 05 сен 2012, 17:00
Есть ли такая команда заморозить объект? Не go.active и не go.enabled и не команда короая морозит риджидбади.А такая команда которая остановит действие всех скриптов на го? Может даже пускай заморозит всю игру.
Gleeko Multiplayer Gameplay——Знаете ли вы что протокол IPV6 в 1 000 000 раз превышает по возможностям протокол IPV4? А также протокол IPV6 официально был запущен в прошлом году 6.06 числа в 6 часов утра. Это событие отмечали во всем мире.
- Сайт
Re: Есть ли команда заморозить объект?
DbIMok 05 сен 2012, 18:58