最近,我一直在学习一个教程,对于游戏开发来说,这是非常新鲜的。在Vector2类中有一个名为scl的LibGdx方法。这是我的代码片段。我的问题是。它是做什么的。如果你能做一个详细的解释。请加一些。
public void update(float dt){
if(position.y > 0)
velocity.add(0, GRAVITY);
velocity.scl(dt);
Gdx.app.log("scl dt 1", Float.toString(velocity.y));
position.add(0, velocity.y, 0);
if(position.y < 0)
position.y = 0;
velocity.scl(1/dt);
}发布于 2017-02-28 18:29:34
scl()是Vector2类的重载方法。
1. public Vector2 scl(float scalar)用标量量缩放你的向量,然后返回。
2. public Vector2 scl(float x,float y)将向量乘以标量并返回自身。
3. public Vector2 scl(Vector2 v)用另一个向量缩放你的向量,然后返回自己。
在你的代码上面,你在按dt单位缩放你的向量。
dt是什么?
dt是从上一次调用开始到当前调用render()开始之间的时间。它只需要当前时间并从中减去前一次。此值的单位是秒。
https://stackoverflow.com/questions/42514836
复制相似问题