2013-10-24 3 views
0

나는 내 게임에서 (같은 모양의) 좀비를 많이 가질 것이다.SpriteBatch와 함께 정적 Texture2D를 사용하면 성능이 향상됩니까?

SpriteBatch이 새로운 텍스처를로드 할 필요가 없도록 텍스처를 정적으로 만드는 것이 좋은 생각입니까?

나는 전체 좀비 목록을 살펴보고 동일한 호출로 모든 좀비를 그려서 위치를 변경합니다. SpriteBatch 가져 가야합니까? 그 때마다 똑같은 질감? 단점이있는 곳은 어디입니까?

+0

동일한 텍스처 개체를 사용하는 경우 스프라이트 배치에서이를 알 수 있습니다. 그것이 다른 대상이라면 그렇지 않을 것입니다. –

답변

2

static을 사용하면 도움이 될 것이라고 생각하지 않습니다.
확실한 것은 Texture2D을 한 번만로드하면 메모리를 절약 할 수 있고 동일한 변수를 사용하여 필요한 횟수만큼 그릴 수 있다는 것입니다.

이 ContentManager의 각 인스턴스는 한 번만 주어진 자원 로드됩니다 : 당신은 하나 개의 텍스처를 사용하는 경우 때문에

어쨌든, 당신은 어떤 문제가 없습니다. 리소스를 요청할 때 마지막으로 반환 한 것과 동일한 인스턴스를 반환합니다.

ContentManager는 을 내부적으로로드 한 모든 컨텐츠의 목록을 유지 관리합니다. 이 목록은 가비지 수집기가 리소스를 정리하는 것을 방지합니다.

참조 here.