Kevin Bryan
Kevin Bryan

Reputation: 1858

How to create infinite Platform with Box2d?

I'm making a side scrolling game and I wan't to know how can I create an infinite terrain, do I need to use a static body that keeps on increasing its width? Also since its an infinite world, is it a good idea to just create a body to be used as an obstacle and then remove it when not in range?

 public Body createPlatform(){
        Body body;
        BodyDef def = new BodyDef();
        def.type = BodyDef.BodyType.StaticBody;
        def.fixedRotation = true;
        def.position.set(0.6f, 1.6f);
        body = world.createBody(def);

        PolygonShape shape = new PolygonShape(); 
        shape.setAsBox(2f, 1.5f);//have no Idea how to increase width infinitely or should I even be using a Body as ground.

        FixtureDef fDef = new FixtureDef();
        fDef.shape = shape;
        fDef.density = 1f;
        body.createFixture(fDef);
        shape.dispose();
        return(body);
    }

Also I'm using Libgdx library and java of course.

Upvotes: 2

Views: 690

Answers (1)

hacksoi
hacksoi

Reputation: 1397

It's best to split the world into chunks: once the player exits one chunk, load in one or more. You do not need to have the chunks pre-loaded; you load them in on the fly depending on the player's location.

Upvotes: 2

Related Questions