다음을 통해 공유


텍스처 더티 영역(Direct3D 9)

애플리케이션은 텍스처에서 "더티" 영역을 지정하여 복사되는 텍스처의 하위 집합을 최적화할 수 있습니다. 더티 표시된 지역만 IDirect3DDevice9::UpdateTexture 호출로 복사됩니다. 그러나 맞춤을 최적화하기 위해 더티 영역을 확장할 수 있습니다. 텍스처가 만들어지면 전체 텍스처가 더티 간주됩니다. 다음 작업만 텍스처의 더티 상태에 영향을 줍니다.

더티 영역은 mipmapped 텍스처의 최상위 수준에서 설정되며, IDirect3DDevice9::UpdateTexture는 각 하위 수준에 대해 복사된 바이트 수를 최소화하기 위해 밉 체인 아래로 더티 영역을 확장할 수 있습니다. 하위 수준 더티 영역 좌표는 바깥쪽으로 반올림됩니다. 즉, 소수 부분이 텍스처의 가장 가까운 가장자리를 향해 반올림됩니다.

각 텍스처 형식에는 서로 다른 유형의 더티 영역이 있으므로 각 텍스처 형식에 메서드가 있습니다. 2D 텍스처는 더티 사각형을 사용하고 볼륨 텍스처는 상자를 사용합니다.

위의 메서드에 대한 pDirtyRect 또는 pDirtyBox 매개 변수에 대해 NULL을 전달하면 전체 텍스처를 포함하도록 더티 영역이 확장됩니다.

각 잠금 메서드는 D3DLOCK_NO_DIRTY_UPDATE 수 있으므로 텍스처의 더티 상태가 변경되지 않습니다. 자세한 내용은 리소스 잠금(Direct3D 9)을 참조하세요.

잠금 작업 중에 변경된 실제 지역 집합에 대한 자세한 정보를 사용할 수 있는 경우 애플리케이션은 D3DLOCK_NO_DIRTY_UPDATE 사용해야 합니다. 잠금 또는 텍스처의 복사본만(즉, 최상위 수준으로 잠그거나 복사하지 않고)은 해당 텍스처에 대한 더티 영역을 업데이트하지 않습니다. 애플리케이션은 최상위 수준을 잠그지 않고 하위 수준을 잠글 때 더티 지역을 업데이트하는 것과 동일한 책임을 져야 합니다.

기본 텍스트 변환 개념