[英]Collision Detection with Alpha in Box2D for AndEngine
我正在用Andengine(GLES 2)創建我的第一個游戲,並將Box2D用於物理。
碰撞檢測有效,但似乎沒有考慮png文件上的alpha值(我認為這是發生了什么),因為碰撞發生在兩個精靈實際接觸之前。 我並不需要碰撞就可以做到像素完美而又准確。
這就是我設置碰撞檢測的方式:
final CharacterSprite characterSprite = new CharacterSprite(CAMERA_WIDTH/2, CAMERA_HEIGHT/2, this.mCharacterTextureRegion, this.getVertexBufferObjectManager());
mPhysicsWorld = new FixedStepPhysicsWorld(60, new Vector2(0, 0), false);
scene.registerUpdateHandler(mPhysicsWorld);
playerBody = PhysicsFactory.createBoxBody(mPhysicsWorld, characterSprite, BodyType.DynamicBody, PhysicsFactory.createFixtureDef(0, 0, 0));
playerBody.setUserData("player");
characterSprite.setBody(playerBody);
mPhysicsWorld.registerPhysicsConnector(new PhysicsConnector(characterSprite, playerBody, true, true));
mPhysicsWorld.setContactListener(createContactListener());
attachSprites(scene);
謝謝
那么,請使用除盒子以外的其他形狀(最好是圓形)或使用自定義大小的盒子,該盒子不會一直圍繞您的精靈。 如果您想獲得更高的精度,可以使用多邊形甚至多個多邊形。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.