KUNISAN.JPブログコメント書き込み



天空のスイーツランド - プチコン4のLMATRIXデモ的疑似3Dミニゲーム

名前: 小川 邦久 リンク: https://kunisan.jp 日付: 2020年5月9日

天空のスイーツランド - プチコン4のLMATRIXデモ的疑似3Dミニゲームプチコン4には「LMATRIX」という命令があり、簡単に言うと画面を拡大縮小させたり回転させたり歪ませたりということが簡単にできるものです。これをうまく使うと全方位3Dゲームのような見た目も実現できるのですが、LMATRIXを使いこなすには「変換行列」を理解する必要があります。変換行列は空間座標のX、Y、Zを新たな座標に変換するためのパラメーターである4x4(16個)の数字の組み合わせのことですが、説明すると長くなるので詳細を知りたいかたはググってみてください。そんなLMATRIXと変換行列を使って作ったゲームが、今回の「天空のスイーツランド」です。

タイトル: 天空のスイーツランド
公開キー: 4BAMNH334



このゲームを制作する前段階として、まずは変換行列の理解をするためにLMATRIXの実験プログラムを作りました。Joy-Conのスティックやボタンで変換行列を操作して、実際の画面がどうなるのかというものです。これによって変換行列の基本的な所は大凡理解できました(自分がやりたいことをすぐに表現できるところまでは行きませんでしたが)。

続いて実際にグラフィック面をLMATRIXで台形状にして3Dのような見た目にしつつ、複数のスプライトを設置してみることにしました。スプライトはLMATRIXに影響されないため、まず基本的な座標は「回転行列」で変換させて、それから拡大縮小や表示座標は変換行列の数値を参考にしつつ、補正式を作ってさらに「試行錯誤」で合わせるようにしました。例えばグラフィック面のX方向の移動速度がスプライトより早くなってしまった場合には、スプライト側の表示X座標の補正式の係数を上げて、スプライトの移動速度を上げるような形です。これを何度も繰り返してグラフィックとスプライトの位置や速度を合わせました。恐らく変換行列からスプライトの座標をスマートに計算する方法もあるのでしょうけど、正直そこまでの理解がないこともあり、こんな流れになってしまいました。

当初はキャラクターをロボットと星にしていましたが、これをガラッと変えて女の子とスイーツにすることにしました。まだ具体的なゲームのアイデアは決まっていなかったものの、とりあえず女の子をJoy-Conで操作してスイーツをゲットする形を基本に考えました。足元のタイルが無い場所だと下に落ちてしまうようなアイデアもあったのですが、スプライトとグラフィックの重ね合わせの関係で、自然な感じの「落ちる」表現をできないと考え、今回については落ちる動きは取り入れないことにしました。

妥協するポイントは他にもあって、この種の3Dゲームでは各キャラについて画像を多方向分用意しないと自然な見た目になりません。例えば2Dで歩くキャラを表現するのに4コマ必要だとすると、3Dの場合には縦横だけで4方向、斜めも含めると合計8方向になり、仮に8方向分のキャラを用意すると、8x4で合計32個の画像を用意する必要が出てきてしまいます。スイーツは歩いたりはしませんが、さすがに8方向分のキャラを用意するのは至難の業です。これをごまかすため、スイーツの画像はパネルを回転させるような形にしました。

あとは女の子の足跡を残すようにして「お絵描き」のような遊びをできるようにしたり(後から足跡にスピード減速の要素を入れました)、GCIRLCEとGPAINTで作成した白のスプライトを150個用意して背景の雲を表現したり、スイーツを連続でゲットした場合にコンボが発生したりするようにしました。他にも色々とやりたいことはありましたが、上記の通り技術的な面で導入するのが難しかったり妥協しないといけない点も多くあったりして、シンプルに「制限時間内のできるだけ多くのスイーツをゲットする」という形でミニゲームとして完成させることになりました。

BGMについては今まで作成したゲームでプチコン4のプリセット曲をほぼ使い切ったこともあって、ドラム+ベースのシンプルなものを作成してMMLで入力しました。あと、クリア時の曲は、私が中学生の時のファミコンのオトッキーというゲームソフトのエディットモードで作成した曲をアレンジして使っています(もちろんデータはありませんが、頭の中にメロディーが残っていました)。

プログラムはこんな感じです。



今回のような多方向に移動できるタイプの3Dゲームについては、個人的な能力の限界や技術的な制限もあって、新しいものは当面作ることはないかなと思います。キャラの拡大縮小だけで対応できるような前進するだけの疑似3Dであれば、もしかしたら作ることはあるかもしれません。





プチコン4関連記事(リンク一覧): ロボット君 水産加工工場で働く - プチコン4でキャラ密集系ゲーム / 天空のスイーツランド - プチコン4のLMATRIXデモ的疑似3Dミニゲーム / 懐かし昭和の10円ゲーム(プチコン4) / HUNGRY DOGGY (プチコン4) / BONRU(ボンル) - X68000の自作ゲームをプチコン4にアレンジ移植 / ...(記事連続表示)

関連カテゴリー: ニンテンドー関連記事, プチコン4関連記事

3Dゲームをおもしろくする技術 実例から解き明かすゲームメカニクス・レベルデザイン・カメラのノウハウ
3Dゲームをおもしろくする技術 実例から解き明かすゲームメカニクス・レベルデザイン・カメラのノウハウ をAmazon.co.jpでチェック


1)商品の宣伝、宗教や政治活動の勧誘など、本サイトの趣旨に合わない書き込みはご遠慮ください。
2)個人、団体への誹謗中傷や、差別的な発言、公序良俗に反する表現は禁止します。
3)本ブログへの書き込みによって何らかの問題が発生した場合、KUNISAN.JP管理者までご連絡いただければ、内容の修正、削除を行います(その他の責任については負いかねます)。
4)製作者サイドの都合により、予告無く書き込みの一部または全てが削除されることがあります。あらかじめご了承ください。
5)迷惑メールやコンピュータウィルス被害を防止するため、必要な場合以外にはメールアドレスを書き込まないことをお勧めします。

タイトル
お名前 (※必須)
Eメール
ホームページ

コメント (※必須)


画像ファイル(サイズ:10MB以下 形式:gif,jpeg,jpg,png)