为什么等待任务.延迟(10);是否停止在统一Web GL中执行



我在unity C#中使用await Task.Delay(10);进行延迟。在构建并以Web GL格式运行后。执行停止在有延迟的行。当我删除延迟时,它会执行。

while (XAxiscurrentXpos <= -izvalue) 
{ 
await Task.Delay(10); 
XAxiscurrentXpos += 0.001f; 
Vector3 posx = new Vector3(XAxiscurrentXpos, XAxisposition.y, XAxisposition.z); 
XAxis.transform.localPosition = posx; 
}

我有使用UniTask的解决方案。UniTask链接在这里

所以现在知道你实际上在做什么,而不是你的任务,你更想使用例如

public class MoveObject : MonoBehaviour
{
public Transform XAxis;
public float desiredUnitsPerSecond;
// This is called once a frame by Unity
private void Update()
{
if(XAxis.localPosition.x <= -izvalue)
{ 
XAxis.localPosition += Vector3.right * desiredUnitsPerSecond * Time.deltaTime;
}
}
}

只要对象在CCD_ 3的左侧,它就会以CCD_。

最新更新