![]() |
Blitz 3D
Мы создаем игру на движке блиц3д и необходимо реализовать отрывающиеся конечности у персонажей. И небыло бы проблем, если бы персонаж после расчленения оставался лежать на месте экзекуции. Но надо сделать таким образом, чтобы страдалец бегал с оторванной конечностью. И тут возникают проблемы - как эту конечность оторвать, если она привязана к скелету? Да и как это сделать на программном уровне, если тело персонажа представляет собой единую модель вместе с руками и ногами? Модели и анимацию делаем в 3d Max. Вот такая вот проблема. Интересно узнать, как это реализуется в профессиональных проектах. В качестве примера приведу еще не вышедшую "Legendary the box", где будет возможность отстреливать от монстров куски.
|
ivg
Совет "не использовать Blitz" Вам, очевидно, не подходит? Тогда копайтесь в его функциях (или там за прошедшее время кто-то удосужился прикрутить объектно-ориентированное программирование?). Вам нужно получить доступ непосредственно к буферу вершин модели. Дело в том, что любая модель - это просто куча вершин, связанных в полигоны. Данные по вершинам (позиция, текстурные координаты и т.п.) всецело определяют модель. Таким образом, добравшись до этих данных, теоретически можно попробовать их как-то обрабатывать, но 1) Это будет медленно (Lock памяти, модификации, разве что буфер удастся при отстреле быстро разделить на два...) 2) Вовсе не факт, что... ммм... "недодвижок" уровня Blitz3D это позволяет. Возможно, лучше будет написать вертексный шейдер - опять же, если Blitz это позволяет и у Вас достаточно умения написать такой шейдер. Но самое нормальное - это, конечно, не использовать единую модель. Ума не приложу, зачем с такими амбициями Вам это понадобилось. Ну сделайте отдельно модели рук ног и т.д., почему обязательно одна модель на целый персонаж? |
Дело в том, что при использовании отдельных моделей конечностей, в местах их "стыковки" с телом будут ярковыраженные стыки, которые в нашем случае не получится скрыть одеждой. Конечно хочется сделать более качественные модели, но если не будет других вариантов, то придется руки и ноги делать отдельно.
Была мысль скрывать оторванные конечности с помощью карт прозрачности, но опять же, как это реализовать на программном уровне? Понятно, что рисовать много текстур, учитывающих каждый возможный вариант (оторвано, например, обе руки, или обе ноги, или одна рука и две ноги и т.п.) практически нереально. |
Цитата:
Цитата:
Цитата:
|
Если я не ошибаюсь в формате md2 (используется квейком и блиц его прекрасно понимает) анимация морфинговая. Может можно просто сделать несколько вариантов анимации модели (с руками и без), а уж потом использовать соответствующие "кадры" анимации?
|
Ты имеешь ввиду с помощью морфинга из целой руки делать оторванную?
|
Цитата:
|
Chkalov_vs
Судя по моему опыту работы с md2, он просто хранит в себе анимации и всё. При этом я ещё ни в одной модели не видел, например, исчезновения одной из вершин в каких-то кадрах, поэтому не уверен, что формат поддерживает то, что Вы имеете в виду. |
Я не знаю на счет md2, но модификатор morfer в максе работает, только если колличество вершин неизменно. Поэтому я имел ввиду придать руке форму оторванной, не удаляя вершины, а смещая их соответствующим образом (например все вершины в одну точку). Я в нашем проекте занимаюсь моделлингом и анимацией, а в блице не шарю, но когда я предложил такой вариант нашим программистам, мне сказали, что блиц не поддерживает морфер, но при его использовании он присваивает вершинам кости и работает с ними. Только в таком случае, колличество вершин ограничено (около 250-ти). Поэтому такой вариант тоже не подходит.
Цитата:
|
Цитата:
Ну тогда шейдер можно чуток переписать. Или просто с нормалями поиграться. Цитата:
|
Цитата:
Цитата:
|
Цитата:
|
Цитата:
А не вариант после попадания в руку заменить модель на другую? Это уже к программистам вопрос. П.С. Нельзя ли сменить назвение темы, например, "вопросы по блицу"? Да, переименовано в "Blitz 3D", чтобы больше про Блиц тем не плодили. |
Цитата:
Цитата:
|
Экспортирую модель из макса в б3д с помощью B3dPipeline, нормал бамп не отображается. Каким образом можно его прикрутить?
|
На сколько я знаю Blitz 3D с нормал бампингом, паралаксом и прочими наворотами не работает.
|
Цитата:
Давно уже в разработке двиг приносящий ДХ9 для блица. Найти можно на blitz.pp.ru в разделе "Проекты". |
Официально он не входит в комплект блица, так что не надо на меня наезжать))
JohnK, простите, а что такое "двиг для блица"? Сам блиц то двигом можно назвать с очень большой натяжкой. Но "двиг для блица"... это переворачивает мое мировоззрение))) Так он в разработке или уже работает? |
AI в Blitz3D
Люди! Когда делаешь игру, часто доходит дело до ИИ! Но думаешь как подступиться! И как сделать правильнее! Если ставить вейпоинты как дорогу, то бот будет просто ходить по назначенному маршруту! Тоесть бот не сможет "ДУМАТЬ" ! Можно ли создать вейпоинты по всей плоскости кроме стен? И чтобы бот сам выбирал куда ему идти! )) Конечно это СЛОЖНО ! А есть другие способы?
Повторная тема. Пока перемещаю в тему по Блицу, раз уж в названии прямо указан Блиц. Если обсуждение перейдёт-таки к конкретным алгоритмам, возможно, будет организована новая тема либо я его перенесу в одну из "важных" тем. |
Цитата:
Да, мечта извращенца, но, увы, иначе никак. Он в разработке, но есть уже стабильные версии. Цитата:
Затем, уже решать. Понятие "Легко" в создании ИИ отсутствует. Цитата:
|
| Часовой пояс GMT +4, время: 16:42. |
Powered by vBulletin® Version 3.8.0
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.