質問: ### 前提・実現したいこと 一枚のメッシュに、複数のテクスチャを描画したい ### 該当のソースコード ``` void Update() { foreach(Material item in material) { Graphics.DrawMesh(mesh, Vector3.zero, Quaternion.identity, item, 0); } } ``` ### 試したこと スクリプトが長すぎて一部分しか記載出来ないのですが、一枚のメッシュに複数のテクスチャを描画しようとしています。 描画順をシェーダーで変更したマテリアルをforeachで回していますが、メッシュを二回分描画しているため、FPSが格段に落ちてしまいます。 一つ目のマテリアルでは地面を、二つ目では草を描画しています。 それに加え、一枚のメッシュには、一枚のテクスチャしか描画出来ないのでしょうか? ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/2dd0183287789d55cb2e575ab4679f20.png) 本当は草のテクスチャの座標をばらつかせたいのですが、どうやっても同じ場所にしか描画出来ません。 理想は以下のようなものです。 ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/de407cd6fd2c8af94d8e24ccbf89258b.png) 一枚目は一つの座標に対して、一つの草しかありませんが、二枚目はばらついているように見えます。 一枚のメッシュに、複数のテクスチャを描画する方法、もしくはテクスチャの座標を二枚目の画像のように変更する方法があれば教えてもらいたいです。自分が書いたコードを詳しく載せきれませんでしたが、回答お願いします。
回答: 複数のテクスチャを合成されてはいかがでしょうか? 下記の記事で詳しく説明されておりますが、テクスチャを合成するシェーダーを作成すればFPSを落とさずに1枚のメッシュに複数のテクスチャを描画できるかと思います。