Анимированная камера


Автор Сообщение


Группа: Участники
Сообщений: 9
Добавлено: 10-01-2011 12:27
Ну я в Xtreme ковыряюсь месяца два, пока все понятно, но возник вопрос.Как реализовать "анимированную" камеру.Т.Е.
Есть сценка, к примеру 3D Freeform в виде карты и персонажа.Это у меня меню, и нужно чтобы камера не просто смотрела на Персонажа, а еще крутилась по карте, смотря на него.
Мне интересно, есть какая-то особая переменная типа CameraPoint или как нибудь типа того, либо нужно писать отдельные невидимые объекты и делать так, чтобы камера двигалась к ним?
Мне просто интересна ваша реализация.
Вы мне очень поможете
P.S. Сам пишу учебник по Xtreme.Очень поможете в реализации одного из уроков.
P.P.S. А где Gecko?Или я его не застаю=)

Ответственный за CHM
Группа: Модераторы
Сообщений: 346
Добавлено: 13-01-2011 15:36
Можно воспользоваться функцией ObjectMoveObjectAround, но я бы привязал камеру как потомка к точке (можно dummycube) и задавал направление и скорость движения по всем трем плоскостям (рандомно), для пущего эффекта создал бы 3 луча для проверки расстояния до freeform и в зависимости от расстояния двигал бы камеру так, что бы она не проваливалась и обходила саму модель freeform. В итоге камера движется каждый раз по разному и при этом умело не сталкивается с моделью freeform... как-то так, в принципе ничего сложного, но подумать придется, ну а в этом и есть вся соль программирования!
А где Gecko?Или я его не застаю=)

Ну вообще как-никак сессия у многих, может очень занят, но наверняка сказать не могу, так как не уверен.


Группа: Участники
Сообщений: 9
Добавлено: 14-01-2011 19:27
Ок)Подумаю)


Группа: Участники
Сообщений: 9
Добавлено: 15-01-2011 18:20
Конечно вопрос не о камере, но все же.
Как конвентировать 3ds в md2???Milkshape текстуры и кадры, не конвентит)Мне бы побольше знаний)(По-моему, лучше переписать x3d так, что бы была возможность юзать 3ds...C++ знаю плохо, вот и не могу взяться(Да и исходные коды наврятли=)
У меня в игре москоопство)

a_go=a_go+0.25
if a_go>2.5{a_go=0}

if anim='go'{
switch a_go
{
case 0.5:ObjectSetPosition(model[0],x1,y1,z1);ObjectHide(model[2 and 1]);ObjectShow(model[0]);break;
case 1:ObjectSetPosition(model[1],x1,y1,z1);ObjectHide(model[2 and 0]);ObjectShow(model[1]);break;
case 2:ObjectSetPosition(model[2],x1,y1,z1);ObjectHide(model[1 and 0]);ObjectShow(model[2]);break;
}}
if anim='stand'{
switch a_stand
{
case 0:ObjectHide(model[2 and 1 and 0 ]);ObjectShow(model[0]);ObjectSetPosition(model[0],x1,y1,z1);break;
}}

Хех, а про глюки с тройным объектом я вообще молчу)

Ответственный за CHM
Группа: Модераторы
Сообщений: 346
Добавлено: 16-01-2011 14:09
Конечно вопрос не о камере, но все же.

В следующий раз, не надо сваливать все в одну тему либо создай новую тему, либо найди подходящую.
Как конвентировать 3ds в md2?

Зачем тебе конвертировать в *.md2, если есть *.smd? Я не ручаюсь, что в Милке все гладко будет, но я с md2 не работал, предпочитаю скелетную анимацию, поэтому либо в *.smd, либо найти конвертер, благо google существует.
C++ знаю плохо, вот и не могу взяться

C++ тут вообще боком, так как Xtreme основан на GLscene, а он, насколько я знаю, никак не дружит с C++, по крайней мере не дружил. Delphi или Lazarus + Glescene и вот тебе Xtreme. Я и сам хочу переписать, но на это нужно время и знания, а самое главное, что перспективы в этом нет!
У меня в игре

Я не до конца понимаю, что ты делаешь, в смысле код понимаю, а зачем оно так изощряться - нет.


Группа: Участники
Сообщений: 9
Добавлено: 16-01-2011 19:03
Насчет скелетной анимации...
Мне интересно как в 3д максе скелет клеить к объекты.
Искал туторы, но не нашел...


Группа: Участники
Сообщений: 9
Добавлено: 16-01-2011 19:06
Конечно вопрос не о камере, но все же.

В следующий раз, не надо сваливать все в одну тему либо создай новую тему, либо найди подходящую.
Как конвентировать 3ds в md2?

Зачем тебе конвертировать в *.md2, если есть *.smd? Я не ручаюсь, что в Милке все гладко будет, но я с md2 не работал, предпочитаю скелетную анимацию, поэтому либо в *.smd, либо найти конвертер, благо google существует.
C++ знаю плохо, вот и не могу взяться

C++ тут вообще боком, так как Xtreme основан на GLscene, а он, насколько я знаю, никак не дружит с C++, по крайней мере не дружил. Delphi или Lazarus + Glescene и вот тебе Xtreme. Я и сам хочу переписать, но на это нужно время и знания, а самое главное, что перспективы в этом нет!
У меня в игре

Я не до конца понимаю, что ты делаешь, в смысле код понимаю, а зачем оно так изощряться - нет.

Изощряюсь я для анимации с фриформом)

Ответственный за CHM
Группа: Модераторы
Сообщений: 346
Добавлено: 23-01-2011 19:48
По-моему, лучше переписать x3d так, что бы была возможность юзать 3ds

Полазал по форумам, получилось, что не поддерживает полноценную анимацию *.3ds и отсюда нельзя переписать загрузчик на GLScene. Вообще в новой версии, вроде как MS3D анимация поддерживается, если разберусь с GLScene, то обновлю, а пока только где-то все на уровне как в разработке у Gecko, отличие только в том, что есть улучшенная система проверки ошибок и последняя версия GLScene и как следствие поддержка OpenGL 1.5 - 3.0

 

Offtop.ru © 2003