D3DXCreateCubeTextureFromFileEx 함수
파일에서 큐브 텍스처를 만듭니다. D3DXCreateCubeTextureFromFile보다 고급 함수입니다.
구문
HRESULT D3DXCreateCubeTextureFromFileEx(
_In_ LPDIRECT3DDEVICE9 pDevice,
_In_ LPCTSTR pSrcFile,
_In_ UINT Size,
_In_ UINT MipLevels,
_In_ DWORD Usage,
_In_ D3DFORMAT Format,
_In_ D3DPOOL Pool,
_In_ DWORD Filter,
_In_ DWORD MipFilter,
_In_ D3DCOLOR ColorKey,
_Out_ D3DXIMAGE_INFO *pSrcInfo,
_Out_ PALETTEENTRY *pPalette,
_Out_ LPDIRECT3DCUBETEXTURE9 *ppCubeTexture
);
매개 변수
-
pDevice [in]
-
큐브 텍스처와 연결할 디바이스를 나타내는 IDirect3DDevice9 인터페이스에 대한 포인터입니다.
-
pSrcFile [in]
-
형식: LPCTSTR
파일 이름을 지정하는 문자열에 대한 포인터입니다. 컴파일러 설정에 유니코드가 필요한 경우 데이터 형식 LPCTSTR이 LPCWSTR로 확인됩니다. 그렇지 않으면 문자열 데이터 형식이 LPCSTR로 확인됩니다. 설명 부분을 참조하세요.
-
크기 [in]
-
형식: UINT
큐브 텍스처의 너비 및 높이(픽셀)입니다. 예를 들어 큐브 텍스처가 8픽셀x8픽셀 큐브인 경우 이 매개 변수의 값은 8이어야 합니다. 이 값이 0 또는 D3DX_DEFAULT 경우 파일에서 차원이 가져옵니다.
-
MipLevels [in]
-
형식: UINT
요청된 밉 수준 수입니다. 이 값이 0이거나 D3DX_DEFAULT 경우 전체 mipmap 체인이 만들어집니다.
-
사용량 [in]
-
형식: DWORD
0 또는 D3DUSAGE_RENDERTARGET 또는 D3DUSAGE_DYNAMIC. 이 플래그를 D3DUSAGE_RENDERTARGET 설정하면 표면이 렌더링 대상으로 사용됨을 나타냅니다. 그런 다음 리소스를 SetRenderTarget 메서드의 pNewRenderTarget 매개 변수에 전달할 수 있습니다. D3DUSAGE_RENDERTARGET 지정한 경우 애플리케이션은 CheckDeviceFormat을 호출하여 디바이스가 이 작업을 지원하는지 검사 합니다. D3DUSAGE_DYNAMIC 표면을 동적으로 처리해야 했음을 나타냅니다. 동적 텍스처 사용에 대한 자세한 내용은 동적 텍스처 사용을 참조하세요.
-
형식 [in]
-
형식: D3DFORMAT
큐브 텍스처에 대해 요청된 픽셀 형식을 설명하는 D3DFORMAT 열거형 형식의 멤버입니다. 반환된 큐브 텍스처의 형식이 Format으로 지정된 형식과 다를 수 있습니다. 애플리케이션은 반환된 큐브 텍스처의 형식을 검사 합니다. D3DFMT_UNKNOWN 경우 파일에서 형식을 가져옵니다. D3DFMT_FROM_FILE 경우 형식은 파일에 있는 그대로 수행되며, 디바이스 기능을 위반하는 경우 호출이 실패합니다.
-
풀 [in]
-
형식: D3DPOOL
큐브 텍스처를 배치해야 하는 메모리 클래스를 설명하는 D3DPOOL 열거형 형식의 멤버입니다.
-
필터 [in]
-
형식: DWORD
이미지가 필터링되는 방식을 제어하는 하나 이상의 D3DX_FILTER 상수 조합입니다. 이 매개 변수에 D3DX_DEFAULT 지정하는 것은 D3DX_FILTER_TRIANGLE 지정하는 것과 같습니다. | D3DX_FILTER_DITHER.
-
MipFilter [in]
-
형식: DWORD
이미지가 필터링되는 방식을 제어하는 하나 이상의 D3DX_FILTER 상수 조합입니다. 이 매개 변수에 D3DX_DEFAULT 지정하는 것은 D3DX_FILTER_BOX 지정하는 것과 같습니다. 또한 비트 27-31을 사용하여 .dds 텍스처가 메모리에 로드될 때 건너뛸 밉 수준 수를 지정합니다(Mipmap 체인 맨 위에서). 이를 통해 최대 32개의 수준을 건너뛸 수 있습니다.
-
ColorKey [in]
-
형식: D3DCOLOR
투명 검정으로 바꿀 D3DCOLOR 값이거나 색 키를 사용하지 않도록 설정하려면 0입니다. 원본 이미지 형식과 관계없이 항상 32비트 ARGB 색입니다. 알파는 중요하며 일반적으로 불투명 색 키의 경우 FF로 설정해야 합니다. 따라서 불투명 검정의 경우 값은 0xFF000000 같습니다.
-
pSrcInfo [out]
-
형식: D3DXIMAGE_INFO*
원본 이미지 파일 또는 NULL의 데이터에 대한 설명으로 채울 D3DXIMAGE_INFO 구조체에 대한 포인터입니다.
-
pPalette [out]
-
형식: PALETTEENTRY*
채울 256색 팔레트 또는 NULL을 나타내는 PALETTEENTRY 구조체에 대한 포인터입니다.
-
ppCubeTexture [out]
-
생성된 큐브 텍스처 개체를 나타내는 IDirect3DCubeTexture9 인터페이스에 대한 포인터의 주소입니다.
반환 값
형식: HRESULT
함수가 성공하면 반환 값이 D3D_OK. 함수가 실패하면 반환 값은 D3DERR_INVALIDCALL, D3DERR_NOTAVAILABLE, D3DERR_OUTOFVIDEOMEMORY, D3DXERR_INVALIDDATA, E_OUTOFMEMORY 중 하나일 수 있습니다.
설명
컴파일러 설정은 함수 버전도 결정합니다. 유니코드가 정의되면 함수 호출이 D3DXCreateCubeTextureFromFileExW로 확인됩니다. 그렇지 않으면 ANSI 문자열이 사용되므로 함수 호출이 D3DXCreateCubeTextureFromFileExA 로 확인됩니다.
이 함수는 .bmp, .dds, .dib, .hdr, .jpg, .pfm, .png, .ppm 및 .tga 파일 형식을 지원합니다. D3DXIMAGE_FILEFORMAT 참조하세요.
큐브 텍스처는 표면의 컬렉션이라는 점에서 다른 표면과 다릅니다. 큐브 텍스처로 SetRenderTarget 을 호출하려면 GetCubeMapSurface 를 사용하여 개별 얼굴을 선택하고 결과 표면을 SetRenderTarget에 전달해야 합니다.
D3DXCreateCubeTextureFromFileEx 는 DDS(DirectDraw 표면) 파일 형식을 사용합니다. directX 텍스처 편집기(Dxtex.exe)를 사용하면 다른 파일 형식에서 큐브 맵을 생성하고 DDS 파일 형식으로 저장할 수 있습니다. Dxtex.exe DirectX SDK에서 자세히 알아볼 수 있습니다. DirectX SDK에 대한 자세한 내용은 DirectX SDK는 어디에 있나요?를 참조하세요.
.dds 파일을 로드하는 동안 mipmap 수준을 건너뛰는 경우 D3DX_SKIP_DDS_MIP_LEVELS 매크로를 사용하여 MipFilter 값을 생성합니다. 이 매크로는 건너뛸 수준 수와 필터 형식을 사용하고 필터 값을 반환합니다. 그러면 MipFilter 매개 변수에 전달됩니다.
요구 사항
요구 사항 | 값 |
---|---|
헤더 |
|
라이브러리 |
|
추가 정보