OpenGL講習 インデックスに戻る

内容

実習1の内容を踏まえて、三角形の数を増やします。
三角形の数は横6×縦5個とし、四隅をそれぞれ赤・青・緑・黄色として、中間の色は滑らかにつながるように色指定を行います。

Sample02.jpg

ソースダウンロード

http://dl.getdropbox.com/u/235401/OpenGL/Sample02.zip

解説

描画

 
void Render()
{
	glClear( GL_COLOR_BUFFER_BIT );
 
	glBegin( GL_TRIANGLES );
	{
		for ( int i = 0 ; i < 6 ; i ++ )
		{
			for ( int j = 0 ; j < 5 ; j ++ )
			{
				double left = (double) i / 6;
				double right = (double) ( i + 1 ) / 6;
 
				double top = (double) j / 5;
				double bottom = (double) ( j + 1 ) / 5;
 
				int red = ( 6 - i ) * 255 / 6;
				int green = (int) ( ( ( (double) i / 6 * 2 - 1 ) * ( 1 - (double) j / 5 * 2 ) + 1 ) * 127 );
				int blue = i * j * 255 / ( 6 * 5 );
 
				glColor3ub( red, green, blue );
 
				glVertex2d( 
					right * 2 - 1, 
					-( top * 2 - 1 ) );
				glVertex2d( 
					right * 2 - 1, 
					-( bottom * 2 - 1 ) );
				glVertex2d( 
					left * 2 - 1, 
					-( bottom * 2 - 1 ) );
			}
		}								   
	}
	glEnd();
 
	glutSwapBuffers();
}
 

特に目新しいことはしていませんね。
forループと媒介変数を適宜使って、頂点座標・色を指定しています。


添付ファイル: fileSample02.jpg 1265件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2010-10-24 (日) 17:14:24 (2586d)