저는 AndEngine을 처음 접했습니다.이게 게임 물리학으로 터치 이벤트를 사용하는 첫 번째 시도입니다. mybringback AndEngine 튜토리얼 시리즈를 따라이 코드 블록을 만들었습니다. 나는 땅에서 위아래로 단지 튀는 스프라이트를 만들었다. 내가하고 싶은 일은 터치 이벤트를 통합하여 사용자가 스프라이트를 집어 들고 (어디서나 배치 한 다음) 스프라이트를 땅에 떨어 뜨릴 수있게하는 것입니다.물리학에서 onAreaTouched 사용하기 - AndEngine
나는 위아래로 튀는 스프라이트가 있기 때문에 좋지만 터치 이벤트는 작동하지 않습니다. 나는 onArea에 대한 약간의 연구를했지만, 나는 아직도 개념의 일부를 이해하지 못하고 있다고 생각한다. 누군가 내가 뭘 잘못하고 있는지 말할 수 있다면 크게 감사 할 것입니다.
여기 내 onPopulateScene 인 제 1 모습에
@Override
public void onPopulateScene(Scene pScene,
OnPopulateSceneCallback pOnPopulateSceneCallback) throws Exception {
final Sprite sPlayer = new Sprite(CAMERA_WIDTH/2,CAMERA_HEIGHT/2,
playerTexureRegion, this.mEngine.getVertexBufferObjectManager()){
@Override
public boolean onAreaTouched(TouchEvent pSceneTouchEvent, float X, float Y)
{
//Not sure if I'm doing this right
if (pSceneTouchEvent.isActionUp())
{
this.setPosition(X, Y);
}else if(pSceneTouchEvent.isActionDown())
{
this.setPosition(X, Y);
}else if(pSceneTouchEvent.isActionMove())
{
this.setPosition(X, Y);
}
return true;
};
};
sPlayer.setRotation(45.0f);
final FixtureDef PLAYER_FIX = PhysicsFactory.createFixtureDef(10.0f,
1.0f, 0.0f);
Body body = PhysicsFactory.createCircleBody(physicsWorld, sPlayer,
BodyType.DynamicBody, PLAYER_FIX);
//Set touch Area here
this.scene.registerTouchArea(sPlayer);
this.scene.attachChild(sPlayer);
physicsWorld.registerPhysicsConnector(new PhysicsConnector(sPlayer,
body, true, false));
pOnPopulateSceneCallback.onPopulateSceneFinished();
}
감사합니다. 이것은 흥미로운 것 같습니다. Android에서는 간단한 터치 이벤트로 이미지를 움직일 수 있었고 AndEngine에서 같은 생각이라고 가정했습니다. 나는 그것이 완전히 다른 개념이라는 것을 몰랐다. – David