LoginSignup
9
9

More than 3 years have passed since last update.

UnityのLWRP環境でNature系のマテリアルが真っピンクな状態を解決する方法

Posted at

はじめに

こんにちは、ZeniZeniです。
最近LWRP環境を触っているんですが、既存のアセットをLWRPでも使えるようにするには場合によって結構手間がかかります。
基本的にはアセットをインポートした後、Edit>Render Pipeline>Upgrade ○○ Materials to LightweightRP Materialsボタンを押すことで、ある程度自動でマテリアルが使用しているshaderをLWRPで使えるshaderに変更してくれます。
しかしこの自動変更が対応してあるshaderは限られて、対応表がこちらのサイトに載っています。

こちらを見てもらえばわかる通り、UnityのStandardAssetsに入っている木や草などの自然系のアセットに使われているNature系のshaderが対応していません。そのため、Gaiaなどの自然系のアセットではマテリアル自動変更をしても木々は真っピンクのままです。
bandicam 2019-09-20 17-34-05-222.jpg

Unityの質問サイトを覗くと、この真っピンクに苦しめられている人が結構いて、最終的に対処方法はshadergraphで自作しろというあんまりな終わり方だったので、もう少し調べると、そのNature系のshaderを提供しているSpeedtree社のサイトにLWRPに関する説明記事がありました。
これを読むと、現状HDRP/LWRP対応のshaderは開発中であり、提供はまだ先であるが、一応の対処方法があるということが書いてありました。

対処法

対処方法は非常に簡単で、真っピンクになってあるmaterialのshaderを一度Nature/SpeedTreeからStandardに変更してから、Edit>Render Pipeline>Upgrade ○○ Materials to LightweightRP Materialsボタンを押すことです。

するとこうなります。

bandicam 2019-09-20 17-40-30-272.jpg

見てわかるとおり、透過処理のされていないのっぺりとした感じになってますね。
今度は葉っぱ部分のマテリアルを選択して、SurfaceTypeをOpaqueからTransparentに変更しましょう。

bandicam 2019-09-20 17-43-02-054.jpg

するとこうなります。
bandicam 2019-09-20 17-44-34-827.jpg

いい感じになりましたね。

上記の方法はSpeedTreeさんのサイトに書いてあるんですが、わざわざStandardを経由して変更しなくても、いきなりNature/SpeedTreeからLightweightRender Pipeline/Litに変えて、SurfaceTypeを変更するだけでもできました。

その他

既存のアセットでEdit>Render Pipeline>Upgrade ○○ Materials to LightweightRP Materialsボタンを押してマテリアルを変更したが、なんかコレジャナイ…みたいな時があります。
bandicam 2019-09-20 17-55-32-426.jpg
マテリアル自動変更では、変更先が処理の軽いLightweight Render Pipeline/Simple Litになっていることが多く、これだと味気ない感じになってしまいます。これは単純にLightweight Render Pipeline/Simple Lit から Lightweight Render Pipeline/Lit にshaderを変えるだけではっきりとした見た目になります。
bandicam 2019-09-20 17-59-58-364.jpg

開発、執筆にあたり、下記のサイト様を参考、引用させていただきました。

  1. speedtree-The State of the SpeedTree/Unity HDRP Pipeline
9
9
0

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
9
9