Javaレクチャー(2) ~アニメーションとゲーム入門~ STEP1 図形の描写 JFrameを使ってウィンドウを作成 フレームに直接描写はできない Jpanelを継承したクラスを生成し、フレームに 貼り付ける paintComponent(Graphics g) を使用して図形 の描写を行う STEP2 アニメーション アニメーションを実行するには? →連続した画面の更新が必要 →一定時間毎にrepaint();すればよい →スレッドの制御が必要 STEP3 スレッドとは 処理の一連の流れのことをいう 今までのプログラムは 処理の流れが1本の線 で表せる、シングルス レッドのプログラムであ る。 STEP3 スレッドの利用 パネルにRunnableインターフェースを実装し、 アニメーション処理を行う新たなスレッドを生 成する public MainPanel() extends JPanel implements Runnable { ・・・・・・・・・・・ gameLoop = new Thread(this); gameLoop.start(); } public void run(){ while (true){ → ・・・アニメーション処理・・・ try{ Thread.sleep(20); } STEP3 スレッドの流れ メインスレッド ↓ オブジェクトを生成やデータ の初期化 ↓ スレッドの生成・Start(); ↓ その他の処理(マウスイベン トの監視とか) ↓ 新たなスレッド ↓ run()メソッドの実行 (データの更新と再描画 →一定時間sleep();の 繰り返し) 課題 (1) サンプルを動かしてちゃんと理解しよう (2)Ballクラスを作成してたくさんのボールを 動かしてみよう(跳ね返り処理欲しい) (3)ゲームを作ってみよう マウスでボールを避けるとか マウスでボールを消す時間を競うとか キーボードで何か操作するとか おわり
© Copyright 2024 ExpyDoc