本期代码:
//初始化debug渲染器
ren2 = new Box2DDebugRenderer();
batch = new SpriteBatch();
//Tiled地图初始化
map = new TmxMapLoader().load("1.tmx");
//Tiled地图渲染器初始化
ren = new OrthogonalTiledMapRenderer(map , 1 / ppm);
//相机
cam = new OrthographicCamera(Gdx.graphics.getWidth() / (ppm + 300), Gdx.graphics.getHeight() / (ppm + 300));
//Box2d世界
world = new World(new Vector2(0, -9.81f), true);
//初始化Bodydef和FixtureDef
BodyDef bdef = new BodyDef();
//BodyDef的类型选择静态(Tiled地图中的碰撞区域不能移动,模拟墙壁和地面的效果)
bdef.type = BodyDef.BodyType.StaticBody;
FixtureDef fdef = new FixtureDef();
//获取地图中所有层
MapLayers layers = map.getLayers();
//获取名称为'ground'的层(就是刚刚编辑的对象层)
MapLayer rectLayer = layers.get("ground");
//获取层内所有对象
MapObjects objects = rectLayer.getObjects();
//获取所有对象中的矩形对象
Array<RectangleMapObject> rmos = objects.getByType(RectangleMapObject.class);
//创建一个for循环,遍历层中的矩形对象
for (RectangleMapObject rmo : rmos)
{
Rectangle rect = rmo.getRectangle();
//定义一个多边形对象并初始化(