【发布时间】:2013-11-05 05:54:14
【问题描述】:
我正在制作一个小游戏。这是一款2D游戏,主要特点是改变重力方向。我设法改变了方向,所以现在玩家“下降”到重力的方向。但现在我希望玩家在例如“稳定”。 2 秒。我实现了基本旋转,但这会立即改变播放器的角度,我希望它能够将步骤“切片”成更小的部分,这样旋转会“更平滑”。例如。我想以从增量时间计算的小步长从 180° 更改为 0°,这与我输入的数字有关,这将是“持续时间”
我对弧度不太熟悉,所以我不能使用它。
重力方向可以通过world.gravitydir变量设置,可以是1,2,3,4。 1 是正常重力“下” 2,4 是“左”和“右”,3 是“上” 我还有一些“开发命令”可以使用箭头键手动更改重力方向
这是我尝试将播放器从颠倒平稳地旋转到正常状态。
function rotatePlayer(dt)
deg1 = player.rot -- player's current rotation
step = 0
deg2 = math.rad(0) -- desired rotation
step = (math.deg(deg1) - math.deg(deg2))*dt
for i = deg1, deg2 do
player.rot = player.rot - math.rad(step)
step = step - dt
end
end
playerrotation函数在gravity.lua,dev控制器,播放器绘制函数在player.lua
来源:http://www.mediafire.com/download/3xto995yz638n0n/notitle.love
【问题讨论】:
-
你有什么问题?
-
问题是:怎么做? >
-
我很清楚这一点,您的播放器正在即时旋转,您希望它在特定时间范围内发生吗?
-
是的,确切地说,是为了平滑地旋转播放器。
标签: image lua rotation smooth love2d