Самый простой способ сделать живую трехмерную сцену, немного похожую на простую игру (для целей визуализации симулятора) - PullRequest
1 голос
/ 18 октября 2010

Я строю симулятор корабля, который будет давать точные значения положения и ориентации для прототипа корпуса судна в определенном состоянии моря.

С точки зрения программирования, у меня есть 2 массива (вектора) в MATLAB, содержащих значения положения и ускорения для x, y, z, рыскания, тангажа и крена. Поскольку визуализация в MATLAB немного грубовата, я планирую написать в MATLAB простой сервер для отправки этих значений (с частотой 200 Гц) с помощью сокетов в другую программу. Море моделируется массивом вершин (представьте себе снимки амплитуды на разных временах на синусоиде). ​​

Итак, мой вопрос: как проще всего анимировать 3D-лодку и немного текстурированной воды на экране?

Меня интересует только графический движок. Мне не нужны звук, физика, столкновения, интерфейс (клавиатура, джойстик и т. Д.). Он должен быть в состоянии работать в основном на Windows, но было бы неплохо, если бы он мог работать на Linux и Mac OS (в зависимости от дополнительной сложности).

Ответы [ 3 ]

1 голос
/ 18 октября 2010

Не эксперт, но мало лидов

Вышесказанное можно назвать сложным и раздутым по сравнению с низкоуровневым API, таким как OpenGL , но вы должны определить, какую простоту вы ищете.

Например, «самый простой способ анимировать 3D-лодку и немного текстурированной воды» может означать, что вы пишете чистый низкоуровневый интерфейс непосредственно поверх API OpenGL; но, как и в случае с любой графикой, особенно с 3D, я думаю, что вскоре вы начнете думать об освещении, перемещении камеры, интерфейсе и т. д., и тогда вы, вероятно, захотите создать более богатую среду.

Итак, вопрос также в том, хотите ли вы что-то действительно тонкое, а затем обрабатывать все виды задач низкого уровня или что-то, что может включать в себя гораздо больше, чем вам когда-либо понадобится, но иметь много доступных ресурсов и ярлыков.

Теперь, когда мой разгул закончен - я уверен, что вы сможете найти точный пример анимации, которая будет брать два объекта сетки (море и корабль) в OpenGL и отображать их на экране в любом приличном учебнике OpenGL .

1 голос
/ 18 октября 2010

Самый простой способ - использовать PANDA3D.он использует Python и вполне завершен.

0 голосов
/ 18 октября 2010

В прошлом я обнаружил, что OpenGL довольно прост в использовании, или если вы работаете в среде Windows, есть и Direct3D.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...