我目前正在以团结的方式开展3D网球比赛。当用户击球时,比如x = 0,y = 5,z = 0,速度在某个位置,比如说z = 10,到达z = 10后球x和y坐标是什么?
答案 0 :(得分:0)
要获得球的速度,你必须使用球的RigidBody。
如果您的脚本作为球的一个组件附加,您可以通过rigidbody.velocity.magnitude
访问它。
答案 1 :(得分:0)
虽然Heilo的方法可以完全完成,但我强调了获得直接速度测量的想法,例如:距离/时间,时间是Update()方法中更新期间的帧。
实际上这很简单......
只需获得两个更新函数之间的距离,如下所示:
var previousPosition : Vector3;
function Update() {
//Get the difference/distance between the previous position and the current position
var velocity = Vector3.Distance(previousPosition, transform.position);
}
因为我在单帧上执行此操作,所以无需计算额外的数学来获得速度。但是,如果你想超过秒,你需要获得游戏的FPS并用它做一些数学运算.. 所以我建议除非你想使用这个直接路线,否则使用Heilo建议的内容。