1#ifndef SEAD_GRAPHICS_CONTEXT_H_
2#define SEAD_GRAPHICS_CONTEXT_H_
4#include <gfx/seadColor.h>
5#include <gfx/seadGraphics.h>
156 mStencilTestRef = ref;
157 mStencilTestMask = mask;
170 mPolygonModeFront = front;
171 mPolygonModeBack = back;
178 mPolygonOffsetFrontEnable = fill_front_enable;
179 mPolygonOffsetBackEnable = fill_back_enable;
180 mPolygonOffsetPointLineEnable = point_line_enable;
256 return mAlphaTestRef;
291 return mStencilTestRef;
296 return mStencilTestMask;
317 return mPolygonModeFront;
324 return mPolygonModeBack;
331 return mPolygonOffsetFrontEnable;
338 return mPolygonOffsetBackEnable;
345 return mPolygonOffsetPointLineEnable;
385static_assert(
sizeof(
GraphicsContext) == 0x74,
"sead::GraphicsContext size mismatch");
Definition seadGraphicsContext.h:10
void setBlendFactorSeparate(Graphics::BlendFactor src_factor_rgb, Graphics::BlendFactor dst_factor_rgb, Graphics::BlendFactor src_factor_a, Graphics::BlendFactor dst_factor_a)
Definition seadGraphicsContext.h:62
void setBlendFactorSrc(Graphics::BlendFactor factor)
Definition seadGraphicsContext.h:70
Graphics::BlendEquation mBlendEquationA
Definition seadGraphicsContext.h:360
void setBlendFactorSrcAlpha(Graphics::BlendFactor factor)
Definition seadGraphicsContext.h:87
void applyBlendConstantColor() const
Definition seadGraphicsContext.cpp:212
void setBlendEquationSeparate(Graphics::BlendEquation equation_rgb, Graphics::BlendEquation equation_a)
Definition seadGraphicsContext.h:108
Graphics::BlendFactor getBlendFactorDstAlpha() const
Definition seadGraphicsContext.h:224
void setBlendConstantColor(const Color4f &color)
Definition seadGraphicsContext.h:124
void setColorMask(bool r, bool g, bool b, bool a)
Definition seadGraphicsContext.h:140
void setBlendEquationRGB(Graphics::BlendEquation equation)
Definition seadGraphicsContext.h:114
u32 mStencilTestMask
Definition seadGraphicsContext.h:372
Graphics::BlendFactor mBlendFactorDstA
Definition seadGraphicsContext.h:358
Graphics::StencilOp getStencilTestOpZFail() const
Definition seadGraphicsContext.h:304
void setBlendEquation(Graphics::BlendEquation equation)
Definition seadGraphicsContext.h:102
void setBlendFactor(Graphics::BlendFactor src_factor, Graphics::BlendFactor dst_factor)
Definition seadGraphicsContext.h:56
Graphics::BlendFactor getBlendFactorSrcAlpha() const
Definition seadGraphicsContext.h:214
bool mColorMaskB
Definition seadGraphicsContext.h:367
bool mDepthTestEnable
Definition seadGraphicsContext.h:350
void setPolygonOffsetEnable(bool fill_front_enable, bool fill_back_enable, bool point_line_enable)
Definition seadGraphicsContext.h:175
bool getPolygonOffsetBackEnable() const
Definition seadGraphicsContext.h:335
f32 mAlphaTestRef
Definition seadGraphicsContext.h:364
void applyAlphaTest() const
Definition seadGraphicsContext.cpp:137
Graphics::PolygonMode getPolygonModeFront() const
Definition seadGraphicsContext.h:314
Graphics::PolygonMode getPolygonModeBack() const
Definition seadGraphicsContext.h:321
bool mAlphaTestEnable
Definition seadGraphicsContext.h:362
bool mColorMaskG
Definition seadGraphicsContext.h:366
bool getAlphaTestEnable() const
Definition seadGraphicsContext.h:244
Graphics::BlendFactor mBlendFactorDstRGB
Definition seadGraphicsContext.h:357
void setBlendFactorDst(Graphics::BlendFactor factor)
Definition seadGraphicsContext.h:76
bool mBlendEnable
Definition seadGraphicsContext.h:354
bool getColorMaskG() const
Definition seadGraphicsContext.h:264
void setAlphaTestFunc(Graphics::AlphaFunc func, f32 ref)
Definition seadGraphicsContext.h:134
Graphics::BlendFactor getBlendFactorDstRGB() const
Definition seadGraphicsContext.h:219
void setDepthFunc(Graphics::DepthFunc func)
Definition seadGraphicsContext.h:41
bool getPolygonOffsetFrontEnable() const
Definition seadGraphicsContext.h:328
Graphics::BlendFactor mBlendFactorSrcRGB
Definition seadGraphicsContext.h:355
Graphics::AlphaFunc mAlphaTestFunc
Definition seadGraphicsContext.h:363
bool getPolygonOffsetPointLineEnable() const
Definition seadGraphicsContext.h:342
void applyDepthAndStencilTest() const
Definition seadGraphicsContext.cpp:146
Graphics::DepthFunc mDepthFunc
Definition seadGraphicsContext.h:352
Graphics::StencilOp mStencilOpFail
Definition seadGraphicsContext.h:373
bool mStencilTestEnable
Definition seadGraphicsContext.h:369
bool mColorMaskR
Definition seadGraphicsContext.h:365
Color4f mBlendConstantColor
Definition seadGraphicsContext.h:361
Graphics::CullingMode getCullingMode() const
Definition seadGraphicsContext.h:199
Graphics::CullingMode mCullingMode
Definition seadGraphicsContext.h:353
void setBlendFactorDstRGB(Graphics::BlendFactor factor)
Definition seadGraphicsContext.h:92
virtual ~GraphicsContext()
Definition seadGraphicsContext.h:13
Graphics::StencilOp mStencilOpZPass
Definition seadGraphicsContext.h:375
bool mDepthWriteEnable
Definition seadGraphicsContext.h:351
f32 getAlphaTestRef() const
Definition seadGraphicsContext.h:254
Graphics::StencilFunc mStencilTestFunc
Definition seadGraphicsContext.h:370
void setAlphaTestEnable(bool enable)
Definition seadGraphicsContext.h:129
void apply() const
Definition seadGraphicsContext.cpp:48
s32 mStencilTestRef
Definition seadGraphicsContext.h:371
void setStencilTestEnable(bool enable)
Definition seadGraphicsContext.h:148
Graphics::StencilOp getStencilTestOpZPass() const
Definition seadGraphicsContext.h:309
Graphics::AlphaFunc getAlphaTestFunc() const
Definition seadGraphicsContext.h:249
void setCullingMode(Graphics::CullingMode mode)
Definition seadGraphicsContext.h:46
bool getDepthWriteEnable() const
Definition seadGraphicsContext.h:189
Graphics::BlendFactor getBlendFactorSrcRGB() const
Definition seadGraphicsContext.h:209
void setBlendFactorDstAlpha(Graphics::BlendFactor factor)
Definition seadGraphicsContext.h:97
bool getDepthTestEnable() const
Definition seadGraphicsContext.h:184
bool getBlendEnable() const
Definition seadGraphicsContext.h:204
bool getStencilTestEnable() const
Definition seadGraphicsContext.h:279
void applyColorMask() const
Definition seadGraphicsContext.cpp:170
void setPolygonMode(Graphics::PolygonMode front, Graphics::PolygonMode back)
Definition seadGraphicsContext.h:167
GraphicsContext()
Definition seadGraphicsContext.cpp:5
void setBlendEnable(bool blend)
Definition seadGraphicsContext.h:51
void setStencilTestOp(Graphics::StencilOp fail, Graphics::StencilOp zfail, Graphics::StencilOp zpass)
Definition seadGraphicsContext.h:160
void setStencilTestFunc(Graphics::StencilFunc func, s32 ref, u32 mask)
Definition seadGraphicsContext.h:153
const Color4f & getBlendConstantColor() const
Definition seadGraphicsContext.h:239
void applyCullingAndPolygonModeAndPolygonOffset() const
Definition seadGraphicsContext.cpp:222
bool getColorMaskB() const
Definition seadGraphicsContext.h:269
bool mColorMaskA
Definition seadGraphicsContext.h:368
Graphics::StencilOp getStencilTestOpFail() const
Definition seadGraphicsContext.h:299
void setDepthWriteEnable(bool write_enable)
Definition seadGraphicsContext.h:36
Graphics::BlendFactor mBlendFactorSrcA
Definition seadGraphicsContext.h:356
Graphics::DepthFunc getDepthFunc() const
Definition seadGraphicsContext.h:194
void setBlendFactorSrcRGB(Graphics::BlendFactor factor)
Definition seadGraphicsContext.h:82
void setBlendEquationAlpha(Graphics::BlendEquation equation)
Definition seadGraphicsContext.h:119
bool getColorMaskA() const
Definition seadGraphicsContext.h:274
Graphics::BlendEquation mBlendEquationRGB
Definition seadGraphicsContext.h:359
void setDepthTestEnable(bool test_enable)
Definition seadGraphicsContext.h:31
s32 getStencilTestRef() const
Definition seadGraphicsContext.h:289
Graphics::StencilOp mStencilOpZFail
Definition seadGraphicsContext.h:374
u32 getStencilTestMask() const
Definition seadGraphicsContext.h:294
void applyBlendAndFastZ() const
Definition seadGraphicsContext.cpp:189
Graphics::BlendEquation getBlendEquationAlpha() const
Definition seadGraphicsContext.h:234
void setDepthEnable(bool test_enable, bool write_enable)
Definition seadGraphicsContext.h:25
bool getColorMaskR() const
Definition seadGraphicsContext.h:259
Graphics::BlendEquation getBlendEquationRGB() const
Definition seadGraphicsContext.h:229
Graphics::StencilFunc getStencilTestFunc() const
Definition seadGraphicsContext.h:284
Definition seadGraphics.h:17
DepthFunc
Definition seadGraphics.h:44
BlendEquation
Definition seadGraphics.h:89
StencilFunc
Definition seadGraphics.h:114
PolygonMode
Definition seadGraphics.h:142
AlphaFunc
Definition seadGraphics.h:100
StencilOp
Definition seadGraphics.h:128
BlendFactor
Definition seadGraphics.h:68
CullingMode
Definition seadGraphics.h:58
Definition seadAssert.h:44