Game.EXE
компьютерра компьюлента cio инфо-бизнес домашний компьютер terralab софттерра
суверенная онлайновая версия культового игрового журнала
 / Полигон / Конкурс - на уровне! Уровни - на конкурсе!









Motorola RAZR V3: средство связи или демонстрация статуса?



64-разрядность - есть! На очереди - многоядерность



Почти КПК: проба MP3-плеера на жестком диске iRiver H10



Подробноcти о новом поколении Centrino (Sonoma)



Широкоформатный бизнес: проба ноутбука Asus W3N




Конкурс - на уровне! Уровни - на конкурсе! / Инсталляция третья.
 
Господин ПэЖэ, pg@game-exe.ru [21.06.2001]

 Версия для печати

Инсталляция третья. Ходьба по лезвию.

Третий раз закинул он невод... Пришел невод с уровнями, простыми, как мычание, а вовсе не с золотою рыбкой. Увы, простота бывает разной, и та, которой страдают большинство участников наших прошлых конкурсов, хуже воровства. В конце концов, когда заимствуют у одного -- это плагиат, у двух -- уже обзор, у трех -- диссертация... А вот когда и заимствовать не смогли, это и правда плохо.

Shine00.GIF

Типичный пример наклонных стен (в данном случае срезанный угол сверху) и "ребер жесткости".

Вот квинтэссенция такого подхода: уровень, созданный для, кажется, Half-Life одним из участников соответствующего конкурса. Большой, плотно населенный, вполне сбалансированный по геймплею, даже, если мне не изменяет склероз, с работающими настройками уровней сложностей. Одна только проблема: карта -- вся! -- состояла из примерно десятка прямоугольных параллелепипедов, расположенных на одном уровне, соединенных прямоугольными же дырками и равномерно освещенных невидимыми источниками света. В качестве призов за успешное проникновение в следующую "комнату" (каковую, впрочем, язык не поворачивается так называть) предлагались валяющиеся на полу у аптечки, оружие и патроны, как раз в количестве, потребном для расчистки следующего кубика...

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

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

Дыра -- это нора

Shine01.GIF

Феерия правильных эффектов. Пол оформлен в виде трансхола, под ним трубы с environment mapping и туман. Дверь сложной формы, со сложным же косяком и прозрачными участками (между прочим, как раз черно-желтая); скучная стена украшена вставками, а в одной из них даже есть пролом и искры (впрочем, здесь это, пожалуй, уже слишком).

Начнем с простого. Просто оглядимся вокруг и обнаружим, что человечество всю свою историю ненавидело непрозрачные стены. При первой возможности в стенах рубили окна, в дверях -- окошки и прорези, даже в полу и потолке обожали прорезать разнообразные дырки.

Само собой, дырка мешала жить: сквозь нее так и норовили влезть враги, залетал снег, дождь, насекомые и птички. И человечество изобрело сетки, решетки, стекла, витражи и прочие полупрозрачные предметы, призванные отделять полезные свойства дырок от вредных.

К счастью, в Shine полупрозрачные текстуры поддержаны в полной мере, и делать дырки произвольного вида довольно просто. Когда вы встретите в файле ShineMap.rtf (из комплекта инструментов на нашем диске) хитрое слово "трансхол" (transhole), знайте: это не ругательство, а всего лишь хитрое сокращение от "Transparent Hole", то есть прозрачное отверстие. Проще всего понять, для чего это все надо, заглянув в каталог T12 и посмотрев на текстуры HOLE* (и, следовательно, на эффекторы Vicont\Transhole.ses). Заодно освежите свои знания в двоичной арифметике, прочитав описание способов смешивания отдельных слоев в эффекторах (все в том же файле ShineMap.rtf). Не поленитесь также заглянуть в первый выпуск "Заметок кудесника шотгана", посвященный тем же вопросам.

Само собой, применение "дырчатых" текстур не ограничивается окнами и решетками. Есть еще и решетчатые балки, и лестницы, и разнообразные сетки (вроде "рабицы", популярной у огородников), и комбинированные "металло-деревянные" конструкции... Везде, где есть дырка, ее можно затянуть трансхолом и радоваться. Обратите внимание на флаг CullTwosided, он нужен не всегда, а только для "толстой" сетки, видимой с разных сторон.

Нора -- это кролик

Shine03.GIF

Альтернативный вариант наклонных стен и "ребер жесткости", а также оформления пола и потолка с дырками и освещением. Обратите внимание: прямоугольный коридор и здесь со срезанным верхним углом, что создает стилевое единство.

А теперь давайте посмотрим на наши норы. Жизнь типичного виртуального убийцы протекает между двумя стенами, ведущими куда-то. Здесь-то и кроется одно из главных различий между реальностью и виртуальными развлечениями. В скучных и серых бетонных коробках, где мы проводим всю нашу жизнь, типичный коридор выглядит как четыре плоскости, ничем особо не украшенные.

А в игре скука и однообразие недопустимы (надеюсь, вы прочли прошлую инсталляцию?). Прямоугольники -- смерть для уровня, как бы тщательно ни была подобрана текстура на них. Монотонность всенепременно надо разрушать всеми доступными способами!

И первый из них -- наклонные стены. Просто? Да, конечно. Но, если использовать простейшие приемы с умом, можно добиться великолепных эффектов. Да что далеко ходить... Любите научно-фантастические фильмы? Взгляните на коридор любого космическо-киношного корабля и проникнитесь.

Shine04.GIF

А вот так делать не стоит. Здесь без всякой необходимости сильно сэкономили на полигонах, даже все украшения на стенах -- текстурные, только на полу сиротливо светит красная лампочка.

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

Но мы отвлеклись, вернемся к наклонным стенам, ибо в Hired Team: Trial все-таки преобладает футуристическая атмосфера, и большинство текстур там металлические. Само собой, простейшие варианты (трапеции, ромбы и тому подобный примитивизм, не говоря уже о прямоугольниках) уже навязли в зубах и вышли из моды, и подкупить ими строгое жюри конкурса вряд ли удастся. А вот изобрести свой собственный стиль с разумным количеством полигонов на погонный метр -- задача весьма достойная и полезная.

Кролик -- это подходящая компания

Shine05.GIF

Снова пачка очень уместных эффектов. Туман на потолке (да и балки к месту), дождь за окнами, колонны, светильники... Жаль, арки не оформлены (видимо, из-за того, что место и так довольно большое и сложное).

Продолжаем смотреть на классику и учиться. Стена, пусть она трижды наклонная, сложенная гармошкой и вывернутая наизнанку, продолжает оставаться монотонной и скучной. Чем это лечат дизайнеры интерьеров? Все тем же: деталями. Через регулярные интервалы стена перемежается чем-то вроде ребер жесткости -- выступами странной, необычной, уникальной для этого уровня формы. Они, само собой, мешают ходить и тормозят за счет сильного усложнения структуры уровня (снять эту проблему можно установкой флагов, указывающих компилятору, что эти штучки, конечно, надо отображать, но не надо обсчитывать их видимость, а еще надо свободно давать людям проходить сквозь них; в случае Shine это флаги Mist и Detail).

Танцевать, как обычно, надо от функциональности. Что и зачем может выступать из стены или пола? Светильники, короба для разнообразной проводки, компьютерные консоли, вентиляционные решетки, видеокамеры наблюдения, решетки и канавки для отвода воды или КРОВИЩИ, окна и щели для освещения, бойницы и, наконец, просто дизайнерская отделка. Каждая из этих деталей может иметь произвольную форму, встречаться с любой частотой и в каком угодно месте. Экспериментируйте! Украшайте!

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

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

shot0000.GIF

Учимся у классиков. По стене идет фриз, на потолке -- "ребра жесткости", поворот украшен колонной.

Применяем, хотя бы чисто механически, "украшения", ставим через каждую пару метров балки (для поддержания потолка), в которых прорезаем щели и помещаем внутри лампочки. Лампочек сразу становится много, вокруг возникают сотни теней от балок (а это и есть детали, за которыми мы охотимся), создавая весьма богатую визуальную среду. Глаз уже не способен за первую долю секунды вычленить из нее засевшего за балкой в засаде снайпера, и потому на входе в такое место возникает закономерный страх (за которым мы тоже, безусловно, охотимся изо всех сил). А как дополнительный бонус возникает возможность сделать все в едином стиле. Скажем, балка сверху раздваивается, ее концы выглядят как своеобразные "рога". Так введем же подобные рога в портреты на стенах, в барельефы, в светильники на потолке, создадим ощущение, что раса, пардон, козлов годами строила эти помещения по своему вкусу. Любая мелкая деталь, творчески впрыснутая в разные объекты, способна "склеить" уровень, придать ему жизненность.

Вот новый поворот

shot0001.GIF

И у id бывают проблемы с неоформленными арками, зато рядом с ней -- очень симпатичная колонна, а чуть дальше -- роскошный потолок со светильниками в углу.

Вы уже прочли великолепный файл ShineMap.rtf? Как это "нет"? А для чего я тут распинаюсь? Идите и читайте немедленно! Там написано, почему любые проходы должны как можно чаще извиваться, загибаться и перегораживаться дверями. Только так можно добиться шустрой игры в любой точке уровня и не слишком экономить при этом на полигонах.

Но ведь повороты -- это же замечательно! Поворот -- лучший друг дизайнера уровней, ибо дает повод сделать красивое сопряжение двух стенок, установить в углу какую-нибудь пригожую штуковину (что вы у меня спрашиваете -- придумывайте сами!), похвастаться, как он умеет к месту и с толком использовать криволинейные поверхности...

А уж двери, о эти двери! Одним только дверям можно было бы (и нужно было бы!) посвятить трактат в несколько томов. Эпоху характеризует ее архитектура, это общепризнанно. А вот архитектуру в первую очередь характеризуют именно они, неприметные труженицы, защищающие обитателей то от кинжала и стрелы, то от вакуума и радиации, то от пули, а то и просто от назойливого глаза и сквозняков...

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

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

И ни в коем случае не забывайте о дверных косяках и коробках. Сама по себе закрытая дверь -- штуковина, конечно, симпатичная, но не слишком выделяющаяся на стене. Так выделите ее! Лампочки над ней какие-нибудь повесьте (факелы, если средневековье), косяки хитрой формы соорудите, чтобы от них хоть чуть-чуть, но все же была тень...

Нестандартный стандарт

shot0002.GIF

Атмосферное местечко... Туман стелется между колоннами, в полу живописный пролом, на стенах факелы, а на потолке сложные светильники (что, чисто формально, удивительно -- смешивать в одном месте разнотипные светильники не рекомендуется).

Чего мы все не любим -- так это ощущения "стерильности". Никто не поверит, что здесь живут люди, если ничто нигде не сломано. Это, наверное, способно много сказать обо мне и остальных представителях вида homo sapiens какому-нибудь инопланетному психоаналитику, но так уж мы устроены, приходится мириться.

Да, заготовки на все элементы уровня -- это замечательно, очень удобно в разработке, очень хорошо смотрится. Но попробуйте в нескольких местах взять ту самую заготовку и "сломать" ее -- и вы увидите, как загорятся глаза у тех, кто пробежит мимо нее...

Вспомните Half-Life и ученых, обсуждающих, что же искрит у них в компьютере. Казалось бы, все стены одинаковые, но эта -- специально разрушена и искрит. Пустяк, который запоминается и греет душу.

Склад, забитый вездесущими ящиками. Непременно сделайте пару из них "индивидуальными": с проломленными досками, наклоненными и готовыми перевернуться. Накиньте "покрывало" (текстура ящика с тканью поверх) на некоторые. Поверните, просто поверните некоторые, пусть их стенки не будут параллельны! И склад оживет. Лично обещаю.

Ну а самые широкие возможности для разрушений предоставляют "активные" вещи: выключатели, платформы, лифты и т.п. Если выключатель лифта искрит... Ну, вы поняли. Вы там тоже были. Но у нас дефматч, так что одноразовые события исключаются. Ну и что? Сломанный выключатель означает погасшую лампочку, то есть потенциальную снайперскую нычку. Один из лифтов может специально не доезжать до места назначения и со скрежетом возвращаться назад. И так далее...

У природы нет плохой погоды

shot0003.GIF

Типичный пример усложнения скучного места. Колонны хитрой формы создают отличную среду для перестрелки, а похожие, но разные светильники (разного цвета!) отлично подчеркивают игру теней.

И у дизайнера уровней, увы, чаще всего нет вообще никакой погоды. Это неправильно. Да, погоды может не быть на космическом корабле, где все окна и экраны смотрят в звездную черноту (и это тоже своего рода погода!). Но уж на Земле-матушке любое наземное здание имеет окна, а за ними, даже если игроку не дают туда выйти, бывает солнце, дождь, облака на небе...

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

Утро туманное

Еще одна вещь, которую можно использовать (впрочем, далеко не факт, что нужно), -- это туман. Расположенный с умом, браш с флагами Mist, Fog и Trans и одним из эффекторов тумана -- это весьма красиво и способно добавить новое измерение в дефматч (в тумане так удобно прятаться; а ставший уже привычным кровавый туман в пропасти ненавязчиво напоминает о вреде падений).

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

Эффектные эффекторы

shot0004.GIF

Хрестоматийный пример. Справа -- восторженно оформленный угол, стены полуразрушены (на них не пожалели полигонов), а в углу сидит скелет. Дальше -- правильная яма в полу: в прорези видно лаву, прикрытую туманом. Единственное, что слегка напрягает, -- это избыток цветного освещения, но, увы, это типично для Quake 3: Arena...

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

Начнем с систем частиц. Здесь Shine вполне соответствует своему названию, то есть сияет вовсю. Достаточно сложный и полнофункциональный язык описания эффекторов позволяет делать с частицами что угодно: создавать в любых вариантах, заставлять двигаться по произвольным законам, отражаться от поверхностей... Результат великолепный. Дождь, снег, электрические искры, фонтанчики, магические водовороты -- что угодно. Для большинства очевидных случаев не надо делать почти ничего, хватает и готовых эффекторов (Vicont\particle.ses).

Наконец, эффекторы вообще. Подробности изложены все в том ShineMap.rtf, но прежде чем с головой закапываться туда, прочтите следующее.

В Shine на эффекторах сделано практически все. Даже обычные текстуры на стены и модели накладываются эффектором, хотя и редуцированным до полной примитивности. Эффектор состоит из нескольких слоев, каждый из которых берет лежащий "ниже" и обрабатывает так, как описал программист (то есть вы) в своем файле. Обработка может быть очень разнообразной: от деления полигона на мелкие треугольнички и передвижения их вертексов (чтобы создать, к примеру, колышащийся флаг) до текстурных преобразований (смена цвета, наложение еще одной текстуры поверх нижней с любым blending mode, наложение environment map или простейшее движение текстуры). Кроме того, есть зеркальные слои, стеклянные, уже описанный выше туман, поверхность воды, произвольная комбинация бегающих по полигону искр, спецэффекты (падение капель на текстуру), световая "корона" вокруг полигона, бамп-мэппинг.

В действительности все чуть сложнее, и типы эффекторов зависят от того, что именно они изменяют (полигон, текстуру, модель и т.п.), но суть одна: динамически, на лету, можно менять почти все. Как использовать? Даже советовать боюсь. Вариантов настолько много, что не хватает ни фантазии, ни места в журнале.

Сегодняшняя инсталляция и так почти вся состоит из перечислений. Без них, конечно, никуда, -- чтобы показать диапазон возможностей, необходимы примеры, прошу лишь об одном: не надо думать, что ими исчерпывается все богатство возможностей. От имени всей редакции мамой клянусь: если увижу рогатую колонну и уровень "от козлов" -- обижусь лично (впрочем, если будет хорошо сделано -- сочту не плагиатом, а творческим заимствованием). Творите, выдумывайте, пробуйте! И да пребудет с вами Сила!



Господин ПэЖэ
pg@game-exe.ru
 




Инсталляция четвертая. Последние
материалы
Инсталляция первая.
Главная страница Поиск E-mail
(c) 1995-2003 Game.EXE
Создание сайта: Кирилл "Хват" Иванский [2001-2003]
О проекте, Реклама на сайте
Работает на Saitistika

Яндекс цитирования
Rambler's Top100 Rambler's Top100