CommonLibSSE NG
GFxRenderConfig.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/G/GFxState.h"
4 #include "RE/G/GPtr.h"
5 #include "RE/G/GRenderer.h"
6 
7 namespace RE
8 {
9  class GRenderer;
10 
11  class GFxRenderConfig : public GFxState
12  {
13  public:
16 
17  enum class RenderFlag
18  {
19  kNone = 0,
20 
21  kStrokeCorrect = 0,
22  kStrokeNormal = 1 << 0,
23  kStrokeHairline = 1 << 1,
24  kStrokeMask = 0x03,
25 
26  kEdgeAA = 1 << 4,
27  kOptimizeTriangles = 1 << 5,
28  kNoViewCull = 1 << 8
29  };
30 
31  [[nodiscard]] bool IsUsingEdgeAA() const;
32  [[nodiscard]] bool IsEdgeAATextured() const;
33  [[nodiscard]] bool IsOptimizingTriangles() const;
34  [[nodiscard]] bool HasCxformAddAlpha() const;
35  [[nodiscard]] bool HasVertexFormat(VertexFormat a_fmt) const;
36  [[nodiscard]] RenderFlag GetStrokeRenderFlags() const;
37  [[nodiscard]] RenderCapBits GetRendererCapBits() const;
38  [[nodiscard]] GRenderer* GetRenderer() const;
39  void SetRenderFlags(RenderFlag a_flags);
40  [[nodiscard]] RenderFlag GetRenderFlags() const;
41  void SetMaxCurvePixelError(float a_pixelError);
42  [[nodiscard]] float GetMaxCurvePixelError() const;
43  [[nodiscard]] float GetStrokerAAWidth() const;
44  void SetStrokerAAWidth(float a_aawidth);
45 
46  // members
48  float maxCurvePixelError; // 20
50  float strokerAAWidth; // 28
53  std::uint32_t pad34; // 34
54  };
55  static_assert(sizeof(GFxRenderConfig) == 0x38);
56 }
Definition: GFxRenderConfig.h:12
RenderFlag GetStrokeRenderFlags() const
stl::enumeration< VertexFormat, std::uint32_t > rendererVtxFmts
Definition: GFxRenderConfig.h:52
GPtr< GRenderer > renderer
Definition: GFxRenderConfig.h:47
float GetMaxCurvePixelError() const
bool HasVertexFormat(VertexFormat a_fmt) const
GRenderer * GetRenderer() const
RenderFlag
Definition: GFxRenderConfig.h:18
void SetMaxCurvePixelError(float a_pixelError)
bool IsUsingEdgeAA() const
stl::enumeration< RenderFlag, std::uint32_t > renderFlags
Definition: GFxRenderConfig.h:49
stl::enumeration< RenderCapBits, std::uint32_t > rendererCapBits
Definition: GFxRenderConfig.h:51
RenderFlag GetRenderFlags() const
bool HasCxformAddAlpha() const
float maxCurvePixelError
Definition: GFxRenderConfig.h:48
bool IsOptimizingTriangles() const
void SetStrokerAAWidth(float a_aawidth)
std::uint32_t pad34
Definition: GFxRenderConfig.h:53
bool IsEdgeAATextured() const
float strokerAAWidth
Definition: GFxRenderConfig.h:50
RenderCapBits GetRendererCapBits() const
float GetStrokerAAWidth() const
void SetRenderFlags(RenderFlag a_flags)
Definition: GFxState.h:9
Definition: GPtr.h:7
Definition: GRenderer.h:19
RenderCapBits
Definition: GRenderer.h:70
VertexFormat
Definition: GRenderer.h:54
Definition: AbsorbEffect.h:6