Технология
Основу технологической платформы WGT, разрабатываемой в настоящий момент времени (при поддержке Фонда содействия инновациям, www.fasie.ru), составляют:
Состав пользовательской платформы подразумевает полнофункциональную среду разработки (IDE), обеспечивающую необходимый инструментарий для загрузки исходных 3D-моделей (с преобразованием формата представления), программирования функциональных пользовательских интерфейсов и публикации итогового web-приложения на сервере (по заданному URL).
Запуск web-приложений производится путем перехода по заданной URL-ссылке в web-браузере. После первичной загрузки (кэширование 3D-данных и программных модулей) web-приложение переходит в полнофункциональное 3D-отображение и может работать в автономном режиме (не требует соединения с сервером, постоянного интернет-канала и пр.).
Доступ к таким web-приложениям может осуществляться с любого современного desktop- или мобильного устройства (смартфоны, планшеты и ноутбуки и пр.) в многопользовательском режиме.
При необходимости отображения сложных 3D-сцен с большим количеством объектов предусмотрено опциональное подключение серверных компонентов поддержки рендеринга (требуют канал связи с сервером при минимальных требованиях к его пропускной способности и устойчивости).
Методы описания 3D
Технологическое решение WGT предполагает использование собственного представления (формата) 3D-моделей, формируемого аналитически на базе исходных 3D-данных и обеспечивающего его оптимизацию для последующего процесса его отрисовки (рендеринга) в условиях web-среды.
Это обеспечивается реализацией целого комплекса аналитических процедур, основной из которых является аллотропная кластеризация описываемых объектов (инстанцирование). Она позволяет разбить трехмерные объекты на иерархические группы схожих геометрических фрагментов/форм и реализовать их оптимальное представление и предподготовку для целей рендеринга.
Полученный формат представления 3D-моделей является более компактным (важно для web-среды), а также позволяет снизить затраты по отрисовке (рендеринге) итоговой 3D-сцены, описанной в следующем блоке.
Алгоритмы рендеринга
Программные решения WGT по отрисовке (рендерингу) 3D-сцены реализуются на базе стандартных методов WebGL API по управлению графическим конвейером (шэйдеры) с организацией параллельных (многопоточных) вычислений и отрисовок на GPU.
Используемые алгоритмы основаны на наиболее эффективных техниках отрисовки 3D-сцен и методах ее ускорения (инстансинг, выбраковка невидимых объектов и пр.), что с учетом структуры используемого 3D-формата (описан выше) обеспечивает высокую скорость отрисовки даже на малопроизводительных устройствах.
При этом для визуализации сложных 3D-сцен, содержащих большое количество объектов и деталей реализованы возможности по дополнительному подключению компонентов поддержки рендеринга, позволяющие динамически масштабировать и распределять вычисления между клиентом и сервером (см. ниже)
Компоненты поддержки
Опциональные компоненты поддержки рендеринга представляют собой расширения (надстройки), которые могут использоваться при отображения 3D-сцен с большим количеством объектов.
Основная функция поддержки — снизить нагрузку на клиентское устройство путем минимизации вычислений (прогрессивная детализация), либо их частичного смещения на серверную сторону (распределенные вычисления при подготовке шэйдерных буферов и пр.).
Данные компоненты изначально полностью интегрируемы с основным программным блоком и требуют минимальной ширины и устойчивости канала связи (минимальный трафик).
Алгоритмический комплекс, обеспечивающий визуализацию данных САх процессов
Описание функциональных характеристик программного обеспечения “Алгоритмический комплекс, обеспечивающий визуализацию данных САх процессов” и информация, необходимая для установки и эксплуатации программного обеспечения.Описание функциональных характеристик.pdf
Описание процессов, обеспечивающих поддержание жизненного цикла программного обеспечения “Алгоритмический комплекс, обеспечивающий визуализацию данных САх процессов”, в том числе устранения неисправностей, выявленных в ходе эксплуатации программного обеспечения, совершенствование программного обеспечения, а также информация о персонале, необходимом для обеспечения такой поддержки.Описание процессов, обеспечивающих поддержание жизненного цикла.pdf
Стоимость программного обеспечения “Алгоритмический комплекс, обеспечивающий визуализацию данных САх процессов”.Стоимость программного обеспечения.pdf