立体の色設定

ここでは、立体の色設定を扱います。

- 目次 -

モデルの色設定

モデルの色を変更するには、 setModelColor 関数を使用します。

- 関数の形式 -

void setModelColor (
  int modelID,
  int red, int green, int blue, int alpha
)

引数は以下の通りです:

ポリゴンの色設定

ポリゴンの色を変更するには、 setPolygonColor 関数を使用します。

- 関数の形式 -

void setPolygonColor (
  int polygonID,
  int red, int green, int blue, int alpha
)

引数は以下の通りです:

RGBA形式とは

RGBA形式とは、色の三原色である赤(Red)、緑(Green)、青(Blue)の色成分に、アルファ成分(Alpha)を加えた形式です。アルファ成分は色の透明度(不透明度)を表すもので、0で完全透明になり、最大にすると不透明になります。

赤, 緑, 青それぞれの色成分の間における色の合成は、加法混色によって行われます。これは光の重ね合わせと同じ混色方式であり、絵の具の混ぜ合わせ(減法混色)とは異なる事にご注意ください。

RGB形式の混色図
加法混色
RGBA形式による赤(Red)、緑(Green)、青(Blue)成分の混色は、絵の具のような減法混色では無く、光のような加法混色によって処理される。

典型的な混色の例として:

プログラム例

実際に球モデルを配置し、青色に設定してみましょう。 以下のように記述し、実行してみてください。


import graphics3d.Graphics3DFramework;
import Graphics3D;

// プログラムの最初に呼び出される関数
void onStart ( int rendererID ) {

	// 画面サイズや背景色の設定(省略可能)
	setWindowSize( 800, 600 );
	setBackgroundColor( 0, 0, 0, 255 );

	
	// 球モデルを生成して配置
	int sphere = newSphereModel( 1.0, 1.0, 1.0, 10, 7 );
	mountModel( sphere, rendererID );

	// 球モデルを青色に設定
	setModelColor( sphere, 0, 0, 255, 255 );
}
Sample.vcssl

このプログラムを実行すると、黒い背景に青い球が描画されます。

実行結果、青い球の図
実行結果
球モデルが青色に色設定された様子が見て取れる。