Что лучший способ состоит в том, чтобы иметь 3D рендеринг в реальном времени в инженерном приложении? [закрытый]

удалите onClick из этой строки, так как он уже реализован в коде


Также, поскольку td добавляются динамически, всплывающее событие не происходит должным образом. Изменена цель щелчка для всплытия события

Исправлена ​​проверка этого https://jsfiddle.net/ujf3e42r/

8
задан tshepang 21 May 2014 в 16:28
поделиться

6 ответов

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

Поскольку вы имеете дело с таким количеством объектов, основным из них является уровень детализации (LoD). Убедитесь, что ваши объекты имеют реалистичный LoD, связанный с ними. Например, вы не потрудитесь визуализировать высокодетальную модель винта при просмотре всей сцены. Наконец, отбраковка будет очень важна, но, вероятно, имеет дело с любым из тех двигателей, которые вы уже упомянули.

Если вы имеете дело с ГИС, ознакомьтесь с AGI Insight3D . Все еще находится на ранней стадии разработки, но опирается на множество хороших технологий и предназначен для обработки большого количества объектов, отбраковки, LoD и т. Д. У них даже есть способы встроить видео в текстуру.

РЕДАКТИРОВАТЬ:

Если вы Вы имеете дело с C #, как вы заявили, я бы действительно взглянул на Insight3D. Это 3D ГИС-движок. Не игровой движок. Это основано на графике сцены, что означает, что вам не нужно беспокоиться о покадровом рендеринге, как вам может потребоваться с другими движками.

У них есть все конструкции, необходимые для

  1. Очень быстрое попадание. тестирование (т. е. какую сущность вы выбрали).
  2. Классы Scene-Graph с простыми элементами управления условным рендерингом.
  3. Время интегрируется в двигатель как часть Scene-Graph. Это означает, что вы даже можете определить, как все выглядело в предыдущий момент времени, и переходить от одного к другому.

Для меня разница между 3D-движком и игровым движком может быть довольно размытой. Из того, что я видел, ключевое отличие состоит в том, что игровые движки больше заботятся о том, чтобы все выглядело хорошо, чем точно. Например, мы использовали движок Unreal для рендеринга нашего офиса, но нам пришлось сделать все в разных масштабах, чем в реальной жизни. Выглядело великолепно, но не в реальных измерениях. Это может иметь значение при работе с деталями, вплоть до винтов, как вы делаете.

Небольшая оговорка: я не работаю в AGI, но я лично встречался с инженерами, которые создают этот движок. Они интегрируют новейшие графические процессоры и технологии рендеринга, так что это, безусловно, один из лучших быстрых, хорошо сделанных двигателей, которые я использовал. Он использует знания и технологии, используемые их основным приложением ( STK ), которое используется многими людьми для астрономических расчетов с высоким разрешением.

6
ответ дан 5 December 2019 в 14:06
поделиться

Я работал с OpenSceneGraph и, на мой взгляд, если вы не очень хорошо организовали свой график Вы можете получить плохую производительность, учитывая особенности ваших моделей (высокая детализация, большое количество объектов, разбросанные сцены). Вам нужно будет иметь возможность разделить вашу сцену по пространству (например, деревья октанов, деревья kd и т. Д.).

Если стоимость не является проблемой, вы можете обратиться к поставщикам, которые также предоставляют консалтинговые услуги, и продавать движки, которые этого не делают. например, требуется тот же опыт работы с 3D-графикой, что и в OSG.

Еще одна проблема, о которой стоит подумать, это как вы импортируете свои модели в движок. Если вы работаете с документированными форматами файлов, вы можете сделать это самостоятельно, в противном случае вам придется полагаться на внешние библиотеки для чтения и / или импорта модели в выбранный вами движок.

Если ваши модели очень велики, вам понадобится что-то, что способно выполнять подкачку страниц, поскольку ваша модель не помещается в доступную память (в этом случае полагаться на ОС для подкачки страниц не лучшая идея).

Здесь вы можете найти список 3D-движков, некоторые из их коммерческие: http://en.wikipedia.org/wiki/List_of_3D_graphics_APIs

2
ответ дан 5 December 2019 в 14:06
поделиться

SlimDX SDK может быть вариантом, если вы хотите начать немного снизу, это в основном способ предоставить вам доступ к DirectX из .NET. У них также есть коллекция сэмплов, с которой вы можете начать.
Ogre - 3d-движок под LGPL или purcache лицензии
garagegames.com - также имеет несколько движки, в зависимости от вашего языка (также «низкая» цена. здесь нет двигателей за 500 тыс. долл.)

Оба Ogre и garagegames.com имеют «старые» 3d движки, поэтому Вы должны быть в состоянии найти полные игры или демоверсии, чтобы проверить производительность. Я не знаком с написанием CAD-приложений, поэтому, когда вы говорите, что у вас есть 3D-объекты, я не уверен, статичны ли они или объекты, которые могут измениться во время работы приложения.

3
ответ дан 5 December 2019 в 14:06
поделиться

Unity 2.5 теперь имеет IDE, которая работает на Windows. Существует также веб-просмотрщик, так что (с помощью плагина) вы можете просматривать среду погружения прямо на веб-странице. Лицензия Indie стоит всего $ 200.

BTW GarageGames теперь лицензирует новую технологию под названием Torque3D

Также стоит проверить C4 Engine , который получил высокую оценку на devmaster.net

1
ответ дан 5 December 2019 в 14:06
поделиться

http://www.blender.org/ поставляется с игровым движком

0
ответ дан 5 December 2019 в 14:06
поделиться

Вам следует взглянуть на WPF, Windows Presentation Framework (см. Winfx, см. Avalon) и изучить последние разработки. Вы можете найти эту ссылку интересной. Кроме того, что такое трип ?

0
ответ дан 5 December 2019 в 14:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: