2012年4月29日日曜日

FullScreen対応

Windows版のフルスクリーンモードを実装。
640x480のフルスクリーンにして、240x320のVGEビデオメモリを中央(+200,+80)へ配置しました。
割と沢山隙間が開いています。
x1.5拡大して上下ピッタリにすることもできますが、敢えて拡大しない方向にしました。
このサイズがちょうど、スマホの画面と物理的に同じぐらいのサイズなので。

処理性能が重かった件も解決。
ようやく移動環境(ノーパソ)でヌルヌル動けます。

ちなみに、音声あり or なしのどちらでも、性能的な差異は無しでした。
ピスコラだと、22050Hz/Monoでも結構キツイ環境なんですが。

ピスコラも私の独自音声(VGS)も、仕組みはだいたい同じ(いわゆる、波形メモリ音源)ですが、ピスコラの場合、恐らく音階別の波形データをリアルタイム算出している(※推測)のに対して、VGSの場合、全ての波形(4パターン)+音階(80ぐらい)の1周期分の波形データ(約256KB)をメモリにストアしているので、波形計算を咬まない分、ピスコラよりも高速に動くことができる・・・という訳です(たぶん)。この他にも、エンベロープやら色々な計算に浮動小数点数を使っていない(小数点が必要な部分は32bit符号値の固定小数点数で処理している)し、パイプラインハザード抑止(分岐数を最小限にする/分岐は予測分岐でヒットし易い形にする)など、色々やってますが。
代わりに、表現性能は圧倒的に劣りますが。

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。

合理的ではないものを作りたい

ここ最近、実機版の東方VGSの開発が忙しくて、東方VGSの曲追加が滞っています。 東方VGS(実機版)のデザインを作りながら検討中。基本レトロUIベースですがシークバーはモダンに倣おうかな…とか pic.twitter.com/YOYprlDsYD — SUZUKI PLAN (...