Tom*_*myE 4 c# textures tiling offset unity-game-engine
我一直在尝试在 Unity 中使用四边形来显示纹理来制作无限滚动的 2D 背景。我的想法是根据玩家的位置改变四边形的偏移。由于某种原因,当我更改偏移量时,我的图像无法正确重复,并且一旦达到偏移量 2,图像就会完全消失。
如果有人知道如何解决这个问题,如果您能回复我,我将不胜感激。
选择原始纹理而不是游戏对象。
1 . 将纹理类型更改为纹理。
2 . 将环绕模式更改为重复。
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;
}
Run Code Online (Sandbox Code Playgroud)
对于 2D,您还可以使用游戏对象---> 3D 对象菜单中的平面或四边形,上面的代码应该可以正常工作。
| 归档时间: |
|
| 查看次数: |
17291 次 |
| 最近记录: |