所以,正如你在图片中看到的,我在一个矩形上重复了一个纹理(它的大小是40,10,60),但是它在每个脸上重复同样的时间,所以取决于脸的大小,纹理被拉伸。在图片中,您可以看到,在上面的脸,纹理重复正确,并保持其原来的大小,但在其他的脸,它是散乱的。有没有办法在不改变纹理大小的情况下重复纹理?谢谢你的答复。
编辑: c#中的这个脚本完全可以实现我想要的功能,但是有什么方法可以不使用脚本来完成它呢?
发布于 2021-10-23 07:53:34
不幸的是,您可能需要使用“Tiling”属性为每个不同的尺度创建一个具有相同图像的新材料:

*编辑#1
X和y的平铺值需要与平面的比例成比例,否则它就会拉伸。
发布于 2021-10-23 14:17:23
如果网格的大小是静态的,你可以在一个3d程序中改变它的UVs。你甚至可以通过脚本改变超视距。
另一种选择是查看worldspace (三平面)着色器。这些纹理基于世界位置而不是顶点的局部位置。
如果您正在使用着色图,请查看三平面节点。https://docs.unity3d.com/Packages/com.unity.shadergraph@6.9/manual/Triplanar-Node.html
https://stackoverflow.com/questions/69682515
复制相似问题