Форумы-->Форум для внеигровых тем--> 1|2|3
Автор | Крутые вещи #6 |
..
Компьютерная игра Quake стала одной из первых в мире «полноценных» трёхмерных игр.
Игра использует специальную систему проектирования карт, которая выполняет предварительную обработку и предварительный рендеринг трёхмерного окружения с целью уменьшения необходимой мощности для обработки изображения во время процесса игры. Данная возможность была востребована, так как во время выхода игры стандартные процессоры имели частоту 50-75 МГц. Трёхмерная среда, в которой происходят действия игры, относится к карте даже при том, что эта среда трёхмерная по природе, а не плоское двухмерное пространство. Программа для редактирования карт использует многие простые выпуклые трёхмерные геометрические объекты, известные как «браши» (от англ. brush — рус. кисть), которые имеют возможность устанавливать свой размер и степень поворота — такими объектами могут быть различные предметы окружения.
Кисти размещаются и поворачиваются так, чтобы создать закрытые, пустые, объёмные пространства. Когда дизайн карты закончен, эта карта пропускается через препроцессор рендеринга. Этот препроцессор используется для определения местонахождения двух типов пустого пространства на карте: пустого пространства, созданного кистями, в котором будет находиться игрок во время игры; и другого пустого пространства, которое находится снаружи кистей и которое игрок никогда не увидит. Потом препроцессор убирает невидимые поверхности с отдельных кистей, которые находятся вне игрового пространства, и оставляет только те полигоны, которые определяют лишь внешний периметр внутреннего игрового пространства — таким образом достигается значительная оптимизация движка, и как следствие, ускоряется его работа. | ..
Движок Quake, кроме того, что являлся одним из первых в мире трёхмерных движков, также являлся первым движком, который поддерживал аппаратную 3D-акселерацию (ускорение). Первоначально игра Quake (и, соответственно, движок) имела лишь поддержку программного рендеринга. Однако позже Джон Кармак создал версию движка, которая использовала преимущества графического чипа Verite 1000 компании Rendition (эта версия движка получила внутреннее имя VQuake).
Поддержка OpenGL была вскоре добавлена в движок для ОС Windows 95 и выше (внутреннее имя этой версии — GLQuake). Многие полагают, что именно это создало своеобразную революцию в производстве и продаже специализированных видеокарт, которые были нужны тогда для перекладывания обработки графики с центрального процессора, а GLQuake стал первым приложением, которое действительно демонстрировало возможности графического чипсета Voodoo от компании 3dfx. Только две другие карты были способны показывать изображение на GLQuake: карта Intergraph 3D OpenGL и карта PowerVR. Обе эти карты были профессиональными и очень дорогими. | ..
Помимо большого воздействия на методы разработки компьютерных игр и игровую индустрию в целом, движок Quake оказал огромное влияние на методы игрового дизайна. Многие технологии, которые используются в движке Quake, до сих пор востребованы в современных игровых движках.
Практически все игры, вышедшие после Quake, и все современные игры, используют трёхмерную оптимизацию под названием препроцессинг для того, чтобы увеличить скорость игры на персональных компьютерах пользователей и игровых приставках. Именно поэтому 3D-игры способны выводить такую качественную визуальную картинку и эффекты — большинство лишних данных было удалено ещё до того, как игрок смог бы их увидеть. Суть препроцессинга заключается в том, что ненужные объекты выгружаются из оперативной памяти после их использования, например — игрок стреляет из оружия, и использованные патроны, которые вылетают из него, тут же исчезают (при этом выгружаясь из памяти).
Все игры существенно отличаются от профессиональных пакетов трёхмерного моделирования (CAD). Профессиональные программы не имеют никаких временных ограничений на рендеринг изображения. Ничто не может быть выброшено для увеличения скорости рендеринга трёхмерной технической модели, так как любая часть дизайна этой модели может измениться в любой момент. По этой причине профессиональные графические платы были значительно более дорогими и мощными, чем те графические карты, которые использовались в домашних компьютерах для запуска компьютерных игр. Профессиональные видеокарты должны обладать существенно большей мощностью обработки, так как имеют дело с полной сложностью необработанного трехмерного пространства.
Поскольку Quake была первой полностью трёхмерной игрой в своём виде, она должна была иметь возможность работать на компьютере, который не имеет видеоакселератора, поэтому в нее были включены широкие возможности, касающиеся программной обработки изображения, то есть процесс вывода графики ложится не на видеокарту, а на процессор.
В то время видеоакселераторы составляли новый и непредсказуемый рынок, и была неопределённость, будут ли они пользоваться спросом или нет. Сейчас видеокарты составляют известный и высоко развивающийся рынок и являются необходимым компонентом любого нового компьютера. Преимущественное большинство современных компьютерных игр не может вообще работать, если не доступно аппаратное трёхмерное ускорение, то есть видеокарта, в то же время игры того времени преимущественно использовали процессор для вывода графики. | вот)) случайно увидел раньше меня в теме спрашивали видео
создание игрового персонажа для unreal engine 5
https://www.youtube.com/watch?v=x2t59qQzs_I
только на английском языке, лично я в таких случаях включаю русские субтитры для лучшего понимания дела .. | .. желающие могут глянуть id Tech 1, и Quake engine в работе
игра Doom
https://www.youtube.com/watch?v=c7cjq6vrbQ4
и соответственно первый Quake
https://www.youtube.com/watch?v=qGLGjadE1g4 | .. id Tech 2
id Tech 2, прежде известный как Quake II engine, — игровой движок, разработанный Джоном Кармаком в 1997 году. Движок имел множество нововведений, которые повияли даже на современное игровое сообщество. Хотя движок разрабатывался в первую очередь для игры Quake II, позднее его лицензировало множество других разработчиков.
Процессоры 1997го года были все еще слабыми, что исключало поддержку пошаговой прогрузки уровня, как порталы в Build engine. Формат уровней все так же использует BSP-дерево. Дополнительно к нему движок использует технологию Скайлайн - полигоны уровней просчитываются сначала сверху, до условной границы-горизонта не как смоделированно в уровне, а как видит персонаж, затем снизу.
Кармак разрабатывал интерфейс для дизайна уровней, который позволял гораздо быстрее разрабатывать игру так как сама компиляция занимала несколько часов. Так же были использованы разные трюки оптимизации - во время самой компиляции система по средствам разных алгоритмов разделялась на два пространства которое должен был видеть игрок и не должен был видеть. Пространство, которое игрок видел, игра удаляла, что действовало как бы оптимизацией во время игрового процесса, но все равно на расчет требовала много времени. Для работы данного метода требовалась полная герметизация уровня.
Движок является дальнейшим развитием Quake engine. Будучи основным на этом движке, в него также были внедрены наработки GLQuake (расширенный в плане графики Quake под ускоритель Voodoo 1), Quake World (многопользовательский компонент для Quake) и WinQuake (Quake под Windows 95).
Впервые в серии движков от id была включена поддержка ускорителей графики (OpenGL) для карт 3dfx Voodoo, nVidia RIVA TNT, ATI RagePro. Однако на момент выхода движка ускорители графики были мало распространены, поэтому в движок был включен и программный рендеринг.
Освещение уровней использует метод лайтмапов — карт освещения (англ.
lightmap), в которых световые данные для каждой поверхности являются предварительно рассчитанными (для создания предрасчётных карт теней id Software использовала метод radiosity) и сохранены как изображения в файлах. Лайтмапы используются для определения того, какую интенсивность света должна получить каждая модель, но они не определяют направление, из-за чего можно было наблюдать, что тени иногда шли независимо от направления ламп или просто висели на воздухе.
2 декабря 2001 года автор движка, Джон Кармак, опубликовал исходный код движка под лицензией GNU General Public License. | .. глазком на id Tech 2 в действии
Quake II
https://www.youtube.com/watch?v=Vg6IFWH_bJQ | .. id Tech 3
1999 году вышел движок id Tech 3,который дебютировал с Quake III Arena. Первоначально движок носил имя Quake 3 Engine, однако с разработкой нового движка компании id Software, id Tech 4 и переходом на другую схему наименования разработанных движков, его стали называть id Tech 3. Движок id Tech 3 не базируется на id Tech 2 и был написан с чистого листа. На момент выхода первой игры на данной технологии, конкурентами движка на рынке считались Unreal Engine первой и второй версии и первые версии движков
Lithtech.
Технологические особенности движка заметно улучшились за два года после выхода id Tech 2. Первым самым заметным изменением было использование трехмерных моделей формата MD3. Возможности анимации в MD3-формате значительно превосходят таковые в формате MD2, который использует движок id Tech 2. MD2 модели имели ограничение на количество кадров в секунду(на создание анимации всего 10 кадров), а в MD3 такого ограничения нет. Это позволяет создавать более масштабную и реалистичную анимацию, чем на движке Quake II.
Другой важной особенностью формата MD3 является то, что модели могут состоять из нескольких частей, скрепленных друг с другом. Таким образом, каждая часть тела персонажа, например, торс, ноги и голова могут двигаться независимо друг от друга. Каждая часть модели может иметь свой набор текстур.
Движок имеет несколько вариантов освещения в зависимости от пользовательских настроек. Помимо карт освещения движок использует метод затенения по Гуро. Принцип метода состоит в последовательном вычислении нормалей к каждой из граней трёхмерной модели и дальнейшего определения нормалей вершин путём усреднения нормалей всех примыкающих к вершине граней. Далее на основании значений нормалей по выбранной модели отражения вычисляется освещённость каждой вершины, которая представляется интенсивностью цвета в вершине. Движок способен освещать модели цветным освещением. Значение цвета освещения бралось из так называемой цветовой решетки. Это свойство предоставляло на то время очень продвинутое качество освещения.
В движке реализована виртуальная машина позволяющая выполнять части кода независимо от основной программы. Это позволило более гибко изменять сам движок (устанавливать моды не боясь что из-за ошибки не запустится игра), но и более просто портировать игры на разные платформы (включая Linux, FreeBSD, Solaris, и др.)
В движке реализованы не аппаратные шейдеры, а написанные в виде скриптов.
После успешных лет коммерческого лицензирования на QuakeCon 2005 Джон Кармак заявил, что в скором времени произойдет открытие исходных кодов Quake III под лицензией GNU GPL версии 2; открытие исходных кодов движка стало традицией компании: ранее точно так же были открыты исходные коды предыдущих движков фирмы. 19 августа 2005 года были опубликованы исходные коды движка игры. | .. looking good))
Quake III Arena ...
https://www.youtube.com/watch?v=y2azDyDFycY | .. id Tech 4
Выход id Tech 4 был заметным событием в истории компьютерных игр, так как на своё время выхода он был одним из самых технологичных и инновационных игровых движков. Движок был выпущен как полностью коммерческий продукт, доступный для лицензирования сторонним компаниям. Забегая немного вперед скажем, что после выхода id Tech 4, id Tech 4 перелицензирован как свободное ПО. В качестве API движок использует OpenGL.
id Tech 4 в начале планировался как расширение для движка игры Quake III . Первоначально это представлялось как полное переписывание рендеринга движка, при этом все еще сохраняя другие подсистемы, такие как доступ к файлам и управление памятью. Однако после того, как новая прорисовка стала функциональна, было принято решение переключиться от языка программирования C к C++. Это потребовало полного реструктурирования и переписывания остальной части движка. В итоге небольшие фрагменты кода id Tech 3 перекочевали в код id Tech 4.
Так как движок Так как движок id Tech 4 является текущей технологией id Software, поэтому именно он предлагается для лицензирования сторонним компаниям. Лицензия для одной игры стоит фиксированную сумму: $250 000. При этом игра может выходить как на любой из поддерживаемых платформ, так и на всех одновременно. Если лицензиат хочет использовать движок в множестве игр, условия меняются. При покупке движка покупатель получает весь исходный код id Tech 4 и поддержку следующих аппаратно-программных платформ: PC, Mac, Xbox 360 и PlayStation 3. id Software гарантирует поддержку движка, чистоту и стабильность программного кода, а также своевременный выпуск необходимых обновлений к движку. Перед лицензированием покупатель может получить оценочный (пробный) SDK.
В отличие от предшествующих и широко используемых игровых движков id Tech 3 (известен также как Quake III Engine), id Tech 2 (известен также как Quake II Engine) и Quake engine, движок id Tech 4 имеет существенно меньший успех в его лицензировании третьим лицам. Это особенно очевидно по сравнению с его главным конкурентом, движком Unreal Engine 3. Так, движок приобрёл лишь один сторонний разработчик (Human Head Studios) для одной игры (Prey). Причина такого провала в лицензировании id Tech 4 состоит в том, что движок разрабатывался слишком долго. id Tech 3 вышел ещё в 2000 году, и в 2002—2004 годах в id Software не было актуальной и современной технологии для лицензирования. Этим воспользовался главный конкурент id Software — компания
Epic Games, которая предоставила свой движок Unreal Engine 2. В результате большинство тех, кто приобрёл Unreal Engine 2, перешло с него на Unreal Engine 3, так как эти движки довольно похожи и, соответственно, переход с одного на другой является более легким, чем переход на полностью другой движок. | ...
Унифицированное освещение и затенение — это модель распространения света, которая разработана в 2004 году компанией id Software и внедрена в игровой движок id Tech 4.
Предыдущие трёхмерные игры, такие как Quake III Arena, использовали раздельные модели освещения для определения, как свет освещает игровых персонажей и окружение. Информация про освещение и затенение для игровых уровней и карт была статической, прегенерированной и заранее сохранённой, в то время как эта же информация для игровых персонажей просчитывалась в режиме реального времени (на лету).
Doom 3, первая игра на движке id Tech 4, использует унифицированную модель, которая генерирует освещение и затенение «на лету». Это означает, что любые источники света влияют на всю сцену, а не только на её заранее определённую часть. К возможностям этой технологии относится возможность самозатенения (англ. self-shadowing), которое реализуется с помощью теневых объёмов (англ. shadow volumes). С использованием теневых объёмов персонажи могут отбрасывать тени сами на себя: например, подбородок человека может отбрасывать тень на его грудь. | ..
Технология мегатекстуры (англ. MegaTexture) была добавлена в оригинальную версию id Tech 4. Единственная массивная текстура (32 768 x 32 768 пикселей) покрывает всю карту полигонов и высокодетализированный ландшафт. Мегатекстура может также хранить физическую информацию о ландшафте типа силы тяжести в определенных областях или указывать, какой звуковой эффект должен проигрываться, если игрок двигается по определенным частям карты, то есть ходьба по скале будет казаться отличной от ходьбы по траве. Ожидается, что использование мегатекстуры приведёт к значительно более детальной сцене, чем большинство существующих технологий, использующих так называемые «плиточные» (англ. tile) текстуры, а также добавит инструмент создания ландшафта т. н. «MegaGen». Технология «Мегатекстура» применена в играх Enemy Territory: Quake wars и Rage. | ..
перед тем как завершить с id Tech 4, хочу пару слов о технологии <<Мегаструкура>>
Мегатекстура (англ. MegaTexture) — это графическая технология, разработанная Джоном Кармаком, техническим директором id Software. Его технология повторяет технологию Clipmapping (ClipTexture), которая разработана компанией SGI и уже достаточно давно применяется для текстурирования больших ландшафтов. Отличие мегатекстуры от Clipmap состоит в том, что мегатекстура содержит маску для добавочных текстур повышенной детализации и информацию о типе материала (трава, камень и т. п.). Технология «Мегатекстура» реализована в последней версии движка id Tech 4 и id Tech 5, используется в играх Enemy Territory: Quake Wars от Splash Damage, Rage от id software и в
Wolfenstein: The New Order. Независимыми разработчиками были созданы модификации, позволяющие использовать технологию мегатекстуры в ранее вышедших играх, например, Doom 3.
* Мегатекстура сохранена на жёстком диске и подкачивается при необходимости в оперативную память, позволяя создавать большое количество деталей и разновидностей ландшафта и при этом использует сравнительно мало оперативной памяти.
* Существует несколько версий мегатекстуры в разных уровнях детализации; в каждом уровне она разбита на квадраты одинакового (в пикселях) размера.
Например, мегатекстура 32768×32768 пикселей, покрывающая участок в 640×640 метров, в максимальной (нулевой) детализации разбивается на 32×32 квадрата размером 1024×1024 пикселя (20×20 м). Первый уровень детализации состоит из 16×16 квадратов того же размера (1024×1024 px), но вдвое меньшего пространственного разрешения (то есть, размер каждого квадрата — 40×40 метров), второй — из 8×8 квадратов по 80 м каждый, и т. д.
* Ближайшие к камере пиксели рендерятся с текстурой максимального качества, содержащей только небольшой участок мегатекстуры.
* Следующие пиксели рендерятся с текстурой меньшего качества, и маленьким разрешением.
* Самые дальние пиксели рендерятся с основной текстурой в уменьшенном разрешении.
* В игре Enemy Territory: Quake Wars разрешение мегатекстуры составляет 32768×32768 пикселей.
* В следующем движке компании id Software — id Tech 5 — используется улучшенная версия мегатекстуры разрешением 128000×128000 пикселей | .. и Tech 4 непосредственно в действии
Doom 3 bfg edition ..
https://www.youtube.com/watch?v=-sLZHlTDhxY | .. id Tech 5
id Tech 5 — игровой движок, разработанный и поддерживаемый компанией id Software; является пятым движком серии id Tech 5, кроссплатформенным ПО, предназначенным для использования на персональных компьютерах (Microsoft Windows, GNU/Linux, Mac OS X) и игровых консолях PlayStation 3 и Xbox 360.
На QuakeCon 2007 Джон Кармак, ведущий разработчик игровых движков в id Software, заявил сайту «LinuxGames» о своём стремлении минимализировать использование в движке сторонних коммерческих технологий, которые в конечном счёте не дадут возможности сделать движок открытым. Следовательно, в конечном счёте будет опубликован исходный код id Tech 5, как и его предшественников.
При демонстрации движка было использовано около 20 ГБ текстурных данных и полностью динамический изменчивый мир. В движке используется расширенная технология MegaTexture, которая использует текстуру с разрешающей способностью до 128 000 × 128 000 пикселей (в 16 раз больше по сравнению с последней версией id Tech 4, где использовалась текстура размером 32 768 × 32 768 пикселей).
Джон Кармак упоминал в своём лейтмотиве на QuakeCon 2007 о том, что движок
id Tech 5 будет использовать в качестве API открытый и кроссплатформенный
OpenGL, а не Direct3D 10, , что позволит ему работать на разных платформах без переписывания кода под каждую платформу отдельно. Это уменьшит сложность разработки игры на разных системах.
Движок, вероятно, покажет многие другие графические эффекты, такие как различные материалы для освещения, работу с расширенным динамическим диапазоном (англ. HDR – High Dynamic Range), а также размытость изображения движущегося объекта (англ. motion blur). Движок также будет поддерживать многопоточную обработку на многоядерном центральном процессоре. Рендеринг, игровая логика, искусственный интеллект, физический движок и звуковой движок будут исполняться как параллельно, так и через отдельные потоки данных. | .. Tech 5 looking good))
Rage ..
https://www.youtube.com/watch?v=O5lNw733jso | .. id Tech 6
id Tech 6 — игровой движок серии id Tech, разработан американской компанией id Software и стал преемником id Tech 6. Во время разработки имел кодовое имя id tech 666. На движке выпущены игры DOOM и Wolfenstein II: The New Colossus. Основными разработчиками движка являются Джон Кармак, Джон Олик и пришедший из Crytek в 2014 году Тьяго Соуза.
В 2008 году заявлялось, что в движке должна была использоваться инновационная технология «Spare Voxel Octree» (SVO, рус. Разреженное воксельное октодерево). Геометрия игрового уровня, поддерживаемая этой технологией, должна была иметь не полигональную, а воксельную структуру, то есть геометрические объекты должны были состоять из вокселей. После ухода Джона Кармака из id Software и прихода Тьяго Соуза из Crytek вектор разработки движка изменился — приоритетом стало рациональное использование существующих технологий вместо предложения инновационных. На данный момент очевидно, что движок, как и свой предок и множество других движков, использует полигональную структуру геометрии.
Движок был разработан под восьмое поколение консолей с целью получения современной и насыщенной эффектами картинки при разрешении 1080р и 60 кадрами в секунду. id Tech 6 отличается от предшественника полноценной системой динамического освещения, а также разнообразными эффектами (HDR bloom, motion blur, отражения в экранном пространстве (SSR), временно́й антиалиасинг, боке). Движок использует комбинацию из прямого и отложенного рендеринга — по словам Тьяго Соузы, такой метод позволяет использовать лучшие свойства обоих подходов. | ..
Джон Кармак начал говорить о своем видении движка, который придет на смену id Tech 5, за 5 лет до того, как последний дебютировал в Rage, но после его ухода из id Software в 2014 году Тьяго Соуза был нанят вместо него на посту ведущего программиста рендеринга в компании.
24 июня 2009 года id Software была приобретена ZeniMax Media. Позже в 2010 году было объявлено, что технология id Software будет доступна только другим компаниям, также принадлежащим ZeniMax Media.
В 2008 году, когда id Tech 5 еще не была полностью сформирована, Джон Кармак сказал, что следующий движок от id Software будет смотреть в направлении, в котором будут смешаны трассировка лучей и классическая растровая графика. Движок будет работать путем raycasting геометрии, представленной вокселями (вместо треугольников), хранящимися в октодереве. Кармак утверждал, что этот формат также будет более эффективным способом хранения 2D-данных, а также данных 3D-геометрии из-за отсутствия проблем с упаковкой и границами. Целью движка будет виртуализация геометрии так же, как виртуализированные текстуры в id Tech 5. Это было бы изменением по сравнению с прошлыми движками, которые по большей части используют системы на основе сетки. Однако во время
QuakeCon 08 он также объяснил, что аппаратного обеспечения, способного работать с id Tech 6, в то время еще не существовало. | ..
Ранняя версия четвертой основной игры Doom создавалась на основе id Tech 5, но id Software возобновила разработку в конце 2011 - начале 2012 года после того, как Bethesda выразила обеспокоенность по поводу своего творческого и технологического направления. Когда разработка была возобновлена, было решено начать с кодовой базы Rage на основе id Tech 5, но сделать «большой скачок назад в определенных областях технологий» и «[объединить] функции Doom с Rage».
Впервые Doom был показан публике во время QuakeCon 2014, где было подтверждено, что он работает на ранней версии id Tech 6. Цели разработчиков при создании движка были описаны как способность управлять красивыми играми, работающими в разрешении 1080p со скоростью 60 кадров в секунду, а также повторно вводить динамическое освещение в реальном времени, которое было в значительной степени удалено из id Tech 5. Движок по-прежнему использует виртуальные текстуры (названные «мегатекстурами» в id Tech 4 и 5), но они более высокого качества и больше не ограничивают появление освещения и теней в реальном времени. Физически обоснованный рендеринг также был подтвержден. | ..
Технический анализ Doom показал, что движок поддерживает размытие в движении, глубину резкости боке, размытие HDR, отображение теней, карты освещения, объемы освещенности, освещение на основе изображений, FXAA, объемное освещение/дым, разрушаемое окружение, физику воды, суб- рассеяние поверхности, сглаживание SMAA и TSSAA, направленная окклюзия, отражения в пространстве экрана, карты нормалей, частицы с ускорением графического процессора, которые правильно освещены и затенены, вертикальная синхронизация с тройным буфером, которая действует как быстрая синхронизация, унифицированный объемный туман (каждый свет, тень, На него влияет непрямое освещение, включая каустику воды / рассеяние подводного света), тесселяцию поверхности воды (на лету без тесселяции графического процессора. Каустики динамически генерируются и извлекаются из поверхности воды) и хроматические аберрации. 11 июля 2016 г. id Software выпустила обновление для игры, в котором добавлена поддержка Vulkan. |
1|2|3К списку тем
|