964 B
964 B
D3D12Shader::GetD3D12Bytecode
const D3D12_SHADER_BYTECODE GetD3D12Bytecode() const;
作用
返回可以直接提交给 D3D12 PSO 创建接口的 D3D12_SHADER_BYTECODE 结构。
当前实现行为
- 如果
m_bytecode有效:pShaderBytecode = m_bytecode->GetBufferPointer()BytecodeLength = m_bytecode->GetBufferSize()
- 如果无效,返回零初始化结构
使用场景
这是 D3D12PipelineState 和 D3D12 集成样例最重要的接口之一,因为 CreateGraphicsPipelineState(...) / CreateComputePipelineState(...) 直接需要它。
注意事项
返回的是一个按值复制的结构体,但里面的指针仍然指向当前对象持有的 blob 内存。调用方必须保证 shader 对象在 PSO 使用该字节码期间仍然有效。