Rust + Bevyで作成したゲーム「くるんくる〜ぱ」を、Bevy 0.6に対応させました。
ブラウザ等、環境によっては動かないかもしれません。
ガイドに従えば0.6への移行自体はそんなに難しくはありませんが、0.5で作成した
前回の記事で挙げられた点が結構改修されていますので、その辺りを主に並べてみます。
スプライトを半透明にする
SpriteSheetBundleと同じような感じで、
SpriteBundleでもカラーのパラメータが
Spriteに含まれるようになった。
これで透明度を変えるときでも、Assets<ColorMaterial>を持ち歩かなくて済む。
スプライトの加算合成
AlphaModeなんてのがあったから、これは?と思って見てみたが、どうも2Dのスプライトに使うものでもないらしい。そもそも、ブレンドモードに加算合成が無い……
需要はありそうなもんだが、何か見落としているのだろうか?
テキスト描画
Text2dBundleの
Transformが、テキストの拡大率や回転角に影響するように変更された。
紹介ページでは、サイズを変えたきゃ「フォントサイズ」を変えることを勧められているけど。
Web対応
標準でWeb対応されて、特にプラグインを入れることなくコマンドオプションだけでWeb用にコンパイルできる。
そのためなのか、それとは別の話なのかはわからないが、Web版のテストには
wasm-server-runnerを使うようになっている。
いくつか注意点があって、wasm-server-runnerではこちらの用意したhtmlを介さないからなのか
WindowDescriptorでcanvasを設定すると動かなかった。少なくともデバッグビルドでは設定を外す必要がある。
また同様に、
小細工ができないので音が鳴らない。
wasm-server-runnerの設定かなんかでやりようがあるのかもしれないが、致命的な問題でもなかったのでほっといている。
最後に
コンパイル・デバッグの方法の変更でちょっと手間取ったりもしましたが、プログラム自体のBeby0.6への対応は難しくありませんでした。カプセル化されたクラスで変更点を吸収してしまうようなオブジェクト指向型のエンジンに比べると、修正箇所が多いような気もしますが。
セコメントをする