ゲームグラフィックス特論
読み取り中…
検索中…
一致する文字列を見つけられません
gg::GgSimpleShader::MaterialBuffer クラス

#include <gg.h>

gg::GgSimpleShader::MaterialBuffer の継承関係図
gg::GgSimpleShader::MaterialBuffer 連携図

公開メンバ関数

 MaterialBuffer (const Material *material=nullptr, GLsizei count=1, GLenum usage=GL_STATIC_DRAW)
 MaterialBuffer (const Material &material, GLsizei count=1, GLenum usage=GL_STATIC_DRAW)
 MaterialBuffer (GgVector ambient, GgVector diffuse, GgVector specular, GLfloat shininess, GLsizei count=1, GLenum usage=GL_STATIC_DRAW)
virtual ~MaterialBuffer ()
void loadAmbient (GLfloat r, GLfloat g, GLfloat b, GLfloat a=1.0f, GLint first=0, GLsizei count=1) const
void loadAmbient (const GgVector &ambient, GLint first=0, GLsizei count=1) const
void loadAmbient (const GLfloat *ambient, GLint first=0, GLsizei count=1) const
void loadDiffuse (GLfloat r, GLfloat g, GLfloat b, GLfloat a=1.0f, GLint first=0, GLsizei count=1) const
void loadDiffuse (const GgVector &diffuse, GLint first=0, GLsizei count=1) const
void loadDiffuse (const GLfloat *diffuse, GLint first=0, GLsizei count=1) const
void loadAmbientAndDiffuse (GLfloat r, GLfloat g, GLfloat b, GLfloat a=1.0f, GLint first=0, GLsizei count=1) const
void loadAmbientAndDiffuse (const GgVector &color, GLint first=0, GLsizei count=1) const
void loadAmbientAndDiffuse (const GLfloat *color, GLint first=0, GLsizei count=1) const
void loadSpecular (GLfloat r, GLfloat g, GLfloat b, GLfloat a=1.0f, GLint first=0, GLsizei count=1) const
void loadSpecular (const GgVector &specular, GLint first=0, GLsizei count=1) const
void loadSpecular (const GLfloat *specular, GLint first=0, GLsizei count=1) const
void loadShininess (GLfloat shininess, GLint first=0, GLsizei count=1) const
void loadShininess (const GLfloat *shininess, GLint first=0, GLsizei count=1) const
void load (const Material *material, GLint first=0, GLsizei count=1) const
void load (const Material &material, GLint first=0, GLsizei count=1) const
void select (GLint i=0) const
基底クラス gg::GgUniformBuffer< Material > に属する継承公開メンバ関数
 GgUniformBuffer ()
virtual ~GgUniformBuffer ()
const GLuint & getTarget () const
GLsizeiptr getStride () const
const GLsizei & getCount () const
const GLuint & getBuffer () const
void bind () const
void unbind () const
void * map () const
void unmap () const
void load (const Material *data, GLsizei count, GLenum usage=GL_STATIC_DRAW)
void send (const GLvoid *data, GLint offset=0, GLsizei size=sizeof(Material), GLint first=0, GLsizei count=0) const
void fill (const GLvoid *data, GLint offset=0, GLsizei size=sizeof(Material), GLint first=0, GLsizei count=0) const
void read (GLvoid *data, GLint offset=0, GLsizei size=sizeof(Material), GLint first=0, GLsizei count=0) const
void copy (GLuint src_buffer, GLint src_first=0, GLint dst_first=0, GLsizei count=0) const

詳解

三角形に単純な陰影付けを行うシェーダが参照する材質データのユニフォームバッファオブジェクト.

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

構築子と解体子

◆ MaterialBuffer() [1/3]

gg::GgSimpleShader::MaterialBuffer::MaterialBuffer ( const Material * material = nullptr,
GLsizei count = 1,
GLenum usage = GL_STATIC_DRAW )
inline

デフォルトコンストラクタ.

引数
materialGgSimpleShader::Material 型の材質データのポインタ.
countバッファ中の GgSimpleShader::Material 型の材質データの数.
usageバッファの使い方のパターン, glBufferData() の第 4 引数の usage に渡される.

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

呼び出し関係図:

◆ MaterialBuffer() [2/3]

gg::GgSimpleShader::MaterialBuffer::MaterialBuffer ( const Material & material,
GLsizei count = 1,
GLenum usage = GL_STATIC_DRAW )
inline

同じデータで埋めるコンストラクタ.

引数
materialGgSimpleShader::Material 型の材質データ.
countバッファ中の GgSimpleShader::Material 型の材質データの数.
usageバッファの使い方のパターン, glBufferData() の第 4 引数の usage に渡される.

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

呼び出し関係図:

◆ MaterialBuffer() [3/3]

