다음을 통해 공유


D3DXCreateVolumeTextureFromFileInMemoryEx 함수

파일에서 볼륨 텍스처를 만듭니다. D3DXCreateVolumeTextureFromFileInMemory보다 고급 함수입니다.

구문

HRESULT D3DXCreateVolumeTextureFromFileInMemoryEx(
  _In_    LPDIRECT3DDEVICE9        pDevice,
  _In_    LPCVOID                  pSrcData,
  _In_    UINT                     SrcDataSize,
  _In_    UINT                     Width,
  _In_    UINT                     Height,
  _In_    UINT                     Depth,
  _In_    UINT                     MipLevels,
  _In_    DWORD                    Usage,
  _In_    D3DFORMAT                Format,
  _In_    D3DPOOL                  Pool,
  _In_    DWORD                    Filter,
  _In_    DWORD                    MipFilter,
  _In_    D3DCOLOR                 ColorKey,
  _Inout_ D3DXIMAGE_INFO           *pSrcInfo,
  _Out_   PALETTEENTRY             *pPalette,
  _Out_   LPDIRECT3DVOLUMETEXTURE9 *ppVolumeTexture
);

매개 변수

pDevice [in]

형식: LPDIRECT3DDEVICE9

텍스처와 연결할 디바이스를 나타내는 IDirect3DDevice9 인터페이스에 대한 포인터입니다.

pSrcData [in]

형식: LPCVOID

볼륨 텍스처를 만들 메모리의 파일에 대한 포인터입니다.

SrcDataSize [in]

형식: UINT

메모리에 있는 파일의 크기(바이트)입니다.

너비 [in]

형식: UINT

너비(픽셀)입니다. 이 값이 0이거나 D3DX_DEFAULT 경우 파일에서 차원이 가져옵니다. 드라이버가 지원하는 최대 차원(너비, 높이 및 깊이)은 D3DCAPS9의 MaxVolumeExtent에서 찾을 수 있습니다.

높이 [in]

형식: UINT

높이(픽셀)입니다. 이 값이 0이거나 D3DX_DEFAULT 경우 파일에서 차원이 가져옵니다. 드라이버가 지원하는 최대 차원(너비, 높이 및 깊이)은 D3DCAPS9의 MaxVolumeExtent에서 찾을 수 있습니다.

깊이 [in]

형식: UINT

깊이(픽셀)입니다. 이 값이 0이거나 D3DX_DEFAULT 경우 파일에서 차원이 가져옵니다. 드라이버가 지원하는 최대 차원(너비, 높이 및 깊이)은 D3DCAPS9의 MaxVolumeExtent에서 찾을 수 있습니다.

MipLevels [in]

형식: UINT

요청된 밉 수준 수입니다. 이 값이 0이거나 D3DX_DEFAULT 경우 전체 mipmap 체인이 만들어집니다.

사용량 [in]

형식: DWORD

0, D3DUSAGE_RENDERTARGET 또는 D3DUSAGE_DYNAMIC. 이 플래그를 D3DUSAGE_RENDERTARGET 설정하면 표면이 렌더링 대상으로 사용됨을 나타냅니다. 그런 다음 리소스를 SetRenderTarget 메서드의 pNewRenderTarget 매개 변수에 전달할 수 있습니다. D3DUSAGE_RENDERTARGET 또는 D3DUSAGE_DYNAMIC 지정한 경우 을 D3DPOOL_DEFAULT 설정해야 하며, 애플리케이션은 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 [in, out]

형식: D3DXIMAGE_INFO*

원본 이미지 파일 또는 NULL의 데이터에 대한 설명으로 채울 D3DXIMAGE_INFO 구조체에 대한 포인터입니다.

pPalette [out]

형식: PALETTEENTRY*

채울 256색 팔레트 또는 NULL을 나타내는 PALETTEENTRY 구조체에 대한 포인터입니다.

ppVolumeTexture [out]

형식: LPDIRECT3DVOLUMETEXTURE9*

생성된 텍스처 개체를 나타내는 IDirect3DVolumeTexture9 인터페이스에 대한 포인터의 주소입니다.

반환 값

형식: HRESULT

함수가 성공하면 반환 값이 D3D_OK. 함수가 실패하면 반환 값은 D3DERR_NOTAVAILABLE, D3DERR_OUTOFVIDEOMEMORY, D3DERR_INVALIDCALL, D3DXERR_INVALIDDATA, E_OUTOFMEMORY 중 하나일 수 있습니다.

설명

이 함수는 .bmp, .dds, .dib, .hdr, .jpg, .pfm, .png, .ppm 및 .tga 파일 형식을 지원합니다. D3DXIMAGE_FILEFORMAT 참조하세요.

.dds 파일을 로드하는 동안 mipmap 수준을 건너뛰는 경우 D3DX_SKIP_DDS_MIP_LEVELS 매크로를 사용하여 MipFilter 값을 생성합니다. 이 매크로는 건너뛸 수준 수와 필터 형식을 사용하고 필터 값을 반환합니다. 그러면 MipFilter 매개 변수에 전달됩니다.

요구 사항

요구 사항
헤더
D3dx9tex.h
라이브러리
D3dx9.lib

추가 정보

D3DXCreateVolumeTextureFromFile

D3DXCreateVolumeTextureFromFileEx

D3DXCreateVolumeTextureFromFileInMemory

D3DXCreateVolumeTextureFromResource

D3DXCreateVolumeTextureFromResourceEx

D3DX 9의 텍스처 함수