nxdk_pgraph_tests
A collection of tests for the Xbox nv2a graphics processor
 
Loading...
Searching...
No Matches
texture_shadow_comparator_tests.h
1#ifndef NXDK_PGRAPH_TESTS_TEXTURE_SHADOW_COMPARATOR_TESTS_H
2#define NXDK_PGRAPH_TESTS_TEXTURE_SHADOW_COMPARATOR_TESTS_H
3
4#include <functional>
5#include <memory>
6#include <string>
7
8#include "test_host.h"
9#include "test_suite.h"
10
11namespace PBKitPlusPlus {
12class PassthroughVertexShader;
13}
14
15using namespace PBKitPlusPlus;
16
18 public:
19 TextureShadowComparatorTests(TestHost &host, std::string output_dir, const Config &config);
20
21 void Initialize() override;
22 void Deinitialize() override;
23
24 private:
25 void TestRawValues(uint32_t depth_format, uint32_t texture_format, TestHost::ShaderStageProgram mode,
26 uint32_t shadow_comp_function, uint32_t min_val, uint32_t max_val, uint32_t ref,
27 const std::string &name);
28 void TestFixedFunction(uint32_t depth_format, bool float_depth, uint32_t texture_format,
29 TestHost::ShaderStageProgram mode, uint32_t shadow_comp_function, float min_val, float max_val,
30 float ref_val, const std::string &name);
31 void TestProgrammable(uint32_t depth_format, bool float_depth, uint32_t texture_format,
32 TestHost::ShaderStageProgram mode, uint32_t shadow_comp_function, float min_val, float max_val,
33 float ref_val, const std::string &name);
34
35 void TestProjected(uint32_t depth_format, uint32_t texture_format, TestHost::ShaderStageProgram mode,
36 uint32_t shadow_comp_function, float min_val, float max_val, float ref_val,
37 std::function<void(vector_t &, const vector_t &)> project_point,
38 std::function<void(vector_t &, const vector_t &, float)> unproject_point, const std::string &name);
39
40 private:
41 struct s_CtxDma texture_target_ctx_{};
42 std::shared_ptr<PassthroughVertexShader> raw_value_shader_;
43};
44
45#endif // NXDK_PGRAPH_TESTS_TEXTURE_SHADOW_COMPARATOR_TESTS_H
Definition test_host.h:33
Definition test_suite.h:20
Definition texture_shadow_comparator_tests.h:17
void Initialize() override
Called to initialize the test suite.
Definition texture_shadow_comparator_tests.cpp:244
void Deinitialize() override
Called to tear down the test suite.
Definition texture_shadow_comparator_tests.cpp:260
Runtime configuration for TestSuites.
Definition test_suite.h:23