nxdk_pgraph_tests
A collection of tests for the Xbox nv2a graphics processor
 
Loading...
Searching...
No Matches
three_d_primitive_tests.h
1#ifndef NXDK_PGRAPH_TESTS_THREE_D_PRIMITIVE_TESTS_H
2#define NXDK_PGRAPH_TESTS_THREE_D_PRIMITIVE_TESTS_H
3
4#include <memory>
5#include <vector>
6
7#include "test_host.h"
8#include "test_suite.h"
9
14 public:
15 enum DrawMode {
16 DRAW_ARRAYS,
17 DRAW_INLINE_BUFFERS,
18 DRAW_INLINE_ARRAYS,
19 DRAW_INLINE_ELEMENTS,
20 };
21
22 public:
23 ThreeDPrimitiveTests(TestHost& host, std::string output_dir, const Config& config);
24 void Initialize() override;
25
26 private:
27 void CreateLines();
28
29 void CreateTriangles();
30 void CreateTriangleStrip();
31 void CreateTriangleFan();
32
33 void CreateQuads();
34 void CreateQuadStrip();
35
36 void CreatePolygon();
37
38 void Test(TestHost::DrawPrimitive primitive, DrawMode draw_mode, bool line_smooth, bool poly_smooth);
39
40 static std::string MakeTestName(TestHost::DrawPrimitive primitive, DrawMode draw_mode, bool line_smooth,
41 bool poly_smooth);
42
43 private:
44 std::vector<uint32_t> index_buffer_;
45
46 static constexpr const char* kSuiteName = "3D primitive";
47};
48
49#endif // NXDK_PGRAPH_TESTS_THREE_D_PRIMITIVE_TESTS_H
Definition test_host.h:33
Definition test_suite.h:20
Definition three_d_primitive_tests.h:13
void Initialize() override
Called to initialize the test suite.
Definition three_d_primitive_tests.cpp:667
Runtime configuration for TestSuites.
Definition test_suite.h:23