[英]Can't define one QUAD properly
我想要一個矩形立方體。 一堵牆的另一側有面,所以我看不到粉紅色。 這是多維數據集的好方面:
立方體的背面是牆壁的灰色背面:
這是代碼:
glBegin(GL_QUADS);
//floor
glMaterialfv(GL_FRONT, GL_DIFFUSE, floor_diffuse);
glVertex3f(-floor_size_x / 2, 0, floor_size_z / 2);
glVertex3f(floor_size_x / 2, 0, floor_size_z / 2);
glVertex3f(floor_size_x / 2, 0, -floor_size_z / 2);
glVertex3f(-floor_size_x / 2, 0, -floor_size_z / 2);
//roof
glMaterialfv(GL_FRONT, GL_DIFFUSE, roof_diffuse);
glVertex3f(-floor_size_x / 2, wall_height, floor_size_z / 2);
glVertex3f(floor_size_x / 2, wall_height, floor_size_z / 2);
glVertex3f(floor_size_x / 2, wall_height, -floor_size_z / 2);
glVertex3f(-floor_size_x / 2, wall_height, -floor_size_z / 2);
//walls
glMaterialfv(GL_FRONT, GL_DIFFUSE, walls_diffuse);
glVertex3f(-floor_size_x / 2, 0, floor_size_z / 2);
glVertex3f(-floor_size_x / 2, wall_height, floor_size_z / 2);
glVertex3f(-floor_size_x / 2, wall_height, -floor_size_z / 2);
glVertex3f(-floor_size_x / 2, 0, -floor_size_z / 2);
glVertex3f(floor_size_x / 2, 0, floor_size_z / 2);
glVertex3f(floor_size_x / 2, wall_height, floor_size_z / 2);
glVertex3f(floor_size_x / 2, wall_height, -floor_size_z / 2);
glVertex3f(floor_size_x / 2, 0, -floor_size_z / 2);
glVertex3f(-floor_size_x / 2, 0, -floor_size_z / 2);
glVertex3f(-floor_size_x / 2, wall_height, -floor_size_z / 2);
glVertex3f(floor_size_x / 2, wall_height, -floor_size_z / 2);
glVertex3f(floor_size_x / 2, 0, -floor_size_z / 2);
//BAD WALL
glVertex3f(floor_size_x / 2, 0, floor_size_z / 2);
glVertex3f(floor_size_x / 2, wall_height, floor_size_z / 2);
glVertex3f(-floor_size_x / 2, wall_height, floor_size_z / 2);
glVertex3f(-floor_size_x / 2, 0, floor_size_z / 2);
glEnd();
我已經嘗試了所有組合(逆時針)順序,但結果仍然相同。 有任何想法嗎?
我相信您沒有正確識別牆壁。 您創建的第一個( X = - floor_size_x / 2
),第3個( Z = - floor_size_z / 2
)和第4個( Z = floor_size_z / 2
)都是順時針指定的,而第二個( X = floor_size_x / 2
)是逆時針指定。 我猜這實際上是不正確的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.