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

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

//=========================================================================

/// <summary>

/// Листинг 21.3

/// Исходный код к книге:

/// «Программирование игр для приставки Xbox 360 в XNA Game Studio Express»

/// Автор книги: Горнаков С. Г.

/// Глава 21

/// Класс: MenuGame

/// <summary>

//=========================================================================

Создаем меню игры 349

#region Using Statements using System;

using System.Collections.Generic; using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Audio; using Microsoft.Xna.Framework.Content; using Microsoft.Xna.Framework.Graphics; using Microsoft.Xna.Framework.Input; using Microsoft.Xna.Framework.Storage; #endregion

namespace Menu {

class MenuGame

{

В отличие от заставок, в меню игры мы загружаем меньшее по размеру футбольное поле, в котором команды меню вырезаны средствами Photoshop.

public Texture2D screen;

public Texture2D title;

Объект cursor представляет в меню желтую прямоугольную текстуру или подложку меню размером 220 х 40 пикселей. Именно это изображение мы будем передвигать под командами меню, создавая эффект закрашивания команды желтым цветом.

public Texture2D cursor; public Texture2D enter;

Два объекта gl и g2 представляют в игре изображение двух нарисованных девушек, которые располагаются по бокам меню.

public Texture2D g1; public Texture2D g2;

public Texture2D[] hole = new Texture2D[30]; public Vector2[] position = new Vector2[30];

Random rand = new Random();

private ModelClass[] ball = new ModelClass[3];

static float aspectRatio;

static float FOV = MathHelper.PiOver4;

static float nearClip = 1.0f;

static float farClip = 1000.0f;

float angle;

Matrix view;

Matrix proj;

Matrix world;

Matrix rotationMatrixY;

Matrix rotationMatrixZ;

350 Последние штрихи

/// <summary>

/// Загрузка компонентов заставки /// <summary>

public void InitializeMenuGameScreen(ContentManager content, int x, int y)

{

screen = content.Load<Texture2D>(«Content\\Textures\\menu»); title = content.Load<Texture2D>(«Content\\Textures\\title»); enter = content.Load<Texture2D>(«Content\\Textures\\enter»); cursor = content.Load<Texture2D>(«Content\\Textures\\cursorMenu»); gl = content.Load<Texture2D>(«Content\\Textures\\g1»); g2 = content.Load<Texture2D>(«Content\\Textures\\g2»); for (int i = 0; hole.Length > i;


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

Горяченькое

Друзья

Hosted by uCoz