Truevision3D - это коммерческое компьютерное программное обеспечение 3D-движок, впервые созданный Sylvain Dupont в 1999 году.
Написан движок Truevision3D (обычно сокращенно TV3D) в Visual Basic 6 и C ++ и размещен поверх Microsoft DirectX API, в настоящее время поддерживающего DirectX версии 8. Механизм доступен из ряда языков программирования включая C ++, C#, Delphi и Visual Basic (6 и.NET). Текущая версия Truevision3D - 6.3. Версия 6.5, в настоящее время находится в общедоступном предварительном выпуске и очень стабильна, включает значительные обновления движка, включая поддержку DirectX 9 и шейдер, а также переписана на 100% C ++. Нет планов поддерживать DirectX 10 или XNA, пока не будет работать над новой версией (TV7).
Содержание
- 1 Известные проблемы
- 2 Функции
- 2.1 Поддерживаемые языки
- 2.2 3D Engine
- 2.2.1 Система рендеринга
- 2.2.2 Поддержка шейдеров HLSL
- 2.2.3 Система ландшафта и ландшафта
- 2.2.4 Поддержка статической сетки
- 2.2.5 Анимированные сетки (акторы)
- 2.2.6 Система материалов и освещения
- 2.2.7 Системы частиц
- 2.2.8 Система Minimesh
- 2.2.9 GPGPU (общая обработка на графическом процессоре)
- 2.2.10 Integrated Newton Physics Engine
- 2.2.11 Встроенные специальные эффекты и элементы управления
- 2.2.12 Дополнительные функции
- 2.2.13 Стандарты API
- 2.3 Media Engine
- 2.3.1 Функции аудио
- 2.3.2 Функции видео
- 2.4 Network Engine
- 2.4.1 Поддержка подключения
- 2.4.2 Сетевые функции
- 3 О Truevision3D
- 4 Внешние ссылки
Известные проблемы
В версиях 6.2 и 6.3 есть проблемы с поддержкой C ++, например, невозможно заставить его работать в некоторых компиляторах. Версия 6.5 работает с любым языком, который может использовать COM, управляемые библиотеки или статические библиотеки.
Также существует известная проблема между версией 6.3 в Windows Vista, поскольку для нее требуется dll из DirectX 8, которой нет в Vista. и по договору незаконно просто добавлять его. Microsoft связались по поводу этой проблемы, но не продемонстрировали на своих форумах какого-либо желания включать dll.
Возможности
Версия 6.5 - это законченное решение для разработки, которое включает 3D, мультимедиа и сетевые движки.
В SDK входит несколько инструментов, помогающих ускорить разработку: редактор шейдеров, средство просмотра моделей, плагины экспорта для различного программного обеспечения для моделирования (, Maya и Milkshape 3D в настоящее время) и редакторы эффектов частиц. Поскольку версия TV3D 6.5 больше не поддерживает устаревшие форматы сетки, также доступно множество конвертеров. Официальный в настоящее время не планируется, потому что он мешает конечному пользователю, поскольку нет способа использовать один редактор для каждого проекта, для которого используется этот движок. Более того, TV3D - это 3D-движок, а не игровой движок, и официальный редактор слишком ограничил бы его. Однако доступны некоторые редакторы карт, созданные пользователями.
Truevision3D можно использовать бесплатно, если пользователь не возражает против логотипа в углу области просмотра визуализации. Чтобы удалить логотип и опубликовать коммерческий проект, необходимо приобрести лицензию. В настоящее время стоимость лицензии с одним заголовком составляет 150 долларов, а с лицензией с несколькими заголовками - 500 долларов. Исходную лицензию можно приобрести по цене, которая пока не разглашается.
Поддерживаемые языки
- Visual Basic 6 (VB6) через библиотеку ATL / COM
- Visual Basic.Net (VB.Net) через управляемую библиотеку
- C # через управляемую библиотеку
- Delphi через ATL / COM Library
- C ++ через Direct Library Support (не полностью работает в 6.3)
- BlitzMax (только 6.5)
- ... и любой ATL / COM или совместимый с.NET язык
3D Engine
Возможности только SDK версии 6.5
Система рендеринга
- Поддержка оконного или полноэкранного режима с возможностью переключения между режимы во время рендеринга
- 32-битный стандартный конвейер рендеринга для рендеринга основного буфера
- Доступен 64-битный и 128-битный конвейер рендеринга с плавающей запятой
- Доступен режим нескольких окон просмотра в оконном режиме
- Поддержка нескольких адаптеров с полным перечислением устройств и поддерживаемых режимов рендеринга
- Сглаживание и анизотропная фильтрация с поддержкой до 16x
- Переключение между точкой, строка и режимы сплошного рендеринга
Поддержка шейдеров HLSL
- Полная поддержка файлов эффектов DirectX 9.0c для шейдеров в HLSL или Assembly
- Поддержка Shader Model 1.0 в Shader Model 3.0
- Extensive поддержка предопределенной семантики для доступа к внутренним параметрам
- Шейдеры, поддерживаемые большинством объектов TV3D, включая сетку, актер, ландшафт и minimesh
Система ландшафта и ландшафта
- Высокооптимизированный ландшафт на основе фрагментов рендеринг
- Разбиение на части Уровень детализации с геоморфингом для прогрессивного LOD
- Realtime деформируемый ландшафт с обновлениями точек на основе одиночных или массивов
- Детальное текстурирование с использованием текстуры с одновременным отображением до 16 слоев
- 8-битная или 24-битная карта высот поддержка генерации ландшафта
- Пользовательский формат данных ландшафта для быстрой загрузки и анализа ландшафта
- Быстрые запросы высоты и обнаружение столкновений
- Автоматизированное быстрое отсечение с использованием внутреннего квадродерева
- Комплексная интегрированная водная система для реальности c-выглядящая вода
Поддержка статической сетки
- Гибкая система сетки, включая на лету создание сетки
- Поддерживает сетки до 16 миллионов треугольников и вершин
- Поддерживаются различные форматы вершин
- Отсечение фрустума через сферу или прямоугольник
- До 8 текстур на группу для комбинаций диффузных, нормальных, зеркальных, эмиссионных и высотных
- Точный треугольник или коллизия ограничивающего объема
Анимированные сетки (Актеры)
- Высокопроизводительные скелетные или целевые анимации морфинга
- Поддерживает 3 режима скинов, включая ЦП, смешанный и шейдерный
- Полная поддержка пользовательских шейдеров для актеров
- Поддержка перехода анимации от одной анимации к другой
- Смешивание анимации с одновременным воспроизведением до 4 дорожек
- Экспортеры для Maya, 3DS Max и Milkshape 3D
- Включенная утилита преобразования для файлов Half-Life 1 MDL
- Поддержка точного обнаружения столкновений и выбора мыши
- Полная система прикрепления для Кости актера
- Управление костями через внутренние вызовы для пользовательских систем анимации
Система материалов и освещения
- Поддерживаются точечные, направленные и точечные источники света
- Управляемая система освещения для автоматического выбора лучшего активные источники света для объекта
- Стандартное освещение на вершины с поддержкой преобразования и освещения
- Попиксельное освещение с поддержкой отображения рельефа
- Поддержка касательного рельефа смещения / параллакса
- Фильтр Cubemap для отображения точечного света и рельефа
- Система материалов с поддержкой окружающей, диффузной, эмиссионной, зеркальной и мощности
- Пиксель и вершина предварительно вычисленная передача яркости (PRT) для сеток
- Lightmap поддержка сеток и ландшафта
Системы частиц
- Поддержка нескольких эмиттеров и аттракторов на система частиц
- Point спрайт, билборд и частицы minimesh могут быть смешаны в одной системе частиц
- Полная поддержка ключевых кадров для частиц и испускания частиц ers
- Поддерживаются сферические, прямоугольные и направленные эмиттеры
- Фильтрация направления с помощью кубической карты для эмиттеров
Minimesh System
- Внутренний инстансинг шейдера, позволяющий рендерить до 52 мешей в пакете
- Полная поддержка настраиваемых шейдеров для специальных эффектов
- Минимеши могут использоваться в качестве частиц, что позволяет создавать сложные эффекты
- Отбор и затухание усеченной пирамиды элемента
GPGPU (общая обработка на GPU)
- Полная поддержка поверхности с плавающей запятой, включая 64-битные и 128-битные
- Полностью настраиваемый рендеринг пиксельных шейдеров с помощью стандартных файлов эффектов DirectX
- Чтение данных пикселей из результатов пиксельного шейдера пользователя в реальном времени
Интегрированный движок Newton Physics Engine
- На основе Newton Game Dynamics Physical Engine
- Прямая интеграция для объектов движка, включая сетки, актеров, ландшафт
- Точное обнаружение столкновений и трения решатель с настраиваемой точностью
- Поддержка коллайдеров с твердым телом включает коробку, сферу, цилиндр, конус и т. д. nvex hull
- Поддержка коллайдеров статического тела включает сетку и ландшафт
- Объединение нескольких коллайдеров в одно твердое тело
- Полная совместная поддержка с ограничениями, включая шар, шарнир, универсальный, верхний и ползунки
- с опорой на моторизованные шарниры
- Полностью конфигурируемая система транспортного средства
- Плавучесть тел, основанная на водной плоскости
- Настраиваемое автоматическое замораживание тел при простое
- Рэгдоллы, поддерживаемые прямым манипулированием костью актера
Встроенные специальные эффекты и элементы управления
- , а также полноэкранные эффекты затухания и вспышки
- Свечение и цветение с полной поддержкой
- Размытие движения на основе скорости объекта (PS 2.0+)
- Глубина резкости (PS 2.0+)
Дополнительные функции
- Полная поддержка Unicode
- Глобальная потоковая система для загрузки данных из файла, части файла, потока памяти или пакета
- Включенная математическая библиотека со всеми стандартными функциями для векторов, матриц и кватернионов
- Внутренняя профайлер с на s вывод на экран для определения узких мест в рендеринге
- Единая угловая система для всех внутренних функций, позволяющая пользователю использовать градусы или радианы
Стандарты API
- Простые и удобные в использовании ООП классы
- Инициализируйте движок и начните рендеринг менее чем с 5 строк кода!
- Поддержка нескольких языков через различные библиотеки, все с использованием одного ядра C ++
- Статическая библиотека, поддерживаемая для C ++ для распространения одним файлом, зависимые файлы не требуются
Media Engine
Присутствует только в версиях 6.2 и 6.3
Аудиофункции
- Поддержка аппаратного ускорения
- 3D позиционный звук
- Множественные звуковые эффекты, включая искажение, эхо, реверберацию и др.
Функции видео
- Поддержка аппаратного ускорения
- Воспроизведение любого видеоформата при наличии кодека
- Воспроизведение видео в текстуру TV3D поддерживается для рендеринга видео в сценах TV3D
Network Engine
Присутствует только в финальной версии 6.5
Поддержка соединения
- Сервер исправлений
- Лобби с чатом
- Клиент / сервер
- Одноранговая сеть
Сетевые функции
- Поддержка UDP, TCP и смешанного режима
- Высокооптимизированный контроллер пакетов ASM
- Надежные, ненадежные и широковещательные пакеты
- Несколько каналов связи с приоритетами
О Truevision3D
Truevision3D началось как хобби-проект еще в январе 1999 года. Сильвен Дюпон создал 3D-движок в Visual Basic 6 с DirectX 7 8. С последующим добавлением Арли Муйкич и Джон Харт, Truevision3D, LLC. была создана, чтобы сделать TV3D коммерческим продуктом. Сегодня она превратилась в глобальную компанию, поддерживающую тысячи клиентов и пользователей сообщества.
Внешние ссылки