人工知能に関する断創録

このブログでは人工知能のさまざまな分野について調査したことをまとめています(更新停止: 2019年12月31日)

2004-09-01から1ヶ月間の記事一覧

勇者はがにまたが直った

前回までの勇者はどの方向に移動してもこっちを向いていました。ドラクエ1と同じです。これだとあまりかっこよくないので移動する方向をちゃんと向くようにしてみます。rpg06.jar 四方向の画像を用意する 用意した画像は下のです。前回と同じく足踏みさせる…

勇者は足踏みした

前回の勇者は移動はできますが足踏みしてませんね。足踏みってのは言うまでもないと思いますがのことです。rpg05.jar アニメーション ボールを動かす(2004/9/19)にも書きましたが、アニメーションはいくつかの画像を順番に切り替えることで作れます。今回…

勇者は壁にぶつかった

勇者が壁にぶつかるようにしてみます。あっ、別に挫折するわけじゃないですよ(笑)rpg04.jar 壁にぶつかる処理 壁にぶつかる=壁のあるマスには移動できないようにするということです。なので、前回勇者の移動処理を書いていたkeyPressed()から見てみます。…

ボールをたくさん作る

跳ね返るボールを複数作ってみます。今回はボールを表すクラスを別途作りました。このクラス(オブジェクトの雛形)を用いればいくつでもボールが作れます。オブジェクト指向が非常に強力な仕組みであることを理解してください。オブジェクト指向については…

勇者は第一歩を踏み出した

マップに勇者を乗せて移動できるようにしましょう。勇者が第一歩を踏み出すときがきました。rpg03.jar 勇者をキーボードで動かす まず勇者がマップ上のどの位置にいるかを表す変数(x,y)を用意します。そして、勇者の位置を(1,1)に初期化しています。これは、…

お城を建てる

前回、勇者はすみっこでいじけてたのでお城を建ててあげましょう。というわけで今回はマップの作り方です。ここで書くコードは拡張性をまったく考慮してません。本当はマップ専用のクラスを作って処理を分離するところですがそれはもっと後の回で取り上げま…

勇者登場

まずは一番簡単なところから始めましょう。勇者を画面に描いてみます。勇者ですが、を使います。いきなり、はじめにの画像と違いますがまあいいでしょう。素材はすべてJ-JSoftさんのサイトからMACKさんの素材をお借りしています。rpg01.jar イメージの仕様 …

RPGを作ろう

RPG編ではドラクエ1の旅立ちの場面の実装を目指します。ドラクエ1なんて若い人は知らないでしょうね(って自分もそんなに年とってないけど)。私もリアルタイムでプレイした世代ではないんですが(私の最初にやったドラクエは4でした)、プレイしたことはあ…

ボールが跳ね返る処理

ボールがウィンドウの端に当たったら跳ね返るようにしてみます。bound_ball.jar ボールの描画 ボールを動かす(2004/9/19)ではボールの位置座標を円の中心にとっていましたが、今回は円を囲む矩形の左上の座標に変更しています。実際、Javaの円の描画は円を…

ボールを動かす

ボールが動くアニメーションを作ります。Javaでアニメーションを作る方法はいくつかありますが、ここでは最も一般的なスレッドを用いて実装します。動きがつくとゲームっぽくなってきます。move_ball.jar アニメーションの仕組み テレビとかでやってるアニメ…

図形を描く

paintComponent()の引数であるGraphicsオブジェクトgを使うと直線、図形、文字、イメージをパネルに描けます。今回は、gを使ってさまざまな図形を描いてみます。draw_figure.jar 座標系 Javaの座標系は数学で使う座標系と異なり、左上が(0,0)になります。x座…

アプリケーションの構成

ここではHello Worldを表示する最も簡単なJavaアプリケーションを書いてみます。私の書くJavaアプリケーションはフレームとメインパネルの二部構成を取っています。今後書くアプリケーションはすべて同じ枠組みですのでここで詳しく解説します。hello_world.…

Javaでゲーム作りますが何か?

Javaを使ったゲームプログラミングについて書いてます。 プログラムはJAR形式で公開しているのでダブルクリックで実行してください。 ソースファイルはJARファイルの中に入っているので解凍してご覧下さい。基本的に全部ソースファイル入ってます。著作権を…