Графические технологии в играх: Condemned: Criminal Origins



Введение в обзоры графических технологий в играх
Современная терминология 3D графики
Обзор игры на iXBT.com

Разработчик: Monolith Productions
Издатель: SEGA
Дата выхода: Апрель 2006 г.
Графический API: Direct3D 9

Техническая характеристика

В игре Condemned: Criminal Origins используется тот же самый игровой движок Jupiter Extended ("Jupiter EX") Technology от Touchdown Entertainment, что и в F.E.A.R., рассмотренном нами ранее. Напомню, что Lithtech был разработан собственными силами Monolith Productio ns, затем команда, работавшая над игровым движком, была отделена и получила название Touchdown Entertainment. Последняя версия движка, используемая в обеих упомянутых играх Monolith, отличается от предыдущих использованием новейшего Direct3D 9 рендерера и физического движка Havok.

Новый рендерер использует описания материалов для каждого объекта, материалы связаны с HLSL шейдерами с изменяемыми параметрами (константы, значения цвета и текстурных слоев: основная текстура, карта нормалей, specular и emissive карты). Модель освещения использует унифицированный метод попиксельного освещения Блинна-Фонга, каждый источник света дает диффузную и спекулярную составляющие на всех поверхностях. Как и F.E.A.R., игра Condemned выделяется тем, что на всех поверхностях используется несколько текстурных слоев, в том числе наложение карт нормалей, а для рендеринга некоторых из материалов применяется простая разновидность parallax mapping.

В Jupiter EX используется продвинутая система частиц для таких эффектов, как взрывы, огонь, пар и дым. В F.E.A.R. она использовалась на полную, а вот в Condemned искр и взрывов мало, лишь в последнем уровне много огня и там соответствующие эффекты присутствуют. Игрой используется даже большее количество фильтров постобработки, чем в F.E.A.R., в список входят: bloom, noise, desaturation, sharpen, blur, motion blur (radial blur), depth of field, heat haze, distortion и др. Причем, несколько постэффектов применяется к картинке постоянно, во время игры, а не только в отдельных ее моментах.

Уровни в Condemned: Criminal Origins представлены, в основном, в виде закрытых пространств небольшого размера (комнаты и коридоры), есть и редкие открытые пространства, но очень небольшие, как и в F.E.A.R. Для рендеринга теней игрой используются теневые объемы, доступен уже известный нам метод смягчения границ теней, примененный и во второй игре на Jupiter EX. Все проблемы и недостатки метода остались: мягкость теней достигается большими потерями в производительности, алгоритм работает медленно и не может выдавать корректную картинку при включенном мультисэмплинге.

Игра содержит пиксельные шейдеры версий 1.1, 1.4, 2.0 и даже 2.0b (вероятно, "наследие" ранней разработки для Xbox 360). Количество шейдеров 1.x небольшое, в основном применяются 2.0 (на видеокарте с соответствующей поддержкой). Пиксельные программы версии 2.0 средней сложности, до 60 инструкций. Пиксельные шейдеры в игре используются для расчета освещения от нескольких источников света, смягчения границ теней, наложения карт нормалей, используются в алгоритмах наложения тумана, объемного освещения и постфильтрации, включая фильтры bloom, blur, отражения и преломления и др.

Графическим движком игры используются шейдерные программы, написанные на HLSL, все они заранее скомпилированы и хранятся в подкаталоге game\shaders. На тестовой системе с видеокартой на базе чипа NVIDIA, поддерживающей Shader Model 3.0, применяются вершинные шейдеры версий 1.1 и 2.0 (больше первых) и пиксельные шейдеры версий 1.1, 1.4 и 2.0, большинство из используемых пиксельных программ — версии 2.0. В пиксельных шейдерах версии 2.0 НЕ сделаны оптимизации в виде расчетов с пониженной точностью (partial precision), которые могли бы быть полезны почти для всех видеокарт NVIDIA. Condemned: Criminal Origins — одна из немногих игр, где подобная оптимизация отсутствует.

Объем геометрии, обрабатываемый движком игры в пределах одного кадра в типичных условиях и на максимальных настройках, чуть ниже среднего уровня для современных игр. Количество полигонов в кадре изменяется в пределах от 15000 до 500000 полигонов на кадр, в редких случаях даже доходит до полутора миллионов обрабатываемых треугольников в кадре. Сложность геометрии не очень сильно отличается для разных уровней, хотя есть отдельные примеры с 80000 средних треугольников на кадр, а есть — с 250000. Среднее количество обрабатываемых треугольников в кадре по всей игре на максимальных настройках около 130000-150000.

Почти как и F.E.A.R., на максимальных настройках игра довольно требовательна к объему локальной видеопамяти. В разрешении 1024x768 с включенным антиалиасингом 4x и максимально возможными настройками качества в меню игры она использует до 300 мегабайт видеопамяти (у F.E.A.R. было до 400 Мб). Менеджмент памяти движка показывает те же свойства, по мере прохождения дальше по уровню, новые ресурсы загружаются в нее, но от лишних ресурсов память освобождается только во время сохранения или автосохранения на контрольных точках. Среднее использование видеопамяти в тестовом разрешении 1024x768 с включенным мультисэмплингом и максимальными настройками составляет 160-180 Мб, что значительно меньше, чем в F.E.A.R. И все же владельцам 128-мегабайтных видеокарт не удастся с полным комфортом поиграть на максимальных настройках, будет дополнительно использоваться часть системной памяти. Зато, несмотря на то, что в экстремальных случаях используется до 300 Мб видеопамяти, на 256-мегабайтных картах игра чувствует себя хорошо, никаких притормаживаний не замечено, кроме случаев с автосохранением и подгрузкой ресурсов. Ну а на минимальных настройках игрой используется всего лишь до 60-70 Мб видеопамяти.

Как обычно, при помощи утилиты профилирования PIX, входящей в состав Microsoft DirectX 9 SDK, и плагина из комплекта NVIDIA PerfKit 2, мы собрали интересные цифры. Статистика с нескольких уровней игры показывает, что при максимальных настройках и разрешении 1024x768 видеочип GeForce 7800 GTX простаивал (по счетчику gpu_idle) в среднем всего около 10% времени, но это значение сильно зависит от уровня, есть случаи лишь с 1% простоя (производительность почти полностью ограничена видеочипом), а есть — с 25%. Ясно, что сложность и массовость пиксельных шейдеров достаточно велика, значение pixel_shader_busy, хотя и зависит от уровня игры, но составляет в среднем более 40%, есть уровни с 30%, а есть — с 50%. А вот среднее использование блоков вершинных шейдеров (счетчик vertex_shader_busy) меньше — 6-7%. Поражает низкая эффективность использования вершинных процессоров практически во всех современных играх, вероятно, виноват недостаток полигональной сложности сцен из-за ограничений Direct3D, связанных с затратностью каждого вызова отрисовки. Средняя доля времени ожидания блоками пиксельных шейдеров выборки данных из текстур (счетчик shader_waits_for_texture) — 15%, а ожидание окончания операций записи во фреймбуфер (shader_waits_for_rop) — целых 20-25%! Это говорит о явном смещении баланса в пиксельных шейдерах от математической сложности к текстурной обработке, а также о слишком больших потерях времени на операции с фреймбуфером. Возможно, разработчики пытались использовать сильные стороны консоли Xbox 360, связанные с быстрой работой фреймбуфера в силу архитектурных преимуществ установленного в консоль видеочипа. На ПК же получилась потеря четверти времени работы видеочипа на операции с фреймбуфером.

Также мы как обычно исследовали и влияние некоторых настроек игры на средние показатели счетчиков производительности NVIDIA. Данные нескольких опытов сведены в таблицу:

Счетчик Default FSAA 4x AF 16x Post FX off Shadows off Soft shadows
gpu_idle, % 8.3 1.5 4.1 29.2 11.9 4.6
vertex_shader_busy, % 12.8 10.5 11.9 15.8 7.7 11.7
pixel_shader_busy, % 51.6 48.4 47.2 31.0 57.4 58.6
triangle count, polys 180750 177200 179769 181231 112277 179256
D3D vidmem/agpmem, Mb 150/8 178/8 150/8 151/8 146/8 149/8
shader_waits_for_texture, % 4.3 6.5 14.6 3.4 4.8 4.4
shader_waits_for_rop, % 5.3 23.3 4.6 4.7 4.5 4.9

Значения gpu_idle интересны, прежде всего, цифрами при отключенных тенях и эффектах постобработки. В остальных нет ничего неожиданного, загрузка видеочипа возрастает в режиме с включенным антиалиасингом, анизотропной фильтрацией и мягкими тенями. С отключенными тенями нагрузка на чип значительно меньше, а отключенная постобработка влияет еще сильнее — похоже, что чип загружен ей действительно очень сильно. На значение vertex_shader_busy рассматриваемые нами настройки оказывают небольшое влияние, только отключение стенсильных теней заметно снижает использование вершинных блоков, ведь количество геометрических расчетов уменьшается, что видно и по количеству рассчитываемых полигонов. Значение pixel_shader_busy отличается больше всего в режиме с выключенной постфильтрацией, использование пиксельных блоков сразу же снижается почти в два раза.

Счетчик количества рассчитанных в кадре полигонов подтверждает вышесказанное про vertex_shader_busy, если отбросить небольшую разницу, возникшую из-за погрешности тестирования, можно увидеть, что полигонов значительно меньше (более чем в полтора раза) только в режиме без теней. Значения счетчиков используемой локальной и системной видеопамяти показывают ожидаемую картину, включение антиалиасинга приводит к увеличению цифры на 28 мегабайт, а в обратную сторону влияет отключение теней, но уже не так сильно.

Ну и последние два счетчика: shader_waits_for_texture и shader_waits_for_rop. Первое значение сильнее всего изменяется при включении анизотропной фильтрации, что вполне понятно, ведь для нее требуются дополнительные текстурные выборки. Также заметно изменение в случаях включенного мультисэмплинга и режима с отсутствием постобработки. Время ожидания записи данных во фреймбуфер значительно отличается только для режима с антиалиасингом. Мультисэмплинг увеличивает долю использования блоков ROP, так как количество записываемых сэмплов возрастает. Интересно то, что отключение постобработки никак не повлияло на значение этого параметра…

Краткая история появления

Как мы уже отмечали в статье по F.E.A.R., компания Monolith разрабатывала игровой движок Lithtech для того, чтобы использовать его как в своих проектах, так и выдавать лицензии на его использование сторонним компаниям-разработчикам. За все время разработки движка, разные его версии использовались во множестве игр собственного производства Monolith и сторонних компаний. Графический движок Lithtech 1.0 на момент появления не был сравним с более известными движками Quake и Unreal, у него недоставало поддержки некоторых современных на то время графических технологий. Зато он был прост в использовании, что явилось следствием изначальной разработки в том числе для продажи другим компаниям. Примеры игр на базе первой версии Lithtech: Shogo: Mobile Armor Division и Blood II: The Chosen, обе вышли в 1998 году и были довольно популярными играми того времени. Движок версии 1.5 был значительно улучшен и даже превосходил движок Quake 3 и Unreal Engine в некоторых аспектах, он поддерживал много нового, например, лицевую анимацию и физическую модель для транспортных средств. На Lithtech 1.x базировались такие известные игры, как No One Lives Forever и Aliens vs Predator 2, появившиеся в 2000 и 2001 годах, соответственно.

Но пика своего развития и известности движок Lithtech достиг к версии 2.0. Эту версию движка назвали Jupiter и с этой версии Lithtech стал полностью конкурентоспособен, даже по сравнению с такими грандами, как Unreal Engine и Quake Engine. На базе этой версии были разработаны известные игры: No One Lives Forever 2: A Spy In H.A.R.M.'s Way (вышла в 2002 году, на время выхода была одной из наиболее продвинутых технологически ПК игр), TRON 2.0 (игра вышла в 2003 году, использовала модифицированную версию движка Jupiter), The Matrix Online (вышла в 2005, одна из последних игр, использующих Jupiter). И наконец, последняя модификация игрового движка Lithtech — Jupiter EX, которая была впервые представлена широкой публике в одной из наиболее популярных игр 2005 года — F.E.A.R. Второй игрой на его основе и стала рассматриваемая нами сегодня Condemned: Criminal Origi ns, вышедшая сначала на Xbox 360, а затем и на ПК.

Первые новости про игру появились в феврале 2005 года. Тогда Monolith Productions заявила о разработке игры Condemned, предназначенной для некоторых консолей следующего поколения и ПК. Издателем игры выступила компания SEGA, было объявлено, что в магазины игра поступит под конец года. К сожалению, выпуск игры на платформу Xbox 360 для обладателей ПК означал временную эксклюзивность проекта для этой консоли. Видимо, Microsoft договорилась с SEGA, чтобы на ПК игру выпустили несколько позже.

Во время игровой выставки E3 (которая ныне прекратила свое существование в том виде, в котором мы ее знали) в мае 2005 года, некоторым журналистам дали возможность поиграть в предварительную версию игры с одним уровнем и составить на этой основе первые впечатления. Им показали демку, интересную в том числе с графической точки зрения, со специальными эффектами, в том числе освещения, частиц и постобработки, которые очень популярны в современных играх, но предупредили, что эта версия выглядит недостаточно хорошо из-за ограничений девкитов. Также журналисты просмотрели несколько технологических демок и остались ими очень довольны.

Кстати, еще в конце прошлого года, киностудия Warner Bros. объявила о намерении выпустить фильм по мотивам Condemned: Criminal Origins. Предполагается, что сценарий фильма будет тесно связан с сюжетом продолжения игры, по словам представителей компании кинофильм и Condemned 2 выйдут одновременно и будут дополнять друг друга. Но фильмы фильмами, а ведь будущее ПК версии проекта на то время было довольно туманным. Только в начале текущего года было объявлено, что на ПК игру выпустят уже весной, но лишь в марте была указана конкретная дата — 11 апреля. Так и случилось, в середине марта "наша" версия игры пошла "на золото", а в апреле появилась в продаже.

Итак, Condemned: Criminal Origins — это игра от первого лица, разработанная компанией Monolith Productio ns, расположенной в Вашингтоне, и изданная SEGA на данный момент в версиях для Xbox 360 и ПК. Пока что единственная консольная версия вышла в ноябре 2005 года в Северной Америке и в начале декабря 2005 г. в Европе, примерно в момент запуска консоли, в версия для персональных компьютеров — в апреле 2006 г. По слухам, готовится и версия для консоли Sony PlayStation 3, но она пока что не была анонсирована.

В игре используется вид от первого лица, и игра похожа на шутер, т.е. назвать её FPS можно, но с натяжкой, так как стрелять там приходится не так уж часто. В Condemned: Criminal Origins очень много рукопашного боя с применением подручных средств, а также несвойственных для жанра FPS небольших загадок на тему поиска отпечатков пальцев и т.п. Вообще, игра ближе к так называемым психологическим триллерам и играм-"ужастикам", чем к привычным FPS. Главный дизайнер игры Frank Rooke, который также участвовал в разработке известной игры Tron 2.0, игры продолжения кинофильма Tron, предложил игрокам заняться охотой на серийных маньяков в качестве агента ФБР. Игра стилистически похожа на монолитовскую же F.E.A.R., это и понятно — одни и те же разработчик и движок, похожая стилистика городских районов. Но и отличия у игр есть, в том числе довольно весомые…

Первые скриншоты игры были публично доступны в мае 2005 года, во время выставки E3, чего и следовало ожидать. Уже на них были видны уже известные и оригинальные эффекты постобработки: bloom, desaturation, noise и др., динамические тени для всей геометрии и достаточно сложные модели персонажей с наложением карт нормалей. Впрочем, также была заметна и слабая геометрическая сложность уровня в целом.

   

Более поздние скриншоты, датированные летом 2005 года, подтверждали все наши слова о визуальной и технологической сторонах будущей игры и показали некоторые свежие эффекты, такие как объемное освещение:

   

Последующие скриншоты показывали еще большее из того, что мы затем увидели в игре. Так, перед самым выходом на Xbox 360, создатели уже не стеснялись выкладывать скриншоты, которые полностью отражали уровень картинки финальной версии, на тот момент пока еще консольной. Тут уже лучше видны динамические стенсильные тени, наложение карт нормалей на всех поверхностях и некоторые эффекты постобработки.

   

А дальше… Дальше был релиз на Xbox 360 и ожидание игры на ПК. За это время технологический уровень графики в игре не изменялся, и на ПК вышла версия, идентичная консольной.

Особенности графики в игре

Технологический уровень графики в Condemned был задан F.E.A.R. — игрой на том же движке. Как и предыдущая игра на последней версии Lithtech, Condemned предлагает множество довольно темных indoor уровней. Вся игра проходит в помещениях и небольших открытых пространствах, которые отличаются очень простой геометрией и освещением. В отличие от предшествующей F.E.A.R., сравнений с которой избежать не получится в любом случае, в игре нет того количества специальных эффектов, выполненных при помощи системы частиц (взрывов, искр и т.п., хотя в ограниченном количестве они в игре есть), зато к разнообразным эффектам постобработки были добавлены некоторые новые: bloom, noise и др.

Indoor     Outdoor

Релиз игры на Xbox 360 и ПК показал, что в игре широко применяется наложение карт нормалей, каждый материал имеет несколько слоев (diffuse, normal, specular, emissive), многие поверхности богаты мелкими деталями и единственный недостаток — в сравнительно низком разрешении некоторых текстур и карт нормалей.

Normal mapping     Normal mapping

Среди всех поверхностей отдельно выделим те из них, которые используют parallax mapping. Таких поверхностей в игре не так много, как можно предположить, но кирпичные стены по всей игре эту технику используют:

Parallax mapping     Parallax mapping

К сожалению, ко всем остальным поверхностям эффект не применяется, а ведь он мог быть применен на гораздо большем количестве объектов и они реально бы выглядели лучше при очень малом падении производительности. По сравнению с F.E.A.R., тут нет даже parallax mapping для дырок в стенах от попадания пуль. Впрочем, патронов в игре крайне мало и это не бросается в глаза, обычно их экономят и все пули попадают в тела врагов :).

Не совсем понятно что было причиной того, что многие текстуры, примененные в игре, явно меньшего размера, чем в той же F.E.A.R. Это видно и по статистике использования видеопамяти, данный параметр в этой игре Monolith также выше, чем у Condemned. В F.E.A.R., о котором идет речь, гораздо более полно раскрыты технологические возможности движка, по сравнению с рассматриваемой Condemned: Criminal Origins. Зато в последней лучше дизайн уровней, разнообразнее локации, большее внимание уделено мелочам и т.п. Такое впечатление, что F.E.A.R. делали "технари", то есть команда, в которой 3D программисты сильнее дизайнеров, а в Condemned — наоборот, дизайнеры явно лучше сделали свою работу. Хотя, если считать текстуры ответственностью дизайнеров, то явно не все так просто, как написано выше:

Textures     Textures

К моделям людей претензий немного, но они есть. Несмотря на то, что в целом модели персонажей сделаны очень неплохо, некоторые ракурсы переднего плана выдают явные недостатки их полигональной сложности. Не говоря уже об уровнях в целом, которые местами похожи на те, что мы уже видели в F.E.A.R. — всё в них квадратное и угловатое. Хотя дизайнеры расщедрились на разные мелочи, вроде надписей на стенах и мусора на улицах и в помещениях. Из-за этого сцены смотрятся в целом лучше, чем в F.E.A.R. Ну а модели людей, если не приближать их к камере слишком сильно, выглядят в меру реалистично:

Geometry     Geometry

Другое дело, что, на мой взгляд, можно было сделать более сложные модели хотя бы для скриптовых сцен. Ведь игра претендует на кинематографичность, а какая тут кинематографичность, если на сценах с близким расположением людей к камере видно всю их посредственную геометрическую детализацию? Нормалмаппинг ведь не спасает от всех бед, стыдно должно быть за такое в 2005-2006 годах. Особенно, если речь о главном герое:

Geometry     Geometry

Как и F.E.A.R., на максимальных настройках качества игрой рендерятся тени от всех источников освещения и для всей геометрии в сцене. Используются теневые объемы, получившие большую популярность для indoor шутеров от первого лица, особенно таких темных. Мягкие тени в Condemned точно такие же, что и в F.E.A.R., и достигаются они при помощи тех же теневых объемов, когда несколько одинаковых теней смешиваются друг с другом и подвергаются дополнительной постобработке. В результате получаются приятные тени, даже такая примитивная мягкость теней придает им реалистичности. С другой стороны, метод плохо совместим с мультисэмплингом и поэтому подлежит отключению в большинстве случаев, оставаясь делом вкуса — или антиалиасинг или псевдомягкие тени.

Shadows     Shadows

Хотя такие эффекты, как водные поверхности, движком поддерживаются, и для них даже есть соответствующие пункты в меню графических настроек игры, в Condemned они не используются. Луж в игре много, но отражения на них переданы статическими картами среды. Да и в темной игре, которая проходит в основном в городе, вряд ли найдется достаточно мест, где можно было бы разместить водные поверхности.

А вот спецэффекты на базе систем частиц в игре все-таки нашли свое место. Их реализация в F.E.A.R. выгодно отличала игру от других, но в Condemned частицы встречаются редко и не являются одной из сильных визуальных сторон игры.

Particles     Particles

Ну и в самом конце рассмотрим один из наиболее выгодных моментов в графической части игры — эффекты постобработки изображения. В Condemned применяется несколько давно уже привычных фильтров постобработки, такие как bloom — фильтр, увеличивающий яркость светлых участков изображения, noise — спецэффект для придания "кинематографичности" скриптовым сценам и применяемый в некоторым других случаях, motion blur (или radial blur) — эффект размытия в движении, применяемый в скриптовых сценах игры и в режимах поиска улик, distortion — эффект искажения изображения неровными прозрачными поверхностями, а также некоторые другие постфильтры: desaturation, sharpen и т.д.

Postprocessing (bloom) Postprocessing (bloom) Postprocessing (desaturation) Postprocessing (desaturation)
Postprocessing (distortion) Postprocessing (distortion) Postprocessing (radial blur) Postprocessing (radial blur)
Postprocessing (noise) Postprocessing (noise) Postprocessing (sharpen) Postprocessing (sharpen)

Технологичность 3D графики в игре находится на хорошем уровне игры F.E.A.R., который за это время уже успел немного устареть. В явных плюсах: динамические тени от всех источников света и всей геометрии, с возможностью смягчения их границ, многослойное текстурирование поверхностей, повсеместное наложение карт нормалей, реализация для некоторых из них метода parallax mapping — простого алгоритма без трассировки лучей для определения пересечений деталей поверхностей, множество различных эффектов постобработки, применяемых часто и по делу.

Из отрицательных сторон графики в игре отмечаем недостатки дизайна: несколько однообразные indoor уровни и фактическое отсутствие outdoor, недостаточная геометрическая детализация уровней и моделей персонажей, низкое разрешение некоторых текстур, отсутствие действительно современных эффектов, таких, как parallax occlusion mapping, который по зубам и Xbox 360 и современным ПК. Один из самых явных недостатков — отсутствие возможности рендеринга в HDR диапазоне. Большинство технологичных игр это умеют, а в нашем случае, похоже, что HDR рендеринг с использованием форматов повышенной точности не поддерживается ни игрой, ни движком. А ведь те же постфильтры, рассчитываемые в повышенном динамическом диапазоне, могли быть более высокого качественного уровня… Не говоря про настраиваемый tonemapping, который весьма пригодился бы в такой темной игре.

Настройки качества графики

Из-за того, что Condemned вышла позже F.E.A.R., нагрузка на видеокарту уже не так сильно поражает воображение, хотя игра остается очень требовательной. Она тоже использует мощность современных видеочипов на полную, но на данный момент заставить игру работать плавно на максимальных настройках уже не так сложно, как это было с F.E.A.R. в свое время. Хотя список видеокарт, обеспечивающих средний FPS выше 40-50 кадров в секунду на максимальных настройках с включенными анизотропной фильтрацией и антиалиасингом в разрешении 1024x768 по сравнению с предыдущей игрой почти не изменился, такие видеокарты сейчас получили большее распространение, чем полгода назад. Это видеокарты, начиная с ATI RADEON X1800 XL и NVIDIA GeForce 7800 GT. На таких видеокартах и более мощных можно выставить все настройки на максимум в разрешении 1024x768, а во всех остальных случаях для достижения необходимого баланса между частотой смены кадров и качеством картинки нужно обратить особое внимание на графические настройки игры.

Как и в F.E.A.R., вы можете позволить игре автоматически выбрать оптимальные для вашей системы настройки, используя опцию "Auto-detect" в меню игры "Options-Perfomance-Advanced Options". Однако, эта простенькая настройка не даст того эффекта, которого можно добиться, настроив всё необходимое вручную. Так, для тестовой системы игра установила разрешение 800x600 и не самые максимальные настройки, всего лишь 2x антиалиасинг и 4x анизотропную фильтрацию. Можно смело говорить о том, что после ручной модификации параметров вы сможете получить более высокую производительности и/или более качественную картинку. В секции производительности "Perfomance" в меню игры есть подменю, которое больше всего нас интересует — "Advanced Options". На этой странице расположены необходимые настройки, влияющие на производительность и качество рендеринга.

Если нужная частота кадров, которую можно оценить визуально, по плавности игры, не достигается, или наоборот, игра автоматически выставила слишком низкие настройки, нужно для начала проверить получаемую частоту кадров. К сожалению, в отличие от F.E.A.R., в Condemned нет встроенного теста производительности, поэтому нам опять приходится прибегать к утилите FRAPS и др. Они, как обычно, не дают такой точности, как нормальный встроенный бенчмарк, но позволят оценить получаемую производительность с достаточной для нас погрешностью. Чтобы измерить производительность, нужно загрузить тяжелый уровень с низким FPS и замерять частоту кадров при помощи FRAPS прохождением определенной части уровня. Для достижения нужной играбельности, необходимо изменять игровые настройки так, чтобы достичь средней частоты кадров хотя бы более 30-40 FPS. Основные параметры настройки, на которые следует обратить внимание конкретно в Condemned: Criminal Origins: "Fullscreen FX" (пожалуй, самая тяжелая настройка для нашей тестовой системы), "Enable Shadows" (также очень затратная возможность, особенно если включить мягкие тени), ну и как обычно "FSAA" и "Screen Resolution", большая зависимость в игре прослеживается именно от них, а не от уровня анизотропной фильтрации, например.

Примерная оценка полученного количества кадров в секунду должна быть такова: средняя частота кадров не должна быть менее 35-40 FPS, а еще лучше — около 60. Если средний FPS больше 50-60, то можно попробовать улучшить качество картинки, изменив настройки в большую сторону. Повторяя эксперименты, нужно постараться получить приемлемый лично для вас вариант. Помните только что уровни в игре попадаются разные, и если в вашем тестовом не было каких-то эффектов, их появление в других участках игры может вызвать низкую производительность.

Как обычно, в обзоре мы рассмотрим влияние графических настроек игры с двух сторон, принимая за точку отсчета максимальные и минимальные настройки в разрешении 1024x768. При минимальных настройках качества мы будем определять отрицательное влияние включенной на максимальное значение настройки, а при максимальных — наоборот, прибавление в кадрах в секунду от каждой установки, выкрученной на минимум. Это позволит более полно оценить влияние каждой настройки на общую производительность, и будет полезно как для пользователей с недостаточно мощными системами, желающими получить хорошее качество, так и для тех, кто хочет узнать, какие настройки имеет смысл снизить в первую очередь.

Выбор разрешения в Condemned сильно влияет на производительность, игра очень требовательна к эффективной скорости заполнения (филлрейту), важнейшими параметрами видеокарт для игры являются филлрейт, зависящий от рабочей частоты видеочипа и количества пиксельных конвейеров, и пропускная способность памяти, зависящая от частоты работы и ширины шины памяти. Пример тестовой системы с установленной видеокартой GeForce 7800 GTX 256MB, если взять 1024x768 за 100% и посчитать соотношение средней частоты кадров в других разрешениях: 640x480 — 160%, 800x600 — 135%, 1024x768 — 100%, 1280x1024 — 70%, 1600x1200 — 50%. То есть, средняя частота кадров в 1600x1200 на тестовой системе получилась в два раза ниже, чем в 1024x768, а в 640x480 — более чем в полтора раза больше. Это на максимальных настройках, с антиалиасингом и анизотропной фильтрацией, а на минимальных картина иная: 640x480 — 105%, 1024x768 — 100%, 1600x1200 — 75%.

Диапазон доступных разрешений в меню "Options-Display" на тестовой системе весьма широк, в списке есть все разрешения, присутствующие в настройках дисплея Windows: 640x480, 720x480, 720x576, 800x600, 848x600, 960x600, 1024x768, 1088x612, 1152x854, 1280x720, 1280x768, 1280x800, 1280x900, 1280x960, 1360x768, 1600x900, 1600x1024, 1600x1200, 1920x1080, 1920x1200, 1920x1440, 2048x1536. Похвально, что выбрать можно любое рабочее разрешение, в том числе и популярное 1280x1024 с его не совсем обычным соотношением сторон, также в списке есть как разрешения с привычным соотношением сторон 4:3, так и с широкоэкранными 16:9 и 16:10. Но радоваться рано, по умолчанию игра использует широкоэкранный режим рендеринга в любом случае, даже при соотношении сторон 4:3. В таких случаях в верхней и нижней частях экрана добавляются черные полосы, которые вы можете видеть на скриншотах. Что это? Прицел на консоли с их обычными устройствами вывода или просто мода? Но почему не сделали возможность отключения "фичи" для всех остальных? Непонятно. К слову, в этом же подменю можно настроить еще параметры включения вертикальной синхронизации и цветовой гаммы изображения. Настройка VSync помогает избавиться от артефактов разрывающейся на части картинки ("tearing") и для достижения максимального качества полезна, но также ограничивает производительность в некоторых случаях.

Чтобы вызвать меню 3D настроек игры, нужно выбрать раздел "Options" в главном меню, затем выбрать подраздел "Perfomance". Появится основное меню графических настроек игры. Общая настройка "Detail Level" воздействует на все параметры качества картинки. Она пригодится, прежде всего, недостаточно хорошо разбирающимся в 3D технологиях пользователям, нашим же читателям я рекомендую выставление на максимум при ручном изменении конфигурации. Для наглядности приводим таблицу зависимости основных настроек игры от двух параметров "Detail Level" ("Computer" и "Graphics Card"):

Detail Level Minimum Low Medium High Maximum
Screen Resolution 640x480 640x480 640x480 800x600 800x600
FSAA Off Off Off 2x 4x
Texture Filtering Bilinear Bilinear Trilinear Anisotropic
4x
Anisotropic
16x
Bloom Off Off On On On
Fullscreen FX Off Off On On On
Light Detail Minimum Minimum Medium Maximum Maximum
Enable Shadows Off Off On On On
Shadow Detail Minimum Minimum Medium Maximum Maximum
Soft Shadows Off Off Off Off On
Texture Resolution Minimum Minimum Medium Maximum Maximum
Shaders Minimum Minimum Medium Maximum Maximum
Corpse Detail Minimum Minimum Medium Maximum Maximum
Effect Detail Minimum Minimum Medium Maximum Maximum
Model Decals Off Off Medium Maximum Maximum
Particle Bouncing Minimum Minimum Medium Maximum Maximum
Water Resolution Minimum Minimum Medium Maximum Maximum
Reflections & Displays Minimum Minimum Medium Maximum Maximum
Volumetric Light Density Minimum Minimum Minimum Medium Maximum
Volumetric Lights Off Off Off On On
World Detail Minimum Minimum Medium Maximum Maximum

Максимально возможное качество картинки действительно достигается при установке "Maximum", даже включается алгоритм смягчения теней, который плохо работает совместно с мультисэмплингом. Все остальные уровни Detail Level тоже вполне сбалансированы, непонятно только полное соответствие настроек "Low" и "Minimum", уж можно было как-нибудь их разнести. В любом случае, для достижения оптимальных настроек качества и производительности все же рекомендуется вручную настроить игру в подменю "Advanced Options", которое мы сейчас и рассмотрим.

Advanced Options — Detail

  • Corpse Detail (Minimum/Medium/Maximum) — настройка, определяющая количество вражеских трупов на уровне, она изменяет время их исчезновения. Например, на минимальной установке тела уничтоженных врагов исчезают сразу после их падения на землю. Понижать настройку в данной игре почти не имеет смысла, так как количество врагов в ней жестко ограничено, с трудом вспоминаются места с более чем 3-4 врагами в одной комнате. На тестовой системе особой разницы в производительности, по большому счету, не обнаружено.

  • Effect Detail (Minimum/Medium/Maximum) — настройка уровня детализации спецэффектов в игре, более низкие уровни снижают количество и качество таких эффектов как взрывы, искры, и т.п. Значение параметра влияет и на количество рассчитываемых динамических источников света, например, вспышек от выстрелов. Так как оружия, взрывов и прочего в Condemned немного, настройка мало влияет на общий уровень производительности на средних и мощных системах, однако она может иметь куда большее значение для систем низкого уровня.

  • Model Decals (Off/Medium/Maximum) — параметр, определяющий количество следов от выстрелов и ударов на телах врагов. При отключенной настройке никаких следов не остается вообще, в обратном случае значение задает количество таких отметин на моделях персонажей. На скорости сказывается весьма слабо, на данной игре этому просто негде развернуться, это же не F.E.A.R.

  • Particle Bouncing (Minimum/Medium/Maximum) — настройка, определяющая количество частиц, участвующих в рендеринге эффектов при помощи систем частиц, таких, как дым, пар, огонь, искры и т.п. Причем, судя по описанию, задается значение частиц, отражающихся от разных поверхностей. И опять, как и в случае предыдущих параметров, и эта в Condemned не оказывает видимого влияния на производительность на большинстве игровых систем. Да и видимых отличий я что-то не обнаружил.

  • Water Resolution (Minimum/Medium/Maximum) — значение, изменяющее уровень детализации водных поверхностей с изменяемой геометрией, при помощи которой формируются настоящие волны, рисуемых движком игры. Количество разбиений сетки серьезно влияет на реалистичность водных поверхностей, но, как уже отмечалось, несмотря на поддержку движком игры нескольких алгоритмов для рендеринга водных поверхностей, в игре таковые отсутствуют, поэтому и никакой разницы в производительности быть не может.

  • Reflections and Displays (Minimum/Medium/Maximum) — эта настройка меняет качество изображений на немногочисленных дисплеях охранных систем в игре, показывающих происходящее в реальном времени. Также она влияет и на отражения водных поверхностей. Снижение настройки убирает некоторые дисплеи и отражения на воде в F.E.A.R., но за неимением таковых в Condemned: Criminal Origins она не имеет никакого смысла. В любом случае, на современных видеокартах отключение отражений на воде в F.E.A.R. не дает прироста производительности.

  • Volumetric Lights (Off/On) — отвечает за включение объемных источников света, свет от которых видно в воздухе. Вот эта настройка уже наоборот, больше нужна для Condemned, чем для F.E.A.R., именно в рассматриваемой игре объемные источники освещения встречаются чаще. На старых видеокартах рекомендуется отключить настройку, так как подобные источники света могут сильно влиять на производительность в тех сценах, где они есть. На нашей тестовой системе отключение объемных источников освещения дает незначительное увеличение производительности, всего на пару-тройку процентов, а вот на более слабых компьютерах может наблюдаться другая ситуация.

    Volumetric Lights Off     Volumetric Lights On

  • Volumetric Light Density (Minimum/Medium/Maximum) — это значение неразрывно связано с предыдущей опцией, оно определяет "плотность" эффекта объемного освещения и работает только в случае включенного объемного освещения. Снизив эту настройку, можно получить компромиссное решение между производительностью и качеством объемного освещения. Как и в предыдущем пункте, значительного влияния на производительность не обнаружено.

    Volumetric Light Density Minimum     Volumetric Light Density Maximum

  • World Detail (Minimum/Medium/Maximum) — это значение определяет количество и качество объектов окружения, таких, как стены бутылки, мусор и прочие мелкие детали. Так, при минимальной настройке исчезают надписи на стенах и перечисленные объекты. Влияние на производительность в используемом для тестирования скорости уровне оказалось на уровне 5-10%, так что владельцам маломощных систем можно пожертвовать подобными деталями, которые, впрочем, призваны усиливать атмосферу темного и грязного города в игре.

Advanced Options — Graphics

  • FSAA (Off/2x/4x) — понятная из названия настройка, отвечающая за включение полноэкранного сглаживания и за его уровень. На тестовой системе предлагаются два уровня, соответствующие мультисэмплингу с двумя и четырьмя сэмплами, а также полное отключение сглаживания. Ничего особенно нового тут сказать нельзя, кроме того, что производительность очень сильно зависит от выставленного уровня FSAA. Так, на тестовой системе в разрешении 1024x768 с максимальными настройками выключение антиалиасинга уровня 4x привело к повышению скорости рендеринга более чем на 25%, а включение FSAA 4x в том же разрешении, но с минимальными настройками качества — к снижению скорости на 15-17%. Так что FSAA — один из главных кандидатов на отключение при недостаточной производительности игры.

  • Bloom (Off/On) — параметр конфигурации, включающий и выключающий фильтр постобработки bloom. Параметр ответственен только за этот вид постобработки и не трогает остальные. Влияние на производительность на тестовой системе обнаружено, хоть и небольшое — 4% при максимальных настройках и 5% — при минимальных. Если визуально результат выполнения постфильтра вам не нравится, можно получить несколько процентов прироста скорости от его отключения.

    Bloom Off     Bloom On

  • Fullscreen FX (Off/On) — настройка, включающая все остальные виды постобработки, использующиеся в игре: desaturation, sharpen, radial blur, depth of field и др. Это относится как к тем фильтрам, которые используются в скриптовых роликах, так и к тем, которые применяются в самой игре, например, при поиске улик и в некоторых других ситуациях.

    Fullscreen FX Off     Fullscreen FX On

    Это одна из самых требовательных настроек в игре. Зависимость производительности от нее уступает разве что разрешению рендеринга, все остальные настройки не влияют на скорость так сильно. При максимальных настройках в разрешении 1024x768 и включенных анизотропной фильтрации и антиалиасинге у нас получилась разница до 30% в режимах с включенной постобработкой и отключенной (кроме фильтра bloom, включаемого отдельно). Разница велика, поэтому тем, кому не хватает производительности в игре, особенно в сценах с явным действием фильтров постобработки, советуем отключить данный параметр.

  • Light Detail (Minimum/Medium/Maximum) — данная настройка служит для изменения качества освещения сцены. Ее значение влияет на количество источников света в игре, освещение от которых будет рассчитываться движком. Чем выше установленное значение, тем большее количество источников света влияет на освещенность сцены. Посмотрите на приложенные скриншоты, там видно, хотя и недостаточно явно, что некоторые фрагменты освещены при установке значения в Maximum больше, чем при установке Minimum.

    Light Detail Minimum     Light Detail Maximum

    Подобные места не так легко показать скриншотами, но игра сама по себе очень темная, очень многое в ней зависит от правильного освещения, предусмотренного авторами, поэтому я не рекомендую изменять эту настройку вовсе. Лучше попробовать понизить другие. Хотя первыми отключаются удаленные и второстепенные источники, поэтому пользователям с недостаточно производительными видеокартами можно установить настройку в меньшее значение. Тесты показали разницу в производительности между значениями Minimum и Maximum, равную 10-12% для максимальных настроек, и 15% — для минимальных. На слабых видеокартах разница может быть большей.

  • Enable Shadows (Off/On) — значение, отключающее и включающее рендеринг теней. Это еще одна из настроек, которую можно отключить на самых слабых конфигурациях, так как она сильно снижает производительность, требуя большого филлрейта. Тесты производительности подтверждают это, отключение теней на тестовом уровне при максимальных настройках дает рост среднего FPS на 23-25%, а на минимальных поменьше — лишь до 15-17%. Прежде чем отключать тени, нужно убедиться, что все остальные резервы по повышению производительности исчерпаны, так как отключение теней еще сильнее влияет на реалистичность сцен и атмосферу страха в игре. Без теней Condemned становится вообще другой игрой, на мой взгляд.

    Enable Shadows Off     Enable Shadows On

  • Shadow Detail (Minimum/Medium/Maximum) — настройка работает, если предыдущая выставлена в значение "On", она определяет типы объектов, которые отбрасывают тени. Чем выше значение, тем больше теней рендерится, это используется для нахождения оптимального баланса между производительностью и качеством картинки. Разница между Maximum и Minimum заключается в том, что при минимальном значении тени от персонажей отсутствуют, оставаясь для статической геометрии. Хотя тени оказывают большое влияние на производительность, особенно в случаях с большим количеством источников света и сложных геометрически объектов, эта настройка влияет на скорость рендеринга умеренно, средний FPS при установке на Maximum и Minimum отличается на 10-15% и при максимальных настройках и при минимальных. Так что снижение данной настройки может стать компромиссом для тех, кому не хватает еще чуть-чуть производительности, но терять все тени не хочется.

    Shadow Detail Minimum     Shadow Detail Maximum

  • Soft Shadows (Off/On) — настройка, управляющая алгоритмом смягчения границ теней, можно или выключить его или включить, никаких настроек качества нет. Мягкие тени выглядят значительно реалистичнее, даже в случае реализации в Lithtech, когда они не используют реальные оптические расчеты и мягкость краев эмулируется простым алгоритмом. Метод, используемый движком, значительно снижает производительность, а также некорректно работает вместе с мультисэмплингом. Хотя, по словам разработчиков, мультисэмплинг не может применяться одновременно с алгоритмом мягких теней, практически комбинация работоспособна, но тени при этом выглядят некорректно, поэтому одновременное использование антиалиасинга и мягких теней не имеет смысла. Так что настройку рекомендуется отключить всем, на слабых системах это поможет сэкономить важную производительность, а на мощных — позволит включить антиалиасинг, без проблем с артефактами на границах теней.

    Soft Shadows Off     Soft Shadows On

    На тестовой системе с максимальными и минимальными настройками, но без включения антиалиасинга разница в частоте кадров при разных значениях настройки получилась до 15-20%, что значительно меньше, чем ранее наблюдалось в случае с F.E.A.R. То ли алгоритм с тех времен улучшили, то ли упростили.

  • Texture Filtering (Bilinear/Trilinear/Anisotropic 2x-16x) — настройка, позволяющая выбрать метод фильтрации текстур. Доступно использование билинейной, трилинейной и анизотропной фильтрации всех уровней. Как и в любой современной игре, на мощных системах рекомендуется использовать наибольший уровень анизотропной фильтрации, особенно учитывая то, что на тестовой системе разница между минимальной настройкой (Bilinear) и максимальной (Anisotropic 16x) составила лишь 13-15%. С другой стороны, игра достаточно темная, и на системах со слабыми видеокартами лучше включить трилинейную или даже билинейную. Впрочем, все на выбор пользователя, а мне остается добавить, что универсальный совет по включению анизотропной фильтрации из настроек игры, а не из настроек драйвера видеокарты, в случае с Condemned остается в силе: для того, чтобы антиалиасинг и анизотропная фильтрация работали в игре так, как задумано ее разработчиками, нужно выставить в настройках видеокарты Application Controlled/Application Preference, а в игре выставить необходимый уровень для анизотропной фильтрации и антиалиасинга.

  • Texture Resolution (Minimum/Medium/Maximum) — настройка, определяющая используемое игрой разрешение текстур. Чем выше значение данной настройки, тем большее разрешение текстур используется и тем выше качество рендеринга сцены. А также ниже производительность игры и выше требования к объему свободной видеопамяти. Визуальная разница между значениями довольно велика, ведь настройка воздействует почти на все текстуры в игре:

    Texture Resolution Minimum Texture Resolution Medium Texture Resolution Maximum

    Значение настройки сильно воздействует на производительность, особенно это заметно на системах низкого уровня, если объем видеопамяти недостаточен для размещения всех ресурсов игры. Значение Maximum рекомендуется выставлять для high-end и некоторых mid-end видеокарт с объемом видеопамяти 256 Мб и в редких случаях для видеокарт с 128 Мб видеопамяти. В этом случае, для размещения части ресурсов будет использоваться системная память, что может вызвать замедления и снижение минимального FPS во время игры. Поэтому, для не особо мощных систем с объемом видеопамяти 128 мегабайт рекомендуется установка значения в Medium, а для бюджетных видеокарт возможно и Minimum.

    Разные значения "Texture Resolution" не сильно влияют на производительность игры на нашей тестовой системе, при минимальном разрешении текстур производительность оказалось выше всего лишь на 2-3 средних FPS, то есть примерно на 4-6%. Так что для тестовой системы оптимальной настройкой размера текстур является максимальное значение, с ним обеспечивается приемлемое обновление частоты кадров, а снижение настройки не дает улучшения производительности.

  • Shaders (Minimum/Medium/Maximum) — настройка для изменения уровня детализации некоторых эффектов, выполняемых при помощи шейдеров. Чем выше значение, тем качественнее эти специальные эффекты в игре. Не совсем понятно, о каких эффектах идет речь, так как визуальной разницы я не обнаружил. Впрочем, отличий в производительности также не найдено никаких, как и в F.E.A.R., кстати.

Остается добавить, что на тестовой системе все максимальные настройки, кроме мягких теней, играбельны в разрешении 1024x768 с включенным антиалиасингом уровня 4x и анизотропной фильтрацией 16x. Среднее количество кадров в секунду при этом по всей игре составляет около 60 FPS, а минимальное не опускается ниже 25-30, кроме редких моментов динамической подгрузки контента. Для больших разрешений и уровней антиалиасинга нужны более производительные видеокарты или системы CrossFire/SLI. На системах среднего уровня с видеокартами типа NVIDIA GeForce 7600 GS и ATI RADEON X1600 PRO для достижения играбельного FPS придется снижать некоторые настройки.

Дополнительные возможности настройки

Пара слов о конфигурационных файлах Condemned: Criminal Origins. Похоже, что игра хотя и использует два таких текстовых файла: autoexec.cfg в корневом каталоге игры и settings.cfg, размещаемый в каталоге "\Documents and Settings\All Users\Documents\Monolith Productions\Condemned\", но реальное значение имеет только последний, причем, никаких новых и особенно интересных параметров там нет. Некоторые из параметров, находящихся в первом файле, соответствуют значениям настроек, выставляемым из игры ("EnvironmentalDetail", "VSyncOnFlip", "Anisotropic", "Light_ShadowBlur", и т.д.), но вероятно, только в момент первого запуска. В дальнейшем вся конфигурация хранится в файлах "\Documents and Settings\All Users\Documents\Monolith Productions\Condemned\Profiles\*.gdb", которые не являются текстовыми и исправить в них что-то не так уж просто. Вот такая "дружественность" к пользователю.

А в файле settings.cfg можно разве что изменить игровое разрешение на нестандартное, если оно по какой-то причине не поддерживается игрой (на тестовой системе проблем не было никаких). Для этого нужно изменить соответствующие строки, например, так:

"ScreenWidth" "1280"
"ScreenHeight" "1024"

Если нужного разрешения в меню игры нет, то нужно сначала выставить все остальные графические настройки, потом выйти из игры и исправить конфигурационный файл.





Дополнительно

iXBT BRAND 2016

«iXBT Brand 2016» — Выбор читателей в номинации «Процессоры (CPU)»:
Подробнее с условиями участия в розыгрыше можно ознакомиться здесь. Текущие результаты опроса доступны тут.

Нашли ошибку на сайте? Выделите текст и нажмите Shift+Enter

Код для блога бета

Выделите HTML-код в поле, скопируйте его в буфер и вставьте в свой блог.