在我的
libgdx
renderer
:
@Override
public void render() {
if (mUpdate) {
update();
}
.
.
.
}
这个
update
render
.
create
:
Gdx.graphics.setContinuousRendering(false);
我放火了
mUpdate = true
public void invalidate(boolean update) {
mUpdate = update;
Gdx.graphics.requestRendering();
}
现在的问题是
invalidate(false)
可能由非用户操作隐式调用,而非用户操作又可能设置
mUpdate = false
. 这会导致
更新
requestRendering
).
我最好的解决办法是什么?我应该喝点什么吗
AtomicInteger
更新
总是在我的生活中被召唤
提供
public void invalidate(boolean update) {
if (update) {
mUpdateCounter.getAndIncrement();
}
Gdx.graphics.requestRendering();
}
然后
@Override
public void render() {
if (mUpdateCounter.get() > 0) {
update();
mUpdateCounter.getAndDecrement();
}
.
.
.
}
或者是否可以传递实例信息(
mUpdate
)每
渲染器