sead
Loading...
Searching...
No Matches
agl::g3d::ModelShaderAssign Class Reference

#include <aglModelShaderAssign.h>

Public Member Functions

 ModelShaderAssign ()
 ~ModelShaderAssign ()
const ShaderProgramgetShaderProgram () const
SamplerLocationgetSamplerLocation (s32 index)
const SamplerLocationgetSamplerLocation (s32 index) const
s32 getSamplerNum () const
const nw::g3d::res::ResSamplergetResSampler (s32 index) const
ModelShaderAttributegetAttribute ()
const ModelShaderAttributegetAttribute () const
void create (sead::Heap *heap)
void bind (const nw::g3d::res::ResMaterial *p_res_mat, const ShaderProgram *p_program, bool use_res_assign, bool use_shader_symbol_id)
void bindShaderResAssign (const nw::g3d::res::ResMaterial *p_res_mat, const nw::g3d::res::ResShape *p_res_shp, const ShaderProgram *p_program, const char *="Mat")
void bindShader (const nw::g3d::res::ResMaterial *p_res_mat, const nw::g3d::res::ResShape *p_res_shp, const ShaderProgram *p_program, const char *="Mat")
void pushBackSampler (const nw::g3d::res::ResSampler *p_res_sampler, const SamplerLocation &location)
void activateMaterialUniformBlock (const nw::g3d::MaterialObj *p_material) const
void activateTextureSampler (const nw::g3d::MaterialObj *p_material) const

Private Member Functions

void clear_ ()
void updateLocation_ (const char *uniform_block_name)

Private Attributes

const ShaderProgrammpProgram
UniformBlockLocation mUniformBlockLocation
sead::UnsafeArray< SamplerLocation, 16 > mSamplerLocation
sead::UnsafeArray< const nw::g3d::res::ResSampler *, 16 > mResSampler
u8 mSamplerNum
ModelShaderAttribute mAttribute

Constructor & Destructor Documentation

◆ ModelShaderAssign()

agl::g3d::ModelShaderAssign::ModelShaderAssign ( )

◆ ~ModelShaderAssign()

agl::g3d::ModelShaderAssign::~ModelShaderAssign ( )

Member Function Documentation

◆ getShaderProgram()

const ShaderProgram * agl::g3d::ModelShaderAssign::getShaderProgram ( ) const
inline

◆ getSamplerLocation() [1/2]

SamplerLocation & agl::g3d::ModelShaderAssign::getSamplerLocation ( s32 index)
inline

◆ getSamplerLocation() [2/2]

const SamplerLocation & agl::g3d::ModelShaderAssign::getSamplerLocation ( s32 index) const
inline

◆ getSamplerNum()

s32 agl::g3d::ModelShaderAssign::getSamplerNum ( ) const
inline

◆ getResSampler()

const nw::g3d::res::ResSampler * agl::g3d::ModelShaderAssign::getResSampler ( s32 index) const
inline

◆ getAttribute() [1/2]

ModelShaderAttribute & agl::g3d::ModelShaderAssign::getAttribute ( )
inline

◆ getAttribute() [2/2]

const ModelShaderAttribute & agl::g3d::ModelShaderAssign::getAttribute ( ) const
inline

◆ create()

void agl::g3d::ModelShaderAssign::create ( sead::Heap * heap)

◆ bind()

void agl::g3d::ModelShaderAssign::bind ( const nw::g3d::res::ResMaterial * p_res_mat,
const ShaderProgram * p_program,
bool use_res_assign,
bool use_shader_symbol_id )

◆ bindShaderResAssign()

void agl::g3d::ModelShaderAssign::bindShaderResAssign ( const nw::g3d::res::ResMaterial * p_res_mat,
const nw::g3d::res::ResShape * p_res_shp,
const ShaderProgram * p_program,
const char * = "Mat" )

◆ bindShader()

void agl::g3d::ModelShaderAssign::bindShader ( const nw::g3d::res::ResMaterial * p_res_mat,
const nw::g3d::res::ResShape * p_res_shp,
const ShaderProgram * p_program,
const char * = "Mat" )

◆ pushBackSampler()

void agl::g3d::ModelShaderAssign::pushBackSampler ( const nw::g3d::res::ResSampler * p_res_sampler,
const SamplerLocation & location )

◆ activateMaterialUniformBlock()

void agl::g3d::ModelShaderAssign::activateMaterialUniformBlock ( const nw::g3d::MaterialObj * p_material) const

◆ activateTextureSampler()

void agl::g3d::ModelShaderAssign::activateTextureSampler ( const nw::g3d::MaterialObj * p_material) const

◆ clear_()

void agl::g3d::ModelShaderAssign::clear_ ( )
private

◆ updateLocation_()

void agl::g3d::ModelShaderAssign::updateLocation_ ( const char * uniform_block_name)
private

Member Data Documentation

◆ mpProgram

const ShaderProgram* agl::g3d::ModelShaderAssign::mpProgram
private

◆ mUniformBlockLocation

UniformBlockLocation agl::g3d::ModelShaderAssign::mUniformBlockLocation
private

◆ mSamplerLocation

sead::UnsafeArray<SamplerLocation, 16> agl::g3d::ModelShaderAssign::mSamplerLocation
private

◆ mResSampler

sead::UnsafeArray<const nw::g3d::res::ResSampler*, 16> agl::g3d::ModelShaderAssign::mResSampler
private

◆ mSamplerNum

u8 agl::g3d::ModelShaderAssign::mSamplerNum
private

◆ mAttribute

ModelShaderAttribute agl::g3d::ModelShaderAssign::mAttribute
private