個人的にWebAssemblyにハマっているのでRustを触る機会があるのですが、まだまだWebAssemblyに対応したサードパーティーのライブラリが少なく、実践的ではないと思っていました。しかし、Rustは日進月歩で進化しています。 そしてついにRustでファミコンエミュレータが作られました。もちろんWebAssemblyなのでスムーズに動くのです。

rustynesの使い方

ちゃんとサウンドまでサポートされています。

メイン画面

ゲーム中の画面。キー入力で操作できます。

ゲーム中

ゲームオーバー…。

ゲームオーバー

ぎこ猫風のキャラクターが飛ぶゲーム。敵キャラは出ないのでデモと思われます。

デモ

rustynesは実用レベルのソフトウェアになっており、ゲームが問題なくスムーズに動作します。WebAssemblyのパフォーマンスは非常に高いと言えるでしょう。ファミコンエミュレータが作れるのであれば、他の分野のソフトウェアはもっと簡単に作れるのではないかと思わされます。

rustynesはRust製のオープンソース・ソフトウェア(MIT License)です。

rustynes bokuweb/rustynes: ? A NES emulator by Rust and WebAssembly