当前位置:   article > 正文

【UnityTileMap缝隙问题】完美解决方案_unity tilemap 缝隙

unity tilemap 缝隙

Unity中,TileMap缝隙问题网上解决方案五花八门,这里就是问题的终点。

问题:Tilemap绘制时可能会出现缝隙。以下是解决方案:

1.修改材质属性(推荐):

①材质设置:

创建一个新的材质并将其Shader设置为Sprites/Default,同时启用"Pixel Snap"选项。然后,在Tilemap Renderer组件上使用新创建的材质。

②图块设置:

在Inspector面板中,找到"Texture Type"并将其设置为"Sprite (2D and UI)"(如果尚未设置)。
向下滚动至"Advanced"部分,并展开它。“Texture"部分将"Wrap Mode"设置为"Clamp”。
PS:像素图块可以将FilterMode改为Point (no filter)。

2.使用Custom Shader:

可以创建一个自定义Shader来处理这个问题。确保在Shader中包含以下代码行:

o.vertex = UnityObjectToClipPos(v.vertex);
o.uv = v.uv;
UNITY_APPLY_FOG(i.fogCoord, col);
fixed4 col = tex2D(_MainTex, v.uv - half2(0.5f / _MainTex_TexelSize.x, 0.5f / _MainTex_TexelSize.y));
return col;
  • 1
  • 2
  • 3
  • 4
  • 5

3.更改渲染器排序:

在Tilemap Renderer组件上更改"Sort Order"的设置,使所有连接的Tilemap正确排序。例如,如果您有多层Tilemap,则需要根据顺序设置不同的"Order in Layer"值。

4.使用额外边缘填充:

对于每个切片,添加一定宽度的额外透明像素(例如1个像素)作为边缘填充,以确保相邻的切片不会相互覆盖。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/134665
推荐阅读
相关标签
  

闽ICP备14008679号