ツクールXPでピクチャを表示がウェイトはさまないとうまく表示されない問題

忘れないようにまとめておきます テンプレさんありがとうございました!
0
ユズ @T_yuzuki

XP触ってるけど、お願いだからウェイトを入れずに画像を読み取ってほしいなと節に願う

2010-03-05 09:08:02
◆RGSS2.GBVY @rgssws4m

@tempre_ 画像の読み込みにウェイトってかかりましたっけ? イベントのピクチャの表示かな… たぶん何かで回避できると思うので今晩あたり調べてみます

2010-03-05 09:43:20
ユズ @T_yuzuki

@rgssws4m VGAの画像を「ピクチャーを表示」させると、わずかにラグが発生しますが、単体じゃ分かりづらいかもしれません(当方のPC環境がネットブックってのもあるかも…)。連続で表示させると顕著に出てきます。

2010-03-05 09:59:54
ユズ @T_yuzuki

@rgssws4m 「じゃあ先に画像を読み込んでおけばいいじゃん」って話になるんですが、2000だと「ピクチャーの表示」を連続でコマンドを入れれば読み込んだことになるんですが、XPだと「ウェイト」を挟まないと読み込んだことになりません(ラグが残る)。

2010-03-05 10:01:48
◆RGSS2.GBVY @rgssws4m

@tempre_ なるほど、もしかしたらXPのスプライトは重いので描画速度の限界かもしれません

2010-03-05 10:08:25
◆RGSS2.GBVY @rgssws4m

@tempre_ ウェイトを挟むと表示されるのはおそらくGraphics.updateが呼ばれるからだとおもいます ウェイトを挟むという処理をすれば問題ないのであればRGSSの「ピクチャーを表示」処理部分でGraphics.updateを呼んでしまえばいいのかな

2010-03-05 10:12:17
ユズ @T_yuzuki

@rgssws4m ふむぅ… と分かったつもりでぜんぜんわからないww 

2010-03-05 11:14:32
◆RGSS2.GBVY @rgssws4m

@tempre_ 説明がヘタでごめんなさい… とりあえず現象が確認できたら回避できるか考えてみますね!

2010-03-05 13:09:02
ユズ @T_yuzuki

@rgssws4m あ、いちおう標準のRGSSでの話です。個人的には、コンティニュー時に読み込めれば(そういうイベントを入れればいいんですが)…

2010-03-05 16:57:31
◆RGSS2.GBVY @rgssws4m

@tempre_ ピクチャの表示実行後、すぐにでも反映したい(表示したい)という場合は"Interpreter 5"の294行目の"# 継続"ってコメントの前に"Graphics.update"ってやるとすぐに反映されると思います

2010-03-05 19:28:13
◆RGSS2.GBVY @rgssws4m

ウェイトを入れないと継続するイベントコマンドはそのまま進んでいくのか メッセージ終了待機、コマンドの実行に失敗、ループカウント100回毎とかでGraphics.updateが実行されるっぽい

2010-03-05 19:49:08
ユズ @T_yuzuki

@rgssws4m ありがとうございます! 早速試したのですが…やはりラグが発生している模様です。データをUPしてみます。

2010-03-05 19:51:22
ユズ @T_yuzuki

@rgssws4m 画像読み込みラグの検証データです。…が、PCスペック次第ではわからないかも…http://temp.if.land.to/Soruthia.zip

2010-03-05 20:43:25
◆RGSS2.GBVY @rgssws4m

@tempre_ もしかしたら問題そのものを勘違いしていたかも… これって最初にカクつくのがラグだと思えばいいですか?

2010-03-05 20:46:20
ユズ @T_yuzuki

@rgssws4m そです。カクッカクッ…ってのが、読み込んだ後だとススススッってなる感じですね。 …説明不足でしたごめんなさい><

2010-03-05 20:49:54
◆RGSS2.GBVY @rgssws4m

@tempre_ これ、前者の方でウェイト1を全部消してみたらどんなかんじでしょうか? 前者の方にもピクチャの表示ごとにGraphics.updateをいれるのが有効になってるのでウェイトいらないと思います(つまり今はウェイト2はいってる)

2010-03-05 21:01:25
ユズ @T_yuzuki

@rgssws4m ウェイトを消しましたが、やはりラグは発生する模様です。2000だとウェイトなしでOKだったのですが、XPだとウェイトを挟まないと読んでくれません…。XP謎仕様。

2010-03-05 21:08:39
@rgssws4m

@tempre_ これでウェイトいれてるのは10秒ハング対策…ってワケじゃないですよね? 処理自体はGraphics.updateをいれてウェイト1を挟むのをやめるっていうだけでローディング画面は必要ないと思います

2010-03-05 21:10:11
◆RGSS2.GBVY @rgssws4m

@tempre_ あれ…? 何か見ている現象が違う予感 読んでくれないというのはどういう感じでしょうか…

2010-03-05 21:11:47
ユズ @T_yuzuki

@rgssws4m 10秒ハング対策…てのはちょとわかりませぬ。すみません。正直初耳です。

2010-03-05 21:13:11
◆RGSS2.GBVY @rgssws4m

@tempre_ あ、すいません XPには先ほどいれてもらったGraphics.updateというメソッドが10秒間実行されないと「スクリプトがハングアップしました」といって落ちてしまうと言う問題があるのです。VXだと廃止されたようです。

2010-03-05 21:15:34
ユズ @T_yuzuki

@rgssws4m ”読んでくれない”とは、イベント内容に「ピクチャーを表示」を入れ、直後(真下)に同じ番号の「ピクチャーを表示」命令を入れても、前の命令を無視してしまいローディングしたことにならない事です。それにより、ラグが発生します。間に「ウェイト」を挟むとロードに成功します

2010-03-05 21:17:35
ユズ @T_yuzuki

@rgssws4m 説明ありがとうございます。今までお目に掛ったことのない警告ですね。。。 

2010-03-05 21:19:05
◆RGSS2.GBVY @rgssws4m

@tempre_ やっと意味がわかった!! 盛大に勘違いしてました ちょっとだけ複雑な問題みたいなので調査します

2010-03-05 21:26:21
ユズ @T_yuzuki

@rgssws4m キタ━(゚∀゚)━ !!!!! 調査宜しくお願いします><

2010-03-05 21:29:33