영어로 읽기

다음을 통해 공유


HLSL

HLSL 기술 개요입니다.

HLSL을 개발하려면 다음 헤더가 필요합니다.

이 기술에 대한 프로그래밍 지침은 다음을 참조하세요.

열거형

 
D3D_BLOB_PART

임의 길이 데이터 버퍼의 콘텐츠 부분을 식별하는 값입니다.
D3D_BLOB_PART

임의 길이 데이터 버퍼의 콘텐츠 부분을 식별하는 값입니다.
D3DCOMPILER_STRIP_FLAGS

스트립 플래그 옵션입니다.
D3DCOMPILER_STRIP_FLAGS

스트립 플래그 옵션입니다.
DXC_OUT_KIND

IDxcResult에서 검색할 출력의 종류를 지정합니다.

Functions

 
AddArguments

이 컴파일러 인수 목록에 인수를 더 추가합니다.
AddArgumentsUTF8

이 컴파일러 인수 목록에 UTF-8로 인코딩된 인수를 추가합니다.
AddDefines

이 컴파일러 인수 목록에 추가 정의를 추가합니다.
AddPart

컨테이너에 파트를 추가합니다.
AssembleToContainer

LL 또는 LLVM 비트 코드에서 DXIL을 DXIL 컨테이너에 어셈블합니다.
BuildArguments

Compile 메서드에 전달할 수 있는 인수를 빌드합니다.
Compile

대상 셰이더 모델에 대한 단일 진입점을 컴파일합니다. IDxcCompiler::Compile 는 더 이상 사용되지 않습니다. 대신 IDxcCompiler3::Compile를 사용합니다.
Compile

대상 셰이더 모델에 대한 단일 진입점을 컴파일하거나 라이브러리 대상에 라이브러리를 컴파일하거나 루트 서명을 컴파일하거나 HLSL 원본을 전처리합니다.
CompileForFullPDB

TBD
CompileWithDebug

디버그 정보를 사용하여 대상 셰이더 모델에 대한 단일 진입점을 컴파일합니다. IDxcCompiler::CompileWithDebug 는 더 이상 사용되지 않습니다. 대신 IDxcCompiler3::Compile를 사용합니다.
CreateBlob

새 Blob이 소유한 메모리에 Blob 콘텐츠를 복사합니다. 새 Blob 및 복사된 콘텐츠는 현재 할당자와 함께 할당됩니다.
CreateBlobFromBlob

IDxcUtils는 IDxcLibrary를 대체합니다. 대신 IDxcUtils를 사용합니다.
CreateBlobFromBlob

외부 Blob에 대한 참조를 보유하고 해당 메모리를 가리키는 하위 Blob을 만듭니다.
CreateBlobFromFile

IDxcUtils는 IDxcLibrary를 대체합니다. 대신 IDxcUtils를 사용합니다.
CreateBlobFromPinned

복사본 없이 기존 메모리를 참조하는 Blob을 만듭니다. 메모리 수명을 별도로 관리해야 합니다.
CreateBlobWithEncodingFromPinned

IDxcUtils는 IDxcLibrary를 대체합니다. 대신 IDxcUtils를 사용합니다.
CreateBlobWithEncodingOnHeapCopy

IDxcUtils는 IDxcLibrary를 대체합니다. 대신 IDxcUtils를 사용합니다.
CreateBlobWithEncodingOnMalloc

IDxcUtils는 IDxcLibrary를 대체합니다. 대신 IDxcUtils를 사용합니다.
CreateDefaultIncludeHandler

기본 파일 기반 포함 처리기를 만듭니다.
CreateIncludeHandler

IDxcUtils는 IDxcLibrary를 대체합니다. 대신 IDxcUtils를 사용합니다.
CreateReadOnlyStreamFromBlob

Blob에서 데이터를 읽는 스트림을 만듭니다.
CreateReflection

직렬화된 DXIL 컨테이너 또는 DXC_PART_REFLECTION_DATA Blob 콘텐츠에서 리플렉션 인터페이스를 만듭니다.
CreateStreamFromBlobReadOnly

IDxcUtils는 IDxcLibrary를 대체합니다. 대신 IDxcUtils를 사용합니다.
D3DCompile

