GTA Vice City > Программирование
Сложные модели объектов
Shagg_E:
xanser>
Если можешь получить доступ через память к управлению компонентами катсценовой модели - то можно просто запускать катсцену в этом месте, когда игрок в радиусе 100 метров(а до этого(в радиусе 300м) скриптом пусть спавнится статическая модель).
И уже в этой катсцене спавни катсценовый объект и бери его под управление(старт как тут(там уже обновлен пример - камера теперь свободная), только объекты загружаются опкодами 02F3 и 0248).
Т.е., для этого всего, как и в том примере, модели прописывать нигде не нужно(нужно лишь кинуть модель+текстуру в gta3.img, а ifp(с 2 кадрами анимации) и dat(можно прям из того примера взять, т.к. камера не нужна будет) - в cuts.img).
Колхозен ли этот вариант?
О, даа!....
Возможные проблемы?
Только если кто-то попытается запустить другую катсцену в этом радиусе 100м, либо вообще в этом радиусе будет происходить какая-то заставка с перемещением игрока в/за пределы этого радиуса(в том запуске катсцены происходит сбивание камеры). Т.е., например, в обычном Вайсе никаких негативных последствий быть не должно(катсцен там нет, а существующие заставки не предполагают преодоление игроком этой границы 100м).
Есть еще один вариант. Закостить персонажа, как часы и закрепить его в нужное место, как тут в примере с развевающимися на ветру тряпками. Если нужно программное управление костями - это расписано тут. Способ рабочий - у меня получилось написать опкод для управления поворотом костей.
xanser:
А персонажа-часы можно застрелить, он убежит от выстрелов? :P Так-то можно и машину закрепить в виде тряпки, ох как все костыльно выходит. Для часов есть еще вариант рендерить стрелки примитивами по аналогии как рендерится мусор. Я так сделал рендер мультика при появлении экрана, а вот тряпки таким способом получатся только плоскими. Есть у меня еще игрушки-вертолетики с вращающимися винтами, собранные из разных кусков-моделей. Что бы такое универсальное для всего этого придумать...
Shagg_E:
--- Цитировать ---А персонажа-часы можно застрелить, он убежит от выстрелов?
--- Конец цитаты ---
Если убрать коллизию, прописать иммунитеты и соответствующее поведение - всё будет ок ;)
--- Цитировать ---Так-то можно и машину закрепить в виде тряпки, ох как все костыльно выходит.
--- Конец цитаты ---
Ну, тут либо костылить, либо делать обширные взломы и переписывание кода. Лично для меня второй вариант применим лишь в крайних случаях(вот работаю над кое-какими графическими улучшениями и анимационной фигней), для мелочевки же просто времени не хватит, поэтому - тут только костыли, увы))
Конечно, если таких "мелочевок" у тебя планируется гора и еще кучка - тогда, наверное и стоит подумать о каком-то универсальном методе, но... лучше всё же 10 раз подумать, стоит ли тратить на это время...
Навигация
Перейти к полной версии