
/********************************************************|
|*                                                      *|
|*          Kinugasa 0.45.007 利用ガイド（仮）          *|
|*                                                      *|
|********************************************************/

Copyright (c) 2013 Dra0211 All rights reserved.



衣笠フレームワークダウンロードしていただき、ありがとうございます。
まだまだ未完成ですが、今後ともよろしくお願いいたします。


====================================================================================================

☆重要なお知らせ☆
　これはα版です。未解決のバグや未実装のモジュールがあります。

====================================================================================================

◇概要
　衣笠フレームワークはJava言語で2Dゲームを作成するための
　フレームワークです。ほぼ全部JavaSEで作成されています。
　バージョン0.45現在、シューティングゲームくらいしか
　作れませんが、今後様々なゲームを作れるように拡張していくつもりです。


◇ハードウェア／ソフトウェア要件
　私の使用している環境ですが・・・。

　▽ハードウェア
　　・x86、32ビット
　　・プロセッサ：Pentium Dual-Core CPU E6500 2.93GHz 2.94GHz
　　・メモリ：4GB
　　・モニタ：BENQ E2220HD　
　　・グラフィックカード：ATI Radeon HD 4350
　　・一般的なハードディスクドライブ
　　・一般的なUSBマウス
　　・一般的なUSBキーボード（PS/2接続）
　　・一般的なヘッドホン
　　・ゲームパッド：XBOX360用有線コントローラ（これ以外は動作テストしていません！）

　▽ソフトウェア
　　・開発環境：NetBeans IDE 7.3
　　・JDK：1.6_28
　　・JRE：最新版ですよ



◇使い方
　distフォルダ内のkinugasa-(バージョン).jarをプロジェクト
　のライブラリに追加してください。

　ゲームパッドを使用する場合は、プロジェクトのルートディレクトリに、kgp.dllをコピーしてください。
　使用しない場合は、GameConfigクラスを使用して初期設定を行うときに、
　useGamePad(false)を呼び出すことでkgp.dllがなくても起動できるようになります。
　


◇ゲームの構築
　kinugasa.game.KinugasaGameクラスを継承したクラスを作成します。
　このクラスでは、ゲームの起動、初期化、更新、描画、破棄、終了を行います。
　KinugasaGameクラスのコンストラクタには、GameConfigクラスを渡します。
　このクラスからは、ゲームウインドウのサイズや、背景色などの基本設定を
　変更できます。
　以下は実行するとウインドウを表示するだけの簡単なゲームクラスのサンプルです。
　（ウインドウを閉じるかエスケープキーを押すと、終了します）

----

import java.awt.Graphics2D;
import kinugasa.game.GameConfig;
import kinugasa.game.KinugasaGame;

public class MyGame extends KinugasaGame {

	//ゲームを開始します
	public static void main(String[] args) {
		new MyGame().gameStart();
	}

	//GameConfigクラスを使用して初期設定を行います
	private MyGame() {
		super(new GameConfig("My Game"));
	}

	//初期化
	//このメソッドは、gameStartをコールすると1度だけ実行されます
	@Override
	protected void startUp() {
	}

	//破棄
	//このメソッドはgameExitをコールすると1度だけ実行されます
	//ウインドウを閉じた場合も実行されます
	@Override
	protected void dispose() {
	}

	//更新
	//このメソッドはFPSの周期で呼ばれます
	//drawよりも先に実行されます
	@Override
	protected void update() {
		getWindow().setTitle("FPS : " + getGameTimeManager().getFPS());

		InputState inputState = InputState.getInstance();
		if (inputState.isPressed(Keys.ESCAPE, InputType.SINGLE)) {
			gameExit();
		}
	}

	//描画
	//このメソッドはFPSの周期で呼ばれます
	//drawよりも後に実行されます
	//引数として、画面に描画するためのグラフィックスコンテキストが送信されます
	//このメソッドは、稀に1フレーム中に複数回呼び出されます
	@Override
	protected void draw(Graphics2D g) {
		g.drawString("Hello World !", 32, 32);
	}
}
----


◇連絡先
　d0211@live.jp
　http://sourceforge.jp/projects/kinugasa/


◇リリースノート

　▽バージョン：0.45.007（α）2013/4/29 0:03
	・Spriteクラスにupdateメソッド追加。
	・kinugasa.fieldパッケージ作りかけ。
	・gameStartおよびgameExitで例外が発生すると正常に終了しない問題を修正。
	・kinugasa.contents.graphics.ImageUtilにsplitAsListメソッド追加。
	・kinugasa.contents.graphics.SpriteSheetCutterにcreateBlockCutterメソッド追加。
	・kinugasa.contents.resource.DynamicStorageクラスに3メソッド追加。
	・その他修正。


　▽バージョン：0.45.006（α）2013/4/28 16:49
　　・kinugasa.game.logicパッケージのjavadoc整備。
	・kinugasa.inputDeviceパッケージのjavadoc整備。
	・kinugasa.game.KinugasaGameクラスのstartUpおよびdisposeが例外を投げた場合に
	　アプリケーションが終了しない問題を修正。

　▽バージョン：0.45.005（α）2013/4/27 22:10
　　・kinugasa.gameパッケージのjavadoc整備。
　　・kinugasa.game.logicパッケージ追加。
　　・コマンドライン引数の判定機能追加。
　　・プロジェクトディレクトリのjavadoc格納位置変更(コミットから除外するため)。
　　・その他修正。

　▽バージョン：0.45.004（α）2013/4/21 18:05
　　・この文書にゲームパッド用DLLに関する注意書きを追加。
　　・その他修正。

　▽バージョン：0.45.003（α）2013/4/21 18:00
　　・kinugasa.contentsパッケージのjavadoc整備。

　▽バージョン：0.45.002（α）2013/4/21 10:58
　　・kgp.dll修正、ゲームパッド使用可能にした。

　▽バージョン：0.45.001（α）2013/4/21 9:07
　　・小修正。

　▽バージョン：0.45.000（α）2013/4/21 0:15
　　・ゲームの構築に必要な基本的機能をサポート。
　　・この文書を作成。

