New Super Mario Bros. U Headers
Loading...
Searching...
No Matches
Mii_IconFacelineShader.h
Go to the documentation of this file.
1#pragma once
2
3#include <common/aglShaderProgramArchive.h>
4#include <common/aglTextureSampler.h>
5#include <container/seadSafeArray.h>
6#include <heap/seadHeap.h>
7#include <math/seadMatrix.h>
8
9namespace Mii {
10
12{
13public:
24 static_assert(cUniform_Num == 6);
25
32 static_assert(cSampler_Num == 2);
33
34public:
35 // Address: 0x024E9078
37
39 {
41 }
42
43 // Address: 0x024E90EC
44 static void initializeShader(agl::ShaderProgramArchive* archive, sead::Heap* heap);
45
46 // Address: 0x024E92C0
47 bool initialize();
48 // Address: 0x024E9704
49 void destroy();
50
51 void activate() const
52 {
53 mShaderProgram->activate();
54 }
55
56 // Address: 0x024E92C4
57 void setViewUniform(const sead::Matrix34f& view_mtx, const sead::Matrix44f& proj_mtx, const sead::Matrix34f& world_mtx) const;
58 // Address: 0x024E93CC
59 void setResolutionUniform(u32 width, u32 height) const;
60 // Address: 0x024E94E8
61 void setLineWidthUniform(s32 line_width) const;
62
63 // Address: 0x024E9580
64 bool activateTexture(const agl::TextureData& texture_data, Sampler sampler);
65
66private:
67 // Address: 0x024E9210
69
70private:
74};
75static_assert(sizeof(IconFacelineShader) == 0x348);
76
77}
Definition Mii_IconFacelineShader.h:12
bool activateTexture(const agl::TextureData &texture_data, Sampler sampler)
static void initializeShader(agl::ShaderProgramArchive *archive, sead::Heap *heap)
sead::SafeArray< agl::TextureSampler, 2 > mTextureSampler
Definition Mii_IconFacelineShader.h:73
void setViewUniform(const sead::Matrix34f &view_mtx, const sead::Matrix44f &proj_mtx, const sead::Matrix34f &world_mtx) const
Sampler
Definition Mii_IconFacelineShader.h:27
@ cSampler_Num
Definition Mii_IconFacelineShader.h:30
@ cSampler_Color
Definition Mii_IconFacelineShader.h:29
@ cSampler_Depth
Definition Mii_IconFacelineShader.h:28
const agl::ShaderProgramArchive * mShaderArchive
Definition Mii_IconFacelineShader.h:71
void setResolutionUniform(u32 width, u32 height) const
Uniform
Definition Mii_IconFacelineShader.h:15
@ cUniform_ResolutionX
Definition Mii_IconFacelineShader.h:19
@ cUniform_ResolutionY
Definition Mii_IconFacelineShader.h:20
@ cUniform_LineWidth
Definition Mii_IconFacelineShader.h:21
@ cUniform_ProjMtx
Definition Mii_IconFacelineShader.h:18
@ cUniform_WorldMtx
Definition Mii_IconFacelineShader.h:16
@ cUniform_Num
Definition Mii_IconFacelineShader.h:22
@ cUniform_ViewMtx
Definition Mii_IconFacelineShader.h:17
~IconFacelineShader()
Definition Mii_IconFacelineShader.h:38
const agl::ShaderProgram * mShaderProgram
Definition Mii_IconFacelineShader.h:72
void setLineWidthUniform(s32 line_width) const
void activate() const
Definition Mii_IconFacelineShader.h:51
Definition Mii_CafeResInitializer.h:7