OptiX

OptiX
OptiX
Графический движок
NVidia OptiX logo.jpg
Официальный логотип OptiX
Разработчик nVidia
Дата анонса 6 августа 2009 года
Дата выпуска 5 ноября 2009 года
Аппаратная платформа IBM PC-совместимый компьютер с определёнными видеокартами
Поддерживаемые ОС Microsoft Windows, Linux, MacOS
Лицензия проприетарная, использование и лицензирование движка бесплатно (freeware)
Последняя версия OptiX 2 / 29 июля 2010 года
Optix на оффиц. сайте(рус.)

OptiX (nVidia OptiX) — графический движок для визуализации методом трассировки лучей c использованием технологии CUDA компании nVidia. Трассировка лучей может быть использована как метод анализа и исследования геометрических систем при помощи вычисления распространения волн или частиц

Содержание

Описание

Общее описание

Движок nVIDIA OptiX является частью набора модулей для разработчиков в который кроме OptiX включены еще такие модули как SceniX и CompleX. Все они интегрируется в сторонние приложения.[1][2]

nVidia OptiX является программным средством, реализующим рендеринга методом трассировки лучей (рэйтрейсинга) в режиме реального времени при помощи графических процессоров (англ. GPU) производства nVidia. OptiX использует технологию CUDA для выполнения вычислений на графических процессорах. Хотя основной особенностью OptiX является рендеринг при помощи трассировки лучей, также поддерживается классическая растеризация. Таким образом, OptiX является гибридным рендерером. Несмотря на то, что OptiX — графический движок, он может использоваться в неграфических вычислений. Область использования OptiX — все вычислительно интенсивные задачи, к которым можно применить трассировку лучей (здесь под «трассировкой лучей» понимается не трассировка лучей применительно к компьютерной графике, а трассировка лучей как метод анализа и исследования геометрических систем при помощи вычисления распространения волн или частиц, см. Трассировка лучей (физика) (англ. Ray tracing (physics))).[3][4]

OptiX предоставляет программируемый конвейер рэйтрейсинга с использованием языка программирования С[2], с наложенными на него ограничениями. OptiX позиционируется разработчиками как очень гибкий движок, который можно детально настраивать и адаптировать к конкретным задачам. Пользователи OptiX, — разработчики приложений, — могут ускорить те задачи по трассировке лучей, которые им нужны. Гибкость OptiX начинается в абстракции исполнения и заканчивается на отдельных лучах, что значительно упрощает расчёты для одного луча в одну единицу времени. Данные, которые несёт и собирает луч, полностью настраиваемые. Данные, поступающие на OptiX, также программируемые, что позволяет использовать программируемые шейдеры для новых методик, программируемые пересечения для процедурных типов поверхностей, и программируемые виртуальные камеры для потенциала при композитинге.[5]

OptiX содержит такие критически важные для него функции, как параллелизм (как внутри графического процессора, так и между графическим и центральным процессором), использования таких структур данных, как k-мерные деревья и иерархия ограничивающего объёма (англ. Bounding volume hierarchy), а также разные обходные алгоритмы. Использование мощностей графического процессора контролируется через встроенный в OptiX модуль по балансировке нагрузки. В связи с тем, что OptiX является гибридным рендерером, он обеспечивает поддержку графических API типа OpenGL, что позволяет комбинировать рэйтрейсинговые и растеризационные методики рендеринга для дополнительной гибкости.[5][6]

Системные требования

OptiX первой версии требует наличия профессиональных видеокарт семейства nVidia Quadro FX или nVidia Tesla. OptiX второй версии имеет поддержку архитектуры nVidia Fermi, поэтому способен выполняться на видеокартах, в которых установлен графический процессор GF100. Причём поддерживаются не только профессиональные видеокарты, но и пользовательские модели GeForce, такие как GeForce 480 и GeForce 470. Ещё одним нововведением OptiX 2 стала поддержка пользовательских видеокарт серии GeForce 200 (GT200). Однако при использовании серии GT200 нужна видеокарта GeForce GTX 260 и мощнее.[7][8]