HLSL 코드 또는 효과 파일을 지정된 대상에 대한 바이트코드로 컴파일합니다.
D3DCompile

HLSL 코드 또는 효과 파일을 지정된 대상에 대한 바이트코드로 컴파일합니다.
D3DCompile2

Microsoft HLSL(High Level Shader Language) 코드를 지정된 대상에 대한 바이트코드로 컴파일합니다. (D3DCompile2)
D3DCompile2

Microsoft HLSL(High Level Shader Language) 코드를 지정된 대상에 대한 바이트코드로 컴파일합니다. (D3DCompile2)
D3DCompileFromFile

Microsoft HLSL(High Level Shader Language) 코드를 지정된 대상에 대한 바이트코드로 컴파일합니다. (D3DCompileFromFile)
D3DCompileFromFile

Microsoft HLSL(High Level Shader Language) 코드를 지정된 대상에 대한 바이트코드로 컴파일합니다. (D3DCompileFromFile)
D3DCompressShaders

셰이더 집합을 보다 압축된 형태로 압축합니다.
D3DCompressShaders

셰이더 집합을 보다 압축된 형태로 압축합니다.
D3DCreateBlob

버퍼를 만듭니다.
D3DCreateBlob

버퍼를 만듭니다.
D3DCreateFunctionLinkingGraph

함수 연결 그래프 인터페이스를 만듭니다.
D3DCreateFunctionLinkingGraph

함수 연결 그래프 인터페이스를 만듭니다.
D3DCreateLinker

링커 인터페이스를 만듭니다. 참고 이 함수는 모든 Direct3D 11 플랫폼에서 미리 컴파일된 HLSL 함수를 만들고 라이브러리에 패키지하고 런타임에 전체 셰이더에 연결하는 데 사용할 수 있는 HLSL 셰이더 연결 기술의 일부입니다.  .
D3DCreateLinker

링커 인터페이스를 만듭니다. 참고 이 함수는 모든 Direct3D 11 플랫폼에서 미리 컴파일된 HLSL 함수를 만들고 라이브러리에 패키지하고 런타임에 전체 셰이더에 연결하는 데 사용할 수 있는 HLSL 셰이더 연결 기술의 일부입니다.  .
D3DDecompressShaders

압축 집합에서 하나 이상의 셰이더를 압축 해제합니다.
D3DDecompressShaders

압축 집합에서 하나 이상의 셰이더를 압축 해제합니다.
D3DDisassemble

컴파일된 HLSL 코드를 분해합니다.
D3DDisassemble

컴파일된 HLSL 코드를 분해합니다.
D3DDisassemble10Effect

Direct3D10 효과에서 컴파일된 HLSL 코드를 분해합니다.
D3DDisassemble10Effect

Direct3D10 효과에서 컴파일된 HLSL 코드를 분해합니다.
D3DDisassembleRegion

컴파일된 Microsoft HLSL(High Level Shader Language) 코드의 특정 영역을 디스어셈블합니다.
D3DDisassembleRegion

컴파일된 Microsoft HLSL(High Level Shader Language) 코드의 특정 영역을 디스어셈블합니다.
D3DGetBlobPart

컴파일 결과에서 특정 부분을 검색합니다.
D3DGetBlobPart

컴파일 결과에서 특정 부분을 검색합니다.
D3DGetDebugInfo

참고 이 API를 사용하여 Windows 스토어 앱을 개발할 수 있지만 Windows 스토어에 제출하는 앱에서는 사용할 수 없습니다. 셰이더 디버그 정보를 가져옵니다.
D3DGetDebugInfo

참고 이 API를 사용하여 Windows 스토어 앱을 개발할 수 있지만 Windows 스토어에 제출하는 앱에서는 사용할 수 없습니다. 셰이더 디버그 정보를 가져옵니다.
D3DGetInputAndOutputSignatureBlob

참고 D3DGetInputAndOutputSignatureBlob은 Windows 8.1 후 릴리스에서 변경되거나 사용할 수 없습니다. 대신 D3D_BLOB_INPUT_AND_OUTPUT_SIGNATURE_BLOB 값과 함께 D3DGetBlobPart를 사용합니다.  컴파일 결과에서 입출력 서명을 가져옵니다.
D3DGetInputAndOutputSignatureBlob

참고 D3DGetInputAndOutputSignatureBlob은 Windows 8.1 후 릴리스에서 변경되거나 사용할 수 없습니다. 대신 D3D_BLOB_INPUT_AND_OUTPUT_SIGNATURE_BLOB 값과 함께 D3DGetBlobPart를 사용합니다.  컴파일 결과에서 입출력 서명을 가져옵니다.
D3DGetInputSignatureBlob

참고 D3DGetInputSignatureBlob은 Windows 8.1 후 릴리스에서 변경되거나 사용할 수 없습니다. 대신 D3D_BLOB_INPUT_SIGNATURE_BLOB 값과 함께 D3DGetBlobPart를 사용합니다.  컴파일 결과에서 입력 서명을 가져옵니다.
D3DGetInputSignatureBlob

참고 D3DGetInputSignatureBlob은 Windows 8.1 후 릴리스에서 변경되거나 사용할 수 없습니다. 대신 D3D_BLOB_INPUT_SIGNATURE_BLOB 값과 함께 D3DGetBlobPart를 사용합니다.  컴파일 결과에서 입력 서명을 가져옵니다.
D3DGetOutputSignatureBlob

참고 D3DGetOutputSignatureBlob은 Windows 8.1 후 릴리스에서 변경되거나 사용할 수 없습니다. 대신 D3D_BLOB_OUTPUT_SIGNATURE_BLOB 값과 함께 D3DGetBlobPart를 사용합니다.  컴파일 결과에서 출력 서명을 가져옵니다.
D3DGetOutputSignatureBlob

참고 D3DGetOutputSignatureBlob은 Windows 8.1 후 릴리스에서 변경되거나 사용할 수 없습니다. 대신 D3D_BLOB_OUTPUT_SIGNATURE_BLOB 값과 함께 D3DGetBlobPart를 사용합니다.  컴파일 결과에서 출력 서명을 가져옵니다.
D3DGetTraceInstructionOffsets

셰이더 코드 섹션 내 명령에 대한 바이트 오프셋을 검색합니다.
D3DGetTraceInstructionOffsets

셰이더 코드 섹션 내 명령에 대한 바이트 오프셋을 검색합니다.
D3DLoadModule

셰이더 모듈의 원본 데이터에서 셰이더 모듈 인터페이스를 만듭니다.
D3DLoadModule

셰이더 모듈의 원본 데이터에서 셰이더 모듈 인터페이스를 만듭니다.
D3DPreprocess

컴파일되지 않은 HLSL 코드를 전처리합니다.
D3DPreprocess

컴파일되지 않은 HLSL 코드를 전처리합니다.
D3DReadFileToBlob

디스크에 있는 파일을 메모리로 읽습니다.
D3DReadFileToBlob

디스크에 있는 파일을 메모리로 읽습니다.
D3DReflection

리플렉션 인터페이스에 대한 포인터를 가져옵니다.
D3DReflection

리플렉션 인터페이스에 대한 포인터를 가져옵니다.
D3DReflectLibrary

함수의 HLSL 라이브러리를 포함하는 원본 데이터에서 라이브러리 반사 인터페이스를 만듭니다.
D3DReflectLibrary

함수의 HLSL 라이브러리를 포함하는 원본 데이터에서 라이브러리 반사 인터페이스를 만듭니다.
D3DSetBlobPart

컴파일 결과에 정보를 설정합니다.
D3DSetBlobPart

컴파일 결과에 정보를 설정합니다.
D3DStripShader

컴파일 결과에서 원하지 않는 Blob을 제거합니다.
D3DStripShader

컴파일 결과에서 원하지 않는 Blob을 제거합니다.
D3DWriteBlobToFile

메모리 Blob을 디스크의 파일에 씁니다.
D3DWriteBlobToFile

메모리 Blob을 디스크의 파일에 씁니다.
Disassemble

프로그램을 디스어셈블합니다. IDxcCompiler::D isassemble 은 더 이상 사용되지 않습니다. 대신 IDxcCompiler3::D isassemble 을 사용합니다.
Disassemble

프로그램을 디스어셈블합니다.
DxcCreateInstance

지정된 CLSID와 연결된 클래스의 초기화되지 않은 단일 개체를 만듭니다.
DxcCreateInstance2

