Etterna 0.74.4
Loading...
Searching...
No Matches
RageDisplay_Null.h
1/* RageDisplay_Null - No-op diagnostic renderer. */
2
3#ifndef RAGE_DISPLAY_NULL_H
4#define RAGE_DISPLAY_NULL_H
5
7{
8 public:
10 std::string Init(VideoModeParams&& p,
11 bool bAllowUnacceleratedRenderer) override;
12
13 std::string GetApiDescription() const override { return "Null"; }
14 void GetDisplaySpecs(DisplaySpecs& out) const override;
15 const RagePixelFormatDesc* GetPixelFormatDesc(
16 RagePixelFormat pf) const override;
17
18 bool BeginFrame() override { return true; }
19 void EndFrame() override;
20 const ActualVideoModeParams* GetActualVideoModeParams() const override
21 {
22 return (ActualVideoModeParams*)&m_Params;
23 }
24 void SetBlendMode(BlendMode) override {}
25 bool SupportsTextureFormat(RagePixelFormat,
26 bool /* realtime */ = false) override
27 {
28 return true;
29 }
30 bool SupportsPerVertexMatrixScale() override { return false; }
31 intptr_t CreateTexture(RagePixelFormat,
32 RageSurface* /* img */,
33 bool /* bGenerateMipMaps */) override
34 {
35 return 1;
36 }
37 void UpdateTexture(intptr_t /* iTexHandle */,
38 RageSurface* /* img */,
39 int /* xoffset */,
40 int /* yoffset */,
41 int /* width */,
42 int /* height */
43 ) override
44 {
45 }
46 void DeleteTexture(intptr_t /* iTexHandle */) override {}
47 void ClearAllTextures() override {}
48 int GetNumTextureUnits() override { return 1; }
49 void SetTexture(TextureUnit, intptr_t /* iTexture */) override {}
50 void SetTextureMode(TextureUnit, TextureMode) override {}
51 void SetTextureWrapping(TextureUnit, bool) override {}
52 int GetMaxTextureSize() const override { return 2048; }
53 void SetTextureFiltering(TextureUnit, bool) override {}
54 bool IsZWriteEnabled() const override { return false; }
55 bool IsZTestEnabled() const override { return false; }
56 void SetZWrite(bool) override {}
57 void SetZBias(float) override {}
58 void SetZTestMode(ZTestMode) override {}
59 void ClearZBuffer() override {}
60 void SetCullMode(CullMode) override {}
61 void SetAlphaTest(bool) override {}
62 void SetMaterial(const RageColor& /* unreferenced: emissive */,
63 const RageColor& /* unreferenced: ambient */,
64 const RageColor& /* unreferenced: diffuse */,
65 const RageColor& /* unreferenced: specular */,
66 float /* unreferenced: shininess */
67 ) override
68 {
69 }
70 void SetLighting(bool) override {}
71 void SetLightOff(int /* index */) override {}
72 void SetLightDirectional(
73 int /* index */,
74 const RageColor& /* unreferenced: ambient */,
75 const RageColor& /* unreferenced: diffuse */,
76 const RageColor& /* unreferenced: specular */,
77 const RageVector3& /* unreferenced: dir */) override
78 {
79 }
80
81 void SetSphereEnvironmentMapping(TextureUnit /* tu */,
82 bool /* b */) override
83 {
84 }
85 void SetCelShaded(int /* stage */) override {}
86
87 bool IsD3DInternal() override;
88
89 RageCompiledGeometry* CreateCompiledGeometry() override;
90 void DeleteCompiledGeometry(RageCompiledGeometry*) override;
91
92 protected:
93 void DrawQuadsInternal(const RageSpriteVertex v[],
94 int /* iNumVerts */) override
95 {
96 }
97 void DrawQuadStripInternal(const RageSpriteVertex v[],
98 int /* iNumVerts */) override
99 {
100 }
101 void DrawFanInternal(const RageSpriteVertex v[],
102 int /* iNumVerts */) override
103 {
104 }
105 void DrawStripInternal(const RageSpriteVertex v[],
106 int /* iNumVerts */) override
107 {
108 }
109 void DrawTrianglesInternal(const RageSpriteVertex v[],
110 int /* iNumVerts */) override
111 {
112 }
113 void DrawCompiledGeometryInternal(const RageCompiledGeometry* p,
114 int /* iMeshIndex */) override
115 {
116 }
117 void DrawLineStripInternal(const RageSpriteVertex v[],
118 int /* iNumVerts */,
119 float /* LineWidth */) override
120 {
121 }
122 void DrawSymmetricQuadStripInternal(const RageSpriteVertex v[],
123 int /* iNumVerts */) override
124 {
125 }
126
127 VideoModeParams m_Params;
128 std::string TryVideoMode(const VideoModeParams& p,
129 bool& /* bNewDeviceOut */) override
130 {
131 m_Params = p;
132 return std::string();
133 }
134 RageSurface* CreateScreenshot() override;
135 RageMatrix GetOrthoMatrix(float l,
136 float r,
137 float b,
138 float t,
139 float zn,
140 float zf) override;
141 bool SupportsSurfaceFormat(RagePixelFormat) { return true; }
142};
143
144#endif
The actual VideoModeParams determined by the LowLevelWindow implementation. Contains all the attribut...
Definition RageDisplay.h:207
Definition RageDisplay.h:34
Definition RageDisplay_Null.h:7
Definition RageDisplay.h:269
The parameters used for the present Video Mode.
Definition RageDisplay.h:101
Definition RageTypes.h:332
Definition RageDisplay.h:274
Definition RageTypes.h:599
Definition RageTypes.h:557
Definition RageSurface.h:90
Definition RageTypes.h:172