2016年10月15日土曜日

グラフィックサイズの調整

前回記事の最後で、キルスコア表示画面で敵グラフィックを表示する際、大きいグラフィックの敵がいるとはみ出してしまうという積み残し問題を紹介しました。
今回は、それを解決します。

ビットマップの縮小自体はこの機能だけで必要になるとも限らない汎用的な用件なので、Utilsを作り、そこにメソッドを定義しました。
特に拡縮用のメソッドなどは見当たらなかったのですが、ピクセルに色を直接セットできるので、手書きすることにしました。
以下のような仕様にしました。

  • 引数はビットマップオブジェクトと幅・高さの整数値
  • 1/nに縮小した時に、幅・高さともに引数値以下に収まる最小のnを求め、縮小率とする
  • 縮小後の新しいビットマップオブジェクトを返却する

ソースはこんな感じになりました。

縮小率が整数限定だったり、色々雑な処理ですが、プレイヤーが見て最低限「ああ、あいつな」って分かればいいんです。0.5刻みにするとか、0.25刻みにするとか、ましてやアンチエイリアスだのフーリエ変換だの、やるつもりは毛頭ありません。


さて、テストです。
テスト用の見掛け倒し雑魚軍団を編成しました。

こいつらが、こんな感じの表示になります。 
はい、完璧ですね。
縦幅の狭い表示領域にしているので、縦に長い敵グラがすごく小さくなってしましますが、その辺は可能な範囲で調整すれば良いでしょう。


さて、宿屋成長システムのコア部分はこんなもんでしょう。
おもらし回数の表示とかも必要ですが、それはまあ出来たらまた記事書きます。


0 件のコメント:

コメントを投稿