LoginSignup
7
8

More than 5 years have passed since last update.

Unity5.3.0にしてシェーダーが機能しない場合の対処方法

Last updated at Posted at 2015-12-14

概要

Unity5.3.0.f4にプロジェクトを移行してから、シェーダーがうまく動作しなくなりました。
(OSXでのUnity Editor上でのみ)
具体的には dot関数が0ベクトルしか返さず、他にも色々と不具合が出ておりました。

原因

これを原因といってよいかわかりませんが、Unity5.3からプラットフォームごとに選択できるグラフィックAPIがデフォルトでOpenGLCoreになってるためでした。
OpenGLCoreに関しては、詳細がよくわからないこともあり、とりあえず以前の状態に戻すために設定を変更することで対応します。

手順

  1. メニューから[Edit]-[Project Settings]-[Player]を選択
  2. [Other Setting]から[Auto Graphics API for Mac]のチェックボックスを外す
  3. OpenGLCoreが最上位に来てるので、OpenGL2を最上位に変更してApplyする。
  4. 以上

コメント

本当はAdvent Calendarに投稿しようと思ってたんですが、よくわかっていないところが多く、
(例えばなんでOpenGLCoreでは動作しないのか、その理由など)
辞退しました。
とはいえ、困ってる人も多いと思うのでメモ代わりに記事にしました。
(CRI Manaを使ってる人もこれで直ったりします)

7
8
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
8