Как создать игру?
Автор: Алексей Егоров
Как создать игру.
Предисловиие.
Как написать игру? Я, конечно же не собираюсь рассказывать об азах двумерной и трехмерной графики и анимации, о матричных преобразованиях, ландшафте, скелетной анимации и бампмэппинге на шейдерах. Для начинающих могу сделать открытие: все это не важно, а обсуждение вышеупомянутых тем оставлю тем, кто разбирается в этом лучше меня.
Программистам и прочим.
Если вы программист, то вам проще, хотя бы потому что я программист, и буду повествовать от своего лица, думаю, что все желающие представители иных рас творчества смогут интерпретировать это для своего уникального случая.
Что такое игра.
На самом деле, если уже быть совсем точным, то совсем не важно, что это – игра, дом, или телевизор. Игра – плоды трудов человека, и при этом (хотелось бы), что бы эти самые плоды, тех самых трудов, росли и вырастали. Весь дальнейший текст направлен на повышение коэффициента урожайности.
Кто делает игру?
Игру делает обычно один человек. Я не о тех одиночках, которые не спят ночами и творят универсальные движки. Речь может идти даже о командах в десятки человек, но при этом игру делает один (совсем не обязательно программист, но, как правило, человек не далекий от этого).
Что мне делать? Я хочу создать игру!
Прежде всего, задуматься. Нужно ли оно мне? После этого идти играть в кваку или старкрафт с друзьями до потери пульса. По окончании комы еще две недели играть в ММОРПГ (Линейку, н-р) и все самые-самые последние 3д шутеры. Если желание осталось – его нужно удовлетворить, как и любое другое (дело в том, что при этом желании все другие попросту куда-то испаряются).
«Приступим-с»
С этими словами нужно взять в руки ручку и бумагу (варианты: «Планшет и Перо», «Клаву и мышь». Но лучше именно ручку и бумагу, т.к. если бы на скучных лекциях был бы комп., вам было бы не до этого. Комп. Отвлекает от мыслей. Не исключено, что своим шумом… А может быть играми, интернетом, Веселыми Картинками и видеоклипами?).
Далее необходимо пройти тест. Варианты ответов да-нет.
1. Я решил написать игру?
2. Я уверен в этом?
3. У меня есть необходимое кол-во времени (не меньше 8 часов в сутки)?
4. Я умею программировать/рисовать/сочинять_музыку/просто_сочинять?
5. Я когда либо занимался вещами из п.4?
6. У меня есть гениальная/или_не_очень/но_не_суперглобальная идея?
7. Эта идея не утопия?
8. Мне по все силам это одному? (Уложусь ли в 10 лет)
Если все ответы «да» - поздаравляю! Вы почти готовы.
Экзистенциальный вопрос
Вообщем, вопрос существования. Объективного существования идеалов того, что вам хотелось бы создать. Прежде всего, после кваки и линейки вам необходимо играть именно в такие игры (если конечнечно же упомянутые игры не являются теми-самыми идеалами). Далее – необходимо все же решить.
1. Что за игра.
2. Сюжет (примерно).
3. Как будет выглядеть.
4. На кого ориентирована.
П. 3 уделить особое внимание. Тут лучше помечтать. Представить себя игроком (не главным героем, естественно, а тем, кто играет в эту игру) и выписать ВСЕ, что тебе, как игроку, не разбирающемуся в программировании и умеющему рисовать только карикатуры на странноватых преподавателей. И еще забыл, что тебе медведь оба уха оттоптал и порвал голосовые связки (а это на всякий случай. Чтобы-вот.).
«Куем железо, пока горячо»
Вы сейчас находитесь в экстазе творчества. Вам хочется творить, творить и творить (а значит учиться, учиться и еще раз учиться). Используйте свое состояние! Не прожигайте его на оптимизацию даже самых критических участков кода или изображения. Создайте НЕЧТО. Нечто первое, сливки всех ваших умений и наработок, пусть неоптимизированное и корявое, важна лишь продуманная структура (на которую вы должны потратить основное время), остальное – заглушки. Представляете, как потом все будет интересно оптимизировать, когда игра будет более-менее готова? Удовольствие возрастает по экспоненте от коэффициента готовности вашего программного продукта. Не теряйте его! Создайте концепцию. Модельте сами. Рисуйте сами. Важный момент: ничего (кроме музыки любимых исполнителей) не берите со стороны. Это очень важно. Тем самым вы создаете уважительное отношение к вашему проекту, как с вашей стороны, так и со стороны других людей, которые, если вы все правильно сделаете, будут просто мечтать присоединиться.
Вывод: чем правильнее вы потратите свое время вначале проекта, тем лучше для коэффициента урожайности.
Дебют
Настало время. Проект выглядит так, что его можно представить публике.
1. Не должно быть видно никаких глюков, тестируйте везде, на всех доступных компах, в разных директориях. Предоставите это дело вашему лучшему другу (маме, папе, кошке, собаке, попугаю). В каждом релизе – иллюзия загадочной завершенности (изз).
2. В каждом слове вашего первого сообщения на форуме и в пунктах меню должна быть совершенная уверенность и абсолютное безразличие на всех прочих личностей, которых вам желательно привлечь.
3. Должна быть иллюзия, что работа кипит (и на самом деле должна кипеть). Скриншоты, скриншоты и еще раз скриншоты. С комментариями, можно шуточными, можно даже с глюками («а… сматрите какой клевый глюк. Афигел, када первый раз увидел!»). Важно, чтобы этого не повторилось в ваших релизах, которые тоже должны быть регулярно. Важно, чтобы это не были отдельные от проекта части (мол, смотрите, какой у меня бамп. А вот тут у меня отражение. А вот тут физика. А вот этот экзешничек… Впрочем, без разницы, он почему-то не запускается :( ). Это не имеет эффекта, пока не будет вставлено и использовано в игре.
Люди должны сами потянуться. Вы должны упомянуть (сначала) что делаете все одни. Ни в коем случае не преувеличивайте свои способности. Говорите, что вы, во что бы то ни стало, готовы дойти до конца водиночку.
Заключение (на случай, если вы не уловили сути)
1. Вы человек слова и дела. Если сказал – создам игру, так и случится…
2. Продуманность. От общего – к частному. Структура. Интерфейсы. Диаграммы классов. Взаимодействия. Лучше выучить UML.
3. Уважение к проекту и к его участникам. Если человек приходит в вашу команду – вы должны его уважать и не в коем случае не бросать проект до тех пор, пока не останетесь снова один и никто больше не интересуется вашим проектом (это может случится потому, что вы нарушили какие-то пункты. «Супер онлайн рпг. Это просто идея, которая никогда раньше не придумывалась – весь мир перед вами. Вы можете путешествовать. Можете побывать в России, Америке. Все география, как в нашем мире. Вы можете делать все, что хотите! Можете воевать в Ираке, или работать на секретных уравновых рудниках в Африке. Можете быть официантом или бандитом. …»)
4. Постоянное общение с критиками (ключевые слова: сайт, форум, релизы, скриншоты). Соответственно, учитывание их пожеланий и немедленное исправление глюков с не менее немедленным опубликованием безглючного результата.
Удачного урожая! С наилучшими пожеланиями, EvilSpirit (Алексей Егоров).
1 декабря 2005 (Обновление: 4 дек 2005)
Комментарии [4]