こちらで配布している「VRCで全てを容器に入った液体にするシェーダー」の使い方です。
こちらのシェーダーはワールドでしか使用できませんのでご注意ください
(アバター用は気力があれば来年作ります…)
仕組みについてはこちらで解説しています
アドカレついでの配布なのであまりサポートはしません。変えたい部分等あれば自由に改変してください
使い方
1. パッケージをインポートする
2. 液体シェーダーを使いたいオブジェクトに「VRCBottleLiquidComponent」をアタッチする(※オブジェクト自体にRendererがついている必要があります)
3. コンポーネントをつけると自動的にマテリアルが変わります。マテリアルスロットが複数あるオブジェクトの場合はシェーダーを適応したいマテリアル全てに「UsagiMeteor/BottleLiquidShader」のマテリアルを指定してください
4. 反射マップを指定する
指定しない場合は現在いる場所のReflectionProbのCubemapが使用されます
5. あとはコンポーネントの値を調整すればokです(調整内容は実行中にしか反映されません)
メッシュを変えた場合はボタンを押してAABBを再計算してください。
(AABBとは書いていますが自由に調整できます。これら頂点のうち最も高いものと低いものの位置から波の位置が計算されます。)
「AABBを可視化」のチェックを外すことで点を非表示にできます
パラメーターめっちゃ多くて申し訳ないです。
基本的には
・ オブジェクトが小さければ「波の細かさの最大値」を大きくし、「波の高さの最大値」を小さくする
・動かした後の波の動きを長引かせたい場合は減衰率を大きくする
でいける気がします…
各パラメーターは他のUdonSharpからプロパティを通して変更できます