sead
Loading...
Searching...
No Matches
agl::VertexAttribute Class Reference

#include <aglVertexAttribute.h>

Classes

struct  Attribute_

Public Member Functions

 VertexAttribute ()
virtual ~VertexAttribute ()
void create (u32 buffer_max, sead::Heap *heap=nullptr)
void cleanUp ()
void destroy ()
void setVertexStream (s16 location, const VertexBuffer *buffer, u32 stream_index)
void setUp ()
void activate () const

Static Public Attributes

static const u32 cVertexAttributeMax = 16

Private Member Functions

s32 enableVertexBuffer_ (Attribute_ *attr, const VertexBuffer *buffer, u32 stream_index)
s32 disableVertexBuffer_ (Attribute_ *attr)

Private Attributes

sead::SafeArray< Attribute_, cVertexAttributeMaxmAttribute
sead::Buffer< const VertexBuffer * > mVertexBuffer
bool mSetupFinish
bool mCreateFinish
GX2FetchShader mFetchShader
u8 * mpFetchShaderBuf

Constructor & Destructor Documentation

◆ VertexAttribute()

agl::VertexAttribute::VertexAttribute ( )

◆ ~VertexAttribute()

agl::VertexAttribute::~VertexAttribute ( )
virtual

Member Function Documentation

◆ create()

void agl::VertexAttribute::create ( u32 buffer_max,
sead::Heap * heap = nullptr )

◆ cleanUp()

void agl::VertexAttribute::cleanUp ( )

◆ destroy()

void agl::VertexAttribute::destroy ( )

◆ setVertexStream()

void agl::VertexAttribute::setVertexStream ( s16 location,
const VertexBuffer * buffer,
u32 stream_index )

◆ setUp()

void agl::VertexAttribute::setUp ( )

◆ activate()

void agl::VertexAttribute::activate ( ) const

◆ enableVertexBuffer_()

s32 agl::VertexAttribute::enableVertexBuffer_ ( Attribute_ * attr,
const VertexBuffer * buffer,
u32 stream_index )
private

◆ disableVertexBuffer_()

s32 agl::VertexAttribute::disableVertexBuffer_ ( Attribute_ * attr)
private

Member Data Documentation

◆ cVertexAttributeMax

const u32 agl::VertexAttribute::cVertexAttributeMax = 16
static

◆ mAttribute

sead::SafeArray<Attribute_, cVertexAttributeMax> agl::VertexAttribute::mAttribute
private

◆ mVertexBuffer

sead::Buffer<const VertexBuffer*> agl::VertexAttribute::mVertexBuffer
private

◆ mSetupFinish

bool agl::VertexAttribute::mSetupFinish
private

◆ mCreateFinish

bool agl::VertexAttribute::mCreateFinish
private

◆ mFetchShader

GX2FetchShader agl::VertexAttribute::mFetchShader
private

◆ mpFetchShaderBuf

u8* agl::VertexAttribute::mpFetchShaderBuf
private