sead
Loading...
Searching...
No Matches
agl::utl::PrimitiveShape Class Reference

#include <aglPrimitiveShape.h>

Classes

struct  Vertex

Public Types

enum  DrawType { cDrawType_Triangle = 0 , cDrawType_Line , cDrawType_Point , cDrawType_Num }
enum  Quality { cQuality_0 = 0 , cQuality_1 , cQuality_2 , cQuality_Num }

Public Member Functions

 PrimitiveShape ()
 ~PrimitiveShape ()
void initialize (sead::Heap *heap)
const IndexStreamgetIdxStreamQuad (DrawType draw_type=cDrawType_Triangle) const
const IndexStreamgetIdxStreamQuadTriangle (DrawType draw_type=cDrawType_Triangle) const

Private Member Functions

void setUpStreamQuad_ (sead::Heap *heap)
void setUpStreamQuadTriangle_ (sead::Heap *heap)
void setUpStreamCube_ (sead::Heap *heap)
void setUpStreamCircle_ (u32, sead::Heap *heap)
void setUpStreamSphere_ (u32, u32, sead::Heap *heap)
void setUpStreamHemisphere_ (u32, u32, sead::Heap *heap)
void setUpStreamCylinder_ (u32, u32, sead::Heap *heap)
void setUpStreamCone_ (u32, u32, sead::Heap *heap)
void setUpStreamTorus_ (u32, u32, sead::Heap *heap, f32, f32, s32, s32)

Static Private Member Functions

static void setUpStreams_ (VertexBuffer *p_vtx_buffer)

Private Attributes

sead::Buffer< VertexmVtxQuad
sead::Buffer< u32 > mIdxQuad
sead::Buffer< u32 > mIdxLineQuad
VertexBuffer mVtxBufferQuad
IndexStream mIdxStreamQuad
IndexStream mIdxStreamLineQuad
sead::Buffer< VertexmVtxQuadTriangle
sead::Buffer< u32 > mIdxQuadTriangle
sead::Buffer< u32 > mIdxLineQuadTriangle
VertexBuffer mVtxBufferQuadTriangle
IndexStream mIdxStreamQuadTriangle
IndexStream mIdxStreamLineQuadTriangle
sead::Buffer< VertexmVtxCube
sead::Buffer< u32 > mIdxCube
sead::Buffer< u32 > mIdxLineCube
VertexBuffer mVtxBufferCube
IndexStream mIdxStreamCube
IndexStream mIdxStreamLineCube
sead::Buffer< VertexmVtxCircle
sead::UnsafeArray< sead::UnsafeArray< sead::Buffer< u16 >, cDrawType_Num >, cQuality_NummIdxCircle
VertexBuffer mVtxBufferCircle
sead::UnsafeArray< sead::UnsafeArray< IndexStream, cDrawType_Num >, cQuality_NummIdxStreamCircle
sead::Buffer< VertexmVtxSphere
sead::UnsafeArray< sead::UnsafeArray< sead::Buffer< u16 >, cDrawType_Num >, cQuality_NummIdxSphere
VertexBuffer mVtxBufferSphere
sead::UnsafeArray< sead::UnsafeArray< IndexStream, cDrawType_Num >, cQuality_NummIdxStreamSphere
sead::Buffer< VertexmVtxHemisphere
sead::UnsafeArray< sead::UnsafeArray< sead::Buffer< u16 >, cDrawType_Num >, cQuality_NummIdxHemisphere
VertexBuffer mVtxBufferHemisphere
sead::UnsafeArray< sead::UnsafeArray< IndexStream, cDrawType_Num >, cQuality_NummIdxStreamHemisphere
sead::Buffer< VertexmVtxCylinder
sead::UnsafeArray< sead::Buffer< u32 >, cQuality_NummIdxCylinder
sead::UnsafeArray< sead::Buffer< u32 >, cQuality_NummIdxLineCylinder
VertexBuffer mVtxBufferCylinder
sead::UnsafeArray< IndexStream, cQuality_NummIdxStreamCylinder
sead::UnsafeArray< IndexStream, cQuality_NummIdxStreamLineCylinder
sead::Buffer< VertexmVtxCone
sead::UnsafeArray< sead::Buffer< u32 >, cQuality_NummIdxCone
sead::UnsafeArray< sead::Buffer< u32 >, cQuality_NummIdxLineCone
VertexBuffer mVtxBufferCone
sead::UnsafeArray< IndexStream, cQuality_NummIdxStreamCone
sead::UnsafeArray< IndexStream, cQuality_NummIdxStreamLineCone
sead::Buffer< VertexmVtxTorus
sead::UnsafeArray< sead::Buffer< u32 >, cQuality_NummIdxTorus
sead::UnsafeArray< sead::Buffer< u32 >, cQuality_NummIdxLineTorus
VertexBuffer mVtxBufferTorus
sead::UnsafeArray< IndexStream, cQuality_NummIdxStreamTorus
sead::UnsafeArray< IndexStream, cQuality_NummIdxStreamLineTorus

Friends

