環境構築
このページではDJGLを使うための環境構築を解説します。
「
DJGL-環境構築」と内容は変わりません。
事前準備
まず前提としてJava8及びJava8を使用できるEclipseが必要です。
Luna4.4以降でないとJava8は使えません。4.4以降がダウンロードしてあれば基本的にこの操作はいらないです。
基本的に最新版のEclipseをダウンロードすれば使えます。
最新版のEclipseとJava8については下記のリンクを見てダウンロードしてください。
次にライブラリ本体のダウンロードです。下記のページからライブラリ最新版をダウンロードしてください。
内容の構成は
- DensanGameLibrary~~~~.jar
- ライブラリ本体。~~~~にはバージョンの数字が入る。
- docディレクトリ
- ライブラリのjavadoc。中身のindex.htmlを開けばJavaの標準APIを見るような感じでライブラリの説明が見れる
- srcディレクトリ
- update.txt
というふうになってます。
ライブラリの導入
ここからはEclipseで作業します。
Windows版だと多少メニューの名前などが異なるかもしれません。
「File」>「New」>「Java Project」
- Project Name にゲームの名前を入力します。今回は「LibraryTest」とします。JREのチェックマークがついている欄が1.8または8以上なことを確認してください。
- 「Finish」を押すとプロジェクトが作成されます。
- 「Package Explorer」に表示されている作成したプロジェクトにダウンロードしたライブラリを解凍してからドラッグ&ドロップしてください。(ダウンロードはここ→ DJGL-更新履歴)
- 「File and Folder Operation」の画面が出てきますが、「Copy files and folders」にチェックを入れて「OK」をクリックします。
- これでプロジェクトの中に DensanGameLibrary~~~~(数字) というディレクトリが入ります。
ビルドパスへのライブラリの追加
ライブラリをプロジェクトで使えるようにするためには、ライブラリをビルドパスに追加しないといけません。
ビルドパスとは、Eclipse独自の用語でクラスパスとほぼ同じ意味です。ファイルやディレクトリを
ビルドパスに追加することで、そのファイルやライブラリがプロジェクトで使用可能になります。
- 「Package Explorer」でプロジェクトを右クリック
- 出てきたメニューから「Build Path」という項目にカーソルをあわせる
- 更に出てきたサブメニューの中から「Configure Build Path...」をクリック
- 出てきたウインドウの左のプルダウンの項目が「Java Build Path」になっていることを確認
- なっていなければプルダウン「Java Build Path」をクリック
- 右側の上側にある項目の中から「Libraries」をクリック
- 「Add JARs...」をクリック
- プロジェクト一覧のウインドウが出るのでその中から「LibraryTest(今作ったプロジェクト)→DensanGameLibrary~~~(先ほどドラッグして入れたライブラリ)」と開いていって「densan_game_library~~~~.jar」をクリックして「OK」
- ウインドウが閉じ、「JARs and class folders on the build path:」に先ほど選択したjarファイルがあることを確認して「OK」
これで、このプロジェクトでライブラリを使う準備が出来ました。
※ちなみに、今回プロジェクト内のjarをビルドパスに追加したので、このプロジェクトをエクスポート(別ページで後述)他のPCに持っていってもそのままライブラリが使える状態のままです。
※バージョンが違うライブラリを同時にビルドパスに入れるとエラーになります。
メインファイルの作成
次に、プログラムを書くソースファイルを作成します。
- 「Package Explorer」のプロジェクト内の「src」ディレクトリを右クリック
- 出てきたメニューの「New」にカーソルをあわせる
- サブメニュー内の「Class」を選択
- 「Name」の欄に「TestGame」と入力(実行するクラスだとわかればなんでもいい)
- 「Interfaces」の欄の「Add...」をクリック
- 出てきたウインドウの上の検索欄に「Updatable」と入力
- 「Matching items:」に「Updatable - densan.s.game.manager」があるのでそれをクリックして「OK」
- もしない場合はビルドパスへの追加をミスっている可能性があります。もう戻って確認してください。
- 「Updatable」はインターフェースのクラス名、「densan.s.game.manager」は存在するパッケージ名です。今回は同名クラスは無い(はず)ですが、汎用的な名前の場合Javaの標準ライブラリのクラス名とかぶっていたりするので、パッケージ名に気をつけて選択してください。(DJGLのクラスは全てdensan.s.gameで始まるパッケージに含まれます)
- 「Which methods stubs would you like to create?」の項目の「public static void main(String[] args)」、「Constructors from superclass」、「Inherited abstract methods」にチェックを入れて「Finish」。
これで、srcディレクトリ内にソースファイルが生成されました。
※デフォルトパッケージ(というかパッケージに入れずにsrcに直接)にソースファイルを作るのは推奨されませんが、今回説明の簡易化のために省きました。あとで簡単にパッケージに写すことが出来ます。
ウインドウの表示
先ほど作成したソースファイルにコードを書き込んで行きましょう。今回はきちんと動作するかかくにんするだけなので、真っ白なウインドウを表示するだけです。以下がソースコード全文になります。
コピペするのではなく、Eclipseが自動で生成したコードをこのコードと同じになるように補完したほうが
力が付きます。(どうしてもエラーが取れないとかなら一度コピペして確認してください。)
※import文はEclipseの機能で折りたためれていることがあります。左側の行番号の右にある+ーボタンで表示・非表示できます。
import densan.s.game.drawing.Drawer;
import densan.s.game.manager.GameManager;
import densan.s.game.manager.Updatable;
public class TestGame implements Updatable {
public TestGame() {
// まだ使わない
}
@Override
public void draw(Drawer d) {
// まだ使わない
}
@Override
public void update() {
// まだ使わない
}
public static void main
(String[] args
) { //ゲームを管理するクラスを取得
GameManager gm = GameManager.getInstance();
//このメソッドでウインドウを表示する
//引数はそれぞれ(幅, 高さ, タイトルバーに表示する文字)
gm.createFrame(800, 600, "テストゲーム");
//更新と描画を担うオブジェクトを設定
//今はあまり関係ない
gm.setUpdatable(new TestGame());
}
}
※コピペしてもDJGLのクラスに赤線が出る場合はビルドパスの設定をもう一度確認してください。
コードの打ち込みが完了したら、実行しましょう。プロジェクトエクスプローラーでTestGame.javaを右クリックし「実行」→「Javaアプリケーション」をクリックしてください。タイトルバーに「テストゲーム」と表示されたまっさらなウインドウが出てくれば成功です。
※コードが正しくても、ごくたまに「IllegalなんたらException〜〜〜〜」とエラーが出る場合があります。その場合は特に気にせずもう一度実行してください。それでもエラーが出たらなにかおかしいですが、基本的に普通に動きます。(原因解明中)
まとめ
新しいゲームを作るときは基本的にこの流れにそってください。既存のプロジェクトのライブラリの更新のしかたは別ページで解説する予定です。次はプログラム上のゲームの基本的な流れについて解説します。
最終更新:2016年11月09日 22:48