지정된 CLSID와 연결된 클래스의 초기화되지 않은 단일 개체를 만듭니다(사용자 지정 메모리 할당자를 사용하여 컴파일러의 instance 만드는 데 사용할 수 있습니다).
DxcCreateInstance2Proc

DxcCreateInstance2Proc typedef는 GetProcAddress를 사용하여 DxcCreateInstance2를 호출하는 데 더 편리하게 사용할 수 있도록 제공됩니다.
DxcCreateInstanceProc

DxcCreateInstanceProc typedef는 GetProcAddress를 사용하여 DxcCreateInstance를 호출하는 데 더 편리하게 사용할 수 있도록 제공됩니다.
FindFirstPartKind

지정된 종류가 있는 첫 번째 부분의 인덱스를 검색합니다.
GetArg

TBD
GetArgCount

TBD
GetArgPair

TBD
GetArgPairCount

TBD
GetArguments

인수 배열을 검색합니다.
GetAvailablePass

TBD
GetAvailablePassCount

TBD
GetBlobAsUtf16

IDxcUtils는 IDxcLibrary를 대체합니다. 대신 IDxcUtils를 사용합니다.
GetBlobAsUtf16

일치하는 인코딩된 텍스트 Blob을 UTF-16으로 변환하거나 반환합니다.
GetBlobAsUtf8

IDxcUtils는 IDxcLibrary를 대체합니다. 대신 IDxcUtils를 사용합니다.
GetBlobAsUtf8

일치하는 인코딩된 텍스트 Blob을 UTF-8로 변환하거나 반환합니다.
GetBufferPointer

Blob의 데이터에 대한 포인터를 검색합니다.
GetBufferSize

Blob 데이터의 크기(바이트 단위 및 null 종결자 포함)를 검색합니다.
GetCommitInfo

TBD
GetCount

인수 수를 검색합니다.
GetCustomVersionString

TBD
GetDefine

TBD
GetDefineCount

TBD
GetDescription

TBD
GetDxilContainerPart

TBD
GetEncoding

이 Blob에 대한 인코딩을 검색합니다.
GetEntryPoint

TBD
GetErrorBuffer

작업에서 오류 버퍼를 검색합니다(있는 경우). 이는 DXC_OUT_ERRORSIDxcResult::GetOutput 호출에 해당합니다.
GetFlag

TBD
GetFlagCount

TBD
GetFlags

TBD
GetFullPDB

TBD
GetHash

TBD
GetMainFileName

TBD
GetName

TBD
GetNumOutputs

이 결과에서 사용할 수 있는 출력 수를 검색합니다.
GetOptionArgCount

TBD
GetOptionArgDescription

TBD
GetOptionArgName

TBD
GetOptionName

TBD
GetOutput

지정된 출력을 검색합니다.
GetOutput

지정된 출력을 검색합니다.
GetOutputByIndex

지정된 인덱스에서 출력 종류를 검색합니다.
GetOutputCount

사용 가능한 출력 수를 검색합니다.
GetPartContent

지정된 부분의 콘텐츠를 검색합니다.
GetPartCount

컨테이너의 파트 수를 검색합니다.
GetPartKind

지정된 부분의 종류를 검색합니다.
GetPartReflection

지정된 파트에 대한 리플렉션 인터페이스를 검색합니다.
GetPDBContents

셰이더 PDB의 해시 및 콘텐츠를 검색합니다.
GetResult

작업의 기본 출력을 검색합니다.
GetSource

TBD
GetSourceCount

TBD
GetSourceName

TBD
GetStatus

작업의 전체 상태 검색합니다.
GetStringLength

null 종결자를 제외한 이 Blob에 저장된 문자열의 길이를 문자로 검색합니다.
GetStringPointer

이 Blob에 저장된 문자열에 대한 포인터를 검색합니다.
GetTargetProfile

TBD
GetVersion

TBD
GetVersionInfo

TBD
HasOutput

이 결과에 지정된 출력이 있는지 여부를 확인합니다.
IsFullPDB

TBD
링크

셰이더를 연결하고 Direct3D 런타임에서 사용할 수 있는 셰이더 Blob을 생성합니다.
로드

DxilContainer를 작성기로 로드합니다.
로드

리플렉션을 수행할 컨테이너를 선택합니다.
로드

