スマホ用ゲーム制作・ファイル操作・座標系・apk著名
ゲーム完成しましたー! 準備ができ次第、公開します^^
Android Studioのインストールから始めて4日くらいですね。
予想よりスムーズに作れた気がします。
これで、「(スマホゲームを)作れるけど、作らないんだよ!」って言えるようになりましたw
※スタジオギウは、あくまでPCゲームがメインです。(趣味的に、簡単なゲームなら作っていくかもですけど)
Windowsゲームと比べると、基礎部分の(呪文的な)コーディングが1/10くらいかも。
大変だったのは開発環境を整えること。(それぞれのバージョンが違って動かないとか)
開発言語はJAVAなんですが、Cを知ってる人なら覚えやすいと思います。
===============
<今回の追加処理>
・BGM再生系。↓な感じ。
mediaPlayer = MediaPlayer.create(context, R.raw.bgm);
mediaPlayer.start();
// ループ再生処理
mediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mediaPlayer) {
mediaPlayer.start();
}
});
・ファイル操作系↓(ハイスコア保存)
try {
final FileOutputStream fos = MyActivity.context.openFileOutput(GAME_FILENAME, Context.MODE_PRIVATE);
final DataOutputStream dos = new DataOutputStream(fos);
dos.writeInt(hi_score[0]);
dos.writeInt(hi_score[1]);
dos.writeInt(hi_score[2]);
dos.flush();
fos.close();
} catch (IOException e) {
}
・apk関連(リリースビルドしてアップする方法)でオススメサイト↓
http://kazukii777.blogspot.jp/2013/05/android-studioapk.html
・あと、JAVAには構造体が無いので、CLASSで代用することになります。
例)
// 定義方法
class ChrData {
float x,y; // キャラ座標
float pow; // 昇る力(マイナス=下方向へ)
float hou; // 進んでいる方向&強さ(マイナス=左、プラス=右)
char sts=0; // 状態: 0=無し、1=存在する
}
// 枠を生成
private ChrData[] chr = new ChrData[CHR_MAX]; // キャラデータ
// 個別生成(上記だけだと、ポインタがあるだけなので)
for (int i = 0; i < CHR_MAX; i++) {
chr[i] = new ChrData();
}
あとは普通に、chr[0].x という感じで使えます。
・ゲーム座標と画面座標
スマホによって画面サイズが異なるので、そこを調整する必要があります。
まず、内部的なゲーム画面のサイズを決めておき、実際の画面へ表示する際に、座標や絵のサイズを調整るつ感じです。
surfaceChangedで使用する画面サイズを得られるので、それを踏まえて計算すると良いと思います。
disp_ps = (float) width / (float) GAME_DISP_MX; // 予め計算しておく
float x = c.x * disp_ps; // キャラのゲーム座標を画面座標へ変換
===============
以上です。
補足(があれば)は、コメントに書いていきます。
« スマホ用ゲーム制作・SE&BGM再生 | トップページ | スマホゲーム公開!「想くんホッパー」・未契約のスマホで遊ぶ方法 »
「学問・資格」カテゴリの記事
- 他人が選挙に行かないことを憤ることについて(2019.07.24)
- 脳(パソコン)、無意識(臓器)、自我(ソフトウェア)、意識(魂)について(2019.03.30)
- androidゲームプログラミング:バージョンコード(2014.12.16)
- androidゲームプログラミング:ファイル名の条件(2014.12.10)
- androidゲームプログラミング:画像の置き場所(2014.12.09)
« スマホ用ゲーム制作・SE&BGM再生 | トップページ | スマホゲーム公開!「想くんホッパー」・未契約のスマホで遊ぶ方法 »
コメント