ゲームグラフィックス特論
公開メンバ関数 | 全メンバ一覧
gg::GgElements クラス

三角形で表した形状データ (Elements 形式). [詳解]

#include <gg.h>

gg::GgElements の継承関係図
Inheritance graph
[凡例]
gg::GgElements 連携図
Collaboration graph
[凡例]

公開メンバ関数

 GgElements (GLenum mode=GL_TRIANGLES)
 コンストラクタ. [詳解]
 
 GgElements (const GgVertex *vert, GLsizei countv, const GLuint *face, GLsizei countf, GLenum mode=GL_TRIANGLES, GLenum usage=GL_STATIC_DRAW)
 コンストラクタ. [詳解]
 
virtual ~GgElements ()
 デストラクタ. [詳解]
 
GLsizei getIndexCount () const
 データの数を取り出す. [詳解]
 
GLuint getIndexBuffer () const
 三角形の頂点インデックスデータを格納した頂点バッファオブジェクト名を取り出す. [詳解]
 
void send (const GgVertex *vert, GLuint firstv, GLsizei countv, const GLuint *face=nullptr, GLuint firstf=0, GLsizei countf=0) const
 既存のバッファオブジェクトに頂点属性と三角形の頂点インデックスデータを転送する. [詳解]
 
void load (const GgVertex *vert, GLsizei countv, const GLuint *face, GLsizei countf, GLenum usage=GL_STATIC_DRAW)
 バッファオブジェクトを確保して頂点属性と三角形の頂点インデックスデータを格納する. [詳解]
 
virtual void draw (GLint first=0, GLsizei count=0) const
 インデックスを使った三角形の描画. [詳解]
 
- 基底クラス gg::GgTriangles に属する継承公開メンバ関数
 GgTriangles (GLenum mode=GL_TRIANGLES)
 コンストラクタ. [詳解]
 
 GgTriangles (const GgVertex *vert, GLsizei count, GLenum mode=GL_TRIANGLES, GLenum usage=GL_STATIC_DRAW)
 コンストラクタ. [詳解]
 
virtual ~GgTriangles ()
 デストラクタ. [詳解]
 
GLsizei getCount () const
 データの数を取り出す. [詳解]
 
GLuint getBuffer () const
 頂点属性を格納した頂点バッファオブジェクト名を取り出す. [詳解]
 
void send (const GgVertex *vert, GLint first=0, GLsizei count=0) const
 既存のバッファオブジェクトに頂点属性を転送する. [詳解]
 
void load (const GgVertex *vert, GLsizei count, GLenum usage=GL_STATIC_DRAW)
 バッファオブジェクトを確保して頂点属性を格納する. [詳解]
 
- 基底クラス gg::GgShape に属する継承公開メンバ関数
 GgShape (GLenum mode=0)
 コンストラクタ. [詳解]
 
virtual ~GgShape ()
 デストラクタ. [詳解]
 
 GgShape (const GgShape &o)=delete
 コピーコンストラクタは使用禁止. [詳解]
 
GgShapeoperator= (const GgShape &o)=delete
 代入演算子は使用禁止. [詳解]
 
GLuint get () const
 頂点配列オブジェクト名を取り出す. [詳解]
 
void setMode (GLenum mode)
 基本図形の設定. [詳解]
 
GLenum getMode () const
 基本図形の検査. [詳解]
 

詳解

三角形で表した形状データ (Elements 形式).

gg.h4770 行目に定義があります。

構築子と解体子

◆ GgElements() [1/2]

gg::GgElements::GgElements ( GLenum  mode = GL_TRIANGLES)
inline

コンストラクタ.

引数
mode描画する基本図形の種類.

gg.h4780 行目に定義があります。

◆ GgElements() [2/2]

gg::GgElements::GgElements ( const GgVertex vert,
GLsizei  countv,
const GLuint *  face,
GLsizei  countf,
GLenum  mode = GL_TRIANGLES,
GLenum  usage = GL_STATIC_DRAW 
)
inline

コンストラクタ.

引数
vertこの図形の頂点属性の配列 (nullptr ならデータを転送しない).
countv頂点数.
face三角形の頂点インデックス.
countf三角形の頂点数.
mode描画する基本図形の種類.
usageバッファオブジェクトの使い方.

gg.h4791 行目に定義があります。

呼び出し関係図:

◆ ~GgElements()

virtual gg::GgElements::~GgElements ( )
inlinevirtual

デストラクタ.

gg.h4799 行目に定義があります。

関数詳解

◆ draw()

void gg::GgElements::draw ( GLint  first = 0,
GLsizei  count = 0 
) const
virtual

インデックスを使った三角形の描画.

引数
first描画を開始する最初の三角形番号.
count描画する三角形数, 0 なら全部の三角形を描く.

gg::GgTrianglesを再実装しています。

gg.cpp5002 行目に定義があります。

呼び出し関係図:

◆ getIndexBuffer()

GLuint gg::GgElements::getIndexBuffer ( ) const
inline

三角形の頂点インデックスデータを格納した頂点バッファオブジェクト名を取り出す.

戻り値
この図形の三角形の頂点インデックスデータを格納した頂点バッファオブジェクト名.

gg.h4810 行目に定義があります。

◆ getIndexCount()

GLsizei gg::GgElements::getIndexCount ( ) const
inline

データの数を取り出す.

戻り値
この図形の三角形数.

gg.h4803 行目に定義があります。

◆ load()

void gg::GgElements::load ( const GgVertex vert,
GLsizei  countv,
const GLuint *  face,
GLsizei  countf,
GLenum  usage = GL_STATIC_DRAW 
)
inline

バッファオブジェクトを確保して頂点属性と三角形の頂点インデックスデータを格納する.

引数
vert頂点属性が格納されてている領域の先頭のポインタ.
countv頂点のデータの数 (頂点数).
face三角形の頂点インデックスデータ.
countf三角形の頂点数.
usageバッファオブジェクトの使い方.

gg.h4835 行目に定義があります。

呼び出し関係図:
被呼び出し関係図:

◆ send()

void gg::GgElements::send ( const GgVertex vert,
GLuint  firstv,
GLsizei  countv,
const GLuint *  face = nullptr,
GLuint  firstf = 0,
GLsizei  countf = 0 
) const
inline

既存のバッファオブジェクトに頂点属性と三角形の頂点インデックスデータを転送する.

引数
vert頂点属性が格納されてている領域の先頭のポインタ.
firstv頂点属性の転送先のバッファオブジェクトの先頭の要素番号.
countv頂点のデータの数 (頂点数).
face三角形の頂点インデックスデータ.
firstfインデックスの転送先のバッファオブジェクトの先頭の要素番号.
countf三角形の頂点数.

gg.h4822 行目に定義があります。

呼び出し関係図:

このクラス詳解は次のファイルから抽出されました: