2014-04-21 4 views
0

현재 jMonkey beginner tutorials, 특히 Hello Collision을 통해 작업 중이며 튜토리얼에서 권장되지 않는 클래스 인 CharacterControl을 실행했습니다. 가장 자연스러운 후계자 인 것 같았습니다 BetterCharacterControl. 튜토리얼 코드를 수정하여 컴파일하고 실행할 수있게했지만 지정된 키 바인딩을 사용할 때 "문자"즉 첫 번째 사람의 관점이 움직이지 않는 것처럼 보입니다. 나는이 문제가 내가 플레이어를 올바르게 설정하지 않는다고 확신한다. 여기에 튜토리얼 코드의 이전 라인 .. 여기더 이상 사용되지 않는 jMonkey 메소드 대체

CollisionShape sceneShape = 
     CollisionShapeFactory.createMeshShape((Node) sceneModel); 
landscape = new RigidBodyControl(sceneShape, 0); 
sceneModel.addControl(landscape); 

CapsuleCollisionShape capsuleShape = new CapsuleCollisionShape(1.5f, 6f, 1); 
player = new CharacterControl(capsuleShape, 0.05f); 
player.setJumpSpeed(20); 
player.setFallSpeed(30); 
player.setGravity(30); 
player.setPhysicsLocation(new Vector3f(0, 10, 0)); 

와 난의 전체 클래스 이름을 추가했다 어떤 이유 ..

com.jme3.bullet.collision.shapes.CollisionShape sceneShape = 
    CollisionShapeFactory.createMeshShape((Node) sceneModel); 
landscape = new RigidBodyControl(sceneShape, 0); 

player = new BetterCharacterControl(1.5f,6f,1); 
player.setJumpForce(new Vector3f(5f,20f,0f)); 
player.setGravity(new Vector3f(0f,10f,0f)); 
player.warp(new Vector3f(0,30,0)); 

1) 내가 그것을 변경 무엇인가이다 CollisionShape 비록 내가 파일에서 이전에 그것을 가져올지라도 누군가가 왜 거대하지만 큰 문제가 아닌지를 안다면

2) 내가 볼 수있는 가장 유사한 방법을 찾으려고 노력했지만, 비록 다른 이름을 사용하는 경우에도 비슷한 이름을 사용합니다. 나는 설명서를 보았지만 각 방법 등이 실제로 사용하는 방법을 설명하는 한 꽤 희박합니다.

3) 코드가 변경된 유일한 곳은 업데이트 루프입니다. 난이 변경 .. 이에

cam.setLocation(player.getPhysicsLocation()); 

... 여전히 서 주위 패닝 할 때 문제를 야기 것으로 보인다 나던

cam.setLocation(player.getViewDirection()); 

이 카메라는 여전히이어야 (정상 움직인다. 같이 I 내가 다소 늦게 응답에 미리 감사

답변

0

죄송합니다 ... 사람이 밤은 너무 복잡 확인 jMonkey 메신저 경험이있는 경우

) 전혀 움직일 수 있었다 havent 한했다 (2 개월 ...),

PhysicsSpace에 BetterCharacterControl을 추가하고 있습니까? 그것은 당신이 아니라고 생각합니다. 물리 공간에 없다면 변경 사항이 적용되지 않으므로 움직임이 실제로 움직이지 않을 것입니다.

시도해보세요. 당신이 그것을 고쳐주지 않았거나 이미 포기했다고 가정 할 때?