0
我正在用javascript写一个小游戏。我试图移动一个角色,好像从上面往下看。自从我做了一些基本的数学计算以来,我已经有一段时间了,我无法让自己的某些定位正常工作。我想以一个给定的角度移动一些步骤。该输入由程序根据用户按键和来自我的模型的事件生成。更改2D平面上的位置
我有以下代码
var xPos = 0, yPos = 0, angle = 45, distance = 1;
var yDelta = Math.sin(angle * Math.PI/180) * distance,
xDelta = Math.sqrt(Math.pow(distance, 2) - Math.pow(yDelta, 2));
yPos += yDelta;
xPos += xDelta;
我的测试用例
- 45度取1个步骤向前预计(0.7071,0.7071),并且是(0.7071,0.7071)
- 在45度向后退1步(-0.7071,-0.7071),但是(0.7071,-0.2928)
我看不出我的移动算法有什么问题。据我所知,数学是正确的。我正在犯一个明显的错误吗?或者我可以采取更简单的方法?计算
你想做什么?你的游戏的目的是什么? – Sora
@sora我想移动一个角色,好像从上面往下看 –
你使用的是html5 canvas吗?你想在什么位置移动角色?你在使用用户输入吗? – Sora