class VertexAttributeHolder

Member Enumeration Documentation

◆ DrawType

Enumerator
cDrawType_Triangle 
cDrawType_Line 
cDrawType_Point 
cDrawType_Num 

◆ Quality

Enumerator
cQuality_0 
cQuality_1 
cQuality_2 
cQuality_Num 

Constructor & Destructor Documentation

◆ PrimitiveShape()

agl::utl::PrimitiveShape::PrimitiveShape ( )

◆ ~PrimitiveShape()

agl::utl::PrimitiveShape::~PrimitiveShape ( )

Member Function Documentation

◆ initialize()

void agl::utl::PrimitiveShape::initialize ( sead::Heap * heap)

◆ getIdxStreamQuad()

const IndexStream & agl::utl::PrimitiveShape::getIdxStreamQuad ( DrawType draw_type = cDrawType_Triangle) const
inline

◆ getIdxStreamQuadTriangle()

const IndexStream & agl::utl::PrimitiveShape::getIdxStreamQuadTriangle ( DrawType draw_type = cDrawType_Triangle) const
inline

◆ setUpStreamQuad_()

void agl::utl::PrimitiveShape::setUpStreamQuad_ ( sead::Heap * heap)
private

◆ setUpStreamQuadTriangle_()

void agl::utl::PrimitiveShape::setUpStreamQuadTriangle_ ( sead::Heap * heap)
private

◆ setUpStreamCube_()

void agl::utl::PrimitiveShape::setUpStreamCube_ ( sead::Heap * heap)
private

◆ setUpStreamCircle_()

void agl::utl::PrimitiveShape::setUpStreamCircle_ ( u32 ,
sead::Heap * heap )
private

◆ setUpStreamSphere_()

void agl::utl::PrimitiveShape::setUpStreamSphere_ ( u32 ,
u32 ,
sead::Heap * heap )
private

◆ setUpStreamHemisphere_()

void agl::utl::PrimitiveShape::setUpStreamHemisphere_ ( u32 ,
u32 ,
sead::Heap * heap )
private

◆ setUpStreamCylinder_()

void agl::utl::PrimitiveShape::setUpStreamCylinder_ ( u32 ,
u32 ,
sead::Heap * heap )
private

◆ setUpStreamCone_()

void agl::utl::PrimitiveShape::setUpStreamCone_ ( u32 ,
u32 ,
sead::Heap * heap )
private

◆ setUpStreamTorus_()

void agl::utl::PrimitiveShape::setUpStreamTorus_ ( u32 ,
u32 ,
sead::Heap * heap,
f32 ,
f32 ,
s32 ,
s32  )
private

◆ setUpStreams_()

void agl::utl::PrimitiveShape::setUpStreams_ ( VertexBuffer * p_vtx_buffer)
staticprivate

◆ VertexAttributeHolder

friend class VertexAttributeHolder
friend

Member Data Documentation

◆ mVtxQuad

sead::Buffer<Vertex> agl::utl::PrimitiveShape::mVtxQuad
private

◆ mIdxQuad

sead::Buffer<u32> agl::utl::PrimitiveShape::mIdxQuad
private

◆ mIdxLineQuad

sead::Buffer<u32> agl::utl::PrimitiveShape::mIdxLineQuad
private

◆ mVtxBufferQuad

VertexBuffer agl::utl::PrimitiveShape::mVtxBufferQuad
private

◆ mIdxStreamQuad

IndexStream agl::utl::PrimitiveShape::mIdxStreamQuad
private

◆ mIdxStreamLineQuad

IndexStream agl::utl::PrimitiveShape::mIdxStreamLineQuad
private

◆ mVtxQuadTriangle

sead::Buffer<Vertex> agl::utl::PrimitiveShape::mVtxQuadTriangle
private

◆ mIdxQuadTriangle

sead::Buffer<u32> agl::utl::PrimitiveShape::mIdxQuadTriangle
private

◆ mIdxLineQuadTriangle

sead::Buffer<u32> agl::utl::PrimitiveShape::mIdxLineQuadTriangle
private

◆ mVtxBufferQuadTriangle

VertexBuffer agl::utl::PrimitiveShape::mVtxBufferQuadTriangle
private

◆ mIdxStreamQuadTriangle

IndexStream agl::utl::PrimitiveShape::mIdxStreamQuadTriangle
private

◆ mIdxStreamLineQuadTriangle

IndexStream agl::utl::PrimitiveShape::mIdxStreamLineQuadTriangle
private

◆ mVtxCube

sead::Buffer<Vertex> agl::utl::PrimitiveShape::mVtxCube
private

◆ mIdxCube

sead::Buffer<u32> agl::utl::PrimitiveShape::mIdxCube
private

◆ mIdxLineCube

sead::Buffer<u32> agl::utl::PrimitiveShape::mIdxLineCube
private

◆ mVtxBufferCube

VertexBuffer agl::utl::PrimitiveShape::mVtxBufferCube
private

◆ mIdxStreamCube

IndexStream agl::utl::PrimitiveShape::mIdxStreamCube
private

◆ mIdxStreamLineCube

IndexStream agl::utl::PrimitiveShape::mIdxStreamLineCube
private

◆ mVtxCircle

sead::Buffer<Vertex> agl::utl::PrimitiveShape::mVtxCircle
private

◆ mIdxCircle

sead::UnsafeArray<sead::UnsafeArray<sead::Buffer<u16>, cDrawType_Num>, cQuality_Num> agl::utl::PrimitiveShape::mIdxCircle
private

◆ mVtxBufferCircle

VertexBuffer agl::utl::PrimitiveShape::mVtxBufferCircle
private

◆ mIdxStreamCircle

sead::UnsafeArray<sead::UnsafeArray<IndexStream, cDrawType_Num>, cQuality_Num> agl::utl::PrimitiveShape::mIdxStreamCircle
private

◆ mVtxSphere

sead::Buffer<Vertex> agl::utl::PrimitiveShape::mVtxSphere
private

◆ mIdxSphere

sead::UnsafeArray<sead::UnsafeArray<sead::Buffer<u16>, cDrawType_Num>, cQuality_Num> agl::utl::PrimitiveShape::mIdxSphere
private

◆ mVtxBufferSphere

VertexBuffer agl::utl::PrimitiveShape::mVtxBufferSphere
private

◆ mIdxStreamSphere

sead::UnsafeArray<sead::UnsafeArray<IndexStream, cDrawType_Num>, cQuality_Num> agl::utl::PrimitiveShape::mIdxStreamSphere
private

◆ mVtxHemisphere

sead::Buffer<Vertex> agl::utl::PrimitiveShape::mVtxHemisphere
private

◆ mIdxHemisphere

sead::UnsafeArray<sead::UnsafeArray<sead::Buffer<u16>, cDrawType_Num>, cQuality_Num> agl::utl::PrimitiveShape::mIdxHemisphere
private

◆ mVtxBufferHemisphere

VertexBuffer agl::utl::PrimitiveShape::mVtxBufferHemisphere
private

◆ mIdxStreamHemisphere

sead::UnsafeArray<sead::UnsafeArray<IndexStream, cDrawType_Num>, cQuality_Num> agl::utl::PrimitiveShape::mIdxStreamHemisphere
private

◆ mVtxCylinder

sead::Buffer<Vertex> agl::utl::PrimitiveShape::mVtxCylinder
private

◆ mIdxCylinder

sead::UnsafeArray<sead::Buffer<u32>, cQuality_Num> agl::utl::PrimitiveShape::mIdxCylinder
private

◆ mIdxLineCylinder

sead::UnsafeArray<sead::Buffer<u32>, cQuality_Num> agl::utl::PrimitiveShape::mIdxLineCylinder
private

◆ mVtxBufferCylinder

VertexBuffer agl::utl::PrimitiveShape::mVtxBufferCylinder
private

◆ mIdxStreamCylinder

sead::UnsafeArray<IndexStream, cQuality_Num> agl::utl::PrimitiveShape::mIdxStreamCylinder
private

◆ mIdxStreamLineCylinder

sead::UnsafeArray<IndexStream, cQuality_Num> agl::utl::PrimitiveShape::mIdxStreamLineCylinder
private

◆ mVtxCone

sead::Buffer<Vertex> agl::utl::PrimitiveShape::mVtxCone
private

◆ mIdxCone

sead::UnsafeArray<sead::Buffer<u32>, cQuality_Num> agl::utl::PrimitiveShape::mIdxCone
private

◆ mIdxLineCone

sead::UnsafeArray<sead::Buffer<u32>, cQuality_Num> agl::utl::PrimitiveShape::mIdxLineCone
private

◆ mVtxBufferCone

VertexBuffer agl::utl::PrimitiveShape::mVtxBufferCone
private

◆ mIdxStreamCone

sead::UnsafeArray<IndexStream, cQuality_Num> agl::utl::PrimitiveShape::mIdxStreamCone
private

◆ mIdxStreamLineCone

sead::UnsafeArray<IndexStream, cQuality_Num> agl::utl::PrimitiveShape::mIdxStreamLineCone
private

◆ mVtxTorus

sead::Buffer<Vertex> agl::utl::PrimitiveShape::mVtxTorus
private

◆ mIdxTorus

sead::UnsafeArray<sead::Buffer<u32>, cQuality_Num> agl::utl::PrimitiveShape::mIdxTorus
private

◆ mIdxLineTorus

sead::UnsafeArray<sead::Buffer<u32>, cQuality_Num> agl::utl::PrimitiveShape::mIdxLineTorus
private

◆ mVtxBufferTorus

VertexBuffer agl::utl::PrimitiveShape::mVtxBufferTorus
private

◆ mIdxStreamTorus

sead::UnsafeArray<IndexStream, cQuality_Num> agl::utl::PrimitiveShape::mIdxStreamTorus
private

◆ mIdxStreamLineTorus

sead::UnsafeArray<IndexStream, cQuality_Num> agl::utl::PrimitiveShape::mIdxStreamLineTorus
private