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

Разработка игр


Давненько я не писал на хабр: учеба, сессия надвигается, сами понимаете. Сегодня я попробую рассказать, как в XNA реализовать Deferred Lighting (отложенное освещение) с использованием normal mapping на три источника света, при этом использовать мы будем Reach-профиль и Shader model 2.0.
Не так давно молодая команда разработчиков YTG (Yocto Technology Group) отпраздновала свой первый релиз. Когда я увидела то, что у них в итоге получилось, то была приятно удивлена. McGyro, а именно так называется их игра для iPad, iPhone и iPod Touch, порадовал меня интересной концепцией геймплея, основанной на наличии в устройствах гироскопа, весёлой и лёгкой манерой подачи сюжета, остроумными диалогами, а также запоминающимся визуальным стилем. В художественном исполнении игры, мне, как большому любителю мультяшного стиля, понравилось всё. Нарисовано довольно лаконично, но в то же время стопроцентно передаёт атмосферу американского вестерна. Дух дикого дикого запада чувствуется везде, даже в главном меню игры, которое стилизовано под старый деревянный указатель, слегка раскачивающийся на ветру на фоне пустынного ландшафта. Так и тянет выбрать дорогу и отправиться на поиски приключений. 



В первой части разработки тетрисоподобной игры Impressive Solids мы реализовали основную часть геймплея, уделив минимальное внимание внешнему виду приложения. Мы и OpenGL-то почти не использовали, всего и делали, что рисовали цветной прямоугольник. Пришла пора заняться оформлением, а также реализовать подсчёт очков и хранение рекорда (high score). Ну что, поехали дальше.Когда-то, году в 2002-м, на мой компьютер попала интересная игрушка, так сказать, класса тетриса (подробное описание геймплея приведено ниже); она очень полюбилась моей маме, которая играла в эту игру часами. Однако был досадный недостаток: после, кажется, 10 запусков игра начинала требовать регистрацию, которая, что удивительно, была бесплатной, но через интернет, что, само собой, являлось непреодолимым препятствием, поскольку интернета-то никакого тогда в наших краях в глаза не видывали, хоть и слыхали, что есть такая штука. Приходилось постоянно переустанавливать.
Через года три, когда интернет уже провели, а игра успела стать shareware и начать просить за регистрацию сколько-то денег, я попробовал её зарегистрировать, однако сайт производителя был к тому времени скорее мёртв, чем жив, и, по-видимому, остаётся таким и по сей день. В интернете легко находится shareware-версия игры, множество, не побоюсь этого слова, кейгенов, являющихся на самом деле троянами, и ни одной возможности зарегистрировать игру, чтобы мама могла в неё играть уже совсем на другом компьютере. В какой-то момент я подумал: а почему бы просто самому не сделать аналогичную игру и решить тем самым проблему на корню? Заодно из этого может получится какой-никакой hello-world по разработке простой игры для ПК в современных условиях — который я и предлагаю вниманию читателей.

