JavaとJavaEEプログラマのブログ

JavaEEを中心にしたをソフトウェア開発についてのブログ

2010-01-01から1年間の記事一覧

Android用のゲーム『Touch STAR』を公開。

http://sites.google.com/site/mmatsuoka10/application/android/touchstar以前、入門Google Androidプログラミングを参考にして作成したのをゲームらしく整えて公開。これにOpenGLで作るiPhone SDKゲームプログラミングの内容を反映させて改良していこう。

slim3で作ったWEBアプリ『ISBN to Amazonアフィリエイト』を公開。

『Webカメラ(USBカメラ)で本のバーコード読み取り』と組み合わせて、手持ちの本のアフィリエイトリンクを大量に作るために作成。 『ISBN to Amazonアフィリエイト』 ISBNから以下のようなhtmlソースを作成。 <div id="IsbnToAmazonBook"> <p></p></div>

GAEでの文字化けへの対処まとめ。

例えば、他のWEBサービスから読み込んだデータが文字化けしていた時は <p></p>

slim3入門開始。JSPで値を表示。

早速、Controller内のデータをjspで表示するタグリブの使い方に詰まる。 最近のWEBフレームワークと勘違いしていて、Controllerクラスのプロパティにしていたのをrequestのアトリビュートに設定するようにして解決。 @Override public Navigation run() thro…

独自ドメインでGAEアプリにアクセスできるように設定。

独自ドメインは「お名前.com」で取得。GAEで独自ドメインを使う方法は以下を参照。 http://www.stonesystem.biz/domein-gae.htmlいまはDNSが浸透するまで2時間待ち…なう。無事に独自ドメインでアクセスできるようになった!

ModelのMeta Modelが作成されない場合のチェック項目

以下のような例外が投げられるのは、検索処理に必要なMeta Modelが自動作成されていないため。 java.lang.IllegalArgumentException: The meta data of the model(slim3.model.Tweet) is not found. http://d.hatena.ne.jp/hidemon/20100212/1266006576で解…

ゲームを作るときは…

入門Google Androidプログラミングのシューティングゲームのサンプルを参考にするといい。 2D、3Dに関わらず参考になるはず。

ハエ取りゲームを高速化。

入門Google Androidプログラミングのシューティングゲームのサンプルを動かしてみると、変なGCも発生せずに高速で動く。テクスチャの表示にjavax.microedition.khronos.opengles.GL10ではなく、javax.microedition.khronos.opengles.GL11を使っているせいら…

ハエ取りゲーム完成

全ソースEsGameActivityクラス。 RedrawHandlerを使って、一定時間ごとに再描画するように修正。 iPhone版ではゲームオーバー時にリスタートボタンを表示するようになっていましたが、EsGameRenderの内部変化でViewのレイアウトを変化させる方法が見つからな…

標的の処理を別クラスに分離し、ハエを複数表示するところまで。

新たにTargetクラスを作成し、標的の処理をTargetクラスのメソッドにする。 package sample.game; import static sample.game.utils.GraphicUtils.*; import javax.microedition.khronos.opengles.GL10; import android.content.Context; import android.uti…

タッチイベントの処理と当たり判定の処理を追加。

タッチイベントの受け取りはActivityのonTouchEventをオーバーライド。EsGameRenderクラスにはタッチイベントの内容を受け取るメソッドを追加。 EsGameActivityクラスの修正部分。 //OpenGLESビュー private GLSurfaceView gLSurfaceView; private EsGameRen…

ハエの表示と移動まで

EsGameRenderクラスにハエの表示と移動の処理を追加。 GCが走ると一瞬、移動が止まる…。LogCatを見るとGCに100msほどかかっている。 package sample.game; import javax.microedition.khronos.egl.EGLConfig; import javax.microedition.khronos.opengles.GL…

OpenGLで作るiPhone SDKゲームプログラミング 第2章ハエたたきゲームの移植に挑戦。

第1章のサンプルは、ほぼそのままAndroidでも動かすことができました。 引き続き、ハエたたきゲームも移植してみます。 EsGameプロジェクトを作成し、EsGameActivityクラスとEsGameRenderクラスを作成。 GraphicUtilsクラスとTextureLoaderクラスを適当なパ…