Полный список графических процессоров, видеокарты с использованием которых поддерживаются движком OptiX 2[8]:

  • Профессиональные видеокарты:
    • Линейка Quadro FX: Quadro FX 5800, Quadro FX 4800, Quadro FX 3800, Quadro CX
    • Линейка Quadro Plex: Quadro Plex 2200 D2, Quadro Plex 2200 S4
    • Линейка Nvidia Tesla: Tesla S1070, Tesla M1060, Tesla C1060, Tesla RS
    • Tesla C2050
  • Пользовательские видеокарты:
    • Линейка GeForce 200: GeForce GTX 260, GTX 260 Cre 216, GTX 275, GTX 280, GTX 285, GTX 295
    • Линейка GeForce 400: GeForce GTX 480, GTX 470

Кроме видеокарт с определёнными графическими процессорами, требуется x86-совместимый центральный процессор.[8]

Для работы OptiX необходима версия v.190 графического драйвера NVIDIA Unified Graphics Driver или более поздняя. Для GT200 требуется CUDA Toolkit версии 2.3 и выше, а для GF100 — CUDA Toolkit 3.0 и выше. Также требуется C/C++ компилятор: для Microsoft Windows — Visual Studio 2005 или Visual Studio 2008, а для Linux — gcc 4.2 или 4.3. Кроме этого, требуется кроссплатформенная система автоматизации сборки программного обеспечения из исходного кода CMake версии 2.6.3 или более поздней.[8]

Движком OptiX поддерживаются как 32-битные операционные системы, так и 64-битные[8]:

Использование и примеры

OptiX может использоваться в множестве задач: создание фотореалистичных моделей, дизайн автомобилей, разработка музыкальных инструментов и оптических систем, расчеты емкости и исследования радиации, анализ соударений и во всех остальных, где может использоваться алгоритм трассировки лучей. OptiX может быть задействован в приложениях, использующих движок управления сценой SceniX, таких как RTT DeltaGen, Autodesk Showcase и Anark Media Studio.[3][4]

nVidia поместила на своём официальном сайте ряд примеров, демонстрирующих работу OptiX»[9][10][11]:

  • Whitted (рус. Уиттед) — пример работы трассировки лучей, который разработал Тернер Уиттед (англ. Turner Whitted), демонстрирует преломления, отражения и прозрачность процедурной геометрии и материалов.
  • Cook (рус. Кук) — пример работы трассировки лучей, который разработал Роб Кук (англ. Rob Cook), демонстрирует глянцевые отражения, Depth Of Field и объектный Motion Blur.
  • Julia (рус. Жюлиа) — данный пример демонстрирует множество Жюлиа, которое представлено фракталом, размещённым над сценой, которая полностью процедурно сгенерированна. Фрактал постоянно деформируется во времени. Для сцены и фрактала производится пересечение луча и фрактала и вычисление ambient occlusion в реальном времени.
  • Glass — данный пример демонстрирует реалистичное стекло с большим количеством преломлений и отражений.
  • Whirligig (рус. Юла) — на этом примере непрерывная анимация юлы демонстрирует скорость обновления трансформаций объекта и свойства материалов вместе с генерацией отражений и отбрасыванием теней.
  • Ambient Occlusion — данный пример показывает непрерывный расчёт глобального освещения с использованием метода Ambient Occlusion. Данная демонстрация позволяет пользователю загружать в неё свои собственные OBJ-файлы с трёхмерными геометрическими моделями.

История

Впервые об OptiX было объявлено 6 августа на международной ежегодной конференции SIGGRAPH 2009, которая проходила с с 3 по 7 августа включительно в Новом Орлеане.[12] На SIGGRAPH 2009 было объявлено название движка, его основная функциональность, нацеленность на определённые задачи, основные особенности и т. д. Джефф Браун, главный менеджер отдела профессиональных решений nVidia, так прокомментировал анонс OptiX: «Мир расчетов переместился от вычислений только лишь на процессоре к уравновешенной совместной обработке на CPU и GPU. Движки ускорения приложений от nVidia вооружают разработчиков инструментами, в которых они нуждаются для осуществления дальнейшего коренного изменения, как в области графики в реальном времени, так и сложного анализа данных». Джон Педди, основатель и президент аналитического дома Jon Peddie Research, во время анонса заявил, что «за один год nVidia смогла перейти от слов о том, что интерактивная визуализация методом трассировки лучей возможна, к созданию этой возможности для всех».[4][13]

До данного анонса OptiX программное средство nVidia по реализации трассировки лучей в реальном времени называлось NVIRT (Nvidia Interactive Raytracer)[13]

Кроме OptiX, на SIGGRAPH 2009 были анонсированы SceniX, CompleX и 64-битная версия PhysX. Было заявлено, что OptiX будет доступен осенью 2009 года и будет работать на профессиональных графических картах (видеокартах) nVidia Quadro.[4][2]

В конце августа 2009 года nVidia разместила на своём сайте примеры использования движка OptiX. Было опубликовано три примера: Whitted (демонстрация преломлений, отражений и прозрачных объектов), Cook (демонстрация Depth Of Field и Motion Blur) и Julia (процедурные объекты и расчёт Ambient Occlusion).[10][11][9]

5 ноября 2009 года, как и было обещано на SIGGRAPH 2009, nVidia выпустила OptiX. OptiX был выложен в открытый доступ в виде OptiX SDK. Вместе с релизом было объявлено, что движок работает на профессиональных видеокартах серий Quadro FX и nVidia Tesla, а также на серии пользовательских видеокарт GeForce 200.[6][14][15]

22 января 2010 года nVidia выпустила первую бета-версию OptiX 2, основной особенностью которой является её переработка под архитектуру графических процессоров nVidia Fermi. Также в этой версии присутствует возможность работы движка не только на профессиональных видеокартах Quadro и Tesla, но и на пользовательских видеокартах GeForce.[7]

13 марта 2010 года была выпущена третья бета-версия OptiX 2, которая добавила предварительную поддержку первых видеокарт на базе Fermi и взаимодействие на уровне текстур и буферов с Direct3D.[16]

29 июля 2010 года nVidia представила новые профессиональные графические процессоры и видеокарты линейки Quadro, основанные на базе архитектуры Fermi. Особенностью данных видеокарт является расширенная поддержка движков ускорения приложений (англ. Application Acceleration Engine — AXE), одним из которых является OptiX. Было заявлено, что графический процессор Quadro 6000 увеличит производительность в AXE до пяти раз по сравнению с моделями предыдущего поколения данной линейки. «Quadro является выбором профессионалов № 1 во всем мире уже более десяти лет. Мы также построили движки, такие как AXE, чтобы стимулировать создание приложений нового поколения», — сказал Джефф Браун (англ. Jeff Brown), директор по профессиональным решениям в nVidia, по поводу данного анонса.[17] В этот же день в рамках SIGGRAPH 2010 был анонсирован выпуск новых версий движков ускорения приложений. Была выпущена стабильная версия OptiX 2, которая, по сравнению с предыдущими, была оптимизирована для выполнения на новых графических процессорах Quadro, а также получила поддержку Direct3D и возможность быстрой работы в Direct3D и OpenGL для гибкого композитинга и гибридного рендеринга.[18][19] Кроме этого, на SIGGRAPH 2010 сотрудниками nVidia была проведена презентация «OptiX: A General Purpose Ray Tracing Engine» в рамках сеанса «GPU rendering».[20][21]

Примечания

  1. Движки NVIDIA® ускоряющие работу приложений  (рус.). Официальный сайт nVidia (русскоязычная версия сайта). — Описание движков, ускоряющих приложения, и их список. Архивировано из первоисточника 26 апреля 2012. Проверено 15 мая 2010.
  2. 1 2 3 Сергей и Марина Бондаренко SIGGRAPH 2009: интерактивная система трассировки лучей NVIDIA OptiX. 3DNews (6 августа 2009 года). Проверено 15 мая 2010.
  3. 1 2 OptiX Application Acceleration Engine Интерактивная трассировка лучей на профессиональных графических решениях NVIDIA Quadro  (рус.). Официальный сайт nVidia (русскоязычная версия сайта). — Главная страница OptiX и его краткое описание. Архивировано из первоисточника 25 апреля 2012. Проверено 15 мая 2010.
  4. 1 2 3 4 Вячеслав Коломин NVIDIA представила движок визуализации методом трассировки лучей. Мир nVidia (6 августа 2009 года). Архивировано из первоисточника 26 апреля 2012. Проверено 15 мая 2010.
  5. 1 2 NVIDIA® OptiX™ ray tracing engine  (англ.). Официальный сайт nVidia — подраздел разработчиков (19 января 2010 года (последнее обновление)). — Главная страница OptiX на подразделе разработчиков и его детальное описание. Архивировано из первоисточника 25 апреля 2012. Проверено 15 мая 2010.
  6. 1 2 Константин Ходаковский NVIDIA представила движок для трассировки лучей OptiX. Мир nVidia (5 ноября 2009 года). Архивировано из первоисточника 26 апреля 2012. Проверено 15 мая 2010.
  7. 1 2 DrEvil Практический ray-tracing — бета-версия NVIDIA OptiX второго поколения. Мир nVidia (22 января 2010 года). Архивировано из первоисточника 26 апреля 2012. Проверено 15 мая 2010.
  8. 1 2 3 4 5 NVIDIA® OptiX™ ray tracing engine Betas  (англ.). Официальный сайт nVidia — подраздел разработчиков (10 мая 2010 года (последнее обновление)). — Описание и системные требования бета-версии OptiX 2. Архивировано из первоисточника 26 апреля 2012. Проверено 15 мая 2010.
  9. 1 2 NVIDIA® OptiX™ ray tracing engine examples  (англ.). Официальный сайт nVidia — подраздел разработчиков (9 ноября 2009 года (последнее обновление)). — Список технологических демонстраций OptiX. Архивировано из первоисточника 18 июня 2012. Проверено 15 мая 2010.
  10. 1 2 JeGX NVIDIA OptiX Demos Available for Windows  (англ.). Geeks3D.com (27 августа 2009 года). Архивировано из первоисточника 26 апреля 2012. Проверено 15 мая 2010.
  11. 1 2 Глеб Лебедев NVidia разместила примеры использования OptiX. GameDev.ru (21 сентября 2009 года). Архивировано из первоисточника 26 апреля 2012. Проверено 15 мая 2010.
  12. SIGGRAPH 2009 Art Papers — Искусство в цифровом мире. Mir3D.ru (26 декабря 2008 года). Архивировано из первоисточника 24 марта 2012. Проверено 18 января 2010.
  13. 1 2 Thilo Bayer Nvidia Optix Ray Tracing engine: New ray traced pictures Just recently Nvidia has introduced the Optix Ray Tracing engine at the Siggraph 2009. PC Games Hardware presents some more of the ray traced pictures.  (англ.). PC Games Hardware (7 августа 2009 года). Архивировано из первоисточника 26 апреля 2012. Проверено 15 мая 2010.
  14. Глеб Лебедев NVIDIA OptiX SDK теперь доступен всем. GameDev.ru (5 ноября 2009 года). Архивировано из первоисточника 26 апреля 2012. Проверено 15 мая 2010.
  15. OptiX в открытом доступе. UralDev (8 ноября 2009 года). Архивировано из первоисточника 26 апреля 2012. Проверено 15 мая 2010.
  16. DrEvil Новая бета-версия пакета рэйтрейсинга NVIDIA OptiX. Мир nVidia (13 марта 2010 года). Архивировано из первоисточника 26 апреля 2012. Проверено 15 мая 2010.
  17. Евгений Давыдов NVIDIA представила новые GPU Quadro на базе архитектуры Fermi. Мир nVidia (29 июля 2010 года). Архивировано из первоисточника 26 апреля 2012. Проверено 31 июля 2010.
  18. Евгений Давыдов Движки ускорения приложений, оптимизированные под Fermi. Мир nVidia (29 июля 2010 года). Архивировано из первоисточника 26 апреля 2012. Проверено 31 июля 2010.
  19. Движки ускорения приложений NVIDIA. UralDev (28 июля 2010 года). Архивировано из первоисточника 26 апреля 2012. Проверено 22 августа 2010.
  20. OptiX: a general purpose ray tracing engine  (англ.). ACM Digital Library (июль 2010 года). Проверено 22 августа 2010.
  21. Steven G. Parker, James Bigler, Andreas Dietrich, Heiko Friedrich, Jared Hoberock, David Luebke, David McAllister, Morgan McGuire, Keith Morley, Austin Robison, Martin Stich OptiX: a general purpose ray tracing engine  (англ.) (PDF). research.nvidia.com (август 2010 года). — Прямая ссылка на полную версию презентации. Архивировано из первоисточника 26 апреля 2012. Проверено 22 августа 2010.

