我正在通过使用项目和教程来学习 Java、LibGDX、Box2D,我现在正在学习一个教程,我想提出一个关于 render() 循环和 create() 方法的问题。
所以总是先调用 create(),然后调用 render()。如果我正在创建一堆实例,例如:
public class Game implements ApplicationListener {
World world;
Box2DDebugRenderer debugRenderer;
OrthographicCamera cam;
BodyDef bodyDef;
CircleShape circle;
FixtureDef fixtureDef;
我应该在这里使用new
构造函数吗?还是我应该在 create() 方法中这样做?
@Override
public void create() {
world = new World(new Vector2(0, -10), true);
debugRenderer = new Box2DDebugRenderer();
cam = new OrthographicCamera(800 / 2, 480 /2);
bodyDef = new BodyDef();
bodyDef.type = BodyType.DynamicBody;
bodyDef.position.set(100, 300);
circle = new CircleShape();
circle.setRadius(6f);
fixtureDef = new FixtureDef();
或者我应该把它放在 render() 方法中吗?
我有点不确定哪个是最好的,在渲染中这样做似乎有点笨拙,这不会导致游戏在每次循环迭代时不断创建新实例导致性能问题吗?
哦,我想问一下,当我定义对象的属性时,例如 circle.setRadius(),create 方法会是正确的地方吗?