6

glNormal3fを理解できません。これは、頂点の「法線」を「正規化」するために機能することを知っています...またはそのようなものですが、頂点の「法線」が何であるかを理解できません。その機能を説明してもらえますか?openGLで「通常」が何を意味するのか理解できません...

4

2 に答える 2

8

頂点の「法線」は、頂点に「垂直」なベクトルです。数学では、「法線」は「垂直」の一般化です。ポリゴンの場合、この「法線ベクトル」はポリゴンに垂直であり、そのすべての頂点で同じです。ポリゴンの各頂点に異なる法線ベクトルを割り当てる理由の1つは、曲面を非常に小さな三角形で覆っている場合です。この場合、三角形の3つの頂点の法線ベクトルがすべて同じになることは望ましくありません。

では、この法線ベクトルは何に使用されますか?OpenGLで照明が有効になっている場合、一般的なアプリケーションは色の計算に使用されます。法線ベクトルは、光源からの光が表面に当たるかどうか、および光線が表面に対してどの角度をなすかを決定できます。次に、これを使用して、たとえば、サーフェスがシャドウされているか、鏡面ハイライトが含まれているかを判断できます。

于 2012-10-31T00:31:40.977 に答える
7

toを呼び出すとglNormal、最後に放出された頂点に法線ベクトルが放出されます。頂点法線は通常、頂点に入射する面の法線の正規化された平均として計算されます。面の法線はベクトルであるため、面によって記述される平面に垂直になります。

この関数は非推奨であり、あなたは本当に良い/チュートリアルまたは本を手に入れるべきです。

頂点法線および関連するエントリも参照してください。

glVertex*および関連する機能を使用すべきでない場合glNormal*、何を使用する必要がありますか?シェーダーとVBO。この質問を見てください。

于 2012-10-31T00:30:37.623 に答える