Приставки
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
Команда Новости Помощь Ссылки
ПОМОЩЬ
Литература про игры
Предыдущая Следующая

protected override void LoadGraphicsContent(bool loadAllContent)

{

if (loadAllContent)

{

// здесь загружаются модели и графические элементы

}

}

Метод LoadGraphicsContent() необходим для загрузки графической составляющей вашей игры, используя мощь XNA Content Pipeline, который позволяет загрузить в одну строку кода любую 3D-модель или графику определенного формата. Поддерживаемых форматов много, но об этом в следующей главе, когда мы с этим непосредственно столкнемся.

Следующим в исходном коде идет метод UnloadGraphicsContent() , который в автоматическом режиме производит выгрузку загруженных 3D-моделей и графики на этапе выхода из игры. Это своего рода менеджер, работающий на автомате и освобождающий захваченные ресурсы системы по сигналу выхода из программы. В стандартном использовании загрузчика добавлять в метод UnloadGraphicsContent() дополнительный исходный код не нужно. Но если применяются различные дополнительные загрузчики, то выгрузку загруженных элементов в методе UnloadGraphicsContent() необходимо прописать явно.

Затем в исходном коде класса Gamel идет метод Update() со следующим исходным кодом:

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

Класс Game1 71

protected override void Update(GameTime gameTime)

і

if(GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed)

this.Exit();

// код игры

base.Update(gameTime);

}

Этот метод предназначен для обновления состояния игры. В методе Update() необходимо расположить все методы, отвечающие за логику игры, реализовать механизм получения событий с клавиатуры, мыши или джойстика, воспроизведение звука. Определить, что именно будет происходить после столкновений, выстрелов, ударов и т. д. Этот метод вызывается с циклической периодичностью, а точнее через определенный промежуток времени (таймер). Промежуток времени реализуется в автоматическом режиме через объект gameTime.

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

Последний метод класса Gamel - это метод Draw().

protected override void Draw(GameTime gameTime)

і

graphics.GraphicsDevice.Clear(Color.CornflowerBlue);

// здесь рисуем графику


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

Горяченькое

Друзья

Hosted by uCoz