/
redgpu
/
ezEngine
Обзор
Документация
Войти
/
redgpu
/
ezEngine
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
dev
Code/UnitTests/RendererTest/Basics/StencilStates.h
53 строки
2 KB
Sanakan8472
Stencil Test and Test Improvements (#1798)
30 янв 2026, 16:58
Не верифицирован
30 янв 2026, 16:58
3c8e433
Код
Авторство
О чём код?
#pragma once #include <RendererTest/TestClass/TestClass.h> /// Tests stencil buffer operations and compare functions. class ezRendererTestStencilStates : public ezGraphicsTest { public: virtual const char* GetTestName() const override { return "StencilStates"; } private: enum SubTests { ST_StencilOperations, ST_StencilCompareFunctions, ST_StencilRefValue, }; virtual void SetupSubTests() override { AddSubTest("Stencil Operations", SubTests::ST_StencilOperations); AddSubTest("Stencil Compare Functions", SubTests::ST_StencilCompareFunctions); AddSubTest("Stencil Reference Value", SubTests::ST_StencilRefValue); } virtual ezResult InitializeSubTest(ezInt32 iIdentifier) override; virtual ezResult DeInitializeSubTest(ezInt32 iIdentifier) override; ezTestAppRun SubtestStencilOperations(); ezTestAppRun SubtestStencilCompareFunctions(); ezTestAppRun SubtestStencilRefValue(); void RenderQuad(const ezMat4& mTransform, const ezColor& color, ezBitflags<ezShaderBindFlags> ShaderBindFlags = ezShaderBindFlags::Default); virtual ezTestAppRun RunSubTest(ezInt32 iIdentifier, ezUInt32 uiInvocationCount) override { m_iFrame = uiInvocationCount; if (iIdentifier == SubTests::ST_StencilOperations) return SubtestStencilOperations(); if (iIdentifier == SubTests::ST_StencilCompareFunctions) return SubtestStencilCompareFunctions(); if (iIdentifier == SubTests::ST_StencilRefValue) return SubtestStencilRefValue(); return ezTestAppRun::Quit; } ezMeshBufferResourceHandle m_hQuadMesh; ezShaderResourceHandle m_hStencilShader; };