타일 기반 2D 게임을 개발 중입니다. 필자는 skybackground, landbackground, town, UI 등의 구성 요소로 구성 요소를 분할하여 각 구성 요소가 그 그림을 처리하도록했습니다. 모든 그리기 호출을 호출하기 전에 기본값이 I spritebatch.Begin()
이므로 모든 것을 1 일괄 처리로 그립니다.텍스처를 타일링하는보다 경제적 인 방법은 무엇입니까?
토지를 그리기 위해 필자가 채울 때까지 반복적으로 토지의 텍스쳐를 사각형으로 그린다. 그러나 spriteBatch
linear wrap
이라는 모드가 있습니다. 단점은 내 구성 요소를 각 구성 요소로 여러 번 내 spritebatch.begin()
번으로 분할하여 디자인을 변경해야한다는 것입니다.
내 질문은 수동으로 텍스처를 바둑판 식으로 배열하거나 하위 구성 요소간에 begin()
및 end()
을 분할하는 것이 더 경제적/경제적 인 것입니다.
spriteBatch.Begin()
을 하나 나눌 필요가있는 다른 문제가 있습니다. 그렇다면 얼마나 중요합니까? spriteBatch.Begin()
? 또는 10 더? 또는 100 이상? begins()
을 추가하는 것에 대해 어떤 규모로 시작해야 할지를 알고 싶습니다.
질문을 3 번 읽었습니다. 1 개 이상의 spritebatch가 어떻게 도움이되는지 이해할 수 없습니다. xna에서는 무승부에서 나온 모든 것을 그려야합니다. 이 결과는 필요할 때 항상 배치를 참조로 보낼 수 있기 때문에 왜 하나 이상의 코드를 갖고 싶습니까? 일부 코드는 begin/spritebatches의 양을 1로 줄이는 데 도움이됩니다. – Olle89