Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

アルファ付きwebmで半透明部分が黒っぽくなる #94

Open
n2naokun opened this issue Oct 8, 2024 · 4 comments
Open

アルファ付きwebmで半透明部分が黒っぽくなる #94

n2naokun opened this issue Oct 8, 2024 · 4 comments

Comments

@n2naokun
Copy link
Contributor

n2naokun commented Oct 8, 2024

RPGツクール MZ
コアスクリプトバージョン v1.4.4
MoviePictureバージョン 2.2.0

アルファチャンネル付きwebmを使用すると半透明部分が黒っぽく表示されてしまいます。
プラグインを最小構成にしたり動画を書き出す時のpremultiplyの有無なども変えてみましたがダメでした。
もしかしたらMoviePictureプラグインやpixi.js自体のバグも疑っているのですが一度ご確認願えませんでしょうか?

サンプル動画
https://7.gigafile.nu/1013-d1fd931e2bd9ac427c86bf5d663989ff8
https://7.gigafile.nu/1013-b81cfa829b22650c1b57cf08cb7e73263

それぞれ別の変換方法(Webサービスとffmpeg)を使ってwebmにしています。

なお、ツクールの描画システムを通さずにhtml上に直接videoタグを追加して再生する場合は問題なく表示されたのでNwjs自体の動画デコーダーのバグではないと思います。

@triacontane
Copy link
Owner

こんにちは!
本現象について調査してみます。
しばらくお待ちください。

@n2naokun
Copy link
Contributor Author

追加情報
プロジェクトで使用されているpixi.jsのバージョンはv5.2.4で

最小構成のクリーンなプロジェクトでテストした時は

コアスクリプトバージョン v1.8.1
pixi.jsバージョン v5.3.12
MoviePictureバージョン 2.2.0

の環境でも再現できました。

@triacontane
Copy link
Owner

本件、調査のうえこちらで現象を再現できましたが解決できませんでした。

  • 本プラグインはpixi.jsが提供するvideoタグを渡して動画を再生する機能を使用しています。
  • pixi.jsのコードを追ってみましたが根本的な原因は分かりませんでした。
  • Chromeでも発生していることから、原因はNW,jsではなくpixi.jsにあると思われます。
  • アルファチャンネルの半透明箇所にのみ影響し、完全な透過部分の表示は問題ありませんでした。

よって本件の調査を終了する代わりに、videoタグを直接使って再生しているイベントコマンド「ムービーの再生」の機能を補強できるプラグインを作成しました。
https://raw.githubusercontent.com/triacontane/RPGMakerMV/refs/heads/mz_master/MovieCustomize.js

上記プラグインで問題が解決するかは分かりませんが、プラグイン提供側のスタンスとしては半透明を含むアルファチャンネル動画を再生する場合は、上記プラグインの利用を推奨することとします。

@n2naokun
Copy link
Contributor Author

n2naokun commented Nov 4, 2024

ありがとうございます。
試してみます。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants