mirror of
https://github.com/doitsujin/dxvk.git
synced 2025-01-18 20:52:10 +01:00
[dxbc] Always set geometry shader invocation count
Fixes validation errors when the DXBC shader does not specify the invocation count itself.
This commit is contained in:
parent
144f4badef
commit
6888a98c89
@ -1391,6 +1391,7 @@ namespace dxvk {
|
||||
// dcl_gs_instance_count has one operand:
|
||||
// (imm0) Number of geometry shader invocations
|
||||
m_module.setInvocations(m_entryPointId, ins.imm[0].u32);
|
||||
m_gs.invocationCount = ins.imm[0].u32;
|
||||
}
|
||||
|
||||
|
||||
@ -6866,6 +6867,9 @@ namespace dxvk {
|
||||
|
||||
|
||||
void DxbcCompiler::emitGsFinalize() {
|
||||
if (!m_gs.invocationCount)
|
||||
m_module.setInvocations(m_entryPointId, 1);
|
||||
|
||||
this->emitMainFunctionBegin();
|
||||
this->emitInputSetup(
|
||||
primitiveVertexCount(m_gs.inputPrimitive));
|
||||
|
@ -160,6 +160,7 @@ namespace dxvk {
|
||||
uint32_t builtinLayer = 0;
|
||||
uint32_t builtinViewportId = 0;
|
||||
uint32_t builtinInvocationId = 0;
|
||||
uint32_t invocationCount = 0;
|
||||
};
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user