アフィリエイト広告を利用しています
検索
言葉を集めて世界を旅するRPG「地図の時間〜言葉集めの冒険譚〜」
timeofmapworks_logo_2020.png
ハートフルRPG「地図の時間」

地図の時間スピンオフRPG「影泥棒と魔法の手記」

リソース管理ダンジョンRPG「琥珀の道具士」

現代SFRPG「重力ルーペ/探求リバーブ」

ドラマティックRPG「バンドワゴン」

ビジュアルノベル「日向と香水」

ノベル×ADV「ストーリーテラー」 title1_2.png
カテゴリ
プロフィール/制作環境(3)
制作記(736)
ニュース(ツクールMV)(222)
技術情報(ツクールMV)(204)
JavaScript/スクリプト(ツクールMV)(9)
プラグイン情報(ツクールMV)(12)
素材情報(ツクールMV)(15)
アップデート情報(ツクールMV)(45)
トラブル&解決情報(ツクールMV)(18)
ツクール製作品(ツクールMV)(42)
関連情報(ツクールフェス)(2)
投稿イベント情報(ツクールMV)(4)
関連情報(ラノゲツクールMV)(9)
Benchmark MV(個人作品:試作)(1)
manurpg(個人作品:試作)(2)
ブックモービル(個人作品)(10)
重力ルーペ(個人作品)(11)
そして魔女に会う(個人作品)(7)
バンドワゴン(個人作品)(1)
地図の時間(個人作品)(14)
日向と香水(個人作品)(3)
ストーリーテラー(個人作品)(1)
嘘つきのノブレスオブリージュ(2)
お役立ちツール/素材サイト(創作全般)(12)
創作アイディア(創作全般)(7)
保存用コラム(創作全般)(10)
コラム(144)
オススメ作品(8)
当ブログへのお問い合わせ(contact me)(2)
琥珀の道具士(3)
最果てのギルド(1)
読書メモ(1)
Steam展開ノウハウ(21)
RPGツクールMZ(3)
地図の時間〜名前探しの物語(1)
プラグイン情報(ツクールMZ)(1)
技術情報(ツクールMZ)(13)
国内展開ノウハウ(1)
素材情報(ツクールMZ)(4)
AI(9)
RPG Maker Unite(2)
DAW(1)
翻訳(1)
リンク集

広告

posted by fanblog

2019年04月10日

RPGツクールMVでpixi.jsのバージョンアップを検証

RPGツクールMVでpixi.jsのバージョンアップを検証

■pixi.jsとは
javascriptライブラリで描画の担当役
たとえるならツクールMVという会社の中で、イラストを担当している人がpixi.js

pixi.jsはツクール以外でも働いていて、バージョンアップという成長をしている

今回、環境により、以下のエラーが出た
Failed to execute 'getProgramParameter' on WebGLRenderingContext': parameter 1 is not of type 'WebGLProgram'.
紐解いていくと、pixi.jsを使うフィルターやシェード処理を重ねているところで発生していた
ユーザーさんの環境を変えることなくゲーム側で対処できないか、試みている←今ここ

■pixi.jsの適用手順

https://github.com/pixijs/pixi.js/releases
・上記から「pixi.min.js」をDLして「pixi.js」にリネーム
・プロジェクトファイル\js\libsのpixi.jsと入れ替える

■pixi.js差し替え検証

4.5.4(ツクール1.6.2同梱)
4.5.4→4.8.7起動可能※1
4.5.4→5.0.0-rc1起動不可「TypeError WebAudio.initialize is not a function」が発生
4.5.4→5.0.0-rc3起動不可「TypeError WebAudio.initialize is not a function」が発生

※1 ただしコンソールに次の警告が出る
Deprecation Warning: VoidFilter has been renamed to AlphaFilter, please use PIXI.filters.AlphaFilter
pixi.js:16 at chrome-extension://odlameecjipmbmbejkplpemijjgpljce/js/rpg_core.js:4296:38

rpg_core.js:4296はこれ
Sprite.voidFilter = new PIXI.filters.VoidFilter();

■検証1
pixi4.8.7を適用した検証版を作成しました。
始めから、負荷のかかるイベントを試すことができます。

【検証版】地図の時間〜影泥棒と魔法の手記〜
https://game.nicovideo.jp/atsumaru/games/gm10593

こちらはいったん公開停止。
調査結果はまた後で書きます(制作優先のため、申し訳ない)。


比較(pixi4.5.4)はこちらです。
https://game.nicovideo.jp/atsumaru/games/gm10561

しかし、これでエラーが発生する環境の改善は見られませんでした。

■検証2
pixi.js4.5.4のPRECISION_FRAGMENTパラメーターをmediumからhighに設定を変える。

変更前(初期値)
PRECISION_FRAGMENT:"mediump",
変更後
PRECISION_FRAGMENT:"highp",

pixi.js内のコードを「PRECISION_FRAGMENT」で検索すると、改変箇所が分かると思います。
この続きは4/11朝か夜更新予定。

その他:
・自プロジェクトをベースに検証しているので、新規プロジェクトの場合、挙動が異なるかも
・4.5.4〜5.0.0-rc3までに不具合#3981を明示的に修正したログはなし
(別の番号で管理されていたのでしょう)

・ツクールバージョン1.6.2コアスクリプトに同梱されているpixi.js4.5.4は本家で公開しているpixi4.5.4と同一コードではない
(日付からして違う。同一バージョン名でもマイナーチェンジが行われている様子)。

エラーについての話題
FXAA filter error, Failed to execute 'getProgramParameter' on 'WebGLRenderingContext' #3981
https://github.com/pixijs/pixi.js/issues/3981


ivan.popelyshev氏が上記について回答

"antialias doesn't work with filters, because filters use FrameBuffers that dont have MSAA enabled. In webgl2 its possible, we'll add it to pixi-v5 later."

How to smooth out the line of the figure
http://www.html5gamedevs.com/topic/37813-how-to-smooth-out-the-line-of-the-figure/

pixi5で追加されたレイヤーでないと改善が見込めないのかも。
別の方法も教えて頂いたので、後で追記します。

■別の方法
上で書いたpixi.js4.5.4のPRECISION_FRAGMENTパラメーターをmediumからhighに設定変更、を実施。

参考:
http://pixijs.download/dev/docs/PIXI.settings.html#.PRECISION_FRAGMENT
PIXI.settings.PRECISION_FRAGMENT PIXI.PRECISION

http://pixijs.download/dev/docs/PIXI.html#.PRECISION
'lowp'
'mediump'☆初期値
'highp'

変更前
PRECISION_FRAGMENT:"mediump",
変更後
PRECISION_FRAGMENT:"highp",

こちらが更新版です。
https://game.nicovideo.jp/atsumaru/games/gm10561

経過観察中。
記事あとで見やすいように整形します。

■謝辞(50音、A-Z順)
しぐれん様
シロップ様
ゆかわ様
fuku様
Renfred様
terunon様
posted by tabirpglab at 06:43 | Comment(0) | TrackBack(0) | 制作記
この記事へのコメント
コメントを書く

お名前:

メールアドレス:


ホームページアドレス:

コメント:

※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバックURL
https://fanblogs.jp/tb/8709092
※ブログオーナーが承認したトラックバックのみ表示されます。

この記事へのトラックバック
×

この広告は30日以上新しい記事の更新がないブログに表示されております。