Unityのシェーダーグラフを使用して、マテリアルの独自のシェーダーを作成することを検討しましたか?テクスチャ/ UVにワールド空間の位置を使用することで、希望どおりの結果が得られる場合があります。私はそれを説明するのが苦手で、シェーダーは得意ではありませんが、退屈で実験専用のプロジェクトで遊んでいたため、ウォーターシェーダーとして簡単な例を模擬しました。
この写真は、重なり合う平面が同じマテリアルを共有しているように見えることを示しています
これはシェーダーグラフで作った例です
私の例から理解したシェーダーノードの簡単な要約
- これらのノードは、ワールドスペースでx値とz値を取得し、それらをベクトル2に結合しています。
- このノードはxz値を使用しており、3のノードに基づいてオフセットしています
- TimeとVector 2 を使用して、UVオフセットをスクロールします。波の効果を与える
- 通常のタイリング値に基づいて値を乗算します。
- 4および法線マップからUVデータを取得します
- 通常の強度。効果の強さを変える
- 1から6までのすべてのデータと水のテクスチャを取得して、アルベドに送り込みます 8で
- これらの各プロパティがマテリアルにどのように影響するかをシェーダーが変更するために、すべてのノードがここにフィードされます。
私が言った、または行ったことが間違っている、または改善できると誰かが思った場合は、遠慮なく訂正してください。私はまだ学んでおり、正しい方向への微調整は常に歓迎されています。サンプルシーンをGoogleドライブにアップロードしました。帰属が必要かどうかは不明ですが、使用されている水資産は無料で、gametextures.comから提供されています