TBD
Loadfile

파일에서 로드된 데이터를 사용하여 Blob을 만듭니다.
LoadSource

TBD
OverrideArgs

TBD
OverrideRootSignature

TBD
전처리

원본 텍스트를 전처리합니다.
PrimaryOutput

TBD
RegisterLibrary

나중에 해당 이름으로 참조할 수 있도록 이름으로 라이브러리를 등록합니다.
RemovePart

컨테이너에서 파트를 제거합니다.
RunOptimizer

TBD
SerializeContainer

컨테이너를 빌드합니다.
SetCompiler

TBD
SetMalloc

IDxcUtils는 IDxcLibrary를 대체합니다. 대신 IDxcUtils를 사용합니다.
유효성 검사

셰이더의 유효성을 검사합니다.
ValidateWithDebug

선택적 디버그 비트코드를 사용하여 셰이더의 유효성을 검사합니다.

구조체

 
D3D_SHADER_DATA

셰이더 데이터를 설명합니다. (D3D_SHADER_DATA)
D3D_SHADER_DATA

셰이더 데이터를 설명합니다. (D3D_SHADER_DATA)
DxcArgPair

TBD
DxcDefine

Dxc API에 대한 정의를 제공하기 위한 구조체입니다.
DxcShaderHash

ShaderHash의 해시 다이제스트 형식입니다.
DxcText

Dxc API에 바이트 또는 텍스트 입력을 제공하는 구조입니다.
IDxcAssembler

DxcAssembler를 나타내는 인터페이스입니다.
IDxcBlob

DXC API로 전달 및 외부로 전달할 수 있는 크기의 버퍼입니다. IDxcBlobID3D10BlobID3DBlob의 별칭입니다.
IDxcBlobEncoding

알려진 인코딩이 있을 수 있는 Blob입니다.
IDxcBlobUtf8

TBD
IDxcCompiler

IDxcCompiler는 더 이상 사용되지 않습니다. 대신 IDxcCompiler3 을 사용합니다.
IDxcCompiler2

IDxcCompiler2는 더 이상 사용되지 않습니다. 대신 IDxcCompiler3 을 사용합니다.
IDxcCompiler3

DirectX 셰이더 컴파일러를 나타내는 인터페이스입니다.
IDxcCompilerArgs

DXC에 전달된 인수를 관리하기 위한 인터페이스입니다.
IDxcContainerBuilder

DXC 컨테이너 작성기를 나타내는 인터페이스입니다.
IDxcContainerReflection

DxcContainerReflection을 나타내는 인터페이스입니다.
IDxcExtraOutputs

DXC 작업의 추가 출력을 나타냅니다.
IDxcIncludeHandler

포함 지시문을 처리하기 위한 인터페이스입니다. include 지시문의 처리를 사용자 지정하려면 이 인터페이스의 구현을 제공할 수 있습니다.
IDxcLibrary

IDxcUtils는 IDxcLibrary를 대체합니다. 대신 IDxcUtils를 사용합니다.
IDxcLinker

DXC 링커 인터페이스입니다.
IDxcOperationResult

DXC 작업의 결과입니다. IDxcResult는 IDxcOperationResult를 대체하며 가능한 경우 사용해야 합니다.
IDxcOptimizer

DxcOptimizer를 나타내는 인터페이스입니다.
IDxcOptimizerPass

최적화 프로그램 패스를 나타내는 인터페이스입니다.
IDxcPdbUtils

PDB 버전 정보를 나타냅니다.
IDxcResult

DXC 작업의 결과를 나타냅니다. DXC 작업에는 셰이더 개체 및 오류와 같은 여러 출력이 있을 수 있습니다. 이 인터페이스는 출력에 대한 액세스를 제공합니다.
IDxcUtils

DXC에 대한 다양한 유틸리티 함수입니다.
IDxcValidator

DXC 셰이더 유효성 검사기를 나타내는 인터페이스입니다.
IDxcValidator2

DXC 셰이더 유효성 검사기를 나타내는 인터페이스입니다.
IDxcVersionInfo

PDB 버전 정보를 나타냅니다.
IDxcVersionInfo2

PDB 버전 정보를 나타냅니다.
IDxcVersionInfo3

PDB 버전 정보를 나타냅니다.