Appendix

広告

Entries

Spriteでいろいろ実験 その1

久しぶりのRGSSについて。
スクリプトさっぱりの人には関係ないお話です。

むかーし、まだVXを使ってた頃、スプライトをどう使えば処理が軽くなるかいろいろと試したことがあります。
長くなりそうなので分割で。

最初に書いておきますが、この結果はVXでの実験結果なので、もしかしたらAceでは変わっているかもしれません。あしからず。


スプライトの表示で重い処理といえば、回転描写です。
もしかしたら色調変更も重いかもしれませんが、めったに使うもんでもないので無視します。

今後スプライトを使っていく上で、どのような状態で回転描写を行えば処理が軽くなるか、というのを試してみたことがあります。
主に「箱庭の勇者たち」を作るための下準備です。
実験に使ったパソコンは、VXですら20fpsくらいでしか動かないような古いのを使いました。

まずは基本的なことから。


実験その1・拡大したスプライトの回転
130613_a.jpg

Aでは大きく拡大した状態で回転処理を行い、Bでは通常サイズのまま回転処理を行いました。
ビットマップは同じ物です。
結果は以下のとおり。

A : 約20fps
B : 約60fps

表示しているビットマップは同じでも、拡大した場合処理が重くなります。
処理の重さはビットマップの大きさではなく、実際に表示している大きさが関係しているようです。
ピクチャでも同じ事なので、拡大したピクチャを回転するのはやめたほうがいいです。

この結果を見て、じゃあ逆に縮小して回転させた場合は処理が軽いのか、と思うかもしれませんがどうやら違うようです。
というか、私もつい最近まで縮小して回転させれば処理が軽いと思ってました。

ですが、乗り物疑似3D化の視界拡張を作っているとき、どうも縮小したところで元の画像が大きいと負荷が高いということに気付きました。
なので、おそらく元の画像より小さくしても軽くなることはありません。
これを考慮して、「箱庭の勇者たち」の表示関係は体験版からちょっと変更加えてます。


実験その2・透明の画像の回転
130613_b.jpg

Aの画像は、イラストは小さいですが余白の多いビットマップ。余白の部分は透明です。
Bの画像は、余白のないビットマップです。
画像の大きさは違いますが、実際の画面では全く同じ物が表示されます。

これらを回転させた結果は以下のとおり。

A : 約20fps
B : 約60fps

余白が多いものは処理が重いです。
つまり、余白の部分も回転処理を行なっているということです。
・・・当然ですよね。

さらに似たような実験で、Aの余白の多い画像をスプライトのsrc_rectを使ってBと同じくらいまで余白を削った場合、約60fpsまで上がりました。
回転処理はsrc_rectで画面に表示されている部分だけ行われているようです。

画像を回転させる場合、余白は極力削ったほうがよさそうです。


実験その3・opacity=0とvisible=falseの違い

opacityはスプライトの不透明度で、0にすると画面に表示されなくなります。
visibleは可視状態で、faiseにすると不可視になります。

一見同じように見えますが、これらを回転させると処理速度には違いが出ます。

opacity=0の場合 : 約20fps
visible=falseの場合 : 約60fps

どうもopacity=0では透明状態で描写を行なっているようです。
これは回転描写にかぎらず、opacityが0で表示されないスプライトは、不可視にしておいたほうがよさそうです。


今回は以上で。



ニコニコ自作ゲームフェス2やるんだってね。

ノートパソコンほしいなあとは思いますが、新作作る気もないしネタもないしどうせ入賞できないし・・・
そして何より、これから暑くなるからダレること間違いなし!



以下お返事

> 素人 さん
報告ありがとうございます。
乗り物擬似3D化の軽量化スクリプトを確認した所、しょうもないミスが見つかったので修正しました。
競合ではなく、単純な軽量化スクリプト側のミスです。

ほんとにこんなの見逃すなんて、我ながら情けない・・・(_ _;
スポンサーサイト
この記事にトラックバックする(FC2ブログユーザー)
http://woodpenguin.blog.fc2.com/tb.php/63-d87a6ecc

トラックバック

コメント

コメントの投稿

コメントの投稿
管理者にだけ表示を許可する

Appendix

プロフィール

木星ペンギン

Author:木星ペンギン
ほぼツクールのことばかり書いてます。
名前は↑から取りました。
木製ですが木星です。
トカゲは関係ありません。

ゲーム

  • 箱庭の勇者たち(体験版)
  • アクイ ト アイ
  • ぼくらの大革命!
  • 勇者がやらねば俺がやる!
  • 3Turn Battle!
  • 3TurnBattle!2nd 体験版

メールフォーム

wood_penguin@yahoo.co.jp

名前:
メール:
件名:
本文: