2009-12-01 9 views
1

여러 개의 스프라이트 텍스처가 포함 된 Texture2D를로드 중입니다. 개별 Texture2D 객체에 저장하기 위해 초기 텍스처를로드 할 때 개별 텍스처를 꺼내고 싶습니다.하지만이 작업을 수행 할 수있는 방법을 찾을 수없는 것처럼 보입니다. SpriteBatch.Draw는 begin, end 블록 오른쪽에서만 호출해야한다고 생각합니다.xna의 텍스처를 다른 텍스처로 복사

감사합니다.

+0

당신이 마지막 부분에 대한 맞다 : 여기

는 당신을 도움이 될 훌륭한 튜토리얼 비디오 시리즈입니다. 시작과 끝 사이에서 그리기를 호출해야합니다. – mauris

답변

1

여러 스프라이트 텍스처가 포함 된 Texture2D를로드 중입니다. 나는 별도의 Texture2D 객체로 저장소에 초기 텍스처를로드 할 때 에서 개별 텍스처를 끌어 을하고 싶습니다.

당신도 당신을해야이 작업을 수행 할 필요가 없습니다. 단일 텍스처에 액세스하는 것이 여러 텍스처보다 빠릅니다. 또한 텍스처는 GPU 텍스처 메모리에 저장됩니다. 그것을 분열시키는 것은 의미가 없습니다.

대신 스프라이트 시트 내의 개별 스프라이트를 액세스 할 수있는 코드를 작성에 초점을 맞추어야한다. 스프라이트 기반 게임의 작동 방식을 살펴 보시기 바랍니다. tile engine videos

+0

나는이 같은 정보를 발견했다. Texture2D를 저장하는 각 Sprite 대신 원본 사각형을 사용하도록 코드를 리팩터링했습니다. – Casey

관련 문제