Какой движок использовать для простой программы для 3д моделирования?

Хочу сделать Open source программу 3д моделирования для строителей, столяров и возможно печников.
Она будет максимально простой в освоении,но узкопрофильной т.к работать придется только с параллелепипедами и их модификациями (ибо доски еще можно запилить под углом).
Буду очень признателен, если посоветуете подходящий 3д движок для этого, потому что мне кажется писать это на голом OpenGL или Vulkcan - это забивать гвозди микроскопом.

Технические требования:

1) Возможность рисовать точки и прямые, которые задаются координатами в пространстве (В Qt Quick 3D например точки и прямые можно рисовать только на экране и рассчитывать местоположение поверх 3д нужно самому, что неудобно).
2) Возможность построить парралелипипед, "запилить" у него грань под углом и вращать его (желательно без необходимости самому считать тригонометрию).
3) 3 функции:
получить все объекты проецирующиеся в заданный прямоугольник на экране,
получить первый объект проецирующийся в заданную точку на экране,
получить координату сцены находящуюся на заданном расстоянии от заданной точки на экране.
(Данные функции потребуются для реализации перемешения камеры и привязки объектов при перетаскивании мышью к осям и точкам т.к они должны располагаться точно - вершина к вершине)
4) Поддержка Linux и Windows(опционально)
5) Возможность отрендерить 250 параллелепипедов даже на старых компьтерах, без необходимости ручной оптимизации...
6) Язык программирования: C++, Java, на крайний случай Python.
7) Миниум абстракций абстракций абстракций... или же хорошая документация и большое количество ответов на stack overflow и хабре.

Дополнительный функционал приветствуется, если не противоречит 7 пункту.
Я уже попробовал:

Qt quick 3d, но там 1 и 3 пункт мимо.
OpenCasCade - не подходит по 7 пункту. Очень много абстракций и очень мало примеров и документации. При этом мне нужно от силы 2% функционала.
  • Вопрос задан
  • 275 просмотров
Пригласить эксперта
Ответы на вопрос 1
VoidVolker
@VoidVolker
Dark side eye. А у нас печеньки! А у вас?
Например Blender 3D - у него достаточно легко кастомизируется интерфейс. Пишете плагин, в котором:
  • прячете весь родной интерфейс блендера
  • рисуете свой интерфейс на основе стандартных контролов блендера
  • приклеиваете к своими кнопкам нужный функционал
  • пакуете свой билд блендера с плагином.

Да, этот тот же микроскоп, но это микроскоп-траснформер и один из мощнейших и крутейших 3D пакетов в мире и там уже есть все, что нужно для работы с 3D объектами. Т.е., надо будет писать только код GUI и общую логику работы, без необходимости залезать в ньюансы работы 3D движков. А если надо будет сделать что-то еще - либо оно там есть, либо есть плагин, либо это все достаточно легко делается без необходимости реализовывать ручками с нуля. И еще он OpenSource.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы