Spectrofon
#19
31 марта 1996 |
|
Горячий привет - "Команда вашей мечты" о том как "по взрослому" создаются компьютерные игры.
Cегодня у нас снова в гостях электpон- ный жуpнал "PC-REVIEW". Hа этот pаз pечь пойдет о том, как создаются команды для пpоизводства игpового пpогpаммного обеспе- чения, кто в такие команды входит, как лучше подобpать людей и т.д. Думаем, что и синклеpистам будет интеpесно пpочитать нижеследующую статью. Конечно, кое-какие моменты, отpаженные в ней, касаются исклю- чительно кpупных пpоизводителей ПО, ко- тоpые вкладывают миллионы доллаpов в pазpаботку одной единственной игpы, но об- щие места для синклеpистов, пожалуй, так- же актуальны, как и для всех остальных... (С) Сергей Симонович, 1996 г. КОМАHДА ВАШЕЙ МЕЧТЫ ══════════════════════════ Компьютерные игры делают живые люди. Когда-то один человек мог написать потря- сающую игру от начала до конца и обессмер- тить свое имя. Сегодня, увы, уже не так. Сегодня игры (по крайней мере коммерчески успешные) в-одиночку не пишутся, сегодня над всем работают команды. А теперь, ува- жаемые читатели этих строк, признайтесь откровенно, кто из Вас не мечтал бы рабо- тать в такой команде? Наверное многие. Так зачем же дело стало? Не берут? Не нужны? Так и не надо, создайте себе команду сами. Не знаете с чего начать? А вот об этом мы Вам и расскажем. Давайте представим себе "идеальную" ко- манду. Это несколько человек, выпускающих в год от 1 до 3-х программ и работающих в режиме 24+6 (двадцать четыре часа работы, потом шесть часов сна и т.д.) без выход- ных. Ни о какой заработной плате речь не идет и идти не может, поскольку чтобы что-то получить, надо что-то продать, а чтобы что-то продать, надо это что-то сде- лать своими руками. Основными продуктами питания такой команды являются кофе и пеп- си-кола с сухарями (на первом этапе) и с бутербродами, когда уже придет успех. Никакой заработной платой и никакими благами убедить работать людей в таком ре- жиме невозможно, поэтому в команде очень скоро останутся только самоотверженные и влюбленные в дело бойцы, а именно та- кие-то и нужны для "идеальной" команды. Вот из них-то и образуется первая четвер- ка, которая в будущем станет костяком мо- гучей компании. Впоследствии в фирме может быть и двад- цать человек и пятьдесят и двести, но са- мая первая четверка останется ядром всего дела. И когда что-то нарушается в слажен- ной работе этого ядра и кто-то из него уходит, это обязательно скажется на качес- тве выпускаемых этой фирмой программ (правда, не всегда в худшую сторону). Вот на работе этой главной четверки мы и остановимся. Это гейм-дизайнер, продю- сер, ведущий программист и главный худож- ник. Неисповедимы пути идеи. Все начинается с ИДЕИ. Кого-то в ка- кой-то момент осеняет идея сделать игру на такую-то тему, в которой будет то-то и то-то. Как правило, идеи приходят че- тырьмя путями: два пути идут "изнутри" и два пути - "снаружи". Путь первый: идея зарождается в голове гейм-дизайнера. Результаты таких проектов обычно дают нам самые-самые лучшие игры. Дизайнер - это тот человек, который дол- жен выносить идею до состояния, в котором она может быть реализована в виде готовой программы, а ему, как и всем прочим людям, гораздо приятнее это делать со своей соб- ственной идеей, нежели с чужой. Именно та- ким путем рождались Civilization, Master of Orion, Doom и Wing Commander. Примеров можно привести сотни, но самые успешные игры прошли этим путем. Путь второй - с идеей приходит продю- сер. "Значит, так", - говорит он. - "Наш Russian Tycoon пользуется огромной попу- лярностью уже третий год. Его покупают и будут покупать, но за это время измени- лись многие требования к оформлению игр. Сегодня все, кому ни лень, выпускают игры в полноценной графике SVGA. Поэтому я счи- таю, что хоть старая программа и дает до- ход, продавать ее нецелесообразно. Она косвенным образом наносит ущерб ре- путации фирмы. Нам нужна точно такая же игра, но в новой графической оболочке. На- зовем ее "Russian Tycoon de Luxe". Прошу утвердить бюджет проекта..." Это нормальный рабочий вариант. Продю- сер - одна из важнейших персон в команде. Выходить на совещание с новыми проектами - одна из его обязанностей, держать руку на пульсе рынка - тоже, и сегодня на рынке полным-полно игр, инициализированных имен- но продюсерами. Как правило, это большин- ство игр, являющихся продолжением чего-то. Если кто-то из читателей помнит, два года назад мы приводили в PC-Review интер- вью с Сидом Мейером, в котором он признал- ся в особой нелюбви компании Microprose ко всякого рода продолжениям. С организацион- ной точки зрения это означает то, что в его компании гейм-дизайнеры гораздо сильнее продюсеров, что и неудивительно, ведь дизайнеры такого класса как сам Сид Мейер - редкость. За его плечами Rail Road Tycoon, Civilization, Colonization и пр. Путь третий - с идеей приходит ресэй- лер (один из конечных продавцов продукции): "Сегодня неожиданно вырос объем продаж игр с кулачным мордобоем, поэтому не могли бы вы сделать такую прог- рамму, чтобы была как Wing Commander, но в которой будет возможность взятия космичес- кого корабля крысобоев на абордаж, после чего пилоты сражаются один на один без оружия, только с помощью рук и ног". Все крупные издательские компании обя- зательно следят за вкусами и пристрастия- ми публики. Они тщательно оценивают инфор- мацию "с мест", следят за дискуссиями в компьютерных сетях и, когда раздают зака- зы в маленькие программистские фирмы, обя- зательно учитывают веяния моды. Да Вы и сами, уважаемый читатель, можете уловить эти веяния и тенденции. И ведь за каждой тенденцией стоит ка- кая-то материальная причина. Так, например, 1993-ий год можно было бы назвать годом ролевых игр - тогда был всплеск интереса к этому жанру. Причина - в том, что это был последний год, когда еще выпускалось что-то, способное рабо- тать на 286-ых и слабых 386-ых машинах, а RPG, наверное, одно из сильнейших достиже- ний для техники того поколения. 1994-ый год ознаменовался широким нас- туплением космических "леталок" и игр класса 3D-Action. Причина - массовый пере- ход на 486-ую технику, позволивший разра- ботчикам начать реализацию самых амбициоз- ных проектов. 1995-ый - год усиленного проникновения аркадных единоборств. Причина - начало процесса массовой "перекачки" аркадных игр с видеоприставок и аркадных автоматов на IBM PC, поскольку теперь платформа IBM PC стала достаточной мощной для таких целей по графическим и звуковым средствам. Наш прогноз, что в 1996-ом году этот процесс продолжится, и год пройдет под флагом множества разнообразных автогоноч- ных программ. Путь четвертый: приходит письмо от страстного поклонника игр, в котором сооб- щается примерно следующее: "Я придумал идею такой игры, какой никогда и нигде еще не было. Эта игра сделает вашу фирмой зна- менитой на весь мир. А мне за идею ничего не надо. Если хотите, я Вам ее подарю. На- пишите мне, если мое предложение Вас заин- тересует..." Такие письма и предложения приходят во все компьютерные фирмы мира сотнями, но мы с глубоким прискорбием должны сообщить, что отправляются они в корзину. Это самый безнадежный путь движения идеи. Когда-то давно, лет пять-шесть назад, когда компьютеры были слабенькими и реали- зовать на них можно было мало чего, фирмы наоборот охотились за ценными идеями. Они организовывали конкурсы, охотно читали письма от потребителей, откликались даже на туманные намеки. Сегодня эти времена ушли. У любой при- личной команды в очереди на реализацию стоит в пять раз больше перспективных проектов, чем она может себе позволить вы- пустить в год, и сегодня фирмы не только не ищут идеи на стороне, а наоборот, во многих случаях они от них бегут сломя го- лову. Они на порог не пускают человека, пришедшего с идеей и прерывают телефонный разговор после нескольких слов. Может быть, это звучит неприятно, но это именно так. Не обижайтесь, если Вас это как-то задевает, но надо знать причины такого яв- ления... За многие годы работы в фирмах прокачи- ваются сотни и тысячи идей. Идеи порхают от человека к человеку, от стола к столу. Когда-то эти идеи были неисполнимы и оста- вались розовыми мечтами, но постепенно с развитием мощности компьютеров они откры- ваются и становятся доступными. И есть большая вероятность того, что случайный человек, пришедший с улицы со своей идеей, попадет в одну из таких давно обсуждавших- ся концепций, ждавших своего часа. Если он хотя бы заденет ее вскользь, ее придется закрывать. Особенно боятся фирмы, что кто-то при- дет и сообщит им концепцию того, над чем они уже и так работают или планируют рабо- тать. В этой ситуации фирмы оказываются "виноваты без вины", ведь такой "доброже- латель" может если и не подать на них в суд за "кражу его идеи", то по крайней ме- ре устроить им такой скандал в сетевых конференциях, от которого будет нелегко отмыться: "Я им предложил оригинальную идею, ни- чего за нее не просил, а они выпроводили меня за дверь. Через год я вижу, как они использовали мои лучшие мысли в своей программе. Это не фирма, а сборище жулья!.." Существует метод нечестной конкурен- тной борьбы, когда надо заранее, за год до финала, узнать, над какой идеей работает конкурент. Это делается обычным шпионажем. После этого от частного лица надо прис- лать ему в общих чертах разработку того, над чем он давно в поте лица трудится. Многие в панике в таких случаях все бро- сают. Самые сильные и стойкие начинают за- ранее готовить адвокатов, чтобы те начали собирать фактические свидетельства и мате- риалы для возможного слушания в суде. А доказывать свое право на идею ох как слож- но, даже если у Вас очень крупная фирма. Тем более, что на Западе, в отличие от России, суды часто и охотно встают на за- щиту прав маленького человека "с улицы" перед лицом капиталистической акулы. Не- редко, чтобы избежать скандала, адвокаты даже абсолютно честной команды рекомен- дуют лучше откупиться, чем трепать доброе имя фирмы в прессе. Вот так обстоит сегодня дело с идеями. В солидных фирмах своих идей хватает и рисковать репутацией для того, чтобы ис- кать чужие идеи на конкурсах или каким-то иным способом никто уже давно не отважи- вается. Правда, нет правил без исключений. Бывают выезды на охоту за идеями куда-ни- будь в дикие края, например в... Россию. Не знаем как сегодня, а несколько лет на- зад такие эмиссары к нам заезжали регуляр- но, да и о конкурсах на лучшую идею мы не раз слышали. Возможно, что слышали и Вы, уважаемые читатели. Не правда ли? А вот на Западе таких конкурсов уже давно не бы- вает. К чему бы это? Номер первый - гейм дизайнер. Итак, на совете директоров фирмы приня- то решение начать работу над проектом "X". Первое лицо, принимающее его в проработку - это гейм-дизайнер. Это самая интересная работа, какую только можно придумать. Если Вы подумали, что дизайнер занимается худо- жественным дизайном, то ошиблись. Оформле- ние - не его вопрос. Этим займется худож- ник. Вжившись в идею, дизайнер должен представить себе игру целиком. На этом этапе его не волнуют вопросы, связанные с программированием. Он ничего сейчас не ду- мает о коде. Он просто представляет игру в голове такой, какой он хочет ее видеть. Из русского языка лучшим переводом тер- мина "гейм-дизайнер" будет слово "проек- тант". Он именно "проектирует" будущую иг- ру. Обычно у хорошего дизайнера на разра- ботку проекта уходит 2-4 недели. На эти дни он запирается и никого не принимает или уезжает в отпуск. На выходе он выдает сотню страниц бума- ги, исписанных обыкновенным карандашом или авторучкой. Здесь можно найти все, что ка- сается будущей игры, кроме программного кода, графики и музыки. Это как бы описа- ние игры словами обычного человеческого языка. Первый документ, который выпускает ди- зайнер - это структура игры. Здесь распи- сана вся структура меню, что когда и как доступно пользователю. Второй документ - структура данных. Она должна быть согласована со структурой программы. Третий документ - система правил. Что можно делать, а что - нельзя. Когда пешка может превратиться в ферзя, а когда - нет. Кто сильнее - слабый легион или сильная фортифицированная фаланга? Что должно произойти, если истребитель выпустит шас- си на скорости 800 км/час? И т.д. и т.п. В общем, система правил должна быть ут- рясена окончательно до того, как начнется программирование. Четвертый документ - описание механиз- ма принятия решения. Грубо говоря - это то, чем руководствуется программа, когда отвечает Вам на Ваш ход. Неважно, что это - адвентюра или авиаимитатор. Всегда лю- бая игра должна как-то реагировать на Ва- ши действия. Этот механизм обязательно должен быть согласован со структурой прог- раммы (когда к нему происходит обращение) и со структурой данных (что ему предостав- ляется). В принципе, на этом этапе дизай- нер не в состоянии сколь-нибудь, хотя бы и грубо разработать механизм принятия реше- ния. Это будет сделано много позже. Но предусмотреть такой блок в виде "черного ящика" он обязан, ведь именно сюда будут потом установлены точки регулировки, с по- мощью которых потом игра будет делаться "играбельной" (ни легкой, ни сложной, ни быстрой, ни медленной, в общем сбалансиро- ванной). Пятый документ - спецификация интерфей- са. Его не надо рисовать, это сделает ху- дожник, но описать, что должно быть на эк- ране в том или ином режиме игры, что от- крывают те или иные опции меню, как проис- ходит управление игрой, что для пользова- теля остается скрытым и до каких пор - вот задача этого документа. Здесь должны быть перечислены и описаны словами все интер- фейсные экраны. Шестой документ - спецификация экранов. Начиная от титульного и кончая финальным, описываются все необходимые экраны. Если игра адвентюрная, то большая часть экра- нов будет связана со сценарием игры (изоб- ражения локаций, в которых может поя- виться герой). Если это авиаимитатор, то и там есть традиционные экраны: сцена бри- финга, сцена старта, вид на приборную па- нель, сцена посадки, подведение итогов, демонстрация взрыва при падении и т.п. В общем, это список экранов, который может быть составлен для любой игры любого жанра. Работа гейм-дизайнера является, навер- ное, самой важной. По трудоемкости его вклад в игру нередко менее 1 процента об- щей трудоемкости, но в будущем успехе или провале игры его доля не менее трети. Этот человек тратит копейки и не расходует ни- чего ценнее, чем простая бумага, но в слу- чае удачи может принести миллионы, причем не рублей, а долларов. Чтобы тщательно "вылизать" проект, ди- зайнер потратит дополнительные дни, от си- лы недели. Но если он сделает все действи- тельно тщательно, программисты потом сэко- номят многие и многие месяцы труда. Дизай- нер так "разложит" весь проект по полоч- кам, что программисты смогут легко распа- раллелить работу, заранее наметить буду- щие точки стыковки кода одного программис- та с другим, а значит избежать трудноис- правимых ошибок и обеспечить легкость от- ладки. Если через месяц после выхода програм- мы в ней находят "жучок", то виноват прог- раммист, но если в ней все начинает рассы- паться, в сложных ситуациях отыскиваются десятки ошибок, то это уже просчеты дизай- нера. И аварийными исправлениями ситуации здесь можно только навредить делу. Страш- ный скандал потряс летом 1995 года весь мир, и мы уже писали в PC-Review N17 о том, как разваливалась на глазах у десят- ков тысяч покупателей долгожданная прог- рамма Frontier: First Encounters. Просто ли быть гейм-дизайнером? Быть просто, а стать - нет. Во-первых, гейм-дизайнер должен быть очень эрудированным человеком. Он должен обладать широтой взглядов на самые разные области науки, литературы и искусства. Он должен очень много читать, как худо- жественной, так и научно-популярной лите- ратуры. Он должен много играть в компью- терные игры и должен их любить широко. Не так, что я люблю Wing Commander, а ос- тальное - не для меня. Он должен любить и понимать все. Он должен чувствовать, что в какой игре стало достижением, что сделано впервые, а что - проходное место, запол- няющее диск в связи с отсутствием идей при избытке финансов. Он должен играть не только в компьютерные игры, но и во все- возможные другие - настольные, аркадные, электронные, ролевые и т.д. и т.п. При проектировании адвентюрных игр и RPG крайне желательно, чтобы гейм-дизай- нер и сценарист были бы одним и тем же ли- цом. Это дает наилучшие результаты. Желательно, чтобы гейм-дизайнер обла- дал бы хорошим художественным вкусом. Это не обязательно, его есть кем заменить, но в принципе желательно. Зато гейм-дизайнер обязательно должен быть отличным программистом, имеющим нес- колько лет практической работы, хотя само- му ему программировать нет необходимости. Просто его опыт программиста и понимание особенностей алгоритмических структур по- могут ему разложить будущий проект так, что программисты сэкономят месяцы труда и сделают работу с минимальным количеством алгоритмических ошибок. Как же стать гейм-дизайнером? По-види- мому, прийти в работающую команду и ска- зать: "Я хочу у Вас работать гейм-дизайне- ром, согласен на минимальный оклад", - не- возможно. Остается один путь. Если Вы чув- ствуете, что у Вас все для этой работы есть, значит создавайте себе свою команду. Если Ваши друзья поверят в Ваши способнос- ти (а они их знают), значит Вы будете тем, кем хотите стать, если нет - значит Вы ко- манду не соберете, а в готовую фирму Вас на эту должность вряд ли примут. Тогда останется только расти постепен- но, от бета-тестера к программисту и далее. Все самые известные дизайнеры создава- ли себе фирмы сами и сейчас занимают в них руководящие должности, одновременно оста- ваясь дизайнерами игр и по-совмести- тельству программистами. Это Сид Мейер (Microprose), Роберта Вильямс (Sierra on Line), Джон Ромеро (iD Software), Дэвид Брэбен (Frontier Development), Стив Бар- сиа (SimTex), Ван Канегм (New World Computing) и мн.др. Примеры можно приво- дить сотнями. Так что стать гейм-дизайнером одновре- менно и просто и сложно. Для этого Вы дол- жны "от нуля" сделать себя сами. Номер второй - продюсер. Это очень важная фигура в команде, от него зависит успех и процветание всей фир- мы. Если от гейм-дизайнера зависит хоро- шей ли выйдет игра, то от продюсера зави- сит, выйдет ли она вообще, и если и вый- дет, то даст ли какой-то доход, который позволил бы работать над новыми проектами в будущем. О роли продюсера часто забывают, или вообще о ней не догадываются, поскольку в команде из двух-трех человек ему нет мес- та. Но если количество бойцов в команде приближается к десятку, работать без про- дюсера - все равно что играть пятый кон- церт Чайковского без дирижера. Итак, мы остановились на том, что со- вет принял решение начать разработку игры, гейм-дизайнер вернулся из месячного "от- пуска" и привез с собой готовый проект бу- дущей программы. Теперь она поступает к продюсеру. Прочитав проект, он докладывает на со- вете: - Эта работа будет стоить 150 тысяч долларов и потребует трех художников и трех программистов. - А сколько времени она займет? - Это вопрос к ведущему программисту. - А будут ли в игре анимационные встав- ки? - Еще 50 тысяч долларов плюс два худож- ника, и они будут. - А видеопоследовательности? - Да, на пятнадцать минут за 100 тысяч, или на 30 минут за сто пятьдесят. - А живая актерская речь? - Да, но нужен еще звукорежиссер, плюс помощник звукорежиссера, плюс шестьсот ты- сяч долларов. И мне понадобится помощник продюсера для работы с актерами. - У нас нет оборудования для записи ак- теров. - У меня есть на примете несколько сту- дий звукозаписи. - А каковы возможные оценки объемов продаж по каждому из вариантов? - Вот они. - А что хотели бы видеть ресэйлеры? - Данные собраны, проанализированы и прилагаются. - А известны ли позиции ближайших кон- курентов? - Так точно. - Но у нас нет такого количества худож- ников. - У меня есть досье на несколько десят- ков человек, работающих на дому, все они проверены в аналогичных проектах и будут работать, укладываясь в наши сроки. ................... Так начинается работа продюсера. Из этого диалога Вы, должно быть, поняли, что этот человек отвечает за все. Его работа начинается с того момента, когда для проекта выделяются деньги. Сколько надо выделить денег, зависит от финансового по- ложения фирмы, но сколько бы ему ни дали, продюсер должен сделать все, чтобы прог- рамма вышла точно в назначенный срок. Современная компьютерная игра - про- дукт коллективного творчества, но отве- чает за ее выпуск только один человек. Это продюсер. Кто-то в команде должен быть "толкачом". Кто-то должен подгонять от- стающих, пополнять кадры, не спать ночами, и не давать спать другим, если до выпуска программы осталось несколько месяцев. Он ведет переговоры, заботится о рекламе, следит за деятельностью конкурентов, гото- вит печать сопроводительной книжки и упа- ковки, нанимает актеров и звукорежиссеров и даже думает о том, где эти актеры будут спать, когда приедут на запись. Продюсер объединяет и увязывает всех участников проекта в одну команду. Соб- ственно, команда-то и держится не только на идее, но и на неудержимой энергии про- дюсера. А после всего того, что мы сказали, на- до еще вспомнить, что большинство даже очень малых фирм одновременно работают не над одним, а над несколькими проектами, и продюсер одновременно ведет их все. Как стать продюсером? В отличие от гей- м-дизайнера, продюсеры не создают програм- мистские фирмы сами. Просто-напросто на самом первом этапе развития программис- тской группы продюсеры еще не нужны. Они становятся нужны тогда, когда первый проект уже выпущен, и программисты начи- нают разрываться между тем, что делать дальше - начинать новый проект или налажи- вать продажу готового? И тот и другой вы- бор будет ошибочным. Все надо делать од- новременно, а для этого и нужен продюсер. Продюсер может не быть программистом, но он должен очень любить компьютерные иг- ры, он обязан в них хорошо разбираться, хотя его любовь к ним несколько иная, чем у гейм-дизайнера. Если дизайнер любит игры исследовать и изучать глубоко, то продюсер больше любит охватывать игры поверхностно, но помногу. Он следит за всеми новинками, старается захватить всякую новую игру одним из пер- вых, но не может в нее углубиться, потому, что завтра вышла уже новая. Продюсер много и подолгу общается с людьми, обсуждая проблемы компьютерных игр. Всех, с кем он встречается, он спра- шивает, во что они играли последний раз и что им понравилось, а что - нет. Свое от- ношение к выходящим новым играм он выска- зывает только в среде своей команды, во всех остальных контактах он слушает и впи- тывает. Продюсер больше всех других членов ко- манды работает с сетевыми конференциями. Для него это один из важнейших источников информации. Там он узнает об отношении покупателей к результатам работы его фирмы и о том, в каком направлении целесообразно начинать планировать исследования. Кто может стать продюсером? Талантли- вый и способный программист скорее всего никогда не сможет им стать. Это совсем другой образ мышления. В большинстве слу- чаев продюсеры - это люди "со стороны". Хорошие продюсеры получаются из специа- листов по рекламе, у них есть немало обще- го. Нередко продюсерами становятся менед- жеры, проявившие себя в торговле компью- терными играми. Еще один из источников вербовки продюсеров - редакции самых раз- личных компьютерных газет и журналов. Там привыкли иметь дело с командной работой, понимают, что такое "красная черта" в сро- ках выпуска проекта и разбираются в ком- пьютерных играх и тенденциях их развития. Нередко отличные продюсеры получаются из офицеров в отставке - те знают, что такое дисциплина и как надо организовывать кол- лективную работу. При этом только важно, чтобы такой отставник знал, любил и пони- мал игры, много игр; впрочем, это далеко не редкость. Если гейм-дизайнером в принципе может быть вчерашний студент (если он с детства занимается программированием, то опыт в десяток лет у него к этому времени уже есть), то продюсером может быть только че- ловек с достаточным стажем работы. Одним словом, найти продюсера среди вы- пускников вуза не удастся. Это должен быть человек, имеющий за плечами достаточный стаж работы, не менее 5-10 лет. Номер третий - ведущий программист. Он начинает работать вместе с продюсе- ром в тот момент, когда от дизайнера пос- тупила разработка проекта. Но если продю- сер осуществляет экономическую прикидку проекта, то ведущий программист прикиды- вает сроки. Он назначает сроки и представ- ляет их руководству, а продюсер должен ук- ладываться в утвержденные сроки и в выде- ленные деньги. Теперь рассмотрим работу ведущего прог- раммиста поподробнее. Если дизайнер сам является программистом и грамотно провел проработку проекта, то для ведущего прог- раммиста в нем не будет белых пятен с са- мого начала. И первое, что он сможет сде- лать - набросать сетевой график работы над отдельными компонентами будущей программы. Так, например, программа инсталлятор - со- вершенно независимый блок, который может быть передан на сторону. Сразу можно вычленить несколько проце- дурных блоков, связанных с интерфейсом. Отдельно откладывается блок принятия реше- ний. Отдельно разрабатываются необходимые графические процедуры, связанные с залив- кой объектов, с перемещением их в трехмер- ном пространстве и т.п. Итак, ведущий программист "разбирает" структуру программы на отдельные несвязан- ные или слабосвязанные модули, затем уста- навливает логически необходимую последова- тельность их разработки, самую длинную цепь из параллельных ветвей принимает за "критическую" и по ней расставляет кон- трольные точки. Получается примерно так: - через три месяца - готовность проце- дурная (подготовка необходимых библиотек); - через шесть месяцев - прототип; - через девять месяцев - сбалансирован- ный прототип; - через двенадцать месяцев программа поступает на бета-тестирование; - через пятнадцать месяцев - передача в тираж. После этого он может прикинуть потреб- ность в программистах и доложить сроки ис- полнения проекта. Когда работа над проектом началась, ос- новная задача ведущего программиста - о- беспечение трех видов связи и стыковки. Первый вид связи - связь между програм- мистами, работающими над проектом. Каждый работает над своим блоком, но точки сты- ковки, даты стыковки и условия стыковки назначил ведущий программист, он за этим и следит..kabF 9 Но это не все. Сегодня все программис- тские коллективы используют свои "фирмен- ные" библиотеки процедур. Конечно, они ис- пользуют и "стандартные" коммерческие приобретенные на стороне библиотеки, но настоящую ценность представляют именно свои собственные процедуры, алгоритмы, ме- тоды и инструментальные средства, разрабо- танные для себя. Ведущий программист яв- ляется лордом-хранителем этого сокровища. Он постоянно пополняет, корректирует и комментирует "фирменные" библиотеки и кон- тролирует их использование рядовыми прог- раммистами. Если кому-то приходится кор- ректировать те или иные процедуры и фун- кции в библиотеках, это происходит через ведущего. Таким образом, ведущий программист увя- зывает работу разных программистов в сре- де единого пакета библиотек. Но не только. Он следит за наиболее эффективным ис- пользованием кода. Все, что можно использовать в новом проекте из старого, должно быть использо- вано. Каждый понимает, что Wing Commander III произошел путем заимствования кода из Wing Commander II, но знаете ли Вы, отку- да был заимствован код для первой серии Wing Commander? Не знаете? А он был заим- ствован из известного авиационного имита- тора Srike Commander, хотя по внешнему ви- ду этого и не скажешь. Второй вид связи, за который отвечает ведущий программист - связь с другими группами - с художниками, с аниматорами, со звукорежиссером, с гейм-дизайнером. Организационными вопросами этих связей ве- дает продюсер, но по чисто программным вопросам стыковку выполняет ведущий прог- раммист. Особенно ценно, если он давно и тесно работает в паре с дизайнером. В этом случае проект проходит наиболее гладко, поскольку дизайнер уже предусмотрел в проекте все, что может помочь ведущему программисту. Третий вид связи, за который отвечает ведущий программист - за связь с аппарат- ным обеспечением будущего покупателя. Он должен знать, как программа будет об- щаться с любой мыслимой и немыслимой аппа- ратной конфигурацией, которую вздумает поставить себе пользователь. Ведущий прог- раммист должен на уровне машинного кода знать как работают все мыслимые виды ви- деокарт, звуковых карт, модемов, ло- кальных сетей, CD-ROM-дисководов и пр. и пр. Это огромное знание и очень большая ответственность. Поручить этот очень кри- тический вопрос рядовым программистам, тем более нескольким - значит очень сильно рисковать из-за возможной нестыковки. Ведущий программист мог никогда в жиз- ни не брать в руки какой-нибудь экзотичес- кий джойстик, но предусмотреть его нали- чие у пользователя он должен. К его услу- гам возможности компьютерных сетей, через которые можно следить за выпуском новых аппаратных устройств и получать для изуче- ния и применения драйверы этих устройств со всех концов земного шара. Все, что ему удается найти, изучить, узнать и приме- нить, ложится в "фирменную" библиотеку. Разумеется, кроме всего этого ведущий программист в любую минуту находится в курсе того, над чем работают рядовые прог- раммисты. Он может подменить любого в лю- бом месте в любое время, но не пользуется этим слишком часто. В некритичных местах (а таких в программе 99 процентов) он не вмешивается в их работу и не указывает им "как надо что-то делать". Скорее, он только иногда указывает "как не надо". К критичным местам относятся процедуры, тре- бующие высокой скорости работы. Нередко они вытекают из результатов специальных экспериментов и связаны с какими-то недо- кументированными возможностями аппаратных средств. Здесь ведущий программист может активно участвовать в программировании ко- да. Что должен знать ведущий программист? Кратко мы уже об этом сказали. Он должен совершенно свободно программировать на СИ++. Как правило, ведущие программисты знают еще несколько разных языков, а АССЕМБЛЕРом владеют настолько, что читают шестнадцатиричные дампы памяти как худо- жественное произведение и в любой момент могут продублировать своим кодом любую из функций DOS (правда в этом нет необходи- мости). При этом он настолько влюблен в свою работу, что не заметит отсутствие зарпла- ты в течение нескольких месяцев, а рабо- той загружен так, что чашку кофе выпить ему некогда. Если Вы ощущаете себя программистом и способны так жить и работать, и рядом с Вами есть еще двое-трое друзей, таких же энтузиастов, то можете начинать с ними де- ло. Через два-три года Вы будете известны не хуже, чем iD Software. Номер четвертый - главный художник. Девяносто девять процентов информации человек получает из внешнего мира с по- мощью глаз, поэтому вопрос о том, как выг- лядит компьютерная игра, едва ли не из са- мых важных. За внешний вид игры отвечает главный художник. И он тоже включается в новый проект в первый же день и плотно взаимо- действует с дизайнером. Как и ведущий программист, он отвечает за связи и персо- нально разрабатывает всего две вещи: ин- терфейсные экраны и эскизы главных персо- нажей. Работы вроде бы не очень много, но ведущий художник одновременно ведет не один проект, а несколько. В частности, ес- ли в компании один ведущий художник, то он ведет все ее проекты. После разработки этих основных элемен- тов будущей игры, ведущий работает с рядо- выми художниками. В прежние времена художники были уни- версалами и делали всю графическую работу от начала до конца. Сегодня это уже не так, по крайней мере в фирмах, в которых работают более семи человек. Кроме обычных художников, занимающихся оформлением игры и разработкой плоских эк- ранов, есть художники-аниматоры, работаю- щие над фазами движения главных персона- жей игры. Когда они работают, ведущий как бы стоит у них за спиной и постоянно кон- тролирует, не отошли ли они от заданного образа. В последние несколько лет выделилась новая группа художников - 3D-дизайнеры. Это особый коллектив, использующий в рабо- те графическо-анимационный пакет 3D-Studio и некоторые другие инструментальные сред- ства. Раньше компьютерная трехмерная гра- фика могла разрабатываться только на гра- фических станциях "Силикон Грэфикс" и лишь редкая и очень богатая фирма могла не то чтобы иметь такую машину, а хотя бы арен- довать на ней немного времени. Сегодня, с появлением пакета 3D-Studio ситуация рез- ко изменилась. Дешевым его не назовешь (он стоит порядка 4-х тысяч долларов), но для фирм, выпускающих игры, вполне по силам. С его помощью можно сделать почти что угодно. Пакет довольно труден в освоении (пожа- луй, это одно из самых трудных современ- ных инструментальных средств), поэтому да- леко не все художники способны в нем рабо- тать. Кроме чисто художественных качеств пакет требует от художника сообрази- тельности и изощренности. Тогда получают- ся необычные находки. Так, например, в программе Rebel Assault 2 есть сцена, ког- да космический корабль летит по узкому из- вилистому туннелю, а его догоняет быстро- распространяющаяся объемная взрывная вол- на. Трудно поверить, но и этот эффект то- же сделан в программе 3D-Studio. На самом деле вслед за кораблем по тон- нелю движется с заданной скоростью круг- лый диск, являющийся как бы плоским экра- ном, а на него как в кино проектируется изображение объемного, изменяющегося во времени взрыва. За последние несколько лет несколько раз менялось техническое вооружение худож- ников, занимающихся компьютерной графикой. Когда-то, когда экраны были CGA и EGA, они вполне обходились рисованием прямо на эк- ране в каком-либо нехитром графическом ре- дакторе. Это непросто, но несколько меся- цев практики позволят делать это быстро и изящно. Чуть позже, с появлением VGA-графики, рисовать на экране стало заметно труднее. Тогда появились так называемые графичес- кие планшеты. Они позволяли рисовать как бы "на столе", а изображение при этом появлялось на экране. Доводка графики опять же производилась в графическом редакторе. С появлением SVGA-графики работать с экраном или с планшетом стало невозможно. В дело пошли сканеры, которые к этому вре- мени так подешевели, что стало возможным поставить по сканеру перед каждым художни- ком. Художники с огромной радостью верну- лись к старому стилю работы с бумагой и кистью. Но... уже первые проекты показали, что графика потеряла сочность и стала блеклой. Все-таки сканированное цветное изображение не имеет той выразительности, которой обладает изображение на экране. И сегодня художники опять отказались от кис- ти. Сегодня они работают только с каранда- шом и бумагой, после чего изображение ска- нируется в компьютер, где впоследствии и раскрашивается. Такое разделение труда позволило в нес- колько раз поднять производительность тру- да самых незаменимых художников - графи- ков. А раскрашивание с помощью современ- ных графических пакетов выполняется индус- триально и может быть поручено не самым талантливым художникам. Именно так сегод- ня производятся графические адвентюры, требующие огромного числа графических ра- бот, например Full Throttle от фирмы LucasArts. В зависимости от направленности фирмы ведущий художник может организовывать ра- боту своих подчиненных по-разному. Если фирма работает над стратегическими играми, авиа- и автоимитаторами, ролевыми играми, логическими играми и т.п., то удельный вес трудов художника и программистов примерно равны. В этом случае художник или художни- ки обычно входят в группу, работающую над данным проектом. Они размещаются вместе с остальными членами команды, вместе с ними работают, вместе пьют кофе, в общем вместе общаются. По ходу работы они могут обогатить первич- ный проект, а может быть наоборот програм- мисты им подскажут что-то интересное. Мо- гут такие художники быть и надомниками, подключающимися к команде во время твор- ческих семинаров, например раз в неделю. Если фирма работает над графическими адвентюрами, где удельный вес их работы в четыре-пять раз больше, чем у программис- тов, то художников не присоединяют к твор- ческим командам, а выделяют в отдельную группу. В ней работают художники, ведущие разные проекты. Здесь возникает с одной стороны дух взаимоподдержки и взаимопомо- щи, а с другой стороны, атмосфера здоро- вой состязательности. Произодительность труда художников, работающих в такой сре- де - наивысшая. По-разному выбирается и время подключе- ния художников к проектам. Ведущий начи- нает работать над интерфейсами и образами сразу, как только дизайнер положил проект на стол. Но рядовые художники подключают- ся не одновременно с программистами. Для игр с неграфическим содержанием обычно программисты готовят прототип, после чего художники начинают его "долизывать". Для игр типа графических адвентюр художники могут начать работу вместе с программиста- ми или даже раньше. В программе Full Throttle, например, программисты не напи- сали ни строчки кода, пока художники не подготовили весь проект на все 100 процен- тов, включая не только все экраны, но и все фазы движения персонажей. Но это, как говорится, случай крайний. Итак, за все нюансы организации работы художников в команде отвечает ведущий ху- дожник. Впрочем, у него есть еще одна приятная обязанность. Как ведущий программист ведет и хранит программные библиотеки фирмы, так ведущий художник ведет и хранит видеотеки фирмы. Например, в такой видеотеке могут быть кадры сотен и тысяч всевозможных взрывов. Когда нужно в игре изобразить взрыв, ху- дожник просматривает такую видеотеку и "вдохновляется", найдя то, что ему надо. Ведущий пополняет ее новыми взрывами. В этой видеотеке хранится множество простых и привычных человеческих действий, к которым время от времени обращаются ани- маторы. Например, это видеоряд, показываю- щий как человек садится в машину. Звук и музыка. Еще несколько лет назад над музыкой ра- ботали так же, как над графикой. Для зву- ка и музыки были специальные люди. Сегод- ня программные и аппаратные средства уже шагнули так далеко вперед, что держать для этого человека в команде нет необходимос- ти. Конечно, музыку кто-то пишет или приобретается право на использование гото- вой, но это, как правило, человек "со сто- роны". А со звуками справляются и програм- мисты. Кое-что о бедных родственниках. Мы рассказали вроде бы обо всех людях, принимающих участие в разработке компью- терной игры. Конечно, мы не останавлива- лись на процессах видеосъемок и звукозапи- си, но с этим управляется продюсер, а тех- нология там такая же, как в обычном кине- матографе, начиная от грима и костюмов и кончая оформлением сцен и декораций. А вот о чем мы забыли, так это о про- фессиональном математике - о человеке, ко- торый мог бы вдохнуть в игру искусствен- ный интеллект. А вот ему-то в сложившейся структуре и нет места. Получается так, что ему "прислониться" к проекту практически негде. До того, как появился работающий прототип, балансиро- вать еще нечего и ему нет работы. После того, как прототип вышел, уже "включается счетчик". Продюсер еще в июне объявил на каждом углу, что такая-то программа появится в продаже 28 января в день проведения супер- кубка по футболу, когда вся Америка прильнет к телевизорам. Уже бьют копытами бета-тестеры, жаждущие разорвать игру на части. На балансировку игры с помощью коэффициентов устойчивости, обратных свя- зей, всевозможных гандикапов и т.п. еще остается время, но на то, чтобы реализо- вать, отладить и отстроить серьезный ис- кусственный интеллект - увы, его уже нет. Крупная фирма, вложившая сотни тысяч дол- ларов в разработку игры, которую просят миллионы покупателей, не станет ждать ме- сяцами, пока какой-то очкарик встроит в игру имитацию собственных мозговых изви- лин. Это не индустриальный подход. Так чего же нам удивляться, что год от года игры становятся все краше, все круп- нее, все звучнее и при этом упорно не хо- тят "умнеть"! Чего же нам удивляться, ес- ли почти в каждой стратегической игре, претендующей на обладание искусственным интеллектом, находятся приемы и хитрости, позволяющие "обмануть" ее интеллект, как маленького ребенка! И совсем нам нечего удивляться, что практически все игры (кро- ме адвентюр) сегодня выходят с сетевыми возможностями, дабы мы могли заменить хи- лый искусственный интеллект на нормально- го живого соперника. О проблемах ИИ в компьютерных играм мы в PC-REVIEW писали уже так много, как, на- верное, ни один другой журнал в мире. Но теперь-то вот тайное становится явным. Искусственнный Интеллект в играх столь слаб потому, что в штатных расписаниях фирм нет должности Ведущего Математика, а занимаются этим делом программисты. Выпол- няя балансировку игры, они полагают, что делают Искусственный Интеллект. Может быть это и так, но уж очень он получается огра- ниченным, хотя есть фирмы, у которых он лучше, а есть у которых он вообще никакой. ──════──
Другие статьи номера:
Похожие статьи:
В этот день... 15 октября