在我的游戏中,我想使用WASD键移动我的角色。我已经设置了一个类,该方法在玩家按下任何WASD键移动角色时更新。问题是它没有每帧更新角色的移动。每次我按下W键,然后让它去“传送”字符。这是我上课的课程:
//character speed
var movementSpeed;
//character rotation
var rotationSpeed;
//Handles the player's movement
var PlayerMovement = (function () {
//Constructor
function PlayerMovement() {
this.gameObject = null;
this.movementSpeed = 0;
this.rotationSpeed = 0;
}
PlayerMovement.prototype.onKeyReleased = function (key) {
switch(key)
{
case KeyType.W:
case KeyType.UpArrow:
console.log("Moving up");
this.gameObject.meshObject.position.z += movementSpeed * Tools.getDeltaTime;
break;
}
}
return PlayerMovement;
})();
我的问题是:我做错了什么?
答案 0 :(得分:0)
您正在使用onKeyReleased
参与此活动。这意味着在您实际释放密钥之前,它不会计算位置。您可能需要onKeyDown