Graphics3DFramework ライブラリ

- 目次 -

- 使用サンプルコード -


概要 - Abstract

このライブラリ graphics3d.Graphics3DFramework は、3DCG( 3次元グラフィックス )を手軽に扱うための軽量フレームワークです。

VCSSLの標準ライブラリ「 Graphics3D 」や「 GUI 」だけを用いて、ゼロから3DCGプログラムを記述する場合、
ウィンドウ・レンダラー(描画エンジン)の生成や、アニメーションループ、基本的なイベントハンドラなど、いくつかの定型的な処理を、毎回記述しなければいけません。
そこで、この Graphics3DFramework では、上述のような定型処理を、雛形のようにあらかじめ用意する事によって、手軽な3DCG利用をサポートします。

・必要な処理の記述

Graphics3DFramework は、構造的には、単体で既に完成した3DCGプログラムです。実際、単体で実行する事が可能です。
ただし、単体では何の3Dモデルも配置されておらず、ただ白い画面が表示されるだけです。

そこで実際には、自作モジュールから Graphics3DFramework を import し、3Dモデルの配置や移動など、必要な処理を記述します。
そういった処理は、いくつかの決まった名前の関数を定義し、そこに記述します。つまり、GUIなどのイベントハンドラと同じ仕組みです。
するとそれらのイベントハンドラ関数を、Graphics3DFramework が適切なタイミングで自動実行します。

Graphics3DFramework が自動実行するイベントハンドラ関数は、下記のものがあります。定義は必須では無いので、必要な関数だけを定義し、記述して下さい。

上記関数のいずれも、引数 renderer には、3DCGレンダラーのID が渡されます。これは3Dモデルの配置などに使用します。

・背景・前景の2DCG描画

Graphics3DFramework は、前景・背景の2DCG描画もサポートしています。
ただしこの機能はデフォルトで無効になっているため、利用する前にそれぞれ setForegroundRendererState ( true ) 及び setBackgroundRendererState ( true ) を実行して下さい。
その後、 getForegroundRenderer ( ) 及び getBackgroundRenderer ( ) で 2DCGレンダラーのIDを取得し、onPaint関数内などで描画を行います。

・ウィンドウのカスタマイズ

Graphics3DFramework では、ウィンドウ内に余白領域を設定し、そこにボタンやテキストフィールドなどのGUI部品を配置する事ができます。
余白の設定は、setMarginTop ( int margin ) 関数や setMarginLeft ( int margin ) 関数などで行います。
そして getWindow ( ) 関数でウィンドウのIDを取得し、余白領域にGUI部品を自由に配置してください。

・フレームレート調整

加えて、Graphics3DFramework は、フレームレートの自動調整機構も備えています。
具体的には、Graphics3DFramework は、毎フレーム間の所要時間を計測し、常に設定された目標フレームレートに近づくよう、アニメーションループのウェイト ( 待機時間 ) を自動調整します。
目標フレームレートは setFrameRate ( float rate ) で設定します。また、実測フレームレートは getCurrentFrameRate ( ) で取得可能です。

・処理落ち

なお、実行環境の処理速度にも依存しますが、描画する画面サイズが大きかったり、描画内容が重かったりすると、
アニメーションの待機時間を最小にしても、実測フレームレートが目標フレームレートに達しなくなる現象 ―― 処理落ち ―― が生じます。

処理落ちが発生すると、画面の再描画処理が追いつかなくなり、画面がちらつく場合があります。
その場合は、目標フレームレートを実測フレームレートの限界よりも余裕のある値に設定する事で、画面のちらつきを抑える事ができます。
しかし、実測フレームレートは環境に大きく依存するため、代わりに setAnimationWaitMin ( int wait ) 関数でアニメーションウェイトの下限値(ミリ秒単位)を大きめに設定する事でも、
画面のちらつきを抑える事ができます( ただしこの場合、実測フレームレートの限界は低下します )。


