「EnDlEss DREamER」ブログ

最近はunity5メインで活動中。以前はツクールRGSSネタなど。

§ 軽量化!

ここ数日はバトルレイアウト変更の軽量化に挑んでいました。
ググったらBitmapクラスの「draw_text」に関するネタを発見♪

# フォントと文字サイズ設定
bitmap.font.name = Popup_Font::POPUP_FONT
bitmap.font.size = Popup_Font::POPUP_FONT_SIZE
bitmap.font.color.set(0, 0, 0)

# 表示文字設定
# フチ取りを「blt」で行なう為にbitmapを作成してselfに転送
temp_bitmap = Bitmap.new(160,36)
temp_bitmap.font.name = Popup_Font::POPUP_FONT
temp_bitmap.font.size = Popup_Font::POPUP_FONT_SIZE
temp_bitmap.font.color.set(0, 0, 0)
temp_bitmap.draw_text(0, 0, 160, 36, damage_string, 1)

# フチ取り
bitmap.blt(-1, 12, temp_bitmap, Rect.new(0,0,160,36))
bitmap.blt(1, 12, temp_bitmap, Rect.new(0,0,160,36))
bitmap.blt(0, 12-1, temp_bitmap, Rect.new(0,0,160,36))
bitmap.blt(0, 12+1, temp_bitmap, Rect.new(0,0,160,36))


これはダメージポップアップの記述の一部何だけど
今までは「# フチ取り」以下の記述が全て「draw_text」だったんです。
ヘルプにも書いてるけど「重たい」んです。
それを「blt」メソッドを利用することで軽量化を図っています。

仕組みとしては、一旦ローカル変数に適当なBitmapを作成して、1回だけdraw_textで文字描画する。
その時にフォントサイズやフォントの色なども設定しておく。
で、その適当に作ったBitmapを基にして、表示用のBitmapの「blt」メソッドで描画元を適当Bitmapにして
Rectを設定してやると・・・・
本来ならフチ取りで4つ、文字本体で1つの計5個のdraw_textが2つだけに・・・・

この方法でバトルレイアウト変更のHPやMPの文字表示周りを軽量化。
更に、「Scene_Battle」で頻繁に使用されている「@status_window.refresh」で実行される
顔グラやHP・MPの更新頻度を設定して、変更がなければ更新しないなど無駄な処理を軽減して軽量化。

ただ、KGC様「多人数パーティ」の813行目「Window_BattleStatus」の「def refresh」にある
「create_contents」の記述が競合して「HP・MP表示が消える」競合現象を発見!!

「create_contents unless $ed_rgss2["ed_battle_scene"]」
に変更することで競合が回避されます。


他にも戦闘画面においてのウェイトの時間を純正コピーから変更してウェイト時間を短くすることで
戦闘でのテンポを少しだけだけど、UPしています。

でも、愛用のEeePC S101 で試しにやってみたんだけどあんまり軽量化されていないような・・・
いや、「マップデータ戦闘背景」とかSDHCからのプロジェクト起動で遅いんだ!!
なんて考えてみたりもする。


ATBに関しても実は加算部分の処理を考えるのが面倒で「少数」で計算していたんだけど
横着せずに記述を見直して「整数」で処理するように変更しました。
RGSSで「Tableクラス」が用意されているように「整数」は処理が少数に比べて速いはず・・・




他にも修正素材がたくさんあるんで、12/27日の内にUPする予定です。
それにしてもKGC様の戦闘画面素材とかの記述見ると、見栄えの割に記述が少ないような気がして
やっぱりスゲェなぁ~~~なんて感心したくらいにして(^^ゞ

未だにバトルレイアウト変更の修正が続いているけど、これって2年も前に作り始めた素材で
当初のものとは全くの別物というまでに変化しまくっている。
バージョンいくらとか数えたらきっと0.01刻みでいっても5.00とか6.00とか平気で行きそうだな。

やるやると言いながらGT5がいつまでも出来ていない・・・
最近、うちの素材を使用して下さる皆々様の中から丁寧に使用報告と共に
VX製のゲーム出来ました~~とか体験版です~~~とか報告もらって
それらのゲームもやってみたいな~~と思いつつ、自分でゲーム作れていないという現実>_<
そろそろ本当にシステム制作から抜け出したいぞ。
バランス調整ジゴクから蜘蛛の糸一本でも見つけたいぞ!!
来年はきっとゲームを配布するぞ!!


2010/12/26/Sun 03:16:46  VX RGSS2/CM:0/TB:0/
new 年末大量修正祭り!! / MAIN / クリスマスということで old

COMMENT

COMMENT POST

/
/
/
/



 
 内緒です♪

TRACK BACK

  この記事のURL:
   http://edlogtkool.blog36.fc2.com/tb.php/694-c065f6dc


MAIN
copyright © 2006 「EnDlEss DREamER」ブログ. All Rights Reserved.
Template by TAE-3rd☆テンプレート工房