我一直在尝试在 Unity 中使用四边形来显示纹理来制作无限滚动的 2D 背景。我的想法是根据玩家的位置改变四边形的偏移。由于某种原因,当我更改偏移量时,我的图像无法正确重复,并且一旦达到偏移量 2,图像就会完全消失。
纹理上 3 个不同 x 偏移值的图像
如果有人知道如何解决这个问题,如果您能回复我,我将不胜感激。
选择原始纹理而不是游戏对象。
1。改变纹理类型 to Texture.
2。改变环绕模式 to Repeat.
3。单击“应用”。完毕!
最新版本的 Unity 纹理菜单已更改。见下图:
现在要根据脚本对纹理进行动画处理,
1。创建一个四边形GameObject -> 3D Object ->Quad
。将四边形缩放到您想要的大小
2。创建一盏灯。GameObject->Light->Directional Light
。您可以将光强度调整为您喜欢的任何强度。
3。将纹理/精灵拖动到场景视图中的四边形。
现在为您的脚本:
public GameObject quadGameObject;
private Renderer quadRenderer;
float scrollSpeed = 0.5f;
void Start()
{
quadRenderer = quadGameObject.GetComponent<Renderer>();
}
void Update()
{
Vector2 textureOffset = new Vector2(Time.time*scrollSpeed,0);
quadRenderer.material.mainTextureOffset = textureOffset;
}
对于 2D,您还可以使用Plane or Quad来自游戏对象--->3D 对象菜单和上面的代码应该可以正常工作。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)