マイペースなプログラミング日記

x86エミュレータやFPGA、WebGLにお熱なd-kamiがマイペースに書くブログ

ゼンリンのJapanese Otaku CityをUnityのアセットストアからインポートしたら...

Japanese Otaku Cityをインポートしたら、モデルの一部がピンク色になる問題が発生。何かと思ったらシェーダでエラーが発生してた。

'vert': output parameter 'o' not completely initialized

とりあえず、su_Double_and_Clip.shaderとsu_VertexCol_1UV_Single.shaderにあるvert関数の第2引数を消したらピンク色の部分がおそらく正しい色になったと思われる。ただりクエリちゃんのシェーダでは第2引数使ってるし、クエリちゃんのは修正でき無さそうなので、インスペクタの設定でシェーダをDiffuseにすればよさそう?あとUnity Proでは発生しないらしい?

追記
クエリちゃんのシェーダでは、PQ_Skin.shaderとPQ_TransBlue.shaderのvertの第2引数を消して、PQ_TransBlue.shaderにある


o.simpleWorldRefl = -reflect( normalize(WorldSpaceViewDir(v.vertex)), normalize(mul((float3x3)_Object2World, SCALED_NORMAL)));
を消せば、ピンク色は消えます。ただし、ゼンリンの想定している色ではないと思いますが!

http://www.zenrin.co.jp/product/service/3d/asset/