Ссылки


Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать курсовую

Полезное


Смотреть что такое "OptiX" в других словарях:

  • OptiX — NVIDIA OptiX (officially, OptiX Application Acceleration Engine) is a real time ray tracing engine for CUDA based video cards such as the GeForce, Quadro, and Tesla series. According to NVIDIA, OptiX is designed to be flexible enough for… …   Wikipedia

  • Optix Pro — Entwickler s13az3 Aktuelle Version 1.33 (4. August 2004) Betriebssystem Microsoft Windows Kategorie Fernwartung Lizenz …   Deutsch Wikipedia

  • Optix Pro — is a configurable remote access tool or Trojan, similar to SubSeven or BO2K Optix Pro is far more sophisticated and lethal than its predecessors. It has the ability to kill most of the firewall and anti virus products which exist today. This… …   Wikipedia

  • Electro-Optix — is a corporation that designs, manufactures, and distributes magnifiers, thermometers and optical inspection tools. Established in 1964, Electro Optix is a privately owned company with offices in the U.S. and distributors in Europe, Canada,… …   Wikipedia

  • Silicon Optix — Infobox Company company name = Silicon Optix Inc company company type = Fabless Semiconductor Company homepage = [http://www.siliconoptix.com www.siliconoptix.com] foundation = 2001 key people = Paul Russo Founder, Chairman location = San Jose,… …   Wikipedia

  • O2 Optix — Air Optix is a brand of breathable contact lenses made by Ciba Vision. They are soft contact lenses made from a silicone hydrogel material consisting of approximately 67% lotrafilcon B (except in Japan)[1], 33% water, and have a patented surface… …   Wikipedia

  • CIBA Vision — CIBA VISION, a Novartis company, is a company that researches, develops, and manufactures contact lenses and lens care products. It is headquartered in Atlanta, Georgia (USA) in the Johns Creek Technology Park. Manufacturing plants are also… …   Wikipedia

  • Графический движок — (англ. graphics engine; иногда «рендерер» или «визуализатор»)  промежуточное программное обеспечение (англ. middleware), программный движок, основной задачей которого является визуализация (рендеринг) двухмерной или трёхмерной… …   Википедия

  • Gelato (software) — For other uses, see Gelato (disambiguation). Gelato Developer(s) Nvidia Corporation Stable release 2.2 Release 1 / May 2008 …   Wikipedia

  • Video scaler — A video scaler is a device for converting video signals from one size or resolution to another: usually upscaling or upconverting a video signal from a low resolution (e.g. standard definition) to one of higher resolution (e.g. high definition… …   Wikipedia


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»