2012-05-06 2 views
0

현재 게임과 같은 최종 판타지 작업 중이며 전 세계지도에서 전투로 전환 할 때 효과가있는 지점에 있습니다. 회전하는 동안 확대/축소 효과를 원했지만 SpriteBatch.Begin으로 전달되는 변형 행렬에 애니메이션을 적용하는 방법을 생각해 보았습니다.하지만 문제는 회전 할 때 회전 원점이 전체 장면의 왼쪽 상단에있는 것입니다. '줌 인'이 중앙에 위치합니다. SpriteBatch.Draw에 회전 원점을 지정할 수 있다는 것을 알았지 만 스프라이트마다 설정하고 전체 장면을 회전시키고 싶습니다.2 차원 장면 전체 회전 및 확대

답변

1

당신이 찾고있는 변환은 이것이다 : 나는 다르게 그들이에 있던 위치에 따라 반응 된 하나 개 이상의 번역을 할 수 몰랐어요, 찾고 정확히 무엇

Matrix Transform = Matrix.CreateTranslation(-Position) 
    * Matrix.CreateScale(scale) 
    * Matrix.CreateRotationZ(angle) 
    * Matrix.CreateTranslation(GraphisDevice.Viewport.Bounds.Center); 
+0

방정식, 감사합니다! – vocero