|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
13.01.2017, 12:08 | #1 |
Форумчанин
Регистрация: 23.03.2009
Сообщений: 334
|
Посоветуйте 3D движок для программы
Здравствуйте!
Посоветуйте для C++ (или C#) 3D движок. Имеется программа написанная на Delphi + GLScene. 3D часть программы - основная, но не единственная (есть еще куча форм, никак не связанных с 3D + формирование отчетов и т.д.). Сейчас присматриваю варианты, для переноса программы на другой язык / движок. От движка требуется, что бы он мог без тормозов отрисовывать сцену в которой создано много простейших объектов (от 10 тыс. до 500 тыс). В основном это малополигонные аналоги куба и цилиндров без текстур, загруженные из *.STL файла. Но так же на сцене могут находиться более сложные 3D модели с текстурами, загруженные из *.obj файлов, но их не много, от 10 до 500 шт. (объем файлов обычно от 100КБ до 2МБ). Все объекты находятся в неподвижном состоянии и не очень далеко друг от друга. При отдалении камеры они все попадают на экран и рассматриваются с разных ракурсов. Качество и красивость картинки не главное, не будет никаких эфектов взрывов, дыма и прочего. Обработка физики тоже не нужна. Главное производительность и возможность использования уже готовых 3D моделей с текстурами. Так же требуется, что бы это была не отдельная среда разработки, а некий компонент, устанавливаемый в Visual Studio, т.к. помимо визуальной 3D части программы, требуется реализовать еще много всего, не связанного с 3D. Подскажите, какой движок может подойти под эти требования? П.с. Если есть что подходящее для Delphi, то тоже советуйте, может и не придется переносить все на другой язык, а просто заменю вывод графики. Так же в ветке GLScene, народ разрабатывает на основе того же GLScene - GLSceneVKS / DGLEngine, прикручивают Vulkan api. По идее, благодаря Vulkan должна сильно увеличиться производительность и это то что нужно. Но к сожалению, до этого еще далеко (там уже есть какая-то пре-альфа версия, но устанавливаться она не хочет). Последний раз редактировалось ZBEP; 13.01.2017 в 12:14. |
13.01.2017, 13:07 | #2 | |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,760
|
Тут проще что-то свое набросать, если не будете дальше усложнять 3Д часть.
Цитата:
|
|
13.01.2017, 15:38 | #3 |
Форумчанин
Регистрация: 23.03.2009
Сообщений: 334
|
Свое конечно хорошо, но под GPU я толком не писал.
А GLScene и FMX как-то не полностью задействуют видеокарту. Вот к примеру совсем маленький демонстрационный проект, в котором создается куб из кубов (40 х 40 х 40 = 64 000 объектов), без текстур, статичные. Source: https://yadi.sk/d/TNHucANY38Rqib Exe: https://yadi.sk/d/O_uMktwK38Rqkq Полный код демки с использованием GLScene: Код:
GLScene работает быстрее, но все равно тормозит сильно. Имею ввиду работу программы именно после того, как созданы все объекты (разворот, перемещение сцены, отдаление и приближение камеры). При этом нагрузка на CPU и GPU - минимальна. Я далеко не уверен, что написав собственный, так сказать движок, на чистом OpenGL и потратив на это кучу времени, я в итоге не получу такую же производительность, как в FMX или GLScene. П.с. Я понимаю конечно, что сравнивать глупо, но так, просто ради примера. В программе у меня есть экспорт всей сцены в один общий *.obj файл для последующего импорта в 3Ds Max. И вот если полученный файл открыть, в том же 3D Builder (маленькая, стандартная прога для просмотра 3D объектов в Win10), то там никаких тормозов и подавно нет, собственно как и в самом 3Ds Max. Но если взять эту же модельку и загрузить обратно в программу и разместить на сцене только ее, то тормозит еще сильнее, чем до экспорта. Если есть у кого возможность, то залейте аналог этой демки "куб из кубов (40 х 40 х 40 = 64 000 объектов)" с возможностью поворота сцены, собранной на каком-нибудь С++ движке. Сравнить производительность. Последний раз редактировалось ZBEP; 13.01.2017 в 18:15. |
13.01.2017, 18:20 | #4 |
Вредный кошак
Участник клуба
Регистрация: 14.10.2012
Сообщений: 1,159
|
Может попробовать какой-нибудь Ogre3D?
Но на счет производительности ничего не скажу. |
13.01.2017, 19:35 | #5 | |
Форумчанин
Регистрация: 23.03.2009
Сообщений: 334
|
Цитата:
На первый взгляд, судя по описанию подходит и глядя вот на это видео: https://www.youtube.com/watch?v=FnVuuNqKDfE Производительность должна быть повыше, чем у GLScene. Правда он старенький. Последний релиз 24 ноября 2013г. И если верить сайту только 32-bit и для Visual C++2012 П.с. Есть кто-нибудь, у кого он установлен? Проверить, как себя демка поведет.. Последний раз редактировалось ZBEP; 13.01.2017 в 19:50. |
|
21.01.2017, 01:48 | #6 |
Форумчанин
Регистрация: 23.03.2009
Сообщений: 334
|
Наткнулся на то, что Unity, вроде как можно подружить с Visual Studio.
Подскажите (кто в курсе), это позволит только более удобно редактировать код "скриптов" Unity, или будет доступен полный функционал C# с возможностью создавать обычные Win формы, формировать отчеты и т.д.? |
21.01.2017, 07:08 | #7 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,760
|
С чего бы от интеграции с студией в движке появится новый функционал? Логика где? Студия движок не дописывает.
|
24.01.2017, 00:05 | #8 | |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,327
|
Unity автоматически при установке подключит VS в качестве среды разработки.
Цитата:
У Unity есть магазин Asset Store, где можно найти подходящие бесплатные и платные пакеты, типа этого: Cubiquity for Unity (Voxel Engine) Последний раз редактировалось 8Observer8; 24.01.2017 в 00:14. |
|
26.01.2017, 12:43 | #9 |
Форумчанин
Регистрация: 23.03.2009
Сообщений: 334
|
8Observer8, спс.
Собрал на юнити демку куба из 40х40х40 кубов - тоже тормозит ужасно, при обзоре всей конструкции Так что Unity отпадает.. |
26.01.2017, 13:03 | #10 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,760
|
Если вам именно подобные сцены нужны, то заюзайте инстансинг. А если каждый куб попиксильно отрисовывать, то любой движок будет тормозить.
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Посоветуйте движок для 2D игр на java ПК | Ромашка2002 | Общие вопросы по Java, Java SE, Kotlin | 1 | 01.04.2015 21:22 |
Посоветуйте хороший 3Д игровой движок для создания игры с элементами RPG. | MaratZahidyl | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 8 | 10.12.2011 23:51 |
Посоветуйте 3д движок для .mesh | ALKOrobot | C++ Builder | 0 | 28.07.2011 15:32 |
Посоветуйте 3D движок для Qt | iukash | Qt и кроссплатформенное программирование С/С++ | 0 | 08.01.2011 16:44 |
Выбираю БД движок для Delphi-программы | pvasya | БД в Delphi | 13 | 06.12.2009 13:48 |