gg::GgSimpleShader::MaterialBuffer::MaterialBuffer ( GgVector ambient,
GgVector diffuse,
GgVector specular,
GLfloat shininess,
GLsizei count = 1,
GLenum usage = GL_STATIC_DRAW )
inline

同じ引数で埋めるコンストラクタ.

引数
ambient環境光に対する反射係数.
diffuse拡散反射係数.
specular鏡面反射係数.
shininess輝き係数.
countバッファ中の GgSimpleShader::Material 型の材質データの数.
usageバッファの使い方のパターン, glBufferData() の第 4 引数の usage に渡される.

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

呼び出し関係図:

◆ ~MaterialBuffer()

virtual gg::GgSimpleShader::MaterialBuffer::~MaterialBuffer ( )
inlinevirtual

デストラクタ.

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

関数詳解

◆ load() [1/2]

void gg::GgSimpleShader::MaterialBuffer::load ( const Material & material,
GLint first = 0,
GLsizei count = 1 ) const
inline

材質を設定する.

引数
material材質の特性の GgSimpleShader::Material 構造体.
first値を設定する材質データの最初の番号, デフォルトは 0.
count値を設定する材質データの数, デフォルトは 1.

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

呼び出し関係図:

◆ load() [2/2]

void gg::GgSimpleShader::MaterialBuffer::load ( const Material * material,
GLint first = 0,
GLsizei count = 1 ) const
inline

材質を設定する.

引数
material材質の特性の GgSimpleShader::Material 構造体のポインタ.
first値を設定する材質データの最初の番号, デフォルトは 0.
count値を設定する材質データの数, デフォルトは 1.

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

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

◆ loadAmbient() [1/3]

void gg::GgSimpleShader::MaterialBuffer::loadAmbient ( const GgVector & ambient,
GLint first = 0,
GLsizei count = 1 ) const

三角形に単純な陰影付けを行うシェーダが参照する材質データ:環境光に対する反射係数を設定する.

引数
ambient環境光に対する反射係数を格納した GgVector 型の変数.
first値を設定する材質データの最初の番号, デフォルトは 0.
count値を設定する材質データの数, デフォルトは 1.

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

呼び出し関係図:

◆ loadAmbient() [2/3]

void gg::GgSimpleShader::MaterialBuffer::loadAmbient ( const GLfloat * ambient,
GLint first = 0,
GLsizei count = 1 ) const
inline

環境光に対する反射係数を設定する.

引数
ambient環境光に対する反射係数を格納した GLfloat 型の 4 要素の配列変数.
first値を設定する材質データの最初の番号, デフォルトは 0.
count値を設定する材質データの数, デフォルトは 1.

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

呼び出し関係図:

◆ loadAmbient() [3/3]

void gg::GgSimpleShader::MaterialBuffer::loadAmbient ( GLfloat r,
GLfloat g,
GLfloat b,
GLfloat a = 1.0f,
GLint first = 0,
GLsizei count = 1 ) const

環境光に対する反射係数を設定する.

引数
r環境光に対する反射係数の赤成分.
g環境光に対する反射係数の緑成分.
b環境光に対する反射係数の青成分.
a環境光に対する反射係数の不透明度, デフォルトは 1.
first値を設定する材質データの最初の番号, デフォルトは 0.
count値を設定する材質データの数, デフォルトは 1.

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

呼び出し関係図:

◆ loadAmbientAndDiffuse() [1/3]

void gg::GgSimpleShader::MaterialBuffer::loadAmbientAndDiffuse ( const GgVector & color,
GLint first = 0,
GLsizei count = 1 ) const

三角形に単純な陰影付けを行うシェーダが参照する材質データ:環境光に対する反射係数と拡散反射係数を設定する.

引数
color環境光に対する反射係数と拡散反射係数を格納した GgVector 型の変数.
first値を設定する材質データの最初の番号, デフォルトは 0.
count値を設定する材質データの数, デフォルトは 1.

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

呼び出し関係図:

◆ loadAmbientAndDiffuse() [2/3]

void gg::GgSimpleShader::MaterialBuffer::loadAmbientAndDiffuse ( const GLfloat * color,
GLint first = 0,
GLsizei count = 1 ) const

環境光に対する反射係数と拡散反射係数を設定する.

引数
color環境光に対する反射係数と拡散反射係数を格納した GLfloat 型の 4 要素の配列変数.
first値を設定する材質データの最初の番号, デフォルトは 0.
count値を設定する材質データの数, デフォルトは 1.

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

呼び出し関係図:

◆ loadAmbientAndDiffuse() [3/3]

void gg::GgSimpleShader::MaterialBuffer::loadAmbientAndDiffuse ( GLfloat r,
GLfloat g,
GLfloat b,
GLfloat a = 1.0f,
GLint first = 0,
GLsizei count = 1 ) const

環境光に対する反射係数と拡散反射係数を設定する.

