11.マテリアルの効果の利用

    
    マテリアルの効果を利用すると、描画されるモデルに質感を与えることができます。
    10.で作成したモデルビューワにマテリアルの効果を付加します。
    
    実行形式ファイルダウンロード (ModelViewer8_exe.lzh)
    
    ソースファイルダウンロード (ModelViewer8_src.lzh)
プロジェクトを開く
10.で作成したモデルビューワプロジェクトを開きます。
面に対してマテリアルの効果を有効にする
面に対してマテリアルの効果が有効になるように
    CModelViewerView::RenderObjects関数
    の実装を変更します。
    
    面の描画処理の、
    glEnable( GL_COLOR_MATERIAL );
    と
    glColor3f( 0.5, 0.5, 0 );
    をコメントアウトし、
    直後に、
    float f4Ambient[4] = { 0.25f, 0.20725f, 0.20725f,
1.0f };
    ::glMaterialfv( GL_FRONT_AND_BACK, GL_AMBIENT,
f4Ambient );
    float f4Diffuse[4] = { 1.0f, 0.829f, 0.829f,
1.0f };
    ::glMaterialfv( GL_FRONT_AND_BACK, GL_DIFFUSE,
f4Diffuse );
    float f4Specular[4] = { 0.296648f, 0.296648f,
0.296648f, 1.0f };
    ::glMaterialfv( GL_FRONT_AND_BACK, GL_SPECULAR,
f4Specular );
    float fShininess = 0.088f;
    ::glMaterialf( GL_FRONT_AND_BACK, GL_SHININESS,
fShininess );
    を追加します。
    
    
    
    ビルドし、エラー、警告がないことを確認します。
実行
実行し、sphere.stlファイルを読み込み、真珠のような質感でモデルが描画されているのを確認します。
    (「メニュー/表示/描画」で、点、線を非描画にしています。)
    
    実行結果
    
    
    参考)10.で作成したモデルビューワで、sphere.stlを読み込んだ場合の画面
    (「メニュー/表示/描画」で、点、線を非描画にしています。)
    

