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

}

/// <summary>

/// Цикличный переход по фреймам - анимация /// <summary>

public void UpdateFrame(double elapsed)

{

totalElapsed += elapsed;

if (totalElapsed > timeFrame)

{

frame++;

frame = frame % (frameCount - 1); totalElapsed -= timeFrame;

} }

}

/// <summary>

/// Загрузка спрайта в игру /// <summary>

public void Load(ContentManager content, String stringTexture)

{

spriteTexture = content.Load<Texture2D>(stringTexture);

}

/// <summary>

/// Рисуем простой спрайт

/// <summary>

public void DrawSprite(SpriteBatch spriteBatch)

{

spriteBatch.Draw(spriteTexture, spritePosition, Color.White);

}

/// <summary>

/// Рисуем анимированный спрайт /// <summary>

public void DrawAnimationSprite(SpriteBatch spriteBatch)

{

int frameWidth = spriteTexture.Width / frameCount;

Rectangle rectangle = new Rectangle(frameWidth * frame, 0, frameWidth, spriteTexture.Height);

spriteBatch.Draw(spriteTexture, spritePosition, rectangle, Color.White);

} }

}

7.1.3. Класс Gamel проекта Animation

Теперь давайте перейдем к рассмотрению класса Game1 проекта Animation. Ниже в листинге 7.2 представлен исходный код этого класса. Сначала посмотрим на весь код этого класса, а затем приступим к его изучению.

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

/// <summary>

/// Листинг 7.2

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

/// "Программирование компьютерных игр под Windows в XNA Game Studio Express" /// Автор книги: Горнаков С. Г.

/// Глава 7

100 Спрайтовая анимация

Проект Animation 101

/// Проект: Animation /// Класс: Game1 /// Создаем анимацию /// <summary>

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

#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 Animation {

public class Game1 : Microsoft.Xna.Framework.Game

{

GraphicsDeviceManager graphics; ContentManager content; KeyboardState keyboardState; SpriteBatch spriteBatch; Sprite sprite;

/// <summary> /// Конструктор /// <summary> public Game1()

{

graphics = new GraphicsDeviceManager(this); content = new ContentManager(Services); graphics.PreferredBackBufferWidth = 1024; graphics.PreferredBackBufferHeight = 7 68; graphics.PreferMultiSampling = false; graphics.IsFullScreen = true; sprite = new Sprite(12, 10);


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

Горяченькое

Друзья

Hosted by uCoz