我有一个 Sprite,它是一个球,根据我的 FixedStepPhysicsWorld 选项,它正在正确下落。但我想要一个矢量跟随这个球,因为它正在下降。所以我决定重写 onManagedUpdate sprite 的方法。
经过大量测试,我只绘制了 1 个向量,然后我意识到 pSecondsElapsed 并没有增加。
这是我的代码:
@Override
public void onPopulateScene(Scene pScene,
OnPopulateSceneCallback pOnPopulateSceneCallback) throws Exception {
sPlayer= new Sprite(200,0, playerTextureRegion, this.mEngine.getVertexBufferObjectManager()){
@Override
protected void onManagedUpdate(float pSecondsElapsed) {
super.onManagedUpdate(pSecondsElapsed);
Log.d("<<<<<<<<<<<,>>>>>>>>>"+pSecondsElapsed+","");
}
输出如下:
11-07 21:14:32.242: D/<<<<<<<<<<<,>>>>>>>>0.02 (23720): [MainActivity.java:359:onManagedUpdate()]
11-07 21:14:32.257: D/<<<<<<<<<<<,>>>>>>>>0.02 (23720): [MainActivity.java:359:onManagedUpdate()]
11-07 21:14:32.281: D/<<<<<<<<<<<,>>>>>>>>0.02 (23720): [MainActivity.java:359:onManagedUpdate()]
我的引擎就像:
@Override
public Engine onCreateEngine(final EngineOptions pEngineOptions) {
return new FixedStepEngine(pEngineOptions, 50);
}
问题:1 - 为什么 pSecondsElapsed 没有改变?2 - 我想为这个球的每个位置绘制矢量。每次调用此方法(onManagedUpdate)时,我是否应该分离并附加一个新行?