0 / 0 / 0
Регистрация: 24.10.2014
Сообщений: 7
1

Как задать импульс 2D объекту?

24.10.2014, 22:21. Показов 8208. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток. Если вам не сложно, подскажите пожалуйста с кодом на с#, как в unity задать импульс объекту, что бы он с момента запуска сцены начинал двигаться в рандомную сторону, в последствии ударялся о стенки экрана и менял направление (в зависимости от угла преломления) ? объекты все в 2D. Буду очень благодарен помощи.

P.S.: для наглядности объекты должны двигаться как синие прямоугольники в игре "тест на реакцию американских военных пилотов"
ссылка на эту онлайн-игру
http://reactiontest.narod.ru/
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.10.2014, 22:21
Ответы с готовыми решениями:

Задать импульс в направление поворота родительского объекта?
Добрый день, есть объект photo.png в центре экрана, по клику на него создаю GameObject как...

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

Как задать импульс сигнала
Здравствуйте,подскажите пожалуйста,как можно задать такой сигнал в маткаде?

Как задать движение объекту?
Вот у меня есть прямоугольник: RectangleShape bort_3(Vector2f(80,80)); Мне нужно что б он сам...

5
69 / 70 / 19
Регистрация: 01.05.2013
Сообщений: 279
25.10.2014, 13:02 2
rigidbody.velocity
Vector3.Reflect

Добавлено через 43 секунды
Если надо, могу кинуть скрипт для 3д сцены
0
0 / 0 / 0
Регистрация: 24.10.2014
Сообщений: 7
25.10.2014, 14:53  [ТС] 3
Добавлено через 40 секунд
Nikita_Nikita, давай, попробую разобраться
0
69 / 70 / 19
Регистрация: 01.05.2013
Сообщений: 279
25.10.2014, 15:08 4
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
  Vector3 mVect;
        void Start()
        {
                mVect = transform.forward;
                }
 
        void FixedUpdate()
        {
                        rigidbody.velocity = mVect*3;
        }
        
        void OnCollisionEnter(Collision collision)
        {
                ContactPoint contact = collision.contacts[0];
                mVect = Vector3.Reflect(mVect, contact.normal);
        }
0
55 / 55 / 8
Регистрация: 06.02.2013
Сообщений: 317
30.10.2014, 20:56 5
Всех проще - ставите по краям экрана 4 бокс-коллайдера. Летающем объекту привешиваете скрипт, в котором

C#
1
2
3
4
void Start()
        {
                rigidBody2D.AddForce(случайный вектор силы, Force2Dmode.Impulse);
                }
Примерно так
0
0 / 0 / 0
Регистрация: 24.10.2014
Сообщений: 7
03.11.2014, 20:56  [ТС] 6
LiquidSnake, можно по-подробней?
0
03.11.2014, 20:56
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.11.2014, 20:56
Помогаю со студенческими работами здесь

Как задать свойство объекту на форме
Доброго времени суток! Раньше учил Visual C++, а тут в универе заставили на Qt писать и никак не...

Как задать такую рамку, как у iframe, другому объекту ?
Скажие, пожалуйста, можно ли как-то другим элементам сделать такую же красивую рамку, как у iframe...

Задать треугольный импульс
Здравствуйте, помогите справиться с Mathcad. Нужно задать треугольный импульс (полпериода –...

Задать треугольный импульс
Добрый вечер. Не получается сделать треугольный импульс. Если кто шарит, буду благодарен.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru