2013-10-31 1 views
0

현재 AndEngine GLES2 센터를 사용하여 장면을 설정하고 있는데 다음과 같은 의심이 있습니다. 배경과 배치 된이 새로운 버전을 배경으로 배치했습니다. AndEngine의 스프라이트 위치는 왼쪽 하단에 상대적이어야합니다.AndEngine - 장면에 물체를 배치하는 위치를 알아 보는 방법

그러나 개체를 position (x, y)에 배치하고 Sprite와 같은 편집기에서 해당 위치를보고 Sprite 인수를 사용하면 편집기에 나타나는 것과 같은 위치에 나타나지 않습니다. 물체를 놓을 정확한 위치를 아는 방법?

감사합니다.

+0

맞습니다. 앵커 센터는 왼쪽 하단의 좌표를 사용하지만, Fireworks의 위치는 전화 해상도와 조금 다릅니다. Fireworks의 캔버스 크기와 엔짂 – kabuto178

+0

을 확인하고 싶은데 특정 위치에 물체를 배치하는 방법에 대한 권장 사항이 있습니까? 그 위치를 추측하는 방법? 다른 테스트를하고 있습니까? – pinker

+1

원래 GLES2 분기를 사용하고 위치를 지정하기 위해 0,0부터 시작하여 원하는 위치로 이동할 때까지 이전 좌표를 참조 점으로 사용할 수 있습니다. 나는 코드에서 내 위치를 FireWorks와 같은 다른 편집기를 사용하지 않습니다. – kabuto178

답변

6

모든 스프라이트 (실제로 엔티티)에는 고정 점이 있습니다. Sprite를 Scene 위치 (x, y)에 배치하면 Sprite의 앵커 포인트를 좌표 (x, y)에 고정한다는 의미입니다.

AndEngine GLES2 및 GLES2-AC 분기에서는 고정 점과 좌표계가 서로 다릅니다.

   | GLES2     | GLES2-AnchorCenter 
-------------+---------------------------+------------------------------------- 
anchor point | At corner of entity.  | As branch name, at center of entity. 
      | (left-top corner)   | (vertically and horizontally) 
      |       | 
      | anchor point   | 
      | |      | 
      | V      |  +-------------+ 
      | X-------------+   |  |    | 
      | |    |   |  |  X <-------- anchor point 
      | | I am Entity |   |  | I am Entity | 
      | |    |   |  +-------------+ 
      | +-------------+   | 
      |       | 
-------------+---------------------------+------------------------------------- 
coordinates | Origin at left-top.  | Origin at left-bottom 
      | move right -> x increase, | move right -> x increase, 
      | move up -> y decrease. | move up -> y increase. 

참고 : 앵커 포인트는 엔터티가 회전하고, 비뚤어지고 크기가있을 때도 사용됩니다. 따라서 GLES2 분기에서 엔티티가 회전 할 때 엔티티가 움직이는 것으로 사람들은 종종 생각하지만 앵커 포인트는 항상 좌표 (x, y)에 고정됩니다.