Азы графической оптимизации на примере Crysis 3 (комментарии)
Страницы:
1 2 3 Следующая »
Я предлагал написать подобную статью wat'у, но он не ответил.
хм статья вообще то и не статья а какое то прохождение что ли с поиском полигонов, какойто информативности в ней нет, также можно написать по любую игру или смеятся над drakeface. Может я ошибаюсь но разве это не работа капитана очевидность?
Еще не существует компов которые могут в рантайме просчитывать фото реалистичную картинку. Это всем известно.Поэтому статья ни о чем.
> Я предлагал написать подобную статью wat'у, но он не ответил.
Epsilon, зачем тебе его ответ? Пиши статью, оформляй, пиши модераторам. Если чего-то будет не хватать - тебе напишут и подскажут, чем стоит дополнить.
> хм статья вообще то и не статья а какое то прохождение что ли с поиском полигонов, какойто информативности в ней нет, также можно написать по любую игру или смеятся над drakeface. Может я ошибаюсь но разве это не работа капитана очевидность?
robotcity, для многих - это очевидно. Но не для всех. Мне лично кажется, единственный реальный недостаток данной статьи - что очень мало примеров и информации. Если бы было много и из разный игр - был бы великолепный гайд для начинающим моделлеров и разрабов которые "все-в-одном".
ниачем. восторги как у школьника от прикосновения к какой то тайне... афтору - копай дальше - за комплексное текстурирование в шейдерах, систему декалей, лоды
slava_mib
про объемы это да, если убрать картинки то текст там:
+ Показать
− Скрыть
Автор: Eugene Cone
Вкратце: о чем статейка
Я собрал набор личных заметок о том, как ребята из CryTek элегантно решали вопросы оптимизации отрисовки и создания контента.
Введение
Когда первый Крузис только маячил на горизонте и дразнил игроков продвинутым графоном, мои однокурсники с открытыми ртами ждали пришествия этой игры и предвкушали наслаждение графоном. Один и вовсе мне заявил, что после выхода Крузиса в мои игры никто играть не будет, потому что такой уровень графики мне не потянуть. Графика графикой, но без геймплея игра превращается в технодемку или демосцену. Я без сожаления пропустил первое пришествие гиганта, второе тоже не оценил, и только после выхода завершающей третьей части решил пощупать, что там наворотили ребята в товариществе с производителями видеокарт.
Поехали
Много слов было сказано о программных особенностях оптимизации рендера игры, но я пока не видел статью об оптимизации контента, поэтому на этом аспекте хочу заострить внимание.
Когда Крузисы было решено собирать не только для ПК, Крайтек столкнулись с необходимостью играть по консольным правилам - вместо джунглей и просторов необходимо было делать более компактные локации с бОльшим количеством деталей, чтоб окружение не казалось стерильным. После того, как пару недель назад запустил поиграть Край 3, сделал лично для себя много выводов по поводу оптимизации и в своей игре.
Итак, момент №1. Его я впервые заметил только тогда, когда поставил игру на паузу:
Четырехугольные перила. 4 полигона на трубу. От одного такого заявления многие геймдизайнеры будут готовы отправить вас на помойку, но в игре ААА-класса перилки вот такие :D
Чтобы скрыть четырехугольность перил, они соединяются восьмиугольными сочленениями.
И таких примеров в игре куча!
После этого я загорелся желанием копать дальше.
Момент №2. Дизайнеры любят панели с кнопочками и системки частиц.
Крайтек сделали все, чтобы в реале эти панели состояли из одного четырехугольника:
Один полигончик на всю лицевую сторону панели. Тут, к сожалению, без вида сбоку.
Большинство крупных систем частиц представляют из себя системы, рендерящие от силы 10-20 огромных спрайтов с кучей пылинок - особенно это заметно в депо, где можно ронять поезда и использовать зиплайн.
Момент №3. Скашивание углов.
Друзья-дизайнеры вечно грезят фасками. Везде хотят сглаживать углы - добавлять дополнительные полигоны, чтобы геометрия не выглядела такой острой.
Чтобы было как тут:
Сколько там полигонов для сглаживания угла? 3-5-7?
На самом деле вся колонна - это тупо параллелепипед. 4 полигона на всё.
Момент №4. Чудесная растительность.
Второй уровень встречает игрока растительными преградами, которые мирно колышатся на ветру...
А, нет, это просто сплюснутые низкополигональные сферы с тайленной текстурой и отдельно торчащими однополигональными веточками с прозрачностью, которые шатает вершинный шейдер.
Момент №5. Нагло и в лоб.
Обычно арматуру делают хотя бы из параллелепипеда... Крайтек пошли напролом.
Арматура с кусочками бетона - это один полигон с соответствующей текстурой. Этот объект игрок изначально видит с такой стороны, что не заметно, что он плоский (после того, как Псих неудачно пробует выбить дверь).
Момент №6. Экономия времени.
Дизайнеры хотя бы приблизительно знали, с какой стороны игрок будет видеть здания, а где вряд ли сунется, поэтому не особо волновались с самой муторной частью текстурирования - с разверткой (это мое скромное мнение) в тех местах, где это было не критично.
А вот пример из Фолла4а - как делать не надо:
Отдельные моменты.
Замечали ли вы, как много противников нападает на игрока? Зачастую их не больше 8. Очень редко можно встретить больше 4 врагов на одном экране.
Если врагов больше, то они обычно не видны за стенами, и об их существовании игрок знает только по иконкам визира, а иконки запросто батчатся и отрисовываются за один вызов.
Считаю, что именно по-этому враги "вызывают подкрепление" при потере отряда - данный способ введения врагов на поле боя не так сильно бьет по производительности.
В самой игре при кажущейся свободе и просторе (на примере второго уровня) очень большая часть обзора перекрывается посторонними объектами, а с Occlusion Culling у Крузисов всегда было всё в порядке. Игра не отрисовывает даже то, что загораживает оружие игрока (во второй части точно так).
Мораль
Крузис 3 - это хороший пример грамотной расстановки акцентов внимания игрока - роскошные модели оружия в руках главгероя и напарника, и тотальная экономия на всем, что не важно + текстурки высокого разрешения и уйма эффектов, добавляющих картинке деталей.
И дело-то совсем не в полигонах - игроку по большей части не до них.
Немного отсебятинки
Представьте себе, что ваша игра - это большой спектакль, уровень - сцена с декорациями, а вы - декоратор: станете ли вы строить на сцене для спектакля стену из настоящего кирпича, или пойдете более дешевым и простым способом (поставите фанеру, раскрашенную под кирпич) при условии, что зрители из зала разницы не заметят, а будут увлечены самим представлением?
тянет на простой комментарий здешнего форума, причем некоторые индивиды выдают текст в разы большего этого в обычных дискуссиях.
UPD. наверное мой комментарий уже выглядит как придирка.
robotcity
> наверное мой комментарий уже выглядит как придирка.
как зависть, что не ты написал, скорее:)
robotcity, amd.fx6100, вероятно вы никогда не геймдизайнили и вам не приходилось бить художников и моделлеров по рукам, чтобы они не пихали по 100500 полигонов в кадр и не запекали нормалки в разрешении 2К на объект размером с книгу. Этот маленький сборник заметок я собрал в первую очередь, чтобы доказать крутому знакомому дизайнеру-самоучке, что в даже ААА-играх стремятся экономить вообще на всем и привел примеры. Скажите на досуге знакомым моделлерам про четырехугольные перила в Крайзисе и посмотрите на реакцию.
slava_mib
> > Я предлагал написать подобную статью wat'у, но он не ответил.
> Epsilon, зачем тебе его ответ? Пиши статью, оформляй, пиши модераторам.
Wat же прогает CryEngine. Кому как не ему делиться всякими полезностями про этот движок?
А я... я в этом не разбираюсь, мне придётся его вначале изучить, потом придумать что стоящего смогу про него написать. wat'у в 100 раз проще.
Legionaire
> восторги как у школьника от прикосновения к какой то тайне
Я восторгов не заметил, тупо констатация не очень известных фактов.
Legionaire
> афтору - копай дальше - за комплексное текстурирование в шейдерах, систему
> декалей, лоды
Каюсь, это я разверз сей ящик пандоры: статья не опубликована, а я зачем-то прокомментировал.
Думаю автор начал было писать, но по каким-то причинам не дописал, так что это лишь первые наброски, не более. Но раз ещё не удалено, то шанс на законченность ещё есть.
Sergio
> интересно почитать
Собственно для наброском довольно неплохо.
По сабжу: про это слышал, но прочитал здесь конкретно в примерах, типа подкачал эрудицию.
E-Cone
> Скажите на досуге знакомым моделлерам про четырехугольные перила в Крайзисе и
> посмотрите на реакцию.
:D
Представил))
Epsilon, я отправил статейку в печать еще в декабре) Wat попросил загрузить скрины на сайт и пропал, поэтому она так и висит)
E-Cone
> , чтобы они не пихали по 100500 полигонов в кадр
Если бы только в кадр! Пихают в один объект :)
Больше всего умиляет, как местные "критики" напрочь игнорируют слово "азы" в заголовке.
Это как прийти и разругать серию уроков по азам работы в Unity3D/UE4/Blender или еще каком другом инструменте. Ничего сложного в такой статье и не должно быть, ведь она предназначена для людей которые в теме в лучшем случае "плавают" :)
> вероятно вы никогда не геймдизайнили и вам не приходилось бить художников и моделлеров по рукам, чтобы они не пихали по 100500 полигонов в кадр и не запекали нормалки в разрешении 2К на объект размером с книгу.
E-Cone, это всё хорошо, только вот геймдизайнер к полигонам и текстурам имеет такое же отношение, как большинство посетителей этого форума к марсианам.
> Wat же прогает CryEngine. Кому как не ему делиться всякими полезностями про этот движок?
> А я... я в этом не разбираюсь, мне придётся его вначале изучить, потом придумать что стоящего смогу про него написать. wat'у в 100 раз проще.
Epsilon, так, я не понял. Это ты хотел статью написать, или же ты хотел что бы wat за тебя её написал? xD