【解決済み】立ち絵表示制御文字プラグインで正常に画像が描画されない場合がある

アバター
紫苑もみじ
記事: 18
登録日時: 2019年6月27日(木) 17:20
連絡を取る:

【解決済み】立ち絵表示制御文字プラグインで正常に画像が描画されない場合がある

投稿記事by 紫苑もみじ » 2021年8月12日(木) 19:29

やな様作の立ち絵表示制御文字プラグイン(StandPictureSettingP.js、StandPictureSettingM.js、StandPictureEC)を利用してこちら(https://game.nicovideo.jp/atsumaru/games/gm18591)のゲームを制作しております。

しかし、このプラグインを使用して画像を描画しようとした場合、しばしば画像が描画されないままゲームが進行してしまう(どれだけ待っても描画されない)現象に遭遇しています。

根本的な原因としては非同期ロードによるものだと考えています。というのも、準公式プラグインであるTDDP_PreloadManager.jsを使用して事前ロードを行うと、画像が描画されない不具合が発生する確率が大きく下がったからです。

ただ、それでもそれなりの頻度で不具合が発生してしまっており、完全に解決したとは言えない状況です。


(画像の描画に関して詳しくないので見当違いのことを言っているのかもしれないのですが、)ツクールの標準機能で画像を描画する場合は、その時点で画像のロードが完了しておらず描画できなかったとしても、ロードが完了次第画像が描画されるかと思います。(最近気づいた)

しかし、この立ち絵表示制御文字プラグインにはそのような仕組みがなく、画像の描画命令が出た時点で画像のロードが完了していなかった場合、あとから画像のロードが完了しても描画がされないのではないか、と考えています。

ですので、立ち絵表示制御文字プラグインにロードが完了次第描画をおこなう処理を追加したいと考えているのですが、独力では実装できませんでした。


大変お手数をおかけしますが、自力で解決できそうにないため、ご意見をいただきたいです。
そもそもの方針が誤っているかもしれないのですが、その点も含めてどうかよろしくお願いいたします。
最後に編集したユーザー 紫苑もみじ on 2021年8月12日(木) 22:54 [ 編集 1 回目 ]

奏ねこま
記事: 702
登録日時: 2016年1月20日(水) 20:04

Re: 立ち絵表示制御文字プラグインで正常に画像が描画されない場合がある

投稿記事by 奏ねこま » 2021年8月12日(木) 20:07

StandPictureEC.jsの「Sprite_StPic.prototype.setBitmap」の中にある「this.setFrame(~」の行を消してみてください。
実際には試さずソースを見て思いついただけのことなので見当違いでしたらすみません。
アバター
紫苑もみじ
記事: 18
登録日時: 2019年6月27日(木) 17:20
連絡を取る:

Re: 立ち絵表示制御文字プラグインで正常に画像が描画されない場合がある

投稿記事by 紫苑もみじ » 2021年8月12日(木) 22:54

ありがとうございます!
ロードが完了次第描画が行われるようになりました!
(厳密な確かめ方はわからないけどそれらしい挙動をしているの意)

今まで不具合が頻発していた箇所で十数回試したところ、全部うまく動作しましたのでひとまず解決済みとさせていただきます。

奏ねこま様、本当にありがとうございました!

“MV:質問” へ戻る