Santarh / MToon

Toon Shader with Unity Global Illumination
MIT License
534 stars 59 forks source link

iOS環境にてゼロ除算が原因とみられるアーティファクトが起きる #96

Closed ghost closed 1 year ago

ghost commented 4 years ago

https://twitter.com/5A0R1_T0R1NA/status/1261934552588537856 https://twitter.com/5A0R1_T0R1NA/status/1261905503254265856 VRMがアップロード可能(MToonが使用可能)であるサービス「cluster」のiOSビルドにおいて、MToonを使用した場合に上記投稿のような現象が発生することがあります。 MToonは、データ型としてhalfを使用していますが、一部モバイルGPUの挙動を考慮した丸め処理が入っていないことが原因ではないかと思います。

Santarh commented 4 years ago

ご報告ありがとうございます。 cluster のアプリに使用されているシェーダはこちらでは検証ができないため、いったん cluter のサポートにお問い合わせください。

xanxys commented 4 years ago

clusterの方からきました。

clusterが使用しているのは、UniVRM 0.53.0 にbundleされているMToon (2f816c5 / V3.2)なので当該現象はMToon最新リリース版でも発生していると思います。

Santarh commented 4 years ago

ありがとうございます。 可能性は多岐にわたるので、調査いたします。 問題の起こる VRM モデルの方を提供いただければスムースに調査ができるので、可能であればそうしていただけると幸いです。

ghost commented 4 years ago

VRM モデルについて、ギガファイル便経由にて @Santarh さまのメールアドレス宛てにお送りしました。 高輝度かつ半透明の場合に問題が生じている傾向があるため、おそらくフレームバッファがARGB2101010の場合に、BlendOpの挙動がiOSデバイスのみ異なるためにアルファチャンネルにおいてアンダーフローが起きている可能性があります。

また、iPad 2018(A10)とiPhone X(A11)のどちらでも現象が再現しますことを補足します。