Игровой конструктор, часть 2. Интерфейс и управление
Джойстик носатый и мышь хвостатая!
В любой игре гeймер управляет своим заэкранным альтер эго с помощью разнообразных устройств: клавиатуры, мыши, джойстика, гeймпада, виртуальными перчатками, а иногда даже взглядом! Чем больше игра поддерживает устройств управления, тем лучше. Стандарт де-факто для стратегических игр мышь и клавиатура. В экшенах и аркадах к необходимому минимуму добавляются джойстик и гeймпад. В вашей игре просто обязан быть этот минимум. Вы спросите, зачем, к примеру, той же “Контре” джойстик, если настоящие джедаи выбирают мышь? У разных людей разные вкусы. В США, например, самым популярным игровым устройством является вовсе не мышь, а гeймпад. Надеюсь, я убедил вас, что поддержка хотя бы этих четырех устройств необходима. А теперь поговорим о том, как эту самую поддержку внедрить в движок.
Для начала решим один очень важный вопрос: куда мы поместим код, обpaбатывающий устройства ввода? Вроде бы его стоит поместить туда, где и требуется проверка реакции игрока: в код, который отвечает за оружие; в код, который отвечает за движение; в код, который отвечает за... И получается, что код управления будет размазан по всему движку. А как же наш принцип кирпичиков? Не дело это. Код управления должен быть цельным. Лучше место для кода обработчик TGLCadencer.
|
Поясню на примере. Допустим, вы делаете гоночный симулятор, и в каком-то неопределенном пока обработчике клавиатуры написали что-то вроде:
Если нажата клавиша “вперед”, положение машины:=положение машины + 10
Так как обработчик будет сpaбатывать только в перерывах между рендером кадров, а приращение координаты машины каждый раз одно и то же, скорость машины будет зависеть от FPS, то есть в конечном счете от производительности компьютера. На быстрых компьютерах машина будет ездить со скоростью 300 км/ч, на медленных выдавать только 100, а на графических станциях вообще полетит со скоростью paкеты! В довершение картины представьте, что вы с вашим другом играете по сети, и у него машина едет быстрее только потому, что мощнее компьютер. Согласитесь, несправедливо? Вот чтобы такого не случалось, придумали Cadencer. В его обработчике вы можете написать так:
Если нажата клавиша “вперед”, положение машины:=положение машины + 0,01* deltaTime
Коэффициент перед deltaTime подбирается экспериментально. Вот теперь машина будет ездить с одинаковой скоростью на любых компьютерах. Это же относится и к любым другим движущимся или меняющимся во времени игровым объектам. Поэтому TGLCadencer один из центральных элементов нашего движка, и код работы с устройствами мы поместим именно в его обработчик.
Казалось бы, с клавиатурой и мышью никаких проблем нет назначаем соответствующие события OnKeyDown и OnMouseMove главной формы и там описываем все необходимые действия... И нарываемся на подводный камень. Так делать категорически нельзя, особенно в том случае, если игра будет
|
Разработчики GLScene предусмотрели многие препятствия, которые могут попасться на нашем пути, и загодя постелили соломку. А соломка эта выражается в специальном модуле Keyboard.pas. Пусть вас не смущает название там не только о клавиатуре. Подключите его в uses модуля, в котором будете обpaбатывать сообщения от устройств. Давайте посмотрим, какие возможности дает модуль.
Клавиатура. Чтобы определить, нажата ли какая-то клавиша в данный момент времени, используйте функцию IsKeyDown. Например:
If IsKeyDown(VK_UP) then Tank.Go(deltaTime)
Клавишу для проверки надо задавать виртуальным кодом. Полный список виртуальных кодов клавиш вы найдете в справке Delphi. Самые распространенные коды приведены на отдельном текстовом блоке.
Еще одна полезная пара функций из этого модуля: KeyNameToVirtualKeyCode и VirtualKeyCodeToKeyName. Они конвертируют виртуальный код клавиши в символьное имя, принятое в системе, и наоборот. Эти функции пригодятся, когда вы будете делать переназначение клавиш. Игрок должен иметь возможность переназначить управление по своему вкусу. Реализовать это можно разными способами. В конце главы я приведу ключевую функцию из одной из моих игр, которая как раз и реализует переназначение клавиш.
Мышь. Здесь нам надо решить две задачи: обработка нажатий кнопок мыши и отслеживание положения указателя мыши (курсора или прицела). Первая задача решается очень просто с помощью все того же IsKeyDown. Коды левой, средней и правой клавиши мыши соответственно VK_LBUTTON, VK_MBUTTON и VK_RBUTTON. Вторая задача не намного сложнее. Сперва объявите в var нужного обработчика вот такую переменную:
p:TPoint;
В TPoint.X и TPoint.Y мы будем сохранять горизонтальную и вертикальную координаты мыши. Теперь с помощью комaнды GetCursorPos из WinAPI можно легко получить искомые координаты:
getcursorpos(p);
На пpaктике часто важно знать не координаты мыши, а изменение координат с предыдущей проверки. Для этого объявите глобальные переменные:
mx, my,dx,dy : Integer;
А теперь в том же коде сразу после вызова GetCursorPos напишите:
dx:=p.X-mx;
dy:=p.Y-my;
Вот наглядный пример того, как эти изменения координат можно использовать:
Player.Weapon.MoveUp(dx);
Player.Weapon.MoveLeft(dy);
Естественно, если dx отрицательный, MoveUp вопреки названию не поднимет оружие, а опустит. То же относится и к MoveLeft. Объекты Player и Weapon здесь просто придуманы, для движка они ничего не значат. Более подробно о том, как правильно организовать иерархию классов движка, мы поговорим в следующей статье цикла.
Джойстик. Давайте условимся, что за джойстики у нас с вами сойдут любые устройства, имеющие некоторое количество кнопок и некоторое количество рычажков с некоторым количеством степеней свободы. С точки зрения программирования гeймпады, рули, педали и прочие подобные девайсы ничем от джойстиков не отличаются.
|
If (элемент in имя_набора) then {элемент в наборе}
Элементы, соответствующие кнопкам джойстика, называются jbButton1, jbButton2, jbButton3 и т.д. И, наконец, вот так вы сможете определить, нажата ли та или иная кнопка:
if (jbButton1 in Joystick.JoyButtons) then {нажата первая кнопка}
Напоследок, как и обещал, приведу свой код для переназначения клавиш:
function IsItKeyDown(sKey:string):boolean;
begin
if KeyNameToVirtualKeyCode(sKey)<>-1 then
begin
if IsKeyDown(KeyNameToVirtualKeyCode(sKey)) then result:=true else result:=false;
exit;
end else
begin
result:=false;
if (jbButton1 in form1.joystick.JoyButtons) and (sKey=\'jbButton1\') then result:=true;
if (jbButton2 in form1.joystick.JoyButtons) and (sKey=\'jbButton2\') then result:=true;
if (jbButton3 in form1.joystick.JoyButtons) and (sKey=\'jbButton3\') then result:=true;
if (jbButton4 in form1.joystick.JoyButtons) and (sKey=\'jbButton4\') then result:=true;
end;
end;
Везде, где нужно проверить, нажата ли определенная клавиша, пользуйтесь таким вызовом:
If IsItKeyDown (c_forward) then {нажата клавиша вперед}
В с_forward перед началом работы игры должно хранится название назначенной для действия “Вперед” клавиши. Аналогично поступайте со всеми остальными действиями, которые подлежат переназначению.
|
Что общего у шлема боевого летчика и компьютерной игры? У обоих есть HUD! Это словосочетание расшифровывается как Head Up Display и на русский язык однозначно не переводится. На шлемах боевых летчиков многих современных самолетов есть прозрачные дисплеи, на которых показываются параметры вооружения, целеуказатель и многие другие данные, необходимые в воздушном бою. С легкой руки разработчиков авиасимуляторов этот термин стал относиться не только к спецдисплею, но и к экранному интерфейсу вообще. Теперь под страшным словом HUD скрывается все, что находится на экране во время игры, но непосредственно не относится к игровому миру: очки, жизни, фраги, пиктограммки оружия, радар, списки юнитов и зданий для постройки и многое другое. Как правило, HUD двумерный, то есть рисуется спрайтами поверх всей остальной сцены. По-настоящему трехмерные игровые интерфейсы встречаются крайне редко. Мы поговорим о создании классических двумерных HUD.
Для создания HUD в GLScene есть два класса TGLHUDSprite и TGLHUDText для спрайтов и текста соответственно. Эти объекты обладают рядом особенностей. Во-первых, они существуют только в двумерном прострaнcтве, а их координата Z определяет только порядок отрисовки, то есть какие объекты будут поверх в случае пересечения. Во-вторых, положение HUD-объектов на экране не зависит от того, куда направлена камера их координаты абсолютны. Точка с координатой (0,0) находится в верхнем левом углу экрана, ось X идет вправо, а ось Y вниз. В-третьих, у них особые отношения к свойствам прозрачности.
Вряд ли ваш HUD будет состоять из одного-двух спрайтов. В среднестатистической игре их как минимум десяток. Так как перечень объектов, входящих в HUD (давайте условимся для краткости называть их просто спрайтами), неизменен в течение всей игры, их можно создать на этапе разработки игры, добавив нужные объекты с помощью GLScene Editor (напоминаю, для вызова этого редактора надо два раза кликнуть по иконке компонента TGLScene). Только не стоит добавлять объекты, относящиеся к HUD, в корень. Создайте объект-пустышку TGLDummyСube, сделайте его невидимым и уже в список его подобъектов добавляйте все, что относится к HUD. Теперь просто изменив свойство Visible у TGLDummyСube, вы можете одним махом убрать весь интерфейс с экрана (он ведь не нужен во время показа заставочных роликов или когда гeймер находится в игровом меню) и так же легко его вновь показать.
|
В одной из следующих статей цикла мы поговорим о том, как работать с разрешениями, так как это отдельная интересная тема. Пока представьте себе, что у нас есть две глобальные переменные res_x и res_y, в которых хранятся ширина и высота экрана в пикселах. В тестовых целях вы можете присвоить им нужные значения вручную.
Есть два подхода к обработке разрешений. В первом случае вы создаете столько копий каждого спрайта, сколько разрешений будет поддерживать игра. Каждая копия будет “заточена” под определенное разрешение. Этот способ дает очень качественный интерфейс, но... придется потратить много времени на отрисовку. Во втором случае вы программно растягиваете спрайты до нужных размеров. Качество слегка страдает, но и хранить ничего дополнительно не нужно. Обычно эти два способа сочетаются: игроделы создают несколько копий спрайтов для базовых разрешений, а для всех остальных разрешений ближайшая по размерам копия растягивается до нужного размера.
|
HUDSprite.Material.Texture.Disabled:=false;
HUDSprite.Material.Texture.Image.LoadFromFile(‘HUDSprite.bmp’);
HUDSprite.Material.BlendingMode:=bmTransparency;
HUDSprite.Material.Texture.ImageAlpha:=tiaSuperBlackColorTransparent;
HUDSprite.Material.Texture.TextureMode:=tmModulate;
HUDSprite.Position.X:=120*res_x/1024;
HUDSprite.Position.Y:=100*res_y/768;
HUDSprite.Width:= HUDSprite.Material.Texture.Image.Width*res_x/1024;
HUDSprite.Height:= HUDSprite.Material.Texture.Image.Height*res_y/768;
Цифры 120 и 100 соответствуют координатам данного спрайта в разрешении 1024х768. Простая школьная пропорция перемещает спрайт в нужное место и масштабирует его при смене разрешения.
Проблему с разными разрешениями мы решили. А теперь поговорим о не менее важной вещи разных уровнях прозрачности. В коде выше вы наверняка заметили несколько строк, посвященных режимам прозрачности. Ни один более или менее сложный HUD не может состоять только из квадратных спрайтов. Приборные щитки, фигурные меню, радар, изгибы панелей как реализовать все эти нестандартные формы? Здесь нам поможет первый уровень прозрачности. Какую-то часть квадратного спрайта мы должны сделать абсолютно прозрачной, тогда спрайт будет иметь фигурную форму. Проще всего это сделать так. Нарисуйте нужный спрайт, и все места, которые должны быть прозрачными, закрасьте абсолютно черным цветом (цвет RGB(0,0,0)). Внимание! Если в видимой части спрайта также используется черный цвет, в этом месте будет дырка. Поэтому вместо черного цвета используйте чуть-чуть серый (к примеру, RGB(1,0,0)). “На глаз” от черного такой цвет отличить невозможно.
|
HUDSprite.Material.BlendingMode:=bmTransparency;
HUDSprite.Material.Texture.ImageAlpha:= tiaSuperBlackColorTransparent;
Первая устанавливает режим прозрачности, а вторая указывает, какие именно области изображения будут прозрачными. В нашем случае все области, закрашенные черным цветом. Есть и другие способы задания прозрачных зон. К примеру константа tiaTopLeftPointColorTransparent устанавливает режим, при котором цветом прозрачности будет цвет верхней левой точки изображения.
Часто бывает необходимо сделать полупрозрачным весь спрайт. За общую прозрачность отвечает свойство AlphaChannel. Значение 1 соответствует абсолютной непрозрачности, значение 0 абсолютной прозрачности. Чтобы спрайт стал полупрозрачным, задайте какое-нибудь дробное число от 0 до 1.
Есть еще один способ задания прозрачности спрайта, с помощью которого можно реализовать любой тип прозрачности. К примеру, часть спрайта будет полностью прозрачной, а часть полупрозрачной, причем эта полупрозрачность будет градиентной. С помощью этого способа можно делать поразительные эффекты. Цена повышенная ресурсоемкость по сравнению с уже рассмотренными способами. Речь идет об альфа-маске изображения. Самые популярные форматы, в которых есть альфа-маска bmp32 и tga. Файлы обоих форматов вы можете создать, например, в Photoshop. Мы рекомендуем использовать формат tga, потому что в нем предусмотрено сжатие. Использовать файлы с альфа-маской в GLScene совсем несложно:
HUDSprite.Material.BlendingMode:=bmTransparency;
HUDSprite.Material.Texture.Image.LoadFromFile(‘HUDSprite.tga’);
Все остальные свойства, связанные с прозрачностью, не трогайте в них должны оставаться значения по умолчанию. С помощью последнего приема вы сможете сделать любые интерфейсы, какие только придумаются. Однако если какой-то конкретный спрайт можно реализовать с помощью первого способа делайте именно так, ведь производительность дороже всего.
Напоследок приведу одно важнейшее правило работы с любыми текстурами, в том числе и для спрайтов. О нем, увы, забывают порой даже профессиональные разработчики, что кончается серьезными графическими глюками. У любой текстуры должны быть стороны, кратные степеням двойки, то есть из ряда 4, 8, 16, 32, 64, 128, 256, 512, 1024 и далее по списку. Это требование связано с особенностями организации видеопамяти. Самое малое, что вы можете получить, нарушив его, темные полосы непонятного происхождения по краям полупрозрачных спрайтов. И если на каком-то этапе разработки у вас на каких-то текстурах вдруг появились непонятные артефакты в первую очередь проверьте, какие у них размеры.
Коды клавиш
|
* * *
Интерфейс игры готов, более того движок умеет общаться не только с клавиатурой, но и с мышкой, а также со всевозможными рулями, джойстиками, гeймпадами... В следующем номере вы узнаете, как правильно организовать иерархию игровых классов и объектов, чтобы не было мучительно больно за долгие месяцы, проведенные за программированием того, что при другом подходе можно было сделать одной строчкой. На компакт мы снова выкладываем последнюю протестированную версию GLScene.
очень важно личное ощущение. Мышь может выглядеть безукоризненно, но через полчаса напряженных баталий в Team Fortress 2 у вас начнет ныть запястье, а через час вы забросите устройство на самую дальнюю полку и никогда больше не достанете.Поэтому мы решили...
28 04 2024 18:25:37
главный герой, Генри Таунсенд, проснувшись однажды утром, обнаружил, что он заперт в собственной квартире. Входная дверь, под которой лежала записка “Мама, почему ты не разбудишь меня?”, оказалась заблокирована цепями, а окна — закрыты решетками...
27 04 2024 20:56:47
Ретро-жанр понемногу выходит из многолетней спячки — и мы решили вспомнить пять культовых серий битемапов, которым не помешает продолжение или ремейк....
26 04 2024 12:12:18
Starcraft: видеоурокиНа протяжении полугода в рамках рубрики «Обучение» на DVD мы изучали тактики в матчах между разными расами, знакомя вас как с общими положениями игры за все расы, так и с конкретными матчапами. Это вызвало нешуточный…|Игромания...
25 04 2024 5:42:27
Мы впервые публикуем на сайте главные рецензии из самых первых номеров Игромании — в рубрике «Ретро-обзор». Все статьи мы переносим из журнала в первозданном виде, без купюр и исправлений (разве что скриншоты в старых…|Игромания...
24 04 2024 17:34:15
«…Битвы — самое интересное в GSB, но по иронии судьбы влиять на происходящее никак нельзя. Зато выглядят баталии внушительно: талантливая, яркая двухмерная графика. Столкновение любых двух железяк здесь лучше всего хаpaктеризуются английским выражением ey...
23 04 2024 0:37:13
Когда продюсер из Warner Bros. вручил мне гeймпад от PS4, я добрую минуту ничего не делал и просто крутил камеру в разные стороны. Разработчик недовольно взирал на происходящее — время-то идет, нужно быстро пробежать игровой эпизод и…|Игромания...
22 04 2024 22:52:13
Эти гонки – не привычные всем автогонки, а гонки на мотоциклах. Игра не претендует на звание симулятора . Это просто качественно выполненная игрушка, которая позволит игроману расслабиться после трудового дня. «Профи» наверняка оценит увле...
21 04 2024 4:42:13
помимо направления ветра и силы залпа, просчитывается физика каждого отдельного ядра, а дыры в кораблях появляются ровно в тех местах, куда их принесло выстрелом из пушки. Ну а если канониры попадут в пороховой склад, корабль самым натуральным образом взо...
20 04 2024 4:15:25
Мы живём в эру условно-бесплатных игр. Громадный ассортимент онлайновых и даже одиночных проектов зазывает и манит: попробуй, бесплатно! А стоит втянуться — красивая картинка быстро разбивается о бетонную стену донатов. За яркой вывеской…|Игромания...
19 04 2024 8:20:10
О номинации В этой номинации мы выделили игры, дающие уникальный опыт борьбы с самым изворотливым, жестоким и умелым противником: другим человеком. Игромания подводит итоги года: лучшие игры 2017-го! Третье место. Fortnite Battle Royale…|Игромания...
18 04 2024 23:20:49
игра совершенно бесплатна, экономическую модель в Electronic Arts называют Play 4 Free — большая часть денег должна идти от рекламы на сайте. Разработчик с издателем клянутся, что реклама присутствует только в заставках, а поля сражения не будут заг...
17 04 2024 3:41:36
Повстанцы Панэма наконец готовы выступать на Капитолий. Китнисс Эвердин, символ восстания, должна остаться в тылу и с экрана поддерживать боевой дух революционеров. Но у дeвyшки другие планы. Она хочет своими руками убить президента Сноу, принесшего…|Игромания...
16 04 2024 10:44:27
О номинации В эту номинацию вошли громкие проекты, от которых отечественные и западные игровые журналисты ждали гораздо большего. Они не оказались абсолютно провальными, но и назвать их успешными язык не повернётся. Какие-то…|Игромания...
15 04 2024 2:10:59
Видеомания * Игровая зона /темы CD: Max Payne 2: Battle Tactics 2 * Heroes of Might and Magic III: In the Wake of Gods * Call of Duty: Heat of Battle; темы DVD: Battlefield Vietnam: BattleGroup-Vietnam, Unreal Tournament 2004: Troopers/ * Демоблок * Патчи...
14 04 2024 0:17:43
Игра Order of War, кажется, наконец-то закрыла тему Второй мировой в RTS — в ближайшее время в этой нише ожидается только R.U.S.E., но он больше про обман и хитрость, чем высадку в Нормaндии. Белорусская студия Wargaming.net, по сути,…|Игромания...
13 04 2024 19:37:31
Сегодня у нас очень дорогая игрушка: гарнитура Audeze Mobius. О ней многие рассказывали, однако никому не удалось нарисовать цельную картинку и объяснить, зачем и кому может прийти в голову отдать 35 000 рублей за гарнитуру. Мы провели с этой моделью…|Игромания...
12 04 2024 13:48:32
Эвелинн — League of Legends Мы с вами видели уже немало косплея с участницами виртуальной поп-группы K/DA, но вы только посмотрите, как точно кадры с Ладой Люмос в роли Эвелинн повторяют кадры из официального клипа! Фотограф…|Игромания...
11 04 2024 5:46:46
"...В новом цикле статей "Волшебный мир текстур" мы рассмотрим основные аспекты создания и применения трехмерной графики в 3D Max è научимся рисовать текстуры для игровых моделей..."...
10 04 2024 15:13:38
Оформить предзаказ|Всё о Tom Clancy's Ghost Recon: Wildlands Сюжет Tom Clancy's Ghost Recon: Wildlands посвящен не самой популярной в играх теме — борьбе с картелями, занимающимися распространением запрещенных веществ.…|Игромания...
09 04 2024 6:32:49
Узнав, что я направляюсь в MADию, пpaктически все мои друзья и коллеги хором задавали один и тот же вопрос: "А как они там после разлада с Bethesda Softworks?" (подробности данного конфликта, заключавшегося в некорректном поведении американских коллег по...
08 04 2024 15:54:50
Сегодня в полночь Nintendo повысила цены на цифровые версии своих игр в российском сегменте eShop. Незадолго до этого о подорожании проектов для PlayStation 4 доложили российские розничные продавцы. Как после этого жить и оставаться гeймером? Что…|Игромания...
07 04 2024 2:53:37
«…Эцио, хотя и принял на себя обязанности менеджера и бухгалтера, продолжает оттачивать навыки оперативной работы. Как и раньше, ему помогает славный малый по имени Леонардо: его последнее изобретение — парашют. Он не раз выручит Эцио при прыжках с высоки...
06 04 2024 2:53:45
Могут ли классические кольцевые гонки по увлекательности и динамизму сравниться с такими зубрами стритрейсинга, как последние три части Need for Speed или, например, консольный Midnight Club 3? Казалось бы, ответ очевиден: нет, не могут. Однако молода...
05 04 2024 0:38:53
Первая часть Dead Space оказалась довольно противоречивой игрой. Качество исполнения, постановка и гeймплей — все было выполнено на высочайшем уровне. Не хватало одного — хоррора. Dead Space оказался скорее размашистым блокбастером,…|Игромания...
04 04 2024 0:25:47
...Swing, похоже, поглощает все шумы, ведь внутри находится стандартный кулер от Intel и видеокарта с шустрым вентилятором. Процессор Core 2 Duo E6400 работает на скромной, казалось бы, частоте 2,13 ГГц, но это не мешает ему выдавать впечатляющие результа...
03 04 2024 4:28:43
24 часа в сутки я мысленно с вами. В остальное время со мной можно связаться, написав по адресу hotline@igromania.ru или отправив SMS на короткий номер 1121 с префиксом #hard (то есть в начале сообщения вы должны ввести слово #hard и только потом,…|Игромания...
02 04 2024 22:30:52
Когда мы говорим, что Человеку-пауку, трaнcформерам и прочим киногероям не везет на игры, вы, пожалуйста, помните, что все относительно. Например, по гиперпопулярной вселенной «Назад в будущее» за 25 лет было создано около дюжины игр, и…|Игромания...
01 04 2024 11:25:41
Бессменные “Дешево и сердито... Категория меньше 500, “Cмepть тормозам... Категория меньше 1000, “Займи, но купи... Категория больше 1000 и — “Тебя я видел во сне”....
31 03 2024 10:49:45
Каждый год перед дверями февральского номера “Игромании” собираются все вышедшие за год игры. Они встают в длинную очередь, пишут на руках номерки, а затем вооружаются мечами, палицами и кастетами и в ожесточенной схватке месят…|Игромания...
30 03 2024 20:23:58
Знаменитый гeймдизайнер и теоретик онлайновых миров Раф Костер (Raphael Koster), который работал над Ultima Online и Star Wars Galaxies, не первый год формулирует в своем блоге (www.raphkoster.com/gaming/laws.shtml) принципы дизайна MMORPG. Вот лишь…|Игромания...
29 03 2024 1:14:31
Чего стоит ждать от симулятора пляжного волейбола? Собственно волейбола, говорите? Ха, как бы не так! Прежде всего — красивого женского тела в больших количествах. И это с успехом доказала игра Dead or Alive Xtreme Beach Volleyball, кото...
28 03 2024 10:47:50
по играм можно проследить «постапокалиптические страхи» человечества, и во многом — страхи разработчиков-американцев. Заметили, что Штаты фигурируют чуть ли не в 99% игр? Это вполне объяснимо: на территории Америки войн не было уже...
27 03 2024 14:33:11
«…Молодая финская студия делает уникальную игру, аналогом которой может служить разве что провокационная дилогия Manhunt. Только на сей раз перед нами симулятор даже не садиста, а Сатаны, который даст новые поводы обвинить игровую индустрию в пропаганде н...
26 03 2024 0:39:57
Из всего оригинального состава Мстителей Наташа Романофф, пожалуй, самая невезучая. Даже Соколиному Глазу в фильмах досталось несколько ярких эмоциональных сцен и пара отличных шуток, а на долю Чёрной Вдовы, персонажа без преувеличения культового,…|Игромания...
25 03 2024 22:14:55
Ярослав Гафнер, один из главных киноманов Игромании С младых ногтей осознал, что видеоигры как книги, музыка или кинематограф — могут быть настоящим искусством. Выпуск ремастеров в игровой индустрии вошел в обычай — некоторые…|Игромания...
24 03 2024 8:39:23
игра одной идеи. Глефа здесь, как и огонь в Far Cry 2, — лучший и единственный способ развлечься. К счастью, у Digital Extremes, в отличие от Ubisoft Montreal, не было наполеоновских амбиций, поэтому они сумели верно расставить акценты и дали...
23 03 2024 19:20:42
В далеком 1997 году Тим Кейн почти в одиночку создал, пожалуй, лучшую игру про мир после ядерной катастрофы, и, несмотря на низкие продажи, спорить, что первый Fallout — настоящий хит, желающих не находилось. Через год появляется Fallout 2, оказавшийс...
22 03 2024 22:48:28
не так давно наш густонаселенный сосед закупил себе целую флотилию “Варшавянок”, так что скорее всего Dangerous Waters даст своим игрокам поистине уникальную возможность — в роли бравого китайского офицера, управляющего русской субмариной, потопить нескол...
21 03 2024 2:44:35
«…многие из представленных на этих страницах проектов даже играми-то назвать нельзя — это работы, сделанные в рамках Experimental Gameplay Project. Его авторы уже не первый год ставят перед разработчиками пpaктически садистские условия и предлагают, напри...
20 03 2024 6:27:49
Если вы уже бывали в Хайруле, то наверняка примерно знаете, чего ждать от The Legend of Zelda: Spirit Tracks. Эта игра, как и ее предшественницы, взяла все лучшее у ролевого и приключенческого жанров. От первого здесь — большой мир и…|Игромания...
19 03 2024 9:23:44
Через месяц стукнет 35 лет одной из самых влиятельных серий в истории индустрии — Metroid. Она стала родоначальницей целого поджанра, названного в её честь, и наряду с The Legend of Zelda ввела моду на нелинейность, бэктрекинг и прокачку в…|Игромания...
18 03 2024 1:18:46
«…Radeon HD 6850 оказалась на удивление быстрой. От старшей версии она отстает на 20% и уверенно держится на уровне GTX 460 и GTX 465. Но все впечатление портит цена в России. Если на Западе плата AMD обойдется ощутимо дешевле конкурентов, то у нас она на...
17 03 2024 20:54:43
Если заглянуть вглубь истории, то мы легко сможем найти следы протокруглогероя. Это не кто иной, как наш отечественный душка Колобок. Вдаваться в сложные перипетии его биографии и рецепт приготовления не будем — оставим это на откуп телевизионн...
16 03 2024 20:47:46
Добрым словом и пистолетом можно сделать больше, чем просто добрым словом. (Аль Капоне) Выход Contract J.A.C.K. можно назвать пробным выпадом Monolith. Несмотря на народную любовь и кучу наград в различных игровых изданиях, No One Lives Foreve...
15 03 2024 4:38:31
«…Мрачные философы, мистификаторы в балахонах, сверлящие игрока тяжелым взглядом, наконец позволили себе расслабиться и на время превратились в веселых трубадуров, готовых горланить песни и хохотать даже в то время, когда планета летит в тартарары. В этой...
14 03 2024 12:46:23
...фанаты ATI разделились на два лагеря — на огорченных и довольных. Первые посетуют на недостаточную производительность, отсутствие UVD, а вторые же порадуются приемлемой цене и производительности почти на уровне GeForce 8800 GTS...Мы тестировали:...
13 03 2024 7:54:47
...последующие пятнадцать минут мы вместе с французским шофером увлеченно играем в GTA и преследуем чужое такси по центру Парижа (для полноты картины за окном в этот момент проносятся Триумфальная арка, Наполеонов мост, Лувр, готические фасады Нотр-Дама и...
12 03 2024 1:19:13
Бывают игры, которые хочется ругать. Бывают игры, которые хочется хвалить. А бывают такие игры, как One Punch Man: A Hero Nobody Knows. Когда объективно проект хочется разнести в пух и прах, зато субъективно получаешь море удовольствия……|Игромания...
11 03 2024 8:20:29
Признаюсь честно, я не фанат японского гeймдева в целом (если речь не о хоррорах) и серии Monster Hunter в частности. Однако приобщиться к спин-оффу Stories хотел давно: уж больно интересной выглядела концепция пошаговых битв с огромными монстрами.…|Игромания...
10 03 2024 4:28:43
Еще:
Игры -1 :: Игры -2 :: Игры -3 :: Игры -4 :: Игры -5 :: Игры -6 :: Игры -7 :: Игры -8 :: Игры -9 :: Игры -10 :: Игры -11 :: Игры -12 :: Игры -13 :: Игры -14 :: Игры -15 :: Игры -16 :: Игры -17 :: Игры -18 :: Игры -19 :: Игры -20 :: Игры -21 :: Игры -22 :: Игры -23 :: Игры -24 :: Игры -25 :: Игры -26 :: Игры -27 :: Игры -28 :: Игры -29 :: Игры -30 :: Игры -31 :: Игры -32 :: Игры -33 :: Игры -34 :: Игры -35 :: Игры -36 :: Игры -37 :: Игры -38 :: Игры -39 :: Игры -40 :: Игры -41 :: Игры -42 :: Игры -43 :: Игры -44 :: Игры -45 :: Игры -46 :: Игры -47 :: Игры -48 :: Игры -49 :: Игры -50 :: Игры -51 :: Игры -52 :: Игры -53 :: Игры -54 ::