summaryrefslogtreecommitdiffstats
path: root/Tests/TestApp/assets/DepthStencilStateTest.lua
diff options
context:
space:
mode:
authorassiduous <assiduous@diligentgraphics.com>2019-12-12 22:41:17 +0000
committerassiduous <assiduous@diligentgraphics.com>2019-12-12 22:41:17 +0000
commit80bfa52139976bd51b43c58e9576d379fe9f8a14 (patch)
tree3d7663ef18296eb5cc6de7fedeb8a1fc1e4d372f /Tests/TestApp/assets/DepthStencilStateTest.lua
parentUpdated core & tools. Fixed https://github.com/DiligentGraphics/DiligentEngin... (diff)
downloadDiligentEngine-80bfa52139976bd51b43c58e9576d379fe9f8a14.tar.gz
DiligentEngine-80bfa52139976bd51b43c58e9576d379fe9f8a14.zip
Updated submodules (added unit tests). Reworked TestApp
Diffstat (limited to 'Tests/TestApp/assets/DepthStencilStateTest.lua')
-rw-r--r--Tests/TestApp/assets/DepthStencilStateTest.lua192
1 files changed, 0 insertions, 192 deletions
diff --git a/Tests/TestApp/assets/DepthStencilStateTest.lua b/Tests/TestApp/assets/DepthStencilStateTest.lua
deleted file mode 100644
index 82e2278..0000000
--- a/Tests/TestApp/assets/DepthStencilStateTest.lua
+++ /dev/null
@@ -1,192 +0,0 @@
--- Test script file
-
-TestGlobalDSState = TestGlobalPSO.GraphicsPipeline.DepthStencilDesc
-
-assert( TestGlobalDSState.DepthEnable == true)
-assert( TestGlobalDSState.DepthWriteEnable == true)
-assert( TestGlobalDSState.DepthFunc == "COMPARISON_FUNC_NEVER")
-assert( TestGlobalDSState.StencilEnable == true)
-assert( TestGlobalDSState.StencilReadMask == 0xFA)
-assert( TestGlobalDSState.StencilWriteMask == 0xFF)
-
-assert( TestGlobalDSState.FrontFace.StencilFailOp == "STENCIL_OP_DECR_SAT")
-assert( TestGlobalDSState.FrontFace.StencilDepthFailOp == "STENCIL_OP_DECR_WRAP")
-assert( TestGlobalDSState.FrontFace.StencilPassOp == "STENCIL_OP_INCR_WRAP")
-assert( TestGlobalDSState.FrontFace.StencilFunc == "COMPARISON_FUNC_NOT_EQUAL")
-
-assert( TestGlobalDSState.BackFace.StencilFailOp == "STENCIL_OP_INVERT")
-assert( TestGlobalDSState.BackFace.StencilDepthFailOp == "STENCIL_OP_REPLACE" )
-assert( TestGlobalDSState.BackFace.StencilPassOp == "STENCIL_OP_INCR_SAT")
-assert( TestGlobalDSState.BackFace.StencilFunc == "COMPARISON_FUNC_EQUAL")
-
-DSSDesc =
-{
- DepthEnable = true,
- DepthWriteEnable = true,
- DepthFunc = "COMPARISON_FUNC_LESS",
- StencilEnable = true,
- StencilReadMask = 0xF8,
- StencilWriteMask = 0xF1,
- FrontFace = {StencilFailOp = "STENCIL_OP_KEEP", StencilDepthFailOp = "STENCIL_OP_ZERO", StencilPassOp = "STENCIL_OP_REPLACE", StencilFunc = "COMPARISON_FUNC_EQUAL" },
- BackFace = {StencilFailOp = "STENCIL_OP_INCR_SAT", StencilDepthFailOp = "STENCIL_OP_DECR_SAT", StencilPassOp = "STENCIL_OP_INVERT", StencilFunc = "COMPARISON_FUNC_NOT_EQUAL"}
-}
-
-TrivialVS = Shader.Create{
- Source =
-[[void VSMain(out float4 pos : SV_Position)
-{
- pos = float4(0.0, 0.0, 0.0, 0.0);
-}]],
- EntryPoint = "VSMain",
- SourceLanguage = "SHADER_SOURCE_LANGUAGE_HLSL",
- UseCombinedTextureSamplers = true,
- Desc = {
- ShaderType = "SHADER_TYPE_VERTEX",
- Name = "TrivialVS (DepthStencilStateTest.lua)"
- }
-}
-
-TrivialPS = Shader.Create{
- Source =
-[[void PSMain(out float4 col : SV_TARGET)
-{
- col = float4(0.0, 0.0, 0.0, 0.0);
-}]],
- EntryPoint = "PSMain",
- SourceLanguage = "SHADER_SOURCE_LANGUAGE_HLSL",
- UseCombinedTextureSamplers = true,
- Desc = {
- ShaderType = "SHADER_TYPE_PIXEL",
- Name = "TrivialPS (DepthStencilStateTest.lua)"
- }
-}
-
-PSODesc =
-{
- GraphicsPipeline =
- {
- pVS = TrivialVS,
- pPS = TrivialPS,
- DepthStencilDesc = DSSDesc,
- RTVFormats = {"TEX_FORMAT_RGBA8_UNORM"},
- DSVFormat = "TEX_FORMAT_D32_FLOAT",
- PrimitiveTopology = "PRIMITIVE_TOPOLOGY_TRIANGLE_LIST"
- }
-}
-
-
-TestPSO = PipelineState.Create(PSODesc)
---TestDSS2 = DepthStencilState.Create(DSSDesc)
-
-TestDSS = TestPSO.GraphicsPipeline.DepthStencilDesc
-
-assert( TestDSS.DepthEnable == true )
-assert( TestDSS.DepthWriteEnable == true )
-assert( TestDSS.DepthFunc == "COMPARISON_FUNC_LESS" )
-assert( TestDSS.StencilEnable == true )
-assert( TestDSS.StencilReadMask == 0xF8 )
-assert( TestDSS.StencilWriteMask == 0xF1 )
-assert( TestDSS.FrontFace.StencilFailOp == "STENCIL_OP_KEEP" )
-assert( TestDSS.FrontFace.StencilDepthFailOp == "STENCIL_OP_ZERO")
-assert( TestDSS.FrontFace.StencilPassOp == "STENCIL_OP_REPLACE")
-assert( TestDSS.FrontFace.StencilFunc == "COMPARISON_FUNC_EQUAL")
-assert( TestDSS.BackFace.StencilFailOp == "STENCIL_OP_INCR_SAT")
-assert( TestDSS.BackFace.StencilDepthFailOp == "STENCIL_OP_DECR_SAT")
-assert( TestDSS.BackFace.StencilPassOp == "STENCIL_OP_INVERT")
-assert( TestDSS.BackFace.StencilFunc == "COMPARISON_FUNC_NOT_EQUAL")
-
-Context.SetPipelineState(TestPSO)
---Context.SetDepthStencilState(TestDSS,2)
-
-ComparisonFuncs =
-{
- "COMPARISON_FUNC_NEVER",
- "COMPARISON_FUNC_LESS",
- "COMPARISON_FUNC_EQUAL",
- "COMPARISON_FUNC_LESS_EQUAL",
- "COMPARISON_FUNC_GREATER",
- "COMPARISON_FUNC_NOT_EQUAL",
- "COMPARISON_FUNC_GREATER_EQUAL",
- "COMPARISON_FUNC_ALWAYS"
-}
-
-StencilOps =
-{
- "STENCIL_OP_KEEP",
- "STENCIL_OP_ZERO",
- "STENCIL_OP_REPLACE",
- "STENCIL_OP_INCR_SAT",
- "STENCIL_OP_DECR_SAT",
- "STENCIL_OP_INVERT",
- "STENCIL_OP_INCR_WRAP",
- "STENCIL_OP_DECR_WRAP"
-}
-
-for i,v in ipairs(ComparisonFuncs) do
- PSODesc.GraphicsPipeline.DepthStencilDesc.DepthFunc = v
- local TestPSO2 = PipelineState.Create(PSODesc)
- assert(TestPSO:IsCompatibleWith(TestPSO2))
- assert(TestPSO2:IsCompatibleWith(TestPSO))
- assert(TestPSO2.GraphicsPipeline.DepthStencilDesc.DepthFunc == v)
- Context.SetPipelineState(TestPSO2)
-end
-
-for i,v in ipairs(StencilOps) do
- PSODesc.GraphicsPipeline.DepthStencilDesc.FrontFace.StencilFailOp = v
- PSODesc.GraphicsPipeline.DepthStencilDesc.FrontFace.StencilDepthFailOp = v
- PSODesc.GraphicsPipeline.DepthStencilDesc.FrontFace.StencilPassOp = v
- local TestPSO2 = PipelineState.Create(PSODesc)
- assert(TestPSO:IsCompatibleWith(TestPSO2))
- assert(TestPSO2:IsCompatibleWith(TestPSO))
- assert( TestPSO2.GraphicsPipeline.DepthStencilDesc.FrontFace.StencilFailOp == v )
- assert( TestPSO2.GraphicsPipeline.DepthStencilDesc.FrontFace.StencilDepthFailOp == v )
- assert( TestPSO2.GraphicsPipeline.DepthStencilDesc.FrontFace.StencilPassOp == v )
- Context.SetPipelineState(TestPSO2)
-end
-
-for i,v in ipairs(StencilOps) do
- PSODesc.GraphicsPipeline.DepthStencilDesc.BackFace.StencilFailOp = v
- PSODesc.GraphicsPipeline.DepthStencilDesc.BackFace.StencilDepthFailOp = v
- PSODesc.GraphicsPipeline.DepthStencilDesc.BackFace.StencilPassOp = v
- local TestPSO2 = PipelineState.Create(PSODesc)
- assert(TestPSO:IsCompatibleWith(TestPSO2))
- assert(TestPSO2:IsCompatibleWith(TestPSO))
- --local TestDSS2 = DepthStencilState.Create(DSSDesc)
- assert( TestPSO2.GraphicsPipeline.DepthStencilDesc.BackFace.StencilFailOp == v )
- assert( TestPSO2.GraphicsPipeline.DepthStencilDesc.BackFace.StencilDepthFailOp == v )
- assert( TestPSO2.GraphicsPipeline.DepthStencilDesc.BackFace.StencilPassOp == v )
- Context.SetPipelineState(TestPSO2)
-end
-
-
-for i,v in ipairs(ComparisonFuncs) do
- PSODesc.GraphicsPipeline.DepthStencilDesc.FrontFace.StencilFunc = v
- PSODesc.GraphicsPipeline.DepthStencilDesc.BackFace.StencilFunc = v
- local TestPSO2 = PipelineState.Create(PSODesc)
- assert(TestPSO:IsCompatibleWith(TestPSO2))
- assert(TestPSO2:IsCompatibleWith(TestPSO))
- assert( TestPSO2.GraphicsPipeline.DepthStencilDesc.FrontFace.StencilFunc == v )
- assert( TestPSO2.GraphicsPipeline.DepthStencilDesc.BackFace.StencilFunc == v )
- Context.SetPipelineState(TestPSO2)
-end
-
-function TestDSSDesc(PSOArg)
- DSSArg = PSOArg.GraphicsPipeline.DepthStencilDesc
-
- assert(DSSArg.DepthEnable == true )
- assert(DSSArg.DepthWriteEnable== true )
- assert(DSSArg.DepthFunc == "COMPARISON_FUNC_LESS" )
- assert(DSSArg.StencilEnable == false )
- assert(DSSArg.StencilReadMask == 0xFF )
- assert(DSSArg.StencilWriteMask== 0xFF )
-
- assert(DSSArg.FrontFace.StencilFailOp == "STENCIL_OP_KEEP" )
- assert(DSSArg.FrontFace.StencilDepthFailOp == "STENCIL_OP_KEEP" )
- assert(DSSArg.FrontFace.StencilPassOp == "STENCIL_OP_KEEP" )
- assert(DSSArg.FrontFace.StencilFunc == "COMPARISON_FUNC_ALWAYS" )
-
- assert(DSSArg.BackFace.StencilFailOp == "STENCIL_OP_KEEP" )
- assert(DSSArg.BackFace.StencilDepthFailOp == "STENCIL_OP_KEEP" )
- assert(DSSArg.BackFace.StencilPassOp == "STENCIL_OP_KEEP" )
- assert(DSSArg.BackFace.StencilFunc == "COMPARISON_FUNC_ALWAYS" )
-end