複数桁の数字の描画

GraphicUtilsクラスに数字を描画するメソッドを追加。 /** * 指定した数字を、指定した桁数で表示する。 * @param x 表示位置のX座標 * @param y 表示位置のy座標 * @param width 数字の表示サイズ(幅) * @param height 数字の表示サイズ(高さ) * @param num…

テクスチャマッピングで数字を表示。

512x512の数字画像をWindows7のペイントで作成。 GraphicUtilsクラスにテクスチャマッピングを行うメソッドをリファクタリングして新たなメソッドを追加。 /** * テクスチャマッピングでテクスチャの一部分だけを四角形で描画 */ public static void drawTex…

アルファブレンディング

GLRendererクラスでアルファブレンディングを有効化して、アルファ値を設定する。 gl.glEnable(GL10.GL_BLEND); gl.glBlendFunc(GL10.GL_SRC_ALPHA, GL10.GL_ONE_MINUS_SRC_ALPHA);//アルファブレンディング drawTextureRectangle(gl,context,0.5f,0.7f,1.0f…

2Dテクスチャの表示を別メソッドに切り出す。

GraphicUtilsクラスにdrawTextureRectangleメソッドを追加。 /** * テクスチャを四角形で描画 */ public static void drawTextureRectangle(GL10 gl, Context context, final float x, final float y, final float width, final float height,int textureId,…

2Dテクスチャを表示する。

表示する画像はAPIデモの中にあるrobot.png。 入門Google Androidプログラミングのサンプルほぼそのまま。 public class GLRenderer implements GLSurfaceView.Renderer { private Context context; private int textureId; public GLRenderer(Context conte…

「OpenGL]円を描くメソッドを追加

/** * 円を描画 */ public static void drawCircle(GL10 gl,final float x, final float y, final int divides, final float radius, final int red, final int green, final int blue, final int alpha){ float [] vertices = new float[divides * 3 * 2];/…

5x5のチェッカーボードを描画

package jp.mprog; import javax.microedition.khronos.egl.EGLConfig; import javax.microedition.khronos.opengles.GL10; import android.opengl.GLSurfaceView; import static jp.mprog.GraphicUtils.drawSquare; import static jp.mprog.GraphicUtils.dr…

長方形を描画するメソッドを追加。

GraphicUtilsクラスに次のメソッドを追加。 /** * 長方形を描写 */ public static void drawRectangle(GL10 gl,float x, float y, float width, float height, int red, int green, int blue, int alpha ){ final float [] squares = new float[]{ -0.5f * w…

描画している部分をユーティリティクラスに移動する。

ユーティリティクラス。 レンダークラスに作成していたメソッドをこのクラスに移動。 package jp.mprog; import java.nio.ByteBuffer; import java.nio.ByteOrder; import java.nio.FloatBuffer; import javax.microedition.khronos.opengles.GL10; public f…

さらにリファクタリング。指定した座標に正方形を描写。色指定を16進で行うように修正。

色指定は16進でやらないとダメ。 AndroidのSDKのサンプルにあるcom.example.android.apis.graphics.kube.Kubeクラスを参考。 package jp.mprog; import java.nio.ByteBuffer; import java.nio.ByteOrder; import java.nio.FloatBuffer; import javax.microed…

四角形を描くレンダークラスをリファクタリング

初期処理はmakeWorldメソッドに。四角形描写部分はdrawSquareメソッドに。 package jp.mprog; import java.nio.ByteBuffer; import java.nio.ByteOrder; import java.nio.FloatBuffer; import javax.microedition.khronos.egl.EGLConfig; import javax.micro…

正方形を描く

eclipseでAndroidプロジェクトを作ってActivityを作成。 Activityの中でレンダーを行うGLRendererクラスを使用して描画する。 import android.app.Activity; import android.opengl.GLSurfaceView; import android.os.Bundle; public class GLSurfaceViewTes…

[Android][OpenGL]OpenGLで作るiPhone SDKゲームプログラミングをAndroidで。 OpenGLで作るiPhone SDKゲームプログラミングの演習をAndroidで実装してみる。