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

view = Matrix.CreateLookAt(new Vector3(0.0f, 0.0f, 150.0f), Vector3.Zero,

Vector3.Up);

proj = Matrix.CreatePerspectiveFieldOfView(FOV, aspectRatio, nearClip,

farClip);

for (int i = 0; ball.Length > i; {

world = Matrix.CreateTranslation(ball[i].position); ball[i].DrawModel(world, view, proj);

}

break;

}

case CurentGameState.GameOverScreen:

{

break;

}

case CurentGameState.VictoryScreen:

{

break;

} }

base.Draw(gameTime);

304 Движение моделей в пространстве

}

/// <summary> /// Движение мячей /// <summary> void MoveBall() {

for (int i = 0; ball.Length > i;

{

ball[i].position.Y -= ball[i].speed;

}

}

/// <summary> /// Мышка /// <summary> void MouseClick()

{

mouseState = Mouse.GetState(); for (int i = 0; ball.Length > i;

{

if (mouseState.LeftButton == ButtonState.Pressed)

{

ball[i].position.X = rand.Next(-(rand.Next(0, 80)), rand.Next(0, 80));

ball[i].position.Y = rand.Next(0, 80); ball[i].position.Z = -(rand.Next(20, 150));

Глава 20

Стреляем по целям

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

Наша задача на данном этапе заключается в том, чтобы добавить в игру прицел для стрельбы по мячам и создать механизм обработки попаданий выстрелов в цель. Как обычно, продолжаем усовершенствовать пример из предыдущей главы, и наш новый проект носит название СигеогВаіі. На компакт-диске этот проект находится в папке Соі1е\СЬаріег20. Открываем проект СигеогВаіі и приступаем к изучению исходного кода примера.

Рис. 20.1. Изображение прицела

20.1. Класс для работы с двухмерными изображениями

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

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

20.2. Задаем радиус для мячей


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

Горяченькое

Друзья

Hosted by uCoz