OpenGL入門
光源のパラメータ設定2
光源のパラメータ設定1では、
OpenGLにて光源を設定する際に最もよく利用する
「GL_POSITION(位置)」
「GL_DIFFUSE(拡散光)」
「GL_AMBIENT(環境光)」
「GL_SPECULAR(鏡面光)」
のパラメータを変更させて描画しました。
今回は、光源からの距離で明るさの減衰を表すパラメタ「GL_LINEAR_ATTENUATION(線形減衰)」を変化させてみます。
光源の設定
光源の設定は次のように「glLightfv」関数を用いることで指定することができます。
glLightfv(GL_LIGHT0, GL_POSITION, lightPosition);
glLightfv(GL_LIGHT0, GL_DIFFUSE, lightDiffuse);
glLightfv(GL_LIGHT0, GL_AMBIENT, lightAmbient);
glLightfv(GL_LIGHT0, GL_SPECULAR, lightSpecular);
glLightf( GL_LIGHT0, GL_LINEAR_ATTENUATION, 0.01);
減衰を表現するパラメタは「GL_LINEAR_ATTENUATION」の他にも、 「GL_CONSTANT_ATTENUATION(一定減衰)」 「GL_QUADRATIC_ATTENUATION(二次減衰)」があります。詳細は、光と反射をご覧ください。