DirectX Graphics 프로그래밍 가이드 고정 기능 파이프라인 텍스처 기본적인 텍스처 처리의 개념 텍스처의 더티 영역   [목차열람] [주소복사] [슬롯비우기]
텍스처의 더티 영역
 
Microsoft DirectX 9.0

텍스처의 더티 영역


애플리케이션에서는, 텍스처상에 더티 영역을 지정해, 텍스처가 있는 일부분만큼을 복사 하는 것에 의해 최적화할 수 있다. 더티 영역으로서 마크 된 영역만이,IDirect3DDevice9::UpdateTexture 호출로 복사 된다. 다만, 더티 영역은, alignment를 최적화하기 위해서 확대되는 경우가 있다. 텍스처 생성시에는, 텍스처 전체가 더티라고 보여진다. 더티 상태의 텍스처에 영향을 주는 처리는, 이하의 5 개이다.

더티 영역은 밉맵 텍스처의 최상정도 레벨로 설정되어IDirect3DDevice9::UpdateTexture 는, 더티 영역을 밉체까지 확대해 각 서브 레벨로 복사 되는 바이트수를 최소한으로 억제할 수가 있다. 서브 레벨 더티 영역의 좌표는 외측에 말 수 있다, 즉 소수 부분은 텍스처에 가장 근접하는 엣지에 둥근 일로 주의 해야 한다.

텍스처 타입에 의해 더티 영역의 타입도 다르기 (위해)때문에, 텍스처 타입마다 메서드가 있다. 2D 텍스처는 더티 직사각형을, 볼륨 텍스처는 박스를 사용한다.

상기 메서드의 pDirtyRect 또는 pDirtyBox 파라미터에 NULL 를 건네주면 더티 영역이 확대해 텍스처 전체를 가린다.

각 잠금 메서드는 D3DLOCK_NO_DIRTY_UPDATE 를 취해, 이것에 의해, 텍스처의 더티 상태가 변경되는 것을 막을 수가 있다. 더 자세한 정보는, 「리소스의 잠금」을 참조할것.

애플리케이션은, 잠금 처리가 가능한 때에, 영역의 전세트에 관한 상세 정보가 변경되었을 때는, D3DLOCK_NO_DIRTY_UPDATE 를 사용한다. 최상정도 레벨까지 잠금 또는 복사 하지 않고 텍스처의 서브 레벨만을 잠금 또는 복사 해도, 그 텍스처의 더티 영역은 갱신되지 않는 것에 주의 해야 한다. 애플리케이션에서도, 최상정도 레벨을 잠그지 않고 하위 레벨을 잠그어도, 더티 영역은 갱신되지 않는다.



© 2002 Microsoft Corporation. All rights reserved.
↑TOP