From 80bfa52139976bd51b43c58e9576d379fe9f8a14 Mon Sep 17 00:00:00 2001 From: assiduous Date: Thu, 12 Dec 2019 14:41:17 -0800 Subject: Updated submodules (added unit tests). Reworked TestApp --- Tests/TestApp/src/TestRasterizerState.cpp | 135 ------------------------------ 1 file changed, 135 deletions(-) delete mode 100644 Tests/TestApp/src/TestRasterizerState.cpp (limited to 'Tests/TestApp/src/TestRasterizerState.cpp') diff --git a/Tests/TestApp/src/TestRasterizerState.cpp b/Tests/TestApp/src/TestRasterizerState.cpp deleted file mode 100644 index 2fc9c53..0000000 --- a/Tests/TestApp/src/TestRasterizerState.cpp +++ /dev/null @@ -1,135 +0,0 @@ -/* Copyright 2019 Diligent Graphics LLC - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF ANY PROPRIETARY RIGHTS. - * - * In no event and under no legal theory, whether in tort (including negligence), - * contract, or otherwise, unless required by applicable law (such as deliberate - * and grossly negligent acts) or agreed to in writing, shall any Contributor be - * liable for any damages, including any direct, indirect, special, incidental, - * or consequential damages of any character arising as a result of this License or - * out of the use or inability to use the software (including but not limited to damages - * for loss of goodwill, work stoppage, computer failure or malfunction, or any and - * all other commercial damages or losses), even if such Contributor has been advised - * of the possibility of such damages. - */ - -// EngineSandbox.cpp : Defines the entry point for the application. -// - -#include "pch.h" -#include "TestRasterizerState.h" -#include "ConvenienceFunctions.h" - -using namespace Diligent; - -void TestRasterizerState::CreateTestRS() -{ - RefCntAutoPtr pPSO; - m_PSODesc.Name = "TestRS1"; - m_pDevice->CreatePipelineState( m_PSODesc, &pPSO ); - //RSDesc.Name = "TestRS2"; - //m_pDevice->CreateRasterizerState( RSDesc, &pRS2 ); - //assert( pRS == pRS2 ); - m_pDeviceContext->SetPipelineState( pPSO ); - //m_pDeviceContext->SetRasterizerState( pRS2 ); -} - -TestRasterizerState::TestRasterizerState( IRenderDevice *pDevice, IDeviceContext *pContext ) : - TestPipelineStateBase(pDevice, "Rasterizer state initialization test"), - m_pDeviceContext(pContext) -{ - RasterizerStateDesc &RSDesc = m_PSODesc.GraphicsPipeline.RasterizerDesc; - CreateTestRS( ); - - for( auto FillMode = FILL_MODE_UNDEFINED + 1; FillMode < FILL_MODE_NUM_MODES; ++FillMode ) - { - RSDesc.FillMode = static_cast(FillMode); - CreateTestRS(); - } - - for( auto CullMode = CULL_MODE_UNDEFINED + 1; CullMode < CULL_MODE_NUM_MODES; ++CullMode ) - { - RSDesc.CullMode = static_cast(CullMode); - CreateTestRS(); - } - - RSDesc.FrontCounterClockwise = !RSDesc.FrontCounterClockwise; - CreateTestRS(); - - RSDesc.DepthBias = 100; - CreateTestRS(); - - RSDesc.DepthBiasClamp = 1.f; - CreateTestRS(); - - RSDesc.SlopeScaledDepthBias = 2.f; - CreateTestRS(); - - RSDesc.DepthClipEnable = !RSDesc.DepthClipEnable; - CreateTestRS(); - -#if 0 - RSDesc.ScissorEnable = !RSDesc.ScissorEnable; - CreateTestRS( RSDesc ); -#endif - - RSDesc.AntialiasedLineEnable = !RSDesc.AntialiasedLineEnable; - CreateTestRS(); - - auto pScript = CreateRenderScriptFromFile( "RasterizerStateTest.lua", pDevice, pContext, [&]( Diligent::ScriptParser *pScriptParser ) - { - m_PSODesc.Name = "PSO-TestRS"; - RSDesc = RasterizerStateDesc(); - RSDesc.FillMode = FILL_MODE_WIREFRAME; - RSDesc.CullMode = CULL_MODE_FRONT; - RSDesc.FrontCounterClockwise = True; - RSDesc.DepthBias = 64; - RSDesc.DepthBiasClamp = 98.f; - RSDesc.SlopeScaledDepthBias = 12.5f; - RSDesc.DepthClipEnable = False; - RSDesc.ScissorEnable = False; - RSDesc.AntialiasedLineEnable = True; - - RefCntAutoPtr pPSO; - pDevice->CreatePipelineState( m_PSODesc, &pPSO); - pScriptParser->SetGlobalVariable( "TestGlobalPSO", pPSO ); - } - ); - - { - RefCntAutoPtr pPSOFromScript, pRSFromScript2; - pScript->GetPipelineStateByName( "TestRS_PSO", &pPSOFromScript); - //pScript->GetRasterizerStateByName( "TestRS2", &pRSFromScript2 ); - const auto &PSODesc = pPSOFromScript->GetDesc(); - - const auto &RSDesc2 = PSODesc.GraphicsPipeline.RasterizerDesc; - - assert( RSDesc2.FillMode == FILL_MODE_WIREFRAME ); - assert( RSDesc2.CullMode == CULL_MODE_BACK ); - assert( RSDesc2.FrontCounterClockwise == True ); - assert( RSDesc2.DepthBias == 32 ); - assert( RSDesc2.DepthBiasClamp == 63.0 ); - assert( RSDesc2.SlopeScaledDepthBias == 31.25 ); - assert( RSDesc2.DepthClipEnable == True ); - assert( RSDesc2.ScissorEnable == False ); - assert( RSDesc2.AntialiasedLineEnable == True ); - (void)RSDesc2; - } - - { - m_PSODesc.GraphicsPipeline.RasterizerDesc = RasterizerStateDesc(); - RefCntAutoPtr pPSO; - m_pDevice->CreatePipelineState(m_PSODesc, &pPSO ); - pScript->Run( m_pDeviceContext, "TestRSDescFunc", pPSO ); - } - - SetStatus(TestResult::Succeeded); -} -- cgit v1.2.3