2017-04-26 13 views
0

私はopenTKを使用して3Dキューブをレンダリングしていますが、照明が期待通りにレンダリングされません。 r、g、b(頂点線の最後の3つの値)の値は、使用するべき正しい正常な値ですか?これは3Dキューブの通常の値ですか?

これは私が与えられた立方体の形式です:

Vertex Format x,y,z,r,g,b 
24 
-0.2,-0.2,-0.2,0,1,0 
0.2,-0.2,-0.2,0,1,0 
-0.2,0.2,-0.2,0,1,0 
0.2,0.2,-0.2,0,1,0 
-0.2,-0.2,0.2,0,1,0 
0.2,-0.2,0.2,0,1,0 
-0.2,0.2,0.2,0,1,0 
0.2,0.2,0.2,0,1,0 
0.2,-0.2,-0.2,1,0,0 
0.2,-0.2,0.2,1,0,0 
0.2,0.2,-0.2,1,0,0 
0.2,0.2,0.2,1,0,0 
-0.2,-0.2,-0.2,1,0,0 
-0.2,-0.2,0.2,1,0,0 
-0.2,0.2,-0.2,1,0,0 
-0.2,0.2,0.2,1,0,0 
-0.2,-0.2,-0.2,0,0,1 
-0.2,-0.2,0.2,0,0,1 
0.2,-0.2,-0.2,0,0,1 
0.2,-0.2,0.2,0,0,1 
-0.2,0.2,-0.2,0,0,1 
-0.2,0.2,0.2,0,0,1 
0.2,0.2,-0.2,0,0,1 
0.2,0.2,0.2,0,0,1 
Index Format v1,v2,v3 
12 
1,0,2 
1,2,3 
4,5,6 
6,5,7 
9,8,10 
9,10,11 
12,13,14 
14,13,15 
17,16,18 
17,18,19 
20,21,22 
22,21,23 
+0

いいえ、そうではありません。 [2次元オブジェクトを3Dオブジェクトに変更するOpenGl](http://stackoverflow.com/a/43627507/2521214)キューブの法線がどのように見えるか...法線を手動で追加するか、クロスプロダクトで計算する必要があります。 – Spektre

答えて

0

いいえ、これらは間違いなく正しい法線ではありません。

立方体は6つの辺の向きが異なるため、6つの異なる法線が必要です。現在、あなたは3つしか持っていません。注意すべき点は、法線ベクトルの符号が重要なので、[1、0、0]!= [-1,0,0]であることに注意してください。

関連する問題