目次 - Index

int getGraphics()
3DCGのグラフィックスリソースIDを返します。
int getBackgroundGraphics()
背景2DCGのグラフィックスリソースIDを返します。
int getForegroundGraphics()
前景2DCGのグラフィックスリソースIDを返します。
int getRenderer()
3DCGのレンダラーIDを返します。
int getBackgroundRenderer()
背景2DCGのレンダラーIDを返します。
int getForegroundRenderer()
前景2DCGのレンダラーIDを返します。
void setBackgroundRendererState(bool state)
背景2DCGレンダラーの有効/無効を設定します。
void setForegroundRendererState(bool state)
前景2DCGレンダラーの有効/無効を設定します。
int getImageLabel()
描画内容を表示する、画像ラベルのGUIコンポーネントIDを返します。
int getGraphicsLabel()
画像ラベルのGUIコンポーネントIDを返します。この関数は、より新しい getImageLabel 関数がサポートされています。この関数は互換目的でサポートされています。
int getWindow()
ウィンドウのGUIコンポーネントIDを取得します。
void setAnimationState(bool enable)
アニメーションモードの有効/無効を設定します。
bool getAnimationState()
アニメーションの有効/無効を取得します。
void setFrameRate(float rate)
アニメーションの画面更新頻度( 1秒間あたりの描画回数 )を設定します。
float getFrameRate()
アニメーションの画面更新頻度( 1秒間あたりの描画回数 )の設定値を取得します。
float getCurrentFrameRate()
アニメーションの画面更新頻度( 1秒間あたりの描画回数 )の実測値を取得します。
int getLastFrameTime()
アニメーションの最終画面更新時刻を取得します。時刻は、プログラム開始時刻からの経過時間を、通常はミリ秒単位で表したものが返されます。ただし単位は処理系によって異なる可能性があります。処理系の依存性を完全に排除するためには、Time.millisecond関数を挟んで使用して下さい。
float getCurrentFrameRate()
アニメーションの画面更新頻度( 1秒間あたりの描画回数 )の実測値を取得します。
int getLastFrameTime()
アニメーションの最終画面更新時刻を取得します。時刻は、プログラム開始時刻からの経過時間を、通常はミリ秒単位で表したものが返されます。ただし単位は処理系によって異なる可能性があります。処理系の依存性を完全に排除するためには、Time.millisecond関数を挟んで使用して下さい。
void setPaintGraphics2DState(bool state)
画面描画時(paintコール前)の背景・前景描画において、自動でGraphics3D.paintGraphics2Dをコールするかどうかを設定します。trueを指定すると自動でコールされます。falseに設定すると自動でコールされないので、paintイベントハンドラなどで明示的にコールする必要があります。
bool getPaintGraphics3DState()
画面描画時(paintコール前)に、自動でGraphics3D.paintGraphics3Dをコールするかどうかを取得します。
void setMagnification(float rate)
描画倍率を設定します。倍率は、視点から1.0の距離にある、半径1.0の円が、半径何ピクセルに描かれるかの比率に一致します。
float getMagnification()
描画倍率を取得します。倍率は、視点から1.0の距離にある、半径1.0の円が、半径何ピクセルに描かれるかの比率に一致します。
void setBackgroundColor(int r, int g, int b, int a)
背景色を設定します。引数には、背景色の 赤,緑,青,α成分 を、0〜255の範囲で指定します。
void setBackgroundColor(int color[ ])
背景色を設定します。引数には、背景色の 赤,緑,青,α成分 を、0〜255の範囲で格納した配列を指定します。
int[ ] getBackgroundColor()
背景色を取得します。戻り値には、背景色の 赤,緑,青,α成分 を、0〜255の範囲で格納した配列が返されます。
void setDirectionalLightVector(float x, float y, float z)
平行光源の方向ベクトルを指定します。ベクトルは、ライトの存在する方向のベクトルを指定します。
void setDirectionalLightVector(float v[ ])
平行光源の方向ベクトルを指定します。ベクトルは、ライトの存在する方向のベクトルを指定します。
float[ ] getDirectionalLightVector()
平行光源の方向ベクトルを取得します。ベクトルは、ライトの存在する方向のベクトルが返されます。
void setDirectionalLightBrightness(float power)
平行光源の輝度を指定します。
float getDirectionalLightBrightness()
平行光源の輝度を取得します。
void setAmbientLightBrightness(float power)
アンビエント光源の輝度を指定します。
float getAmbientLightBrightness()
アンビエント光源の輝度を取得します。
void setWindowTitle(string title)
ウィンドウタイトルを設定します。
string getWindowTitle()
ウィンドウタイトルを取得します。
void setWindowSize(int width, int height)
ウィンドウサイズを設定します。
void setWindowSize(int size[ ])
ウィンドウサイズを設定します。
int[ ] getWindowSize()
ウィンドウサイズを取得します。
void setWindowLocation(int x, int y)
ウィンドウの位置を設定します。
void setWindowLocation(int location[ ])
ウィンドウの位置を設定します。
int[ ] getWindowLocation()
ウィンドウの位置を取得します。
void setMarginRight(int margin)
ウィンドウ右側の余白を設定します。
int getMarginRight()
ウィンドウ右側の余白を取得します。
void setMarginLeft(int margin)
ウィンドウ左側の余白を設定します。
int getMarginLeft()
ウィンドウ左側の余白を取得します。
void setMarginTop(int margin)
ウィンドウ上側の余白を設定します。
int getMarginTop()
ウィンドウ上側の余白を取得します。
void setMarginBottom(int margin)
ウィンドウ下側の余白を設定します。
int getMarginBottom()
ウィンドウ下側の余白を取得します。
void setAnimationWaitMin(int wait)
アニメーションウェイト(メインループのウェイト)の下限値を設定します。
int getAnimationWaitMin()
アニメーションウェイト(メインループのウェイト)の下限値を設定します。
void setAnimationWaitMax(int wait)
アニメーションウェイト(メインループのウェイト)の上限値を設定します。
int getAnimationWaitMax()
アニメーションウェイト(メインループのウェイト)の上限値を設定します。
void setMainLoopState(bool state)
メインループの継続状態を設定します。falseに設定するとアニメーションのメインループを脱出し、プログラムを終了します。
bool getMainLoopState()
メインループの継続状態を取得します。
string[ ] getMainArgument()
main関数の引数を取得します。
void export( string filePath, string format, float quality )
現在の描画ラベルの内容を、画像ファイルに出力します。ファイルの出力は、この関数をコールした瞬間に行われるわけでは無く、次回の画面更新タイミングに合わせて実行されます。
void main( string args[ ] )
main関数です。通常は自動で実行され、frameworkMain関数をコールします。ただし、メインプログラムでmain関数を定義する場合は、こちらは自動で実行されなくなるので、下記のframeworkMainを明示的に呼ぶ必要があります。
void frameworkMain( string args[ ] )
フレームワークのメイン処理です。通常はmain関数から自動で実行されます。ただし、メインプログラムでmain関数を定義する場合は、自動で実行されなくなるので、適当なタイミングで呼ぶ必要があります。
void onWindowClose( int id )
ウィンドウが閉じられた際にコールされるイベントハンドラです。
void onWindowResize( int id, int width, int height )
ウィンドウがリサイズされた際にコールされるイベントハンドラです。
void paintWindow()
ウィンドウの再描画を行います。通常は自動で実行されますが、通常は自動で実行されますが、アニメーションを無効にしている場合などは、画面更新時に明示的に呼び出す必要があります。
void render()
paint関数などをコールし、画面表示内容を描画します。3DCGと、背景及び前景2DCGの合成も行います。通常は自動で実行されますが、アニメーションを無効にしている場合などは、画面更新時に明示的に呼び出す必要があります。

