Русская Википедия:NovodeX

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Шаблон:Карточка движка NovodeX (полное название — NovodeX Physics) — физический движок реального времени, разработанный одноимённой швейцарской компанией NovodeX AG и доступный для лицензирования сторонним компаниям. В 2004 году компания NovodeX AG была приобретена американской компанией Ageia, а движок «NovodeX» стал основой для движка «Ageia PhysX». На момент покупки движок «NovodeX» использовался более чем в 60 игровых студиях, компаниях и исследовательских институтах.

История

Швейцарская компания NovodeX AG была основана в 2001 году как ответвление от Швейцарской высшей технической школы Цюриха.[1] Одним из основателей NovodeX AG был доктор Маттиас Мюллер-Фишер (Шаблон:Lang-de), который с 2001 по 2004 года работал старшим исследователем в лаборатории компьютерной графики при Швейцарской высшей технической школы.[2]

Главным и единственным проектом NovodeX AG с момента её основания и до окончания деятельности была разработка одноимённого физического движка реального времени «NovodeX Physics». Ядро движка «NovodeX Physics» было основано на технологической демонстрации «Corpus» разработки Адама Моравански (Шаблон:Lang-en), который продолжал работать над движком.[3] При этом сам движок был разбит на несколько компонентов, выполнявших разные функции и предназначенных для разных задач, которые могли работать как вместе, так и по-отдельности, причём пользователи движка могли лицензировать эти компоненты также по-отдельности.

В марте 2002 года NovodeX AG запустила свой собственный веб-сайт, в котором заявила о своём намерении демонстрировать физические технологии на выставках CeBIT, GDC Europe и European Computer Trade Show.[4]

Через несколько месяцев компания сделала доступными для лицензирования физический инструмент Steel SDK из состава «NovodeX Physics», который симулировал динамику твёрдых тел. 29 ноября 2002 года был выпущен «Granite fracture SDK» — физический инструмент, предназначенный для моделирования разрушаемых физических тел посредством метода конечных элементов.[5]

В 2003 году к NovodeX AG присоединился Пьер Тердиман (Шаблон:Lang-en), который до этого в середине 2002 года разработал плагин «Flexporter» для экспорта сцен с 3ds max в «Steel SDK», а также технологическую демонстрацию «Monster Truck», которая использовала «NovodeX Physics». После присоединения к NovodeX AG Тердиман вместе с Адамом Моравански продолжили работу над движком.[3]

1 марта 2004 года была выпущена вторая версия «NovodeX Physics».[6]

2 апреля 2004 года было официально объявлено о подписании соглашения между NovodeX AG и американским разработчиком компьютерных игр Epic Games, согласно которому последняя интегрирует «NovodeX Physics» в игровой движок «Unreal Engine».[1]

В 2004 году американская компания Ageia, которая в то время активно разрабатывала физический процессор «Ageia PhysX PPU», покупает NovodeX AG вместе со всей её программной собственностью, включая движок «NovodeX Physics». Согласно Манджу Хежду, основателю и председателю Ageia, выбор его компании пал на движок «NovodeX» потому, что на то время он был наиболее надёжным, многоплатформенным, многопоточным и высокопроизводительным физическим движком реального времени из всех, представленных на рынке. Сотрудники NovodeX AG влились в Ageia, а движок «NovodeX», который на момент покупки имел версию 2.3, стал основой для собственного движка Ageia — «Ageia PhysX». Изначально движок имел старое название — «NovodeX», однако со временем оно было вытеснено на «Ageia PhysX». Основным новшеством, добавленным в результирующий движок, была поддержка аппаратного ускорения физических расчётов на «PhysX PPU».[2][7][8]

На момент продажи «NovodeX Physics» использовался более 60 игровыми разработчиками и исследовательскими институтами.[9]

Технологические характеристики

«NovodeX Physics» является физическим движком режима реального времени. На своё время он отличался стабильностью и быстротой интегратора по сравнению с конкурентами. «NovodeX Physics» является многопоточным и поддерживает как многоядерные процессоры, так и технологию HyperThreading.[10] «NovodeX Physics» написан на ANSI C++.[5][11] «NovodeX Physics» поддерживал работу на IBM PC-совместимых компьютерах под управлением операционных систем семейства Microsoft Windows и на игровых консолях шестого поколения Sony PlayStation 2 и Microsoft Xbox.[11][6]

«NovodeX Physics» поделён на пять составных частей: «Foundation SDK», «Collision SDK», «Rigid Body SDK», «Substance SDK» и набор инструментов. При этом «NovodeX Physics» распространялся в трёх версиях: «Steel rigid body physics», «Granite brittle fracture» и «NovodeX Personal Edition».[12][11]

Компонент «Foundation SDK» предоставляет базовые математические функции для всех остальных составных компонентов. Он предназначался только для работы вместе с другими компонентами, но не самостоятельно.[12]

