6
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

🦀ひとりWASM-4とRustでゲームをつくる⚙Advent Calendar 2022

Day 25

ラストのまほう 最終話『WASM-4の将来』

Last updated at Posted at 2022-12-24

WASM-4の将来

WASM-4の作者のブルーノ兄貴が、将来的に検討していることをいくつか Issue に書いています。いくつかピックアップして、WASM-4が将来的にどうなっていくのかの展望を見てみましょう。

ミュージックシーケンサー

専用のミュージックシーケンサーを作るアイデアがあるみたいです。BGMなどのためにMIDI形式のファイルを再生できるよう実装する手もあるとは思うのですが、WASM-4でのサウンドは制限が強くて独特なので公式のミュージックエディタがあると嬉しいですね。ちなみに、PICO-8だとスクリプトエディタ、ドット絵エディタやミュージックシーケンサーまですべて統合されているそうです。

PNGにカードリッジを格納する

PNGには自由にメタデータを追加できる仕様があり、PICO-8なんかだとこれを利用してPNG形式でゲームカートリッジを配布できるそうです。それだと画像としてカートリッジを配布できるので、たとえばツイッターの画像ツイートを使ってカートリッジを配布できたりしたら面白そうです。

プレイグラウンド

TypeScriptプレイグランドみたいに、ブラウザ上で簡単に試せるプレイグラウンドのアイデア。まあ環境構築は面倒ですからね。

MIDIノートナンバーベースのサウンドAPI

現在のAPIだと周波数を整数で指定しますが、人間の耳は対数スケールで音を捉えるので低音域では精度が足りなくなるようです。確かに……というところですが、tone関数を破壊的に変更するのもなあ……という感じらしいです。

ボタンを増やす

ゲームボーイだってスタートボタンとセレクトボタンがありますし、実際十字キー以外にボタン2つだと厳しいんですよね……。一応将来的に増やす可能性はあるようです。

ところで、そこのコメントで知ったのですが、text("Press \x80 to shoot")みたいに書くと、丸にXとか丸にZのような文字をプレイヤーへの指示用に出せるそうな。Rustでもたしかにtext(b"Press \x80 to shoot", 10, 10);みたいにやったら出ました。この記事を書いている直前にRustのテンプレートが修正されたばかりのようです。

使えるフォントについては、以下のファイルを見ればよさそうです。XボタンやYボタンだけでなく、矢印キーを表す文字なんかもちゃんと使えますね。

おわりに

大変でしたが、なんとかアドベントカレンダー25記事を完走することができました。ここまで記事を読んで頂いてありがとうございます。ゲーム開発と並行して記事も書いていたので、とても大変でした。

これでゲームは最低限それっぽくはなりましたが、まだ完成といえる段階ではありまsねんし、もうちょっと開発は続けたいと思います。ゲームはこちらからいつでも開けるようにしておきますので、気が向いた方は遊んでもらえると嬉しいです。プレイ動画のシェアやスクリーンショットのシェア、プレイ実況なども自由にやってもらってOKです。

開発はこちらのリポジトリで地道に続けていきたいと思います。ちなみにプロジェクトのフォークや改造などもOKです。ライセンスについてはLICENSE.mdをお読みください。

この記事をきっかけに、WASM-4仲間やRust仲間、ゲーム開発仲間が増えてくれたりしたらいいなと思います。

6
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?