ワールド座標でテクスチャの合成

ワールド座標でテクスチャの合成

 以前、Textureを合成するShaderであるテクスチャに他のテクスチャを合成する方法を掲載しました。この時は、uv座標を使用していましたが、今回はワールド座標を用いてテクスチャの合成を行います。

shader

 ここに掲載しているshaderのuv座標をワールド座標(x,z)へ変更したshaderです。このshaderにおいて_PaintPositionのy成分をz座標として使用しています。

実行結果

 ワールド座標で計算することで、同じマテリアルを持つオブジェクトが複数存在するとき、uv座標の場合はオブジェクトごとにテクスチャが合成されるのに対し、ワールド座標の場合は指定した場所のみテクスチャが合成されるようになります。

ただし、平面を傾け(x=70°)、y方向から見ると

このように合成したテクスチャは伸びてしまいます。