Unity - A计划(永久有效期) 扫二维码继续学习 二维码时效为半小时

(207评价)
优惠后 ¥1899.00优惠前 ¥2499.00 双十一全年最大力度限时优惠
1对1 答疑即时回复7天无理由退款30天价保提问必答

服务保障

1对1 答疑

提供专属的一对一在线答疑,快速答疑解惑。

即时回复

及时响应学习咨询,帮助解决问题。

7天无理由退款

购买后7天内可申请无理由退款。

30天价保

购买后30天内如遇降价,可申请价保。

提问必答

对于提问做到有问必答,帮您扫清学习过程中的种种障碍

2d 人物移动卡顿问题?
hzllcl发起了问答2019-06-26
1
回复
241
浏览

 if (isMove)
        {
            //Move();
            deltaVec = dir * moveSpeed * Time.deltaTime;
            playerRgd.position += deltaVec;
            deltaPlayerVec = playerRgd.position;
        }
        else
        {
            Vector2 curVec = transform.position;
            if (isArrived==false)
            {
                playerRgd.position = Vector2.MoveTowards(curVec, deltaNewVec, Time.deltaTime* moveSpeed);
                Debug.Log("distance:" + Vector2.Distance(playerRgd.position, deltaNewVec));
                if (Vector2.Distance(playerRgd.position, deltaNewVec)<0.01f)
                {
                    playerRgd.position = deltaNewVec;
                    isArrived = true;
                }
            }
        }

当鼠标按下ismove为True的时候进行方向移动,抬起鼠标停止移动,move为false时进行了第二段移动到格子的中间,计算到格子中间的代码就不上传,偶尔移动的时候,会卡顿一下,几率还比较高 。请问老师知道啥原因么

所有回复
发表回复
你还没有登录,请先 登录或 注册!