Что такое компьютерная игра, думаю знают все. Уверен, что некоторые все же задумывались, как же она устроена. Любой, кто владеет языками программирования хоть раз в своей жизни пробовал создать простенькую игру. Ниже преведены общие начальные понятия проектирования игр.
В первую очередь, игры всегда заслуженно считались наиболее сложными программами, по сложности написания их превосходят только операционные системы. Но если последние в домашних условиях и в одиночку создать почти невозможно (Линус Торвалдс - исключение), то игры можно вполне писать самому. Сложность их заключается в необходимости просчета всех возможных действий игрока, чего не требуется в офисных программах. Нельзя, например, заставить Блокнот откомпилировать написанный на Паскале код. А вот игроку может взбрести в голову пробить ракетой дыру в стене. При просчитанной физике это возможно, но при этом нужно прорисовать окружающее пространство.
Для начала, приведу классификацию игр сразу по нескольким критериям:
- по графике:
    1) Плоские. Самые простые в написании и исполнении. За редким исключением, неинтересны.
    2) Объемные. Игры такого типа в наше время заполняют прилавки магазинов. Наиболее распространены. В таких играх в той или иной степени воспроизведен некий мир, в том виде, в котором это возможно, подобные (или очень отдаленно напоминающие) реальным ландшафты, различные существа и все это выполнено в привычном трехмерном виде.
    3) Реалити. Недавно появившийся тип игр, графика которых призвана создать полный эффект присутствия. Четкая и правильная трехмерная графика (как правило, высокополигональная), максимально просчитанная физика, реальность движений. Сейчас раелизация такого рода графики стала возможным благодаря возросшей общей мощности компьютеров.
- по структуре:
    1) Шутер. Самый распространенный тип. От первого или от третьего лица игрок с ограниченным набором вооружения идет по уровням. "Один против всех". Негибкий сюжет, не позволяющий выйти за рамки. А если и есть ветвления, то их число строго ограничего. Довольно прост в исполнении. И динамичен в процессе игры.
    2) Квест. Наиболее гибкий сюжет, где развитие событий зависит от ваших действий как минимум наполовину. Однако динамичность игры отсутствует напрочь. Вам надо только выбирать ответы на вопросы. Относительно прост. Проблема лишь в одном: как учесть абсолютно все ответы игрока.
    3) Ролевая. Ерш из шутера и квеста. Динамичная игра с гибким сюжетом. Здесь все зависит не только от ответов, но и от действий. Здесь еще все зависит от параметров вашего персонажа. А правильная тактика в бою может позволить победить противника, многократно превосходящего по силе. Сложность та же, что у квеста.
    4) Стратегия. Вы манипулируете действиями подвластных Вам объектов, как то войска, здания, заводы и т.д. Причем в совершенно любых условиях: в космосе, на земле (в любом из миров, придуманных когда-либо), под водой и т.п. При этом задачи так же могут быть совершенно различными: уничтожить врага, разрушить или построить какой-либо объект. Сюжет строго определен и разделен на миссии, однако неважно, каким образом вы будете действовать внутри миссии. То есть неважно, выстроите ли вы войска на подходах к своей базе или оградите ее защитными стреляющими зданиями. Проблема одна и довольно серьезная - искусственный интеллект. Вам ведь нужно создать достойного противника игроку.
    5) Настольные, логические, азартные. В большинстве случаев плоские, но это большого значения не имеет. Тут главное не графика, а сам смысл. Причем настольные зачастую не так уж и сложны, там могут быть проблемы с искусственным интеллектом (Монополия например), но по сравнению со стратегией - ничего сложного. Логические проблематичны в том, что нужно долго и нудно просчитывать ходы или возможности. Нужно чтобы (например в шахматах) противник был достаточно "умен" либо чтобы выход всегда был (Лабиринты).  Азартные (за исключением преферансов) большой сложностью не отличаются.
    6) Local On-Line, арены. Оговорка о локальности не просто так. Имеется ввиду, что в эти игры можно играть и на компьютере без сети. Quake 3 и все сетевые игры с ботами - живые примеры таких игр. Главная их проблема - искусственный интеллект. Ведь нужно не только создать достойного противника, но и сделать так, чтобы он не был непобедимым. То есть играть будет не интересно, если бот, как только игрок попал в его поле зрение (у программ оно ведь не ограничено камерой) начнет палить в игрока без промахов. В обычных сетевых играх эта проблема отсутствует.
   7) Спортивные. Командная (футбольные, баскетбольные и т.д.) или одиночная (пинг-понг, теннис и т.д.). Вот в них проблем хватает. Общие для спортинвых: искусственный интеллект, достойный, но победимый, физика. Если это командная, то еще прибавляется переключение между игроками, выбор того, кем будет на данный момент управлять игрок.
   8) Гонки. Название говорит само за себя. Это может быть соревнования на чем угодно, начиная от своих двоих и автомобилей и заканчивая космолетами и танками. Проблем особых возникнуть не должно, нужно только не перебрать с искусственным интеллектом, иначе пройти такую игру будет сложно (но не невозможно, все участники гонки подчиняются одним законам физики).
- по миру
   1) Приближены к реальности. Реально существующие оружие, техника, существа (люди, звери, птицы и т.д.). Подобные реальным ландшафты, набосводы. Похожие на обычные законы физики. Примеры - военные игры, шпионские, спортивные, средневековые (без магии) и т.п.
   2) Псевдореальные. Похожи на реальные, но содержат элементы фантастики: магия, лучевое или бластерное, плазменное оружие, возможность отправки в параллельные миры, сверхсовременная техника, монстры и т.д. Такие миры характерны для большинства шутеров, но встречаются и среди стратегий.
   3) Отстраненные. Совершенно чужой мир, не имеющий ничего общего с реальностью со своими законами физики, оружием, жителями, ландшафтами и погодными условиями. Зачастую, игра идет от лица человека, попавшего из нашего мира в игровой.
   4) Абстрактные. Смесь всего и сразу в ограниченных рамках и пространстве. Игры, не воспроизводимые ни в реальности ни в каком-либо воображаемом мире. Например арканоиды.
Собственно, вам необходимо при разработке игры на начальных станиях выбрать, какой именно тип игры вы хотите создать. После чего вам нужно придумать сюжет игры. Советы по дальнейшим действиям будут приведены в последующих статьях.