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

graphics = new GraphicsDeviceManager(this); content = new ContentManager(Services); graphics.PreferrecffiackBufferWidth = 1280; graphics.PreferredBackBufferHeight = 720; screenWidth = graphics.PreferredBackBufferWidth; screenHeight = graphics.PreferredBackBufferHeight; sprite = new Sprite(12, 10);

}

/// <summary> /// Инициализация /// <summary

protected override void Initialize()

{

sprite.spritePosition = new Vector2(300, -200);

base.Initialize();

}

/// <summary>

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

protected override void LoadGraphicsContent(bool loadAllContent)

{

if (loadAllContent)

{

spriteBatch = new SpriteBatch(graphics.GraphicsDevice); sprite.Load(content, «Content\\Textures\\sprite»);

background = content.Load<Texture2D>(«Content\\Textures\\background»);

}

}

/// <summary>

/// Освобождаем ресурсы

/// <summary>

protected override void UnloadGraphicsContent(bool unloadAllContent)

{ }

/// <summary>

/// Обновляем состояние игры /// <summary>

protected override void Update(GameTime gameTime)

{

Проект MoveSprite 157

if (GamePad.GetState(Playerlndex.One).Buttons.Back == ButtonState.Pressed) this.Exit();

double elapsed = gameTime.ElapsedGameTime.TotalSeconds; sprite.UpdateFrame(elapsed);

MoveSprite();

base.Update(gameTime);

}

/// <summary>

/// Движение спрайта по вертикали

/// <summary>

public void MoveSprite()

{

sprite.spritePosition += sprite.speedSprite; if (sprite.spritePosition.Y > screenHeight)

{

sprite.spritePosition = new Vector2(rand.Next(50, screenWidth -sprite.spriteTexture.Width / 12 - 50), -200);

}

}

/// <summary>

/// Рисуем на экране

/// <summary>

protected override void Draw(GameTime gameTime)

{

graphics.GraphicsDevice.Clear(Color.Black); spriteBatch.Begin(SpriteBlendMode.AlphaBlend);

spriteBatch.Draw(background, new Vector2(0, 0), Color.White);

sprite.DrawAnimationSprite(spriteBatch);

spriteBatch.End();

base.Draw(gameTime);

} } }

В самом начале исходного кода класса Game1 происходит объявление глобальных объектов и добавляются две новые строки кода.

int screenWidth, screenHeight; Random rand = new Random();

В первой строке кода мы создаем две дополнительные переменные, которые впоследствии будут содержать соответственно ширину и высоту разрешения экрана, установленную нами в конструкторе класса Game1.

graphics.PreferredBackBufferWidth = 1280;

158 Движение спрайтов в пространстве

graphics.PreferredBackBuifferHeight = 720; screenWidth = graphics.PreferredBackBufferWidth; screenHeight = graphics.PreferredBackBufferHeight;


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

Горяченькое

Друзья

Hosted by uCoz