Rename GPUPipelineState::Description::PrimitiveTopologyType to PrimitiveTopology
This commit is contained in:
@@ -638,10 +638,10 @@ void DebugDrawService::Update()
|
||||
|
||||
// Default
|
||||
desc.PS = shader->GetPS("PS", 0);
|
||||
desc.PrimitiveTopologyType = PrimitiveTopologyType::Line;
|
||||
desc.PrimitiveTopology = PrimitiveTopologyType::Line;
|
||||
failed |= DebugDrawPsLinesDefault.Create(desc);
|
||||
desc.PS = shader->GetPS("PS", 1);
|
||||
desc.PrimitiveTopologyType = PrimitiveTopologyType::Triangle;
|
||||
desc.PrimitiveTopology = PrimitiveTopologyType::Triangle;
|
||||
failed |= DebugDrawPsTrianglesDefault.Create(desc);
|
||||
desc.Wireframe = true;
|
||||
failed |= DebugDrawPsWireTrianglesDefault.Create(desc);
|
||||
@@ -649,10 +649,10 @@ void DebugDrawService::Update()
|
||||
// Depth Test
|
||||
desc.Wireframe = false;
|
||||
desc.PS = shader->GetPS("PS", 2);
|
||||
desc.PrimitiveTopologyType = PrimitiveTopologyType::Line;
|
||||
desc.PrimitiveTopology = PrimitiveTopologyType::Line;
|
||||
failed |= DebugDrawPsLinesDepthTest.Create(desc);
|
||||
desc.PS = shader->GetPS("PS", 3);
|
||||
desc.PrimitiveTopologyType = PrimitiveTopologyType::Triangle;
|
||||
desc.PrimitiveTopology = PrimitiveTopologyType::Triangle;
|
||||
failed |= DebugDrawPsTrianglesDepthTest.Create(desc);
|
||||
desc.Wireframe = true;
|
||||
failed |= DebugDrawPsWireTrianglesDepthTest.Create(desc);
|
||||
|
||||
@@ -72,7 +72,7 @@ public:
|
||||
/// <summary>
|
||||
/// Input primitives topology
|
||||
/// </summary>
|
||||
API_FIELD() PrimitiveTopologyType PrimitiveTopologyType;
|
||||
API_FIELD() PrimitiveTopologyType PrimitiveTopology;
|
||||
|
||||
/// <summary>
|
||||
/// True if use wireframe rendering, otherwise false
|
||||
|
||||
@@ -43,7 +43,7 @@ bool GPUPipelineStateDX11::Init(const Description& desc)
|
||||
D3D11_PRIMITIVE_TOPOLOGY_LINELIST,
|
||||
D3D11_PRIMITIVE_TOPOLOGY_TRIANGLELIST,
|
||||
};
|
||||
PrimitiveTopology = D3D11_primTypes[static_cast<int32>(desc.PrimitiveTopologyType)];
|
||||
PrimitiveTopology = D3D11_primTypes[static_cast<int32>(desc.PrimitiveTopology)];
|
||||
if (HS)
|
||||
PrimitiveTopology = (D3D11_PRIMITIVE_TOPOLOGY)((int32)D3D11_PRIMITIVE_TOPOLOGY_1_CONTROL_POINT_PATCHLIST + (HS->GetControlPointsCount() - 1));
|
||||
|
||||
|
||||
@@ -223,6 +223,7 @@ void GPUContextDX12::Reset()
|
||||
_srMaskDirtyGraphics = 0;
|
||||
_srMaskDirtyCompute = 0;
|
||||
_stencilRef = 0;
|
||||
_primitiveTopology = D3D_PRIMITIVE_TOPOLOGY_UNDEFINED;
|
||||
_psDirtyFlag = false;
|
||||
_isCompute = false;
|
||||
_currentCompute = nullptr;
|
||||
@@ -545,7 +546,11 @@ void GPUContextDX12::flushPS()
|
||||
// Change state
|
||||
ASSERT(_currentState->IsValid());
|
||||
_commandList->SetPipelineState(_currentState->GetState(_rtDepth, _rtCount, _rtHandles));
|
||||
_commandList->IASetPrimitiveTopology(_currentState->PrimitiveTopologyType);
|
||||
if (_primitiveTopology != _currentState->PrimitiveTopology)
|
||||
{
|
||||
_primitiveTopology = _currentState->PrimitiveTopology;
|
||||
_commandList->IASetPrimitiveTopology(_primitiveTopology);
|
||||
}
|
||||
|
||||
RENDER_STAT_PS_STATE_CHANGE();
|
||||
}
|
||||
|
||||
@@ -48,6 +48,7 @@ private:
|
||||
uint32 _srMaskDirtyGraphics;
|
||||
uint32 _srMaskDirtyCompute;
|
||||
uint32 _stencilRef;
|
||||
D3D_PRIMITIVE_TOPOLOGY _primitiveTopology;
|
||||
|
||||
int32 _isCompute : 1;
|
||||
int32 _rtDirtyFlag : 1;
|
||||
|
||||
@@ -157,12 +157,12 @@ bool GPUPipelineStateDX12::Init(const Description& desc)
|
||||
D3D_PRIMITIVE_TOPOLOGY_LINELIST,
|
||||
D3D_PRIMITIVE_TOPOLOGY_TRIANGLELIST,
|
||||
};
|
||||
psDesc.PrimitiveTopologyType = primTypes1[(int32)desc.PrimitiveTopologyType];
|
||||
PrimitiveTopologyType = primTypes2[(int32)desc.PrimitiveTopologyType];
|
||||
psDesc.PrimitiveTopologyType = primTypes1[(int32)desc.PrimitiveTopology];
|
||||
PrimitiveTopology = primTypes2[(int32)desc.PrimitiveTopology];
|
||||
if (desc.HS)
|
||||
{
|
||||
psDesc.PrimitiveTopologyType = D3D12_PRIMITIVE_TOPOLOGY_TYPE_PATCH;
|
||||
PrimitiveTopologyType = (D3D_PRIMITIVE_TOPOLOGY)((int32)D3D_PRIMITIVE_TOPOLOGY_1_CONTROL_POINT_PATCHLIST + (desc.HS->GetControlPointsCount() - 1));
|
||||
PrimitiveTopology = (D3D_PRIMITIVE_TOPOLOGY)((int32)D3D_PRIMITIVE_TOPOLOGY_1_CONTROL_POINT_PATCHLIST + (desc.HS->GetControlPointsCount() - 1));
|
||||
}
|
||||
|
||||
// Depth State
|
||||
|
||||
@@ -55,7 +55,7 @@ public:
|
||||
|
||||
public:
|
||||
|
||||
D3D_PRIMITIVE_TOPOLOGY PrimitiveTopologyType = D3D_PRIMITIVE_TOPOLOGY_UNDEFINED;
|
||||
D3D_PRIMITIVE_TOPOLOGY PrimitiveTopology = D3D_PRIMITIVE_TOPOLOGY_UNDEFINED;
|
||||
DxShaderHeader Header;
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -239,7 +239,7 @@ bool GPUPipelineStateVulkan::Init(const Description& desc)
|
||||
|
||||
// Input Assembly
|
||||
RenderToolsVulkan::ZeroStruct(_descInputAssembly, VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO);;
|
||||
switch (desc.PrimitiveTopologyType)
|
||||
switch (desc.PrimitiveTopology)
|
||||
{
|
||||
case PrimitiveTopologyType::Point:
|
||||
_descInputAssembly.topology = VK_PRIMITIVE_TOPOLOGY_POINT_LIST;
|
||||
|
||||
@@ -157,7 +157,7 @@ bool DepthOfFieldPass::setupResources()
|
||||
psDesc.GS = shader->GetGS("GS_Bokeh");
|
||||
psDesc.PS = shader->GetPS("PS_Bokeh");
|
||||
psDesc.BlendMode = BlendingMode::Additive;
|
||||
psDesc.PrimitiveTopologyType = PrimitiveTopologyType::Point;
|
||||
psDesc.PrimitiveTopology = PrimitiveTopologyType::Point;
|
||||
if (_psBokeh->Init(psDesc))
|
||||
return true;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user