我是使用LibGDX库的初学者。最近我在scl(float dt)
课程中偶然发现了Vector2
方法。我的问题是,它用于什么?我知道float dt
代表增量时间,即现在调用render()
方法到最后一次调用render()
方法之间的时差。为什么我需要使用scl(float dt)
方法,假设使屏幕上的对象掉落而不是直接更改y轴?
答案 0 :(得分:1)
首先,LibGDX是一个框架,而不是一个库...它更像是一组可用于游戏开发和其他东西的库。当你将2D矢量乘以标量时,你只需乘以它" s" x"价值和它" y"该标量的值。例如,如果< 4,2>是一个向量,你将它乘以标量3.得到的向量将是< 12,6>。 即使方法说:
scl(float dt)
这并不意味着您只能将它乘以渲染增量时间。您可以将任何向量乘以您想要的任何值。而对于最后一个问题。 你为什么要用它?嗯,这实际上取决于你要修复的确切问题或你正在开发的游戏。我能想到的一个可能的原因是你的速度矢量" (因为Vector2可以用于速度,位置等)正在遭受标量加速"因此,每个帧都会将此速度乘以标量,并且每次对象都会更快。这是一个需要这种方法的人LibGDX Multiply Vector2 with float value。所以,你知道,如果你需要它,你就会知道它。
希望这会有所帮助。