STGオタさんの同人ゲーム制作記/現在東方二次創作中
自主制作物一覧(初訪問者向けインデックス)
(これは記事ではありません。全てのページに表示されます)
まともな紹介ページは少々お待ちくださいorz

現在制作中のゲーム
「MASTER BURNER CLIMAX」 (カテゴリ:同人制作)

090801_1.jpg090705_5.jpg

【ネタバレの塊】完成版のプレイ動画(2010/12/26UP!)


▼C76版のプレイ動画(ここをクリックすると大きく表示)

▼委託先一覧
bn_ookoku.gif とらのあな melon.gif
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
【進捗】現在のゲーム画面公開&見えない見所紹介
そういえばしばらくゲーム画面を公開していないので、
現在のスクリーンショットをいくつか載せときます。

090705.jpg
ニトリ製ジェットほうきで飛び立つ魔理沙
(デザインがださいのを何とかしたいところ)

090705_2.jpg
音速突破!

090705_3.jpg
並木道を抜けると……

090705_4.jpg
なんぞこれー

090705_5.jpg
敵機来襲

090705_6.jpg
至近で敵機爆発、ブラーエフェクトとブルームエフェクトの相乗効果。
(静止画だと実際の画面より迫力あるなー)

090705_7.jpg
激しい敵機の十字砲火を抜けて魔理沙が向かう先は───




とまあ、それっぽい画面が上がってますが。
実際にはまだステージ遷移を作成している最中で、
敵機の配置などは完全に仮のものです。
(以前出てた進捗管理表でのフェーズ3~4に相当)
つまり、プレイアブルになるのはまだ先の話。
(あと一ヶ月なのに……(゜へ゜;)

ていうか今作で組み込んだ下記2項目の作業が重すぎ。
 1.物理エンジン「Bullet」を使用する
 2.広大なエリアを扱えるようにする

これについてちょっと詳しく解説したい。



■1.物理エンジン「Bullet」を使用する

Bulletエンジンって知ってますか?
オープンソースで作られている物理エンジンなんですけど、
Windows、PS3、XBOX360、Wiiなどに対応しており、
商業での使用実績もあるすごい奴です。
最近にわかに注目を浴びてきました。

この作品では設計段階からフレームワーク内へこのエンジンを
組み込もうと必死になってました。
(実際には物理演算を使いこなす時間は無く、衝突判定部分のみ使用。)
手間のかかる割りにオリジナリティが出せない衝突判定や物理演算を
外部ソースで代用できれば工数削減・品質上昇で大勝利\(^o^)/

……のはずだったんだけど、このエンジン、
日本語マニュアルがまったく無いんですねーこれが。

いや、日本語マニュアルが無いだけならまだしも、
なんと英語マニュアルすらろくに無い!
さすがはオープンソース。

必死に英語のページと極少の日本語サイトを見ましたが、
さわりの部分しか紹介されておらず、結局デモプログラムと
ソースコード解析で使い方を覚えるはめに。

おかげで現在私は日本ではかなりのBulletマニアになっている予感。



■2.広大なエリアを扱えるようにする

今回のフレームワーク上の見所はこれ、どんな広いエリアでも扱える
ようになりました。しかしこれが最も足を引っ張ることに。。。

一般に3D空間は浮動小数点数の変数を使って管理されています。
しかし32bitCPUの場合、その有効桁数は7桁程度。つまり、
1000km と 1000km+10cm の違いはとても表現できないということ。
これは人間サイズ視点でマッハ100を出し、
世界一周するようなゲームは作れないことを意味します。

この問題に対応したのが今回のゲームで使っているフレームワークです。
もともとは太平洋と舞台にした大艦隊決戦アクションゲームを作る予定で
設計したものです。(また作るがな!リアルタイムネットワーク対戦可能)
32bitの限界を解決するために、エリア管理機能がついています。

これは一定のサイズに限定した空間をエリアと定義し、
エリアごとに独自の座標系を扱うという機能です。

そのエリアをxyz軸に最大4294967296個並べることで、
32bitX32bitの表現力を持たせ、かつ演算速度は32bit+αに抑える
という画期的(な気がするだけ)のシステムとなっています。

後で知ったのですが、これはフライトシミュレータ分野などでは
既知のシステムで、エースコンバット5のインタビュー記事でも
Namco独自エンジンの機能として紹介されてました。┐(´ー`)┌ マイッタネ♪

だいたい64bitCPUの時代になれば解決するでしょうに。。。

ともかくこの座標系が変わるというシステム。Bulletと非常に相性が悪い。
Bulletはエンジンですので、内部でかなりの数学的最適化が
行われています。そのため、オブジェクトの座標系をなんの予告も
なしに変更すると、あっという間に完・全・崩・壊。ダメだこりゃ。

今回のゲームではなんとか動くようにつぎはぎしましたが、
今後はこのエンジンのエリア管理機能、見直す必要がありそうですぜ。

スポンサーサイト
コメント
この記事へのコメント
コメントを投稿する
URL:
Comment:
Pass:
秘密: 管理者にだけ表示を許可する
 
トラックバック
この記事のトラックバックURL
この記事へのトラックバック
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。