MGCL V10  V10
MGCL V10
 全て クラス 名前空間 関数 変数 型定義 列挙型 列挙値 フレンド グループ ページ
mgGLFramebufferObject クラス

オフスクリーンレンダリング処理で使用するフレームバッファオブジェクトクラス. [詳解]

公開メンバ関数

 mgGLFramebufferObject ()
 
 ~mgGLFramebufferObject ()
 
int getWidth ()
 
int getHeight ()
 高さを返します。 [詳解]
 
GLuint getTexName ()
 テクスチャ識別子を返します。 [詳解]
 
bool CreateBuffer (int width, int height, GLenum format=GL_RGB)
 
void ReleaseBuffer ()
 
void beginRenderTexture ()
 
void endRenderTexture ()
 
void CopyRenderTexture (GLvoid *pixels)
 
Gdiplus::Bitmap * readViewAsBitmap ()
 

詳解

オフスクリーンレンダリング処理で使用するフレームバッファオブジェクトクラス.

OpenGLのFBOに相当します。 利用手順は次のとおり:

構築子と解体子

mgGLFramebufferObject::mgGLFramebufferObject ( )
mgGLFramebufferObject::~mgGLFramebufferObject ( )
inline

関数詳解

void mgGLFramebufferObject::beginRenderTexture ( )

このフレームバッファオブジェクトをバインドして有効にします。

void mgGLFramebufferObject::CopyRenderTexture ( GLvoid *  pixels)

FBO.beginRenderTexture(), draw(), ..., .... で作成したscreen imageデータをCreateBufferで指定した形式でpixelsに読みだす

引数
pixelsformatに従って領域確保後の領域pointerを入力する
bool mgGLFramebufferObject::CreateBuffer ( int  width,
int  height,
GLenum  format = GL_RGB 
)

指定された幅と高さでフレームバッファオブジェクト (FBO) を構成します。

既にフレームバッファオブジェクト (FBO) が構成されている場合は、 現在のフレームバッファオブジェクト (FBO) を削除して新しいフレームバッファオブジェクト (FBO) を構成します。

引数
width
height高さ
format内部フォーマット
例外
RuntimeExceptionフレームバッファの構成に失敗した場合。Buffer を creat. formatはCopyRenderTextureで取り出すときのformatを指定 内部fromatはGL_RGBA8とされる
void mgGLFramebufferObject::endRenderTexture ( )

このフレームバッファオブジェクトをアンバインドして無効にします。

int mgGLFramebufferObject::getHeight ( )
inline

高さを返します。

GLuint mgGLFramebufferObject::getTexName ( )
inline

テクスチャ識別子を返します。

int mgGLFramebufferObject::getWidth ( )
inline
Gdiplus::Bitmap* mgGLFramebufferObject::readViewAsBitmap ( )

FBO.beginRenderTexture(), draw(), ..., .... で作成したscreen imageデータをGdiplus::Bitmap形式で読みだす functionの戻り値はnewで確保された領域であり、利用者はdeleteする必要がある

void mgGLFramebufferObject::ReleaseBuffer ( )

クリーンアップを行います。


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