«Collision SDK» представляет собой библиотеку обнаружения столкновений для групп и наборов фигур в трёхмерном пространстве. «Collision SDK» был предназначен как для взаимодействия с «Rigid Body SDK», так и для самостоятельного функционирования.[12]

«Rigid Body SDK» предназначен для симуляции физики твёрдых тел. «Rigid Body SDK» использует и принимает в расчёт следующие физические явления и понятия: систему отсчета, позицию, скорость, ускорение, импульс силы, вращательные движения, энергию, трение, импульс, столкновения, ограничения и прочие. «Rigid Body SDK» может взаимодействовать как с «Collision SDK», так и с другой, сторонней библиотекой обнаружения столкновений. Вместе с тем использование «Foundation SDK» является необходимым для «Rigid Body SDK».[12]

«Substance SDK» предназначен для моделирования объёмных сплошных веществ и сред, которые в рамках «NovodeX Physics» обозначаются как субстанции. «Substance SDK» использует метод конечных элементов. «Substance SDK» является самостоятельным компонентом и нуждается только в «Foundation SDK». Вместе с тем, для полноценной работы «Substance SDK» необходимы библиотеки обнаружения столкновений и физики твёрдых тел, однако это могут быть как «Collision SDK» и «Rigid Body SDK», так и сторонние компоненты.[12]

Набор инструментов включает в себя экспортёры для 3ds Max и MilkShape 3D, инструмент «Tetmake» для генерации объёмных мешей из поверхностей моделей, обозреватель быстрого прототипирования и некоторые другие инструменты.[12]

Кроме «NovodeX Physics», NovodeX AG разработала и опубликовала «NovodeX Rocket» — набор технологических демонстраций, предназначенных для раскрытия потенциала «NovodeX Physics» через специальный скриптовый язык PSCL (Шаблон:Lang-en). Также «NovodeX Rocket» был предназначен для быстрого прототипирования геймплея компьютерных игр посредством фреймворка ODF (Шаблон:Lang-en).[13]

Лицензирование

«NovodeX Physics» распространялся в трёх версиях: «Steel rigid body physics», «Granite brittle fracture» и «NovodeX Personal Edition».[12][11]

Версия «NovodeX Personal Edition» включала в себя полный набор компонентов «NovodeX Physics», была предназначена для использования только на одном персональном компьютере под управлением Microsoft Windows и стоила $95.[12][11][6]

Версия «Steel» включала в себя четыре из пяти составных компонентов «NovodeX Physics», за исключением «Substance SDK». Цена лицензии на «Steel» колебалась от $9500 до $39500 в зависимости от количества продуктов, разработанных с её использованием, и количества целевых платформ данного продукта.[11]

Версия «Granite» включала в себя три из пяти составных компонентов «NovodeX Physics», за исключением «Substance SDK» и «Collision SDK». Аналогично «Steel», цена её лицензии колебалась в зависимости от количества продуктов, разработанных с её использованием, и количества целевых платформ данного продукта. Стартовой стоимостью лицензии являлась сумма $3500 для одного продукта только для платформы Win32, для всех других комбинаций цену необходимо было согласовывать с NovodeX AG.[11]

На «Steel» и «Granite» распространялся один год технической поддержки и обновлений.[11]

Примечания

Шаблон:Примечания

Ссылки

  1. 1,0 1,1 Ошибка цитирования Неверный тег <ref>; для сносок epic_license не указан текст
  2. 2,0 2,1 Ошибка цитирования Неверный тег <ref>; для сносок Matthias не указан текст
  3. 3,0 3,1 Ошибка цитирования Неверный тег <ref>; для сносок Pierre Terdiman не указан текст
  4. Шаблон:Cite web
  5. 5,0 5,1 Ошибка цитирования Неверный тег <ref>; для сносок old_descr не указан текст
  6. 6,0 6,1 6,2 Ошибка цитирования Неверный тег <ref>; для сносок 2.0 не указан текст
  7. Ошибка цитирования Неверный тег <ref>; для сносок txb_interview_manju не указан текст
  8. Ошибка цитирования Неверный тег <ref>; для сносок physxinfo_faq не указан текст
  9. Ошибка цитирования Неверный тег <ref>; для сносок mp-2005-02-11 не указан текст
  10. Шаблон:Cite web
  11. 11,0 11,1 11,2 11,3 11,4 11,5 11,6 11,7 Ошибка цитирования Неверный тег <ref>; для сносок sales_2003 не указан текст
  12. 12,0 12,1 12,2 12,3 12,4 12,5 12,6 12,7 Ошибка цитирования Неверный тег <ref>; для сносок products_2003 не указан текст
  13. Ошибка цитирования Неверный тег <ref>; для сносок downloads_2004 не указан текст