![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Полёт пули(GLScene)
_sHaDe_ © (2005-04-18 18:52:00)Помогите plz с такой проблемой. Допустим у меня на сцене актёр с пушкой , из неё по щелчку мышкой вылетает динамически созданная сфера. Круто объяснил...
Вот как делаю
If click = true then begin
Sphere:=TGLSphere(GLScene1.Objects.AddNewChild(TGLSphere));
Sphere.Position:=DummyCube2.Position;
GetOrCreateInertia(Sphere).TranslationSpeed.SetVector(?,?,?); // как расчитать эти координаты
click:=false;
end;
Теперь вроде проблема понятна.
XProger (2005-04-19 13:11:00) [21]Alek Aaz, где ты видел танки "выпуливающие" снаряд со скоростью "беременного шмеля"? ;)
Alek Aaz (2005-04-19 03:33:00) [22]>Я бы создал сферу не от TGLScene а от этой самой пушки..
А я бы не стал. Скажем едет танк и стреляет на ходу. Если танк после выстрела "подпрыгнет" скажем на кочке, то "подпрыгнет" и снаряд(не дай боже нырнет в какой ровчик). Что есть гон.
Проще вычислить направление, куда пушка направлена.
XProger (2005-04-18 21:22:00) [23]Игру "Снежки" пишешь? ;)
Ато скорость реальных снарядов сравнима со скоростью звука... т.е. ничего ты не увидишь...
DeadMeat (2005-04-18 20:51:00) [24]На твоем месте, я бы сделал чуток по другому (в принципе я так и делал)...
Я бы создал сферу не от TGLScene а от этой самой пушки..
Т.е. допустим пушка - это DummyCube2..
Тада делаем:
Sphere:=TGLSphere(DummyCube2.AddNewChild(TGLSphere));
Теперь наша сфера повернута так, как у нас повернута пушка...
Осталось просчитать относительный поворот.. Но это уже зависит от твоей пушки.. Короче проверяй..
Дальше..
Я бы не пользовался Behaviours-ами... Я бы считал где нить в каденсере.. Т.е. двигал бы пули..
for i:=0 to DummyCube2.Children.Count-1 do
with DummyCube2.Children[i] do // можно еще with TGLSphere (DummyCube2.Children[i]) do... Но это зависит от задачи.
begin
end;
А вообще.. Я уже приводил несколько раз свой пример на стрельбу...
Посмотри на http://code.rpro.ru
Конкурс paratrooper
---
...Death Is Only The Begining...