Моя компания решила, что нам нужна «общая» демонстрационная инфраструктура для наших демонстраций технологий, учитывая, что я могу написать это с помощью JOGL или OpenGL и создать свою собственную инфраструктуру, я бы не хотел изобретать велосипед.Но существует так много 3D-движков gfx и так много оболочек OpenGL!
По сути, мы хотим использовать 3D-графику для рендеринга некоторого ландшафта и наложения простых моделей на него.Их требования состоят в том, чтобы он выглядел великолепно и был кроссплатформенным.
По сути, я свободен в выборе области действия и парадигмы, которой он будет следовать, но я думал: - Уметь загружать 3D-модели и отображать их вполноэкранный или оконный режим.- Уметь управлять камерой (-ами), чтобы «пролететь» через получившуюся сцену.- Уметь отображать / скрывать рекламные сообщения поверх всего, например, двухмерного текста и изображений, которые зафиксированы на экране и всегда обращены к камере.- Уметь изменять простые вещи в частях сцены, например, заставлять объект появляться / исчезать, менять цвет подсветки (например, рисовать красным) и тому подобное.- При желании я хочу написать или использовать существующий язык сценариев для внедрения обработки событий и предварительно запрограммированных анимаций.
Пример использования: - Кто-то в нашей компании готовит трехмерную модель местности с некоторыми зданиями, по существу генерируяXML-подобный файл, описывающий сцену и ее объекты.- Затем он продолжает использовать мою программу, чтобы летать по местности и записывать несколько «интересующих» позиций камеры.- Затем он связывает некоторые из этих позиций с клавишами клавиатуры и / или существующими кнопками графического интерфейса.- Он добавляет несколько кусков плавающего текста.- Он представляет демо-версию с помощью моей программы, загружает файл 3D-модели и файл сценария и может начать «полетать» с аудиторией с одной из выбранных им камер на следующую, плавающий текст постепенно исчезает, когда он прибывает и покидаетположение камеры ... некоторые здания на местности выделяются красным, когда он нажимает кнопку ... и т. д.
- У меня есть несколько OpenGL и JOGL, а также опыт XNA Game Studio.
- Я бы лучше использовал Java, чтобы он мог быть как можно более независимым от платформы.
Что мне делать?