Unreal Engine: відмінності між версіями
[перевірена версія] | [неперевірена версія] |
Вилучено вміст Додано вміст
→Ліцензування й сирцевий код: правопис |
трохи правопису |
||
Рядок 15:
'''Unreal Engine''' — [[ігровий рушій]], розроблюваний і підтримуваний компанією [[Epic Games]].
Перша гра, створена на цьому
Написаний мовою [[C++]], рушій дозволяє створювати ігри для більшості операційних систем і платформ: [[Microsoft Windows]], [[Linux]], [[Mac OS]] і [[Mac OS X]], консолей [[Xbox]], [[Xbox 360]], [[PlayStation 2]], [[PlayStation Portable]], [[PlayStation 3]], [[Wii]], [[Dreamcast]] і [[Nintendo GameCube]]. У грудні [[Марк Рейн]] продемонстрував роботу рушія Unreal Engine 3 на [[iPod Touch]] і [[iPhone 3GS]].<ref>{{cite web|url=http://www.anandtech.com/gadgets/showdoc.aspx?i=3695|title=Epic Demonstrates Unreal Engine 3 for the ipod Touch/iphone 3Gs|publisher=[[Anandtech]]|publication-date=22 грудня 2009|accessdate=2009-12-22|author=Anand Lal Shimpi|language=англійською|archiveurl=https://www.webcitation.org/65bY6pbh1?url=http://www.anandtech.com/show/2892|archivedate=2012-02-20|deadurl=no}}</ref> У березні 2010 робота рушія була продемонстрована на [[комунікатор]]і [[Palm Pre]], що базується на мобільній платформі [[Palm webOS|webOS]].<ref>{{cite web|url=http://www.palmq.ru/article.php?sid=2479|title=Epic продемонструвала рушій Unreal 3 для webOS|publisher=[[Palmq Online]]|publication-date=12 березня 2010|accessdate=2009-12-22|language=російською|archiveurl=https://www.webcitation.org/65bY7kNva?url=http://www.palmq.ru/article.php?sid=2479|archivedate=2012-02-20|deadurl=no}}</ref>
Рядок 21:
Для спрощення портування рушій використовує модульну систему залежних компонентів: підтримує різні системи [[рендеринг]]у ([[Direct3D]], [[OpenGL]], [[Pixomatic]]; раніше підтримувалися [[Glide API]], [[S3 Metal]], [[PowerVR SGL]]), відтворення звуку ([[Environmental Audio Extensions|EAX]], [[OpenAL]], [[DirectSound3D]]; раніше підтримувалися [[A3D]]), засоби голосового відтворення тексту, розпізнавання мовлення (тільки для Xbox360, PlayStation 3, Nintendo Wii і Microsoft Windows,<ref>{{cite web|url=http://www.fonix.com/pr/20061002.pdf|title=Fonix Speech joins the Unreal Engine 3|publisher=Fonix Speech|accessdate=2009-01-24|language=англійською|archiveurl=https://www.webcitation.org/65bYD3zVC?url=http://www.fonix.com/pr/20061002.pdf|archivedate=2012-02-20|deadurl=yes}}</ref><ref>{{cite web|url=http://www.fonixspeech.com/voicein_ge.php|title=Fonix Voicein Game Edition|publisher=Fonix Speech|accessdate=24 січня 2009|language=англійською|archiveurl=https://web.archive.org/web/20080517145944/http://www.fonixspeech.com/voicein_ge.php|archivedate=17 травень 2008|deadurl=yes}}</ref> також планувалося для Linux і Mac),<ref>{{cite web|url=http://osdir.com/ml/games.devel.linux/2003-11/msg00000.html|title=[Gd-linux] text to speech and speech recognition libraries|publisher=Daniel, Epic Games Inc.|publication-date=Листопад 2003|accessdate=2009-01-24|language=англійською|archiveurl=https://www.webcitation.org/6I3ec6LIm?url=http://osdir.com/ml/games.devel.linux/2003-11/msg00000.html|archivedate=2013-07-12|deadurl=yes}}</ref> модулі для роботи з мережею й підтримка різних пристроїв вводу.
Для гри у мережі підтримуються технології [[Windows Live]], [[Xbox Live]], і [[GameSpy]],
== Основна термінологія рушія ==
Усі елементи ігрового рушія представлені у вигляді [[Об'єкт (програмування)|об'єктів]], що мають набір характеристик
* Актор ('''actor''') — базовий клас, що містить усі об'єкти, які мають відношення до ігрового процесу й мають просторові координати.
** Павн, пішак ('''pawn''') — фізична модель гравця або об'єкта, керованого штучним інтелектом. Назва походить від {{lang-en|pawn}} — той, ким ''маніпулюють'' (''pawn'' можна перевести також як ''пішак'', тому такий об'єкт без якої-небудь моделі виглядає як [[пішак]]). Метод керування описаний спеціальним об'єктом, такий об'єкт називається ''контролером''. Контролер штучного інтелекту описує лише загальну поведінку пішака під час ігрового процесу, а такі параметри як «здоров'я» (кількість пошкоджень, після яких пішак перестає функціонувати) або, наприклад, відстань, на якій пішак звертає увагу на звуки, задаються для кожного об'єкта окремо.
* Світ, рівень ('''world''', '''game level''') — об'єкт, що характеризує загальні властивості «простору», наприклад, силу тяжіння й туман, у якому розташовуються всі актори. Також може містити в собі параметри ігрового процесу, як, наприклад, ігровий режим, для якого призначений рівень.
Для роботи із простими й, як правило, нерухомими елементами ігрового простору (наприклад, стіни) використовується [[бінарна розбивка простору]] — увесь простір ділиться на «заповнене» і «порожнє». В «порожній» частині простору розташовуються всі об'єкти, а також тільки в ній може перебувати «точка спостереження» при відмальовці сцени. Можливість повного або часткового поміщення об'єктів в «заповнену» частину простору не виключається, однак може привести до неправильної обробки таких об'єктів (наприклад, розрахунки фізичної взаємодії) або неправильної відмальовки у випадку поміщення туди «точки спостереження» (наприклад, ефект «залу дзеркал»). Усі пішаки, що потрапляють в «заповнену» частину простору, відразу «гинуть».
[[Файл:600px-Unreal engine zoning svg.png|thumb|Зонування. У камеру не потрапляє жоден портал (пунктирна лінія) червоної зони, тому об'єкти в ній не обробляються зовсім]]
Поверхня ('''surface''') є основним елементом бінарного дерева простору. Ці елементи створюються на грані
Опис «заповнених» і «порожніх» частин простору виконується за допомогою набору замкнених тривимірних об'єктів, складених з не пересічних поверхонь —
* Суцільні ('''solid''') — повноцінно беруть участь у бінарній розбивці простору.
** Аддитивні ('''additive''') — «заповнюють» бінарний простір.
** Віднімальні ('''substractive''') — «вирізують» об'єми у просторі.
*
* Порожні ('''non-solid''') — тільки створюють поверхні, не впливають на бінарне дерево простору. Використовуються переважно для створення ''об'ємів'' ('''volume''') — частина простору, яка має властивості, відмінні від властивостей ігрового світу. Об'єми мають пріоритет, властивості об'єму з великим пріоритетом застосовуються до акторів, що перебувають у ньому. Ігровий світ завжди має мінімальний пріоритет. За допомогою об'ємів можна змінити гравітацію, в'язкість, туман
== Версії рушія ==
Рядок 47:
Деякі технології рушія Unreal Engine були революційно новими, наприклад використання Dynamic scene graph (DSG). Ця технологія дозволяла ряд ефектів для накладення на поверхні:
* Частково або повністю дзеркальні поверхні.
* Технологія
* Скайбокс ('''Skybox''') —
Особливо добре в
Спочатку рушій був випущений із підтримкою для двох платформ: [[IBM PC-сумісний комп'ютер|IBM PC]] (Windows) і Macintosh. Завдяки модульній системі рушія була заявлена можливість портування рушія на приставки «нового покоління» того часу й пізніше був успішно використаний на таких платформах як GameCube, PlayStation 2 і Xbox. Також підтримувалася незалежність мережевого коду від платформи клієнта — користувачі Mac OS могли грати у багатокористувацькому режимі Unreal з користувачами Microsoft Windows.
|