Javaでゲーム 11074173 山本拓弥.

Slides:



Advertisements
Similar presentations
山元進.  for 文  while 文  do ~ while 文  文のネスト  break 文  continue 文.
Advertisements

社会人学習講座 「Javaプログラミング概論」
GridLayout オブジェクト(省略)
プログラミング演習3 李 亜民クラス 第2回 ラスタライズ.
Copyright by Rich & Giro
Applet 岡部 祐典 鈴木 敬幸.
Ex7. Search for Vacuum Problem
ブロック運びゲーム.
Java言語による シューティングゲーム作成
Ex8. Search for Vacuum Problem(2)
第6回 Flashによるゲームの作成 04A2029           古賀慎也.
JAVA GUIプログラミング 第6回 TextFieldとLabel.
JAVA GUIプログラミング 第1回 JAVAの実行 絵を描こう.
アプレット (Applet)について.
1.Java 概要 2.簡単なアプレット 3.動画を表示するアプレット 4.アプレットの改良 5.開発環境の利用(データベース)
Iアプリプログラミング その1  鳥居秀徳.
JAVA.
JavaServlet&JSP入門 01K0018 中村太一.
第2回:Javaの変数と型の宣言 プログラミングII 2007年10月2日.
応用情報処理V 第1回 プログラミングとは何か 2004年9月27日.
JAVA GUIプログラミング 第5回 ボタンとそのイベント処理.
ゲームプログラミング体験演習
応用情報処理V 第1回 プログラミングとは何か 2003年9月29日.
第2章 Eclipseと簡単なオブジェクト 指向プログラミング
C#とC++とオブジェクト指向 上甲 健史.
アプレット プログラミング 第10回 アプレット プログラミング第10回.
情報学部 プログラミング体験教室 (中級編)
情報学部 プログラミング体験教室 (初級編)
イベント,キーコード,イベントハンドラ, アクション,座標
C言語を用いたシューティング ゲームの作成
細かい粒度でコードの再利用を可能とするメソッド内メソッドのJava言語への導入
オブジェクト指向 プログラミング 第十四回 知能情報学部 新田直也.
細かい粒度で コードの再利用を可能とする メソッド内メソッドと その効率の良い実装方法の提案
オブジェクト指向 プログラミング 第十一回 知能情報学部 新田直也.
オブジェクト指向 プログラミング 第十三回 知能情報学部 新田直也.
DirectX勉強会 第5回.
第4回 javaのプログラミング 04A2029           古賀慎也.
オブジェクト指向 プログラミング 第十四回 知能情報学部 新田直也.
Javaプログラムの変更を支援する 影響波及解析システム
ゲームプログラミング講習  第3章 ゲーム作成 ブロック崩しを作ります ゲームプログラミング講習 第3章 ゲーム作成.
オブジェクト指向言語論 第十一回 知能情報学部 新田直也.
プログラミング言語論 第十四回 理工学部 情報システム工学科 新田直也.
プログラミング基礎a 第12回 Java言語による図形処理入門(3) アニメーション入門
プログラミング基礎a 第11回 Java言語による図形処理入門(3) アニメーション入門
シューティングゲームにおける 未経験者と経験者の差異の解析
Ex7. Search for Vacuum Problem
オブジェクト指向 プログラミング 第十ニ回 知能情報学部 新田直也.
オブジェクト指向プログラミングと開発環境
オブジェクト指向言語論 第十一回 知能情報学部 新田直也.
Javaオンライン対戦型 シュ-ティングゲーム
北海道情報大学 情報メディア学部 情報メディア学科 新井山ゼミ 松尾 敏生
オブジェクト プログラミング 第2回 プログラムの基本.
プログラミング言語論 第十三回 理工学部 情報システム工学科 新田直也.
JAVA GUIプログラミング 第3回 イベント処理① マウスイベント.
ゲームプログラミング体験演習 :30-14:15 九州産業大学 情報科学部 米元.
プログラミング言語論 第十一回 理工学部 情報システム工学科 新田直也.
C#プログラミング実習 第3回.
計算機プログラミングI 木曜日 1時限・5時限 担当: 増原英彦 第1回 2002年10月10日(木)
Annotation EJB 3.0 コース 第3回 2006年8月4日.
ソフトウェア制作論 平成30年11月28日.
プログラミング基礎a 第9回 Java言語による図形処理入門(1) Javaアプレット入門
オブジェクト指向言語論 第十一回 知能情報学部 新田直也.
オブジェクト指向言語論 第九回 知能情報学部 新田直也.
ソフトウェア工学 知能情報学部 新田直也.
Javaを用いたシューティングゲーム作成
Javaとは Javaとはオブジェクト指向言語でJava VM(Java仮想マシン)と呼ばれるプログラム上で動作します。
オブジェクト指向言語論 第六回 知能情報学部 新田直也.
C言語を用いたゲームの作成 4回目 松井 和幸.
3.1 シューティングゲームの当たり判定 当たったら死亡.
オブジェクト指向言語論 第九回 知能情報学部 新田直也.
Presentation transcript:

Javaでゲーム 11074173 山本拓弥

Javaとは オブジェクト指向のプログラミング言語のひと つ。 さまざまなプラットフォームで実行可能なのが 特徴。 携帯電話のアプリケーションは、ほとんどこの 言語で書かれてある。 Windows Mac OS Windows Mac OS ○ × ○ ○ プログラム プログラム 他の言語 Java

ゲームの作成 Javaを用いて、シューティングゲームを作成した。 ソースコードは、以下のHPのものを参考にさせ ていただいた。 「 Javaでシューティングゲームを作ろう」 http://ponk.jp/old/java_shoot/index.php

どんなゲームを作るか 目標は、単純でやりやすい ゲームを作成すること。 自分はJava初心者であるから、 複雑なゲームを目指すことは 控えた。 以後、プログラミングを行う 機会があれば、より面白みの あるゲームを作ってみたい。

ゲームの内容 画面の上から落ちてくる敵を、弾を発射して撃 ち落とすゲーム。 敵をひとつ撃ち落とすと、スコアが加算される 。 使用するキーは、Enterキー、方向キー、スペー スキー。

フィールド変数の宣言 コードは、ひとつのクラスにいくつ ものメソッドを用いて作成していっ た。 ちなみに、右はフィールド変数の一 覧である。 参考にしたソースに、プレイヤーが 上下に移動するための変数がなかっ たので、付け加えた。 Image jiki; int jx, jy;//自機座標 int bx,by;//弾座標 int ex, ey; //敵座標 int score=0; int scene; boolean keyLeft; boolean keyRight; boolean keyUp; boolean keyDown; boolean keySpace; boolean bflag; boolean keyEnter; Image bullet;//弾画像 Image teki; //敵画像 Image offImage;//仮想画面 Thread gameThread;//ゲームスレッド

使用したpublicメソッドなど public class Myshoot1 extends Applet implements Runnable, KeyListener { public void init() { public void start(){ Public void stop() { public void run() { public void gameTitle(){ public void gameMain(){ public void gameOver(){ public void keyPressed(KeyEvent e) {  switch (e.getKeyCode()) { public void keyReleased(KeyEvent e) { public void  keyTyped(KeyEvent e) {} public void paint(Graphics g) { public void update(Graphics g) {

自機の上下左右移動 Upキー、Downキーも最初に 宣言し、上下左右に自機を動 かせるようにした。 それによって、自由度が増し た。 しかし、敵の動きが単調なた め、それで面白みが増すこと はあまりなかった。 =自機 =敵

弾の発射 弾のy座標を45ずつ減らすこと で、弾を飛ばすように見せて いる。 参考にしたソースでは10ずつ であったが、スピーディにさ せるために改良した。

弾の発射に関するコード スペースキーを押すと、弾の 発射フラグが立っていなけれ ば、自機中央の座標に弾を設 置。その後弾の発射フラグが 真になる。 弾の発射フラグが真ならば、 弾のy座標を45ずつ減らし、0 未満となったところでフラグ を偽にする。 if (keySpace) { if(!bflag){ bx = jx + 17; by = jy; bflag = true;} } if(bflag){by-=45; if (by < 0){bflag = false;

ゲームオーバー ゲームオーバー画面でエン ターキーを押すと、スコアや 自機の座標を初期化してメイ ン画面に戻すコードを追加し た。 つまり、やり直しである。

反省 自機をさらに自由に動かせるようになったので、 今度は敵の移動パターンを増やし、さらに面白 くしていきたい。 弾の動きにスピード感がでたが、弾の連射をで きるようにして爽快感を出したかった。

Javaに対する理解 今回、初めてゲームのプログラミングを行って、 Javaに関する知識も増え、今までは思いもつか なかった応用の仕方も学ぶことができた。 htmlも本格的に触れたのは今回が初めてで、大 変良い経験ができたと思う。