構造体 - Structs

- なし - None -


変数 - Variables

- なし - None -


関数 - Functions

文法的定義
- Signature
int getGraphics()
関数名
- Name
getGraphics
役割
- Role
3DCGのグラフィックスリソースIDを返します。
戻り値
- Return
(int型) 3DCGのグラフィックスリソースID
文法的定義
- Signature
int getBackgroundGraphics()
関数名
- Name
getBackgroundGraphics
役割
- Role
背景2DCGのグラフィックスリソースIDを返します。
戻り値
- Return
(int型) 背景2DCGのグラフィックスリソースID
文法的定義
- Signature
int getForegroundGraphics()
関数名
- Name
getForegroundGraphics
役割
- Role
前景2DCGのグラフィックスリソースIDを返します。
戻り値
- Return
(int型) 前景2DCGのグラフィックスリソースID
文法的定義
- Signature
int getRenderer()
関数名
- Name
getRenderer
役割
- Role
3DCGのレンダラーIDを返します。
戻り値
- Return
(int型) 3DCGのレンダラーID
文法的定義
- Signature
int getBackgroundRenderer()
関数名
- Name
getBackgroundRenderer
役割
- Role
背景2DCGのレンダラーIDを返します。
戻り値
- Return
(int型) 背景2DCGのレンダラーID
文法的定義
- Signature
int getForegroundRenderer()
関数名
- Name
getForegroundRenderer
役割
- Role
前景2DCGのレンダラーIDを返します。
戻り値
- Return
(int型) 前景2DCGのレンダラーID
文法的定義
- Signature
void setBackgroundRendererState(bool state)
関数名
- Name
setBackgroundRendererState
役割
- Role
背景2DCGレンダラーの有効/無効を設定します。
引数
- Arguments
(bool型) state : 背景2DCGレンダラーの有効/無効(trueならば有効)
戻り値
- Return
(void型)
文法的定義
- Signature
void setForegroundRendererState(bool state)
関数名
- Name
setForegroundRendererState
役割
- Role
前景2DCGレンダラーの有効/無効を設定します。
引数
- Arguments
(bool型) state : 前景2DCGレンダラーの有効/無効(trueならば有効)
戻り値
- Return
(void型)
文法的定義
- Signature
int getImageLabel()
関数名
- Name
getImageLabel
役割
- Role
描画内容を表示する、画像ラベルのGUIコンポーネントIDを返します。
戻り値
- Return
(int型) 画像ラベルのGUIコンポーネントID
文法的定義
- Signature
int getGraphicsLabel()
関数名
- Name
getGraphicsLabel
役割
- Role
画像ラベルのGUIコンポーネントIDを返します。この関数は、より新しい getImageLabel 関数がサポートされています。この関数は互換目的でサポートされています。
戻り値
- Return
(int型) 画像ラベルのGUIコンポーネントID
文法的定義
- Signature
int getWindow()
関数名
- Name
getWindow
役割
- Role
ウィンドウのGUIコンポーネントIDを取得します。
戻り値
- Return
(int型) ウィンドウのGUIコンポーネントID
文法的定義
- Signature
void setAnimationState(bool enable)
関数名
- Name
setAnimationState
役割
- Role
アニメーションモードの有効/無効を設定します。
引数
- Arguments
(bool型) enable : アニメーションモードの有効/無効(trueならば有効)
戻り値
- Return
(void型)
文法的定義
- Signature
bool getAnimationState()
関数名
- Name
getAnimationState
役割
- Role
アニメーションの有効/無効を取得します。
戻り値
- Return
(bool型) アニメーションモード有効/無効(trueならば有効)
文法的定義
- Signature
void setFrameRate(float rate)
関数名
- Name
setFrameRate
役割
- Role
アニメーションの画面更新頻度( 1秒間あたりの描画回数 )を設定します。
引数
- Arguments
(float型) rate : 画面更新頻度
戻り値
- Return
(void型)
文法的定義
- Signature
float getFrameRate()
関数名
- Name
getFrameRate
役割
- Role
アニメーションの画面更新頻度( 1秒間あたりの描画回数 )の設定値を取得します。
戻り値
- Return
(float型) 画面更新頻度(設定値)
文法的定義
- Signature
float getCurrentFrameRate()
関数名
- Name
getCurrentFrameRate
役割
- Role
アニメーションの画面更新頻度( 1秒間あたりの描画回数 )の実測値を取得します。
戻り値
- Return
(float型) 画面更新頻度(実測値)
文法的定義
- Signature
int getLastFrameTime()
関数名
- Name
getLastFrameTime
役割
- Role
アニメーションの最終画面更新時刻を取得します。時刻は、プログラム開始時刻からの経過時間を、通常はミリ秒単位で表したものが返されます。ただし単位は処理系によって異なる可能性があります。処理系の依存性を完全に排除するためには、Time.millisecond関数を挟んで使用して下さい。
戻り値
- Return
(int型) 最終画面更新時刻(通常はミリ秒単位)
文法的定義
- Signature
float getCurrentFrameRate()
関数名
- Name
getCurrentFrameRate
役割
- Role
アニメーションの画面更新頻度( 1秒間あたりの描画回数 )の実測値を取得します。
戻り値
- Return
(float型) 画面更新頻度(実測値)
文法的定義
- Signature
int getLastFrameTime()
関数名
- Name
getLastFrameTime
役割
- Role
アニメーションの最終画面更新時刻を取得します。時刻は、プログラム開始時刻からの経過時間を、通常はミリ秒単位で表したものが返されます。ただし単位は処理系によって異なる可能性があります。処理系の依存性を完全に排除するためには、Time.millisecond関数を挟んで使用して下さい。
戻り値
- Return
(int型) 最終画面更新時刻(通常はミリ秒単位)
文法的定義
- Signature
void setPaintGraphics2DState(bool state)
関数名
- Name
setPaintGraphics2DState
役割
- Role
画面描画時(paintコール前)の背景・前景描画において、自動でGraphics3D.paintGraphics2Dをコールするかどうかを設定します。trueを指定すると自動でコールされます。falseに設定すると自動でコールされないので、paintイベントハンドラなどで明示的にコールする必要があります。
引数
- Arguments
(bool型) state : 設定した状態
戻り値
- Return
(void型)
文法的定義
- Signature
bool getPaintGraphics3DState()
関数名
- Name
getPaintGraphics3DState
役割
- Role
画面描画時(paintコール前)に、自動でGraphics3D.paintGraphics3Dをコールするかどうかを取得します。
戻り値
- Return
(bool型) 取得した状態
文法的定義
- Signature
void setMagnification(float rate)
関数名
- Name
setMagnification
役割
- Role
描画倍率を設定します。倍率は、視点から1.0の距離にある、半径1.0の円が、半径何ピクセルに描かれるかの比率に一致します。
引数
- Arguments
(float型) rate : 描画倍率
戻り値
- Return
(void型)
文法的定義
- Signature
float getMagnification()
関数名
- Name
getMagnification
役割
- Role
描画倍率を取得します。倍率は、視点から1.0の距離にある、半径1.0の円が、半径何ピクセルに描かれるかの比率に一致します。
戻り値
- Return
(float型) 描画倍率
文法的定義
- Signature
void setBackgroundColor(int r, int g, int b, int a)
関数名
- Name
setBackgroundColor
役割
- Role
背景色を設定します。引数には、背景色の 赤,緑,青,α成分 を、0〜255の範囲で指定します。
引数
- Arguments
(int型) r : 背景色(赤、0〜255)
(int型) g : 背景色(緑、0〜255)
(int型) b : 背景色(青、0〜255)
(int型) a : 背景色(α成分、0〜255)
戻り値
- Return
(void型)
文法的定義
- Signature
void setBackgroundColor(int color[ ])
関数名
- Name
setBackgroundColor
役割
- Role
背景色を設定します。引数には、背景色の 赤,緑,青,α成分 を、0〜255の範囲で格納した配列を指定します。
引数
- Arguments
(int[]型) color : 背景色配列([0]=赤、[1]=緑、[2]=青、[3]=α成分、各0〜255)
戻り値
- Return
(void型)
文法的定義
- Signature
int[ ] getBackgroundColor()
関数名
- Name
getBackgroundColor
役割
- Role
背景色を取得します。戻り値には、背景色の 赤,緑,青,α成分 を、0〜255の範囲で格納した配列が返されます。
戻り値
- Return
(int[]型) 背景色配列([0]=赤、[1]=緑、[2]=青、[3]=α成分、各0〜255)
文法的定義
- Signature
void setDirectionalLightVector(float x, float y, float z)
関数名
- Name
setDirectionalLightVector
役割
- Role
平行光源の方向ベクトルを指定します。ベクトルは、ライトの存在する方向のベクトルを指定します。
引数
- Arguments
(float型) x : X成分
(float型) y : Y成分
(float型) z : Z成分
戻り値
- Return
(void型)
文法的定義
- Signature
void setDirectionalLightVector(float v[ ])
関数名
- Name
setDirectionalLightVector
役割
- Role
平行光源の方向ベクトルを指定します。ベクトルは、ライトの存在する方向のベクトルを指定します。
引数
- Arguments
(float[]型) v : ベクトル成分配列( v[0]=X、v[1]=Y、v[2]=Z )
戻り値
- Return
(void型)
文法的定義
- Signature
float[ ] getDirectionalLightVector()
関数名
- Name
getDirectionalLightVector
役割
- Role
平行光源の方向ベクトルを取得します。ベクトルは、ライトの存在する方向のベクトルが返されます。
戻り値
- Return
(float[]型) ベクトル成分配列( v[0]=X、v[1]=Y、v[2]=Z )
文法的定義
- Signature
void setDirectionalLightBrightness(float power)
関数名
- Name
setDirectionalLightBrightness
役割
- Role
平行光源の輝度を指定します。
引数
- Arguments
(float型) power : 輝度
戻り値
- Return
(void型)
文法的定義
- Signature
float getDirectionalLightBrightness()
関数名
- Name
getDirectionalLightBrightness
役割
- Role
平行光源の輝度を取得します。
戻り値
- Return
(float型) 輝度
文法的定義
- Signature
void setAmbientLightBrightness(float power)
関数名
- Name
setAmbientLightBrightness
役割
- Role
アンビエント光源の輝度を指定します。
引数
- Arguments
(float型) power : 輝度
戻り値
- Return
(void型)
文法的定義
- Signature
float getAmbientLightBrightness()
関数名
- Name
getAmbientLightBrightness
役割
- Role
アンビエント光源の輝度を取得します。
戻り値
- Return
(float型) 輝度
文法的定義
- Signature
void setWindowTitle(string title)
関数名
- Name
setWindowTitle
役割
- Role
ウィンドウタイトルを設定します。
戻り値
- Return
(void型)
文法的定義
- Signature
string getWindowTitle()
関数名
- Name
getWindowTitle
役割
- Role
ウィンドウタイトルを取得します。
戻り値
- Return
(string型)
文法的定義
- Signature
void setWindowSize(int width, int height)
関数名
- Name
setWindowSize
役割
- Role
ウィンドウサイズを設定します。
引数
- Arguments
(int型) width : 幅
(int型) height : 高さ
戻り値
- Return
(void型)
文法的定義
- Signature
void setWindowSize(int size[ ])
関数名
- Name
setWindowSize
役割
- Role
ウィンドウサイズを設定します。
引数
- Arguments
(int[]型) size : ウィンドウサイズ([0]=幅、[1]=高さ)
戻り値
- Return
(void型)
文法的定義
- Signature
int[ ] getWindowSize()
関数名
- Name
getWindowSize
役割
- Role
ウィンドウサイズを取得します。
戻り値
- Return
(int[]型) ウィンドウサイズ([0]=幅、[1]=高さ)
文法的定義
- Signature
void setWindowLocation(int x, int y)
関数名
- Name
setWindowLocation
役割
- Role
ウィンドウの位置を設定します。
引数
- Arguments
(int型) x : ウィンドウ左上のX座標
(int型) y : ウィンドウ左上のY座標
戻り値
- Return
(void型)
文法的定義
- Signature
void setWindowLocation(int location[ ])
関数名
- Name
setWindowLocation
役割
- Role
ウィンドウの位置を設定します。
引数
- Arguments
size : ウィンドウ左上の座標([0]=X座標、[1]=Y座標)
戻り値
- Return
(void型)
文法的定義
- Signature
int[ ] getWindowLocation()
関数名
- Name
getWindowLocation
役割
- Role
ウィンドウの位置を取得します。
戻り値
- Return
(int[]型) ウィンドウ左上の座標([0]=X座標、[1]=Y座標)
文法的定義
- Signature
void setMarginRight(int margin)
関数名
- Name
setMarginRight
役割
- Role
ウィンドウ右側の余白を設定します。
引数
- Arguments
(int型) margin : 余白(ピクセル)
戻り値
- Return
(void型)
文法的定義
- Signature
int getMarginRight()
関数名
- Name
getMarginRight
役割
- Role
ウィンドウ右側の余白を取得します。
戻り値
- Return
(int型) 余白(ピクセル)
文法的定義
- Signature
void setMarginLeft(int margin)
関数名
- Name
setMarginLeft
役割
- Role
ウィンドウ左側の余白を設定します。
引数
- Arguments
m : 余白(ピクセル)
戻り値
- Return
(void型)
文法的定義
- Signature
int getMarginLeft()
関数名
- Name
getMarginLeft
役割
- Role
ウィンドウ左側の余白を取得します。
戻り値
- Return
(int型) 余白(ピクセル)
文法的定義
- Signature
void setMarginTop(int margin)
関数名
- Name
setMarginTop
役割
- Role
ウィンドウ上側の余白を設定します。
引数
- Arguments
m : 余白(ピクセル)
戻り値
- Return
(void型)
文法的定義
- Signature
int getMarginTop()
関数名
- Name
getMarginTop
役割
- Role
ウィンドウ上側の余白を取得します。
戻り値
- Return
(int型) 余白(ピクセル)
文法的定義
- Signature
void setMarginBottom(int margin)
関数名
- Name
setMarginBottom
役割
- Role
ウィンドウ下側の余白を設定します。
引数
- Arguments
m : 余白(ピクセル)
戻り値
- Return
(void型)
文法的定義
- Signature
int getMarginBottom()
関数名
- Name
getMarginBottom
役割
- Role
ウィンドウ下側の余白を取得します。
戻り値
- Return
(int型) 余白(ピクセル)
文法的定義
- Signature
void setAnimationWaitMin(int wait)
関数名
- Name
setAnimationWaitMin
役割
- Role
アニメーションウェイト(メインループのウェイト)の下限値を設定します。
戻り値
- Return
(void型)
文法的定義
- Signature
int getAnimationWaitMin()
関数名
- Name
getAnimationWaitMin
役割
- Role
アニメーションウェイト(メインループのウェイト)の下限値を設定します。
戻り値
- Return
(int型)
文法的定義
- Signature
void setAnimationWaitMax(int wait)
関数名
- Name
setAnimationWaitMax
役割
- Role
アニメーションウェイト(メインループのウェイト)の上限値を設定します。
戻り値
- Return
(void型)
文法的定義
- Signature
int getAnimationWaitMax()
関数名
- Name
getAnimationWaitMax
役割
- Role
アニメーションウェイト(メインループのウェイト)の上限値を設定します。
戻り値
- Return
(int型)
文法的定義
- Signature
void setMainLoopState(bool state)
関数名
- Name
setMainLoopState
役割
- Role
メインループの継続状態を設定します。falseに設定するとアニメーションのメインループを脱出し、プログラムを終了します。
引数
- Arguments
(bool型) state : メインループの継続状態
戻り値
- Return
(void型)
文法的定義
- Signature
bool getMainLoopState()
関数名
- Name
getMainLoopState
役割
- Role
メインループの継続状態を取得します。
戻り値
- Return
(bool型) メインループの継続状態
文法的定義
- Signature
string[ ] getMainArgument()
関数名
- Name
getMainArgument
役割
- Role
main関数の引数を取得します。
戻り値
- Return
(string[]型) main関数の引数
文法的定義
- Signature
void export( string filePath, string format, float quality )
関数名
- Name
export
役割
- Role
現在の描画ラベルの内容を、画像ファイルに出力します。ファイルの出力は、この関数をコールした瞬間に行われるわけでは無く、次回の画面更新タイミングに合わせて実行されます。
引数
- Arguments
(string型) filePath : 出力ファイル名またはファイルパス
(string型) format : ファイル形式("PNG"または"JPEG")
(float型) quality : 品質
戻り値
- Return
(void型)
文法的定義
- Signature
void main( string args[ ] )
関数名
- Name
main
役割
- Role
main関数です。通常は自動で実行され、frameworkMain関数をコールします。ただし、メインプログラムでmain関数を定義する場合は、こちらは自動で実行されなくなるので、下記のframeworkMainを明示的に呼ぶ必要があります。
引数
- Arguments
(string[]型) args : メイン引数( getMainArgument関数で取得可能 )
戻り値
- Return
(void型)
文法的定義
- Signature
void frameworkMain( string args[ ] )
関数名
- Name
frameworkMain
役割
- Role
フレームワークのメイン処理です。通常はmain関数から自動で実行されます。ただし、メインプログラムでmain関数を定義する場合は、自動で実行されなくなるので、適当なタイミングで呼ぶ必要があります。
引数
- Arguments
(string[]型) args : メイン引数( getMainArgument関数で取得可能 )
戻り値
- Return
(void型)
文法的定義
- Signature
void onWindowClose( int id )
関数名
- Name
onWindowClose
役割
- Role
ウィンドウが閉じられた際にコールされるイベントハンドラです。
引数
- Arguments
(int型) id : ウィンドウのGUIコンポーネントID
戻り値
- Return
(void型)
文法的定義
- Signature
void onWindowResize( int id, int width, int height )
関数名
- Name
onWindowResize
役割
- Role
ウィンドウがリサイズされた際にコールされるイベントハンドラです。
引数
- Arguments
(int型) id : ウィンドウのGUIコンポーネントID
(int型) width : ウィンドウの幅
(int型) height : ウィンドウの高さ
戻り値
- Return
(void型)
文法的定義
- Signature
void paintWindow()
関数名
- Name
paintWindow
役割
- Role
ウィンドウの再描画を行います。通常は自動で実行されますが、通常は自動で実行されますが、アニメーションを無効にしている場合などは、画面更新時に明示的に呼び出す必要があります。
戻り値
- Return
(void型)
文法的定義
- Signature
void render()
関数名
- Name
render
役割
- Role
paint関数などをコールし、画面表示内容を描画します。3DCGと、背景及び前景2DCGの合成も行います。通常は自動で実行されますが、アニメーションを無効にしている場合などは、画面更新時に明示的に呼び出す必要があります。
戻り値
- Return
(void型)