Open Source Web Development Tutorials - Dev Shed
OpenGLでの基本的なライティング
(2009/02/24公開)
ライティングモデル
最後の手順は、ライティングモデルの選択です。ライティングモデルは、2つの要素を決定します。まず、ユーザーがシーンを無限遠の距離から見ているのか、ローカルに見ているのかを決定します。ユーザーがシーンを無限遠から見ている場合、光の角度と参照者の角度は無視されます。その結果のライティングは、非現実的なものになります。次に、ライティングモデルによって、オブジェクトの前面と背面の計算を別々に行う必要があるかどうかが決まります。
ライティングモデルを選択するには、glLightModel*()メソッドを使用します。このメソッド(OpenGLではコマンドと呼ばれます)は、シーンのオブジェクトに投げかけられるグローバルな環境光の明るさを設定するために使われます。
glLightModel*()のバリアントの1つがglLightModelfv()です。このメソッドに指定するパラメータで、設定するグローバルな環境光と、グローバルな環境光の色を定義する配列とを、OpenGLに渡します。例えば、色の値が0.5f、0.5f、0.5f、1.0fであるグローバルな環境光を設定するステートメントは、次のようになります。
Glfloat global_ambient[] = {0.5f, 0.5f, 0.5f, 1.0f};
glLightModelfv(GL_LIGHT_MODEL_AMBIENT, global_ambient);
アプリケーションやゲームで基本的なライティングを実装するために必要な手順は以上です。次のセクションでは、既存のフレームワークに基本的なライティングを追加します。
Copyright © 2008 Ziff Davis Enterprise, Inc.
Originally appearing in the U.S. Edition of Dev Shed. All Rights Reserved.








