using System;
using System.Collections.Generic;
using System.Linq;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Audio;
using Microsoft.Xna.Framework.Content;
using Microsoft.Xna.Framework.GamerServices;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;
using Microsoft.Xna.Framework.Media;
using Microsoft.Xna.Framework.Net;
using Microsoft.Xna.Framework.Storage;
namespace DrawTexture2D
{
/// <summary>
/// ゲームの根幹となる部分
/// </summary>
/// XNAで用意されたGameクラスを継承してGameMainクラスを作成
public class GameMain : Microsoft.Xna.Framework.Game
{
GraphicsDeviceManager graphics; //描画に関するデバイスの構成、管理を行うクラス
SpriteBatch spriteBatch;//同じ設定でスプライトのグループを描画できるようにするクラス
Texture2D texture; //画像を描画するテクスチャ
/// <summary>
/// コンストラクタ、newする時に呼ばれる。
/// </summary>
/// 最低限の初期化処理を行う。
public GameMain()
{
graphics = new GraphicsDeviceManager(this);
Content.RootDirectory = "Content";
//ウィンドウの横、縦幅。デフォルトで800x600
graphics.PreferredBackBufferWidth = 1200;
graphics.PreferredBackBufferHeight = 800;
}
/// <summary>
/// 初期化処理
/// </summary>
protected override void Initialize()
{
base.Window.Title = "RDD 製作委員会"; //ウィンドウのキャプションを設定
// TODO: Add your initialization logic here
base.Initialize();
}
/// <summary>
/// グラフィックスコンテントの読み込み
/// </summary>
protected override void LoadContent()
{
// テクスチャを描画するためのスプライトを作成
spriteBatch = new SpriteBatch(GraphicsDevice);
//テクスチャの読み込み。パスはフルパスで指定してます。
texture = Texture2D.FromFile(graphics.GraphicsDevice, "f:\\neko.jpg");
// TODO: use this.Content to load your game content here
}
/// <summary>
/// グラフィックスコンテントの解放
/// </summary>
protected override void UnloadContent()
{
// TODO: Unload any non ContentManager content here
}
/// <summary>
/// 更新処理
/// </summary>
/// <param name="gameTime">Provides a snapshot of timing values.</param>
protected override void Update(GameTime gameTime)
{
// 終了
if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed || //後ろボタンを押したら
Keyboard.GetState().IsKeyDown(Keys.Escape) //Escapeキーを押したら
)
this.Exit();
// TODO: Add your update logic here
//ベースの更新、継承元クラスのUpdate()を呼び出す
base.Update(gameTime);
}
/// <summary>
/// 描画処理
/// </summary>
/// <param name="gameTime">Provides a snapshot of timing values.</param>
protected override void Draw(GameTime gameTime)
{
//背景色で塗りつぶし
GraphicsDevice.Clear(Color.CornflowerBlue);
//スプライトの描画
spriteBatch.Begin();
spriteBatch.Draw(texture, new Vector2(0.0f, 0.0f), Color.White);
spriteBatch.Draw(texture, new Vector2(0.0f, 200.0f), Color.Green);
spriteBatch.Draw(texture, new Vector2(0.0f, 400.0f), new Color(0x80, 0xFF, 0x80));
spriteBatch.End();
// TODO: Add your drawing code here
//継承元クラスのDraw()を呼び出す。
base.Draw(gameTime);
}
}
}
最終更新:2009年10月30日 09:31