精灵方向移动问题[math.floor]
local xd = math.cos(math.rad(self._direction));--self._direction方向角度
local yd = math.sin(math.rad(self._direction));
--math.floor 罪魁禍首啊
-- local posX = math.floor(self:getPositionX() + self._initData.cfg.speed * delay_ * xd);
-- local posY = math.floor(self:getPositionY() + self._initData.cfg.speed * delay_ * yd);
local posX = self:getPositionX() + self._initData.cfg.speed * delay_ * xd;
local posY = self:getPositionY() + self._initData.cfg.speed * delay_ * yd;
?
如果此刻speed為100,self._direction為30度,那就是X軸橫向移動了,因為按照這個速度60幀的幀率每次X軸移動都大于1,Y軸移動小于1所以Y永遠都沒變。
改變其他值有可能不動,有可能縱向移動。自個琢磨。。。
?
轉載于:https://www.cnblogs.com/qianwang/p/6251690.html
總結
以上是生活随笔為你收集整理的精灵方向移动问题[math.floor]的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: svn中“clean up”死循环问题解
- 下一篇: Js 变量声明提升和函数声明提升