【Unity】CustomShaderがAndroidでピンク表示される


カスタムシェーダを適応してUnityエディタ上ではちゃんと表示されるけど、実機上ではピンクになってしまう。

エディタ上でもピンクになるならシェーダのエラーの可能性が高いけど、実機だけピンク状態は初めてだったので覚書。

 

原因はスクリプトでシェーダをスクリプトで適応させているところだった。

実機だと、ここの Shader.Find で見つけられていなかった。

リファレンスを見るとそのまま答えが書いてあった。

Unity - スクリプトリファレンス: Shader.Find
Unity のマニュアルは、Unityの使い方を学ぶ手助けとなります。Unityを使って 2D や 3D ゲームを作成したり、ゲーム以外のアプリを作成したりして多くの経験を積みまし...

 

つまりパッケージングされてないものは参照できない。

どこかのオブジェクトで使用するか、Edit > ProjectSettings > Graphics から Always Included Shaders に追加するか、Resourcesに入れるかすれば解決です。

私はなんとなく通っぽいという理由で Always Included Shaders に追加して実機動作を確認しました。

こういう実機のみの不具合は、エラー箇所さえわかればリファレンス見るだけで解決できることが多い気がする。

 

実機でだけ真っ黒になる場合はこっちかも

【Unity】CustomShaderがAndroidで動かない
自作のカスタムシェーダを適用したときにPC上では動作するけど、Android実機で真っ黒になった。しかし機種によっては正しく表示される。これの対処法メモ。 まず、...

 


コメントを残す

メールアドレスが公開されることはありません。