Приставки
Nintendo (Dendy)
Nintendo 64
Sega Genesis
Sega CD / 32x
Master System
Super Nintendo
Turbo Grafx 16
Sega Saturn
Sony PlayStation
GameBoy Advance
GameBoy / Color
Game Gear
Atari
Другие

Утилиты
Системные утилиты
GoodXXXX
Sega CD / 32x
Nintendo 64
Переводы, хакинг
Музыка

Мир приставочных игр

Версия 2.00a

Leonis © 2002-2009
Команда Новости Помощь Ссылки
ПОМОЩЬ
Литература про игры
Предыдущая Следующая

5.6. Переходим в полноэкранный режим

Итак, двигаемся дальше и из оконного режима работы программы переходим в полноэкранный режим. Полноэкранный режим работы программы - это режим, в котором приложение захватывает всю рабочую поверхность дисплея и работает в приоритетном режиме. Чаще всего этот режим используется в играх, поэтому мы с самого первого примера переходим в полноэкранный режим работы.

Продолжим модифицировать исходный код первого проекта. Далее в книге все новые строчки исходного кода, добавляемые в каждый последующий проект, я буду выделять жирным шрифтом, чтобы вам было легче следить за изменениями в исходном коде. Создадим второй проект с названием FullScreen и скопируем в него исходный код из первого проекта. В качестве названия проекта будем использовать имя FullScreen. Исходный код проекта находится на компакт-диске к книге в папке Code\Chapter5\ FullScreen.

Для того чтобы создать полноэкранный режим, в исходный код конструктора класса Game1() необходимо добавить следующие строки кода.

graphics.PreferredBackBufferWidth = 1024; graphics.PreferredBackBufferHeight = 768; graphics.PreferMultiSampling = false; graphics.ToggleFullScreen();

Первые две строки задают размер экрана по горизонтали и вертикали, устанавливая тем самым разрешение экрана. Для игры используется разрешение 1024 x 768 пикселей. Если у вас другой режим разрешения экрана, то задайте свои значения для этих двух параметров настроек.

Параметры PreferredBackBufferHeight и PreferredBackBufferHeight задают разрешение для так называемого заднего буфера, или внеэкранной поверхности. Этот буфер необходим для создания плавной анимации в играх, и его

74 Формируем каркас игровых классов

Переходим в полноэкранный режим 75

механизм функционирования чрезвычайно прост. Чтобы достичь плавной игровой анимации, создается дополнительный задний буфер, идентичный по своим параметрам первичной поверхности экрана. Каждый последующий кадр графики рисуется непосредственно в этом буфере. Когда графика на экране стирается определенным цветом, то происходит показ информации, находящейся в заднем буфере, а новый кадр формируется уже в следующем заднем буфере. Такое циклическое переключение между внеэкранными поверхностями дисплея приводит к плавной анимации игрового процесса.

Если стирать графику непосредственно на экране и тут же ее рисовать заново, то ваш глаз обязательно все это увидит, и будет казаться, что графика на экране дергается, поэтому в свое время в DirectX и была придумана концепция работы заднего буфера. Смена поверхностей экрана происходит в автоматическом режиме и осуществляется системными сервисами, поэтому специально беспокоиться об этом не нужно. Просто задайте размер клиентской области экрана для заднего буфера параметрами PreferredBackBufferHeight и PreferredBackBufferHeight, а система выполнит всю черновую работу сама.


Предыдущая Следующая

Горяченькое

Друзья

Hosted by uCoz