Android

レベルデザインについて(その3)

前回は Tiled Map Editor にて作成したマップファイルを、 libGDX で読み込み、描画するところまで行いました 今回はマップファイルにオブジェクト情報を追加し、衝突判定を設定したいと思います まずは、前回作ったマップファイルを Tiled Map Editor で開…

レベルデザインについて(その2)

前回はレベルデザインのためのツールである、 Tiled Map Editor の使用とマップの作成について説明しました 今回は作成したマップを libGDX で開発するゲーム内に読み込み、描画する方法について説明します 作成したマップファイルは、 TmxMapLoader クラス…

レベルデザインについて(その1)

ステージクリア形式のゲームでは、ステージが進むごとに地形や敵の配置、様々な仕組みが複雑になっていき、難易度があがります その難易度を調整し、簡単すぎず、難しすぎず、プレイヤーが楽しんでプレイしてもらえるようバランスを取ることをレベルデザイン…

衝突判定について

ゲーム中では、次キャラクターと敵、地面など、異なるオブジェクトとの衝突(重なり)を判定することが多くあります libGDX では、以前図形描画にて使用した Rectangle クラス、 Circle クラスなどを利用して衝突判定を行うことができます Rectangle (libgdx A…

音の再生について

ゲームでは効果音、 BGM など様々な場面で音を使うことになります libGDX では音を扱うために Sound インターフェイス、 Music インターフェイスが用意されています Sound (libgdx API) Music (libgdx API) 対応するファイル形式としては、 WAV, MP3, OGG が…

文字表示について

ゲーム中では点数やキャラクターの話すテキストなど、多くのところで文字を表示することがあります libGDX ではこれらの文字表示(フォント描画)のために、 BitmapFont クラスが用意されています BitmapFont (libgdx API) クラス名からもわかる通り、ビットマ…

画面の遷移について

ゲームではタイトル画面、ゲーム画面など多くの画面を遷移しますlibGDX ではこれを実現するために Game クラスと Screen インターフェイスが用意されています Game (libgdx API) Screen (libgdx API) Game クラスは、 ApplicationAdapter クラスと同じく App…

入力の受け取りについて

ゲームではユーザからの入力(操作)を受け、キャラクターや敵、カメラなどを動かすといったことがあります libGDX にて簡単に入力されたデータを受け取りたい場合は下記 Gdx クラスの input という静的プロパティを使用しますこのプロパティでは Input インタ…

カメラとビューポートについて

ゲーム内のカメラは何を、どこから、どのように表示するかを設定する際に使います 例えば、ユーザの操作するキャラクターの動きを追っかける、または衝撃を表現するためにカメラを揺らすなどがあります libGDX ではこのカメラの機能として、以下のクラスが存…

アセット管理について

ゲーム開発には画像以外にも、文字(フォント)、ゲーム中音楽、効果音、アニメーションデータなどのデータファイルがあり、それらをまとめてアセットと呼びます ゲーム中ではそれらのアセットを効率良く読み込み、解放を行う必要があります(場合によっては、…

アニメーションについて

キャラクタの動きつけのためにアニメーションを利用することがあります ゲーム開発でアニメーションを行う場合、パラパラマンガのように複数の画像を切り替えて表示するスプライトアニメーション、1枚の画像を動かしたい部位毎に切り分けて動かすスケルタル…

スプライトシートについて

ゲーム開発では、プレイヤーキャラクタ、敵キャラクタ、背景、地面、ブロックなど数多くの画像が使われます 先の記事の通り、それらを1枚1枚読み込んでテクスチャとして生成していては負荷が高くなってしまいます そのため、複数の画像を1枚の画像として合成…

画像について

libGDX では、読み込んだ画像ファイルの取り扱いには以下のクラスを使用します Texture (libgdx API) TextureRegion (libgdx API) Sprite (libgdx API) Texture クラスは画像ファイルを読み込んだままの状態のクラスとなります(先の記事の SpriteBatch クラ…

ウィンドウへの画像表示について

libGDX ではウィンドウへ画像を表示する方法をいくつか用意していますが、おそらく最も使うことが多い、 SpriteBatch クラスと ShapeRenderer クラスについて今回紹介します SpriteBatch クラスは画像(テクスチャ)を描画するためのクラスです SpriteBatch (l…

ウィンドウの表示と FPS 出力について

libGDX の公式ページよりセットアップツールをダウンロードし、プロジェクトを作成します(ここでは、 DemoGame という名前でプロジェクトを作成しています) セットアップツールの使い方、及び Android Studio でのプロジェクトのインポートについては下記ペ…

プラットフォーム・ゲームについて

プラットフォーム・ゲームを開発するにあたり、その要素を考えてみます プラットフォーム・ゲームとして、世界的に有名な作品である『スーパーマリオブラザーズ』を例に考えた場合、そのゲーム内容は「プレイヤーの目的は、ステージの中で敵や障害物を避け、…

開発するゲームの種類について

ゲームのジャンルとしては、アクション、シューティング、 RPG など様々な種類のものが存在しますが、今回の開発ではアクション、特にプラットフォーム・ゲームと呼ばれるゲームの開発を行いたいと思います(プラットフォーム・ゲームの詳細については下記 Wi…

開発の目的と進め方について

今回はゲーム開発について知るということを目的としていますので、完成、及び(何らかの形での)公開ということを最終的なゴールとしていません そのため、進め方としては 1GAM という、1ヶ月に1つゲームを作るという方式を取り、1ヶ月後にそのまま開発を継続…

開発参考資料について

ゲームエンジンに libGDX を採用するにあたり、以下のまとめ記事、ブログ、書籍を参考にさせて頂いています github.com qiita.com mikio.github.io libgdxメモ snoopopo.hatenablog.com ttlg.hateblo.jp www.amazon.co.jp

ゲーム開発環境について

使用するゲームエンジン、周辺ツールなどは以下の通りです 可能な限り、現時点で無料で利用できるものを中心に選択しています Android Studio libGDX Tiled Map Editor TexturePacker GIMP Piskel PixiTracker Bfxr Audacity Littera — bitmap font generato…