引数
r環境光に対する反射係数と拡散反射係数の赤成分.
g環境光に対する反射係数と拡散反射係数の緑成分.
b環境光に対する反射係数と拡散反射係数の青成分.
a環境光に対する反射係数と拡散反射係数の不透明度, デフォルトは 1.
first値を設定する材質データの最初の番号, デフォルトは 0.
count値を設定する材質データの数, デフォルトは 1.

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

呼び出し関係図:

◆ loadDiffuse() [1/3]

void gg::GgSimpleShader::MaterialBuffer::loadDiffuse ( const GgVector & diffuse,
GLint first = 0,
GLsizei count = 1 ) const

三角形に単純な陰影付けを行うシェーダが参照する材質データ:拡散反射係数を設定する.

引数
diffuse拡散反射係数を格納した GgVector 型の変数.
first値を設定する材質データの最初の番号, デフォルトは 0.
count値を設定する材質データの数, デフォルトは 1.

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

呼び出し関係図:

◆ loadDiffuse() [2/3]

void gg::GgSimpleShader::MaterialBuffer::loadDiffuse ( const GLfloat * diffuse,
GLint first = 0,
GLsizei count = 1 ) const
inline

拡散反射係数を設定する.

引数
diffuse拡散反射係数を格納した GLfloat 型の 4 要素の配列変数.
first値を設定する材質データの最初の番号, デフォルトは 0.
count値を設定する材質データの数, デフォルトは 1.

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

呼び出し関係図:

◆ loadDiffuse() [3/3]

void gg::GgSimpleShader::MaterialBuffer::loadDiffuse ( GLfloat r,
GLfloat g,
GLfloat b,
GLfloat a = 1.0f,
GLint first = 0,
GLsizei count = 1 ) const

拡散反射係数を設定する.

引数
r拡散反射係数の赤成分.
g拡散反射係数の緑成分.
b拡散反射係数の青成分.
a拡散反射係数の不透明度, デフォルトは 1.
first値を設定する材質データの最初の番号, デフォルトは 0.
count値を設定する材質データの数, デフォルトは 1.

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

呼び出し関係図:

◆ loadShininess() [1/2]

void gg::GgSimpleShader::MaterialBuffer::loadShininess ( const GLfloat * shininess,
GLint first = 0,
GLsizei count = 1 ) const

輝き係数を設定する.

引数
shininess輝き係数.
first値を設定する材質データの最初の番号, デフォルトは 0.
count値を設定する材質データの数, デフォルトは 1.

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

呼び出し関係図:

◆ loadShininess() [2/2]

void gg::GgSimpleShader::MaterialBuffer::loadShininess ( GLfloat shininess,
GLint first = 0,
GLsizei count = 1 ) const

輝き係数を設定する.

引数
shininess輝き係数.
first値を設定する材質データの最初の番号, デフォルトは 0.
count値を設定する材質データの数, デフォルトは 1.

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

呼び出し関係図:

◆ loadSpecular() [1/3]

void gg::GgSimpleShader::MaterialBuffer::loadSpecular ( const GgVector & specular,
GLint first = 0,
GLsizei count = 1 ) const

三角形に単純な陰影付けを行うシェーダが参照する材質データ:鏡面反射係数を設定する.

引数
specular鏡面反射係数を格納した GgVector 型の変数.
first値を設定する材質データの最初の番号, デフォルトは 0.
count値を設定する材質データの数, デフォルトは 1.

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

呼び出し関係図:

◆ loadSpecular() [2/3]

void gg::GgSimpleShader::MaterialBuffer::loadSpecular ( const GLfloat * specular,
GLint first = 0,
GLsizei count = 1 ) const
inline

鏡面反射係数を設定する.

引数
specular鏡面反射係数を格納した GLfloat 型の 4 要素の配列変数.
first値を設定する材質データの最初の番号, デフォルトは 0.
count値を設定する材質データの数, デフォルトは 1.

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

呼び出し関係図:

◆ loadSpecular() [3/3]

void gg::GgSimpleShader::MaterialBuffer::loadSpecular ( GLfloat r,
GLfloat g,
GLfloat b,
GLfloat a = 1.0f,
GLint first = 0,
GLsizei count = 1 ) const

鏡面反射係数を設定する.

引数
r鏡面反射係数の赤成分.
g鏡面反射係数の緑成分.
b鏡面反射係数の青成分.
a鏡面反射係数の不透明度, デフォルトは 1.
first値を設定する材質データの最初の番号, デフォルトは 0.
count値を設定する材質データの数, デフォルトは 1.

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

呼び出し関係図:

◆ select()

void gg::GgSimpleShader::MaterialBuffer::select ( GLint i = 0) const
inline

材質を選択する.

引数
i材質データの uniform block のインデックス.

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

呼び出し関係図:

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