トマシープが学ぶ

Unity/VR/AR/デザイン好きのミーハー 記事内容は自分用のメモです

UnityでLive2Dキャラの影を地面に落としたい

Live2DとUnity

2年前ぐらいに触っていこう全く触れてないので久しぶりにさわります。

こんどfungusというノベルゲームみたいな会話アセットを使ってunity1weekで何か作りたいのでそれで使えるとうれしい。使えない気がするけど

過去

sdkを入れてサンプルを動かしました

bibinbaleo.hatenablog.com

トマシープちゃんにアニメーション付けたりもした

bibinbaleo.hatenablog.com

 見返したらかわいい

Animated GIFs - Find & Share on GIPHY

 ゲームを作ったりもした

bibinbaleo.hatenablog.com

SDK

sdkをダウンロードします

www.live2d.com

CubismSdkForUnity-4-beta.1.unitypackageでした。

docs.live2d.com

サンプルは昔触った時と変わってないですね。

f:id:bibinbaleo:20191004223529p:plain

シーンビューで見るとキャラのパーツの描画順がおかしい

docs.live2d.com

Cubism Render ControllerのSortingのack TO Front Orderでシーンビューでもいい感じ

f:id:bibinbaleo:20191004214709p:plain

ゲームビューでも変なときはカメラ側を変えてもいいらしい

f:id:bibinbaleo:20191004223558p:plain

影落としたい

地面に影を落としたい

パーツってspriteとかじゃないでMeshなんですね

f:id:bibinbaleo:20191004224054p:plain

とりあえず全部CastShadowsにします。

デフォルトのシェーダーはLive2DCubism/Unlitという独自のシェーダー

f:id:bibinbaleo:20191004224149p:plain

いろいろ試してとりあえずStandardシェーダーのFadeモードにしたら、見た目をある程度保ったまま、影を落とせた。ただ腕が一本表示されない。

f:id:bibinbaleo:20191004223601p:plain

あとSortingの順番はBackToFrontOrderにしないと変になる

f:id:bibinbaleo:20191004224425p:plain

実行しても腕が表示されない~~

f:id:bibinbaleo:20191004223607p:plain

Standardなので光も受ける

f:id:bibinbaleo:20191004225244p:plain

多分正攻法はLive2DUnlitシェーダーを書き換えて影を落とすようにするんだろうけど、ちょっとやったけどうまくできなかった。

styly.cc

cocoamix.jp

もしくはMtoonとかのUnlitだけど影を落とすシェーダーを使ってみるとかかな?ただ普通のunlit/Textureを使ったら変になった

最後に

シェーダーを雰囲気で扱うこと5年がすぎた。(誇張表現)

いつか私もシェーダーを勉強する日が来るんだろうか