在我的第一個libgdx 3D遊戲中,我現在從createBox
切換到createRect
,僅創建可見面(如果牆位於另一面牆的左側,其右面不是可見...)。我創建了4種型號:Libgdx ModelBuilder.createRect僅在一側可見
frontFace
backFace
rightFace
leftFace
他們幾乎繪製他們實際上應該如何。 但是有一個大問題:只有當我看到積極的z-Direction
時,側面纔可見。 如果我看着另一面(負面的z-Direction
),他們不畫。正面和背面只能畫,如果我看他們在負面x-Direction
。 這是否與法線有關?我已將它們設置爲:
normal.x = 0;
normal.y = 1;
normal.z = 0;
這是錯誤嗎?我應該如何設置法線?他們代表什麼?我對燈光的法線貼圖有一些基本的想法,那是一樣的嗎?
重要注意事項:我已禁用背面剔除,但沒有任何區別。查看截錐體剔除已打開。如果需要更多信息,請發表評論,我會盡快添加。謝謝
感謝您的回答。我只需要創建1x1x1的塊。那麼我應該如何在沒有createBox/creatRect的情況下構建它們? – Springrbua
@Springrbua使用Blender或其他3D編輯器來達到此目的。如果您打算使用Blender,只需添加一個名爲'Cube'的網格並適當調整它的大小。然後以'.obj'格式文件導出並在libGDX中加載這個網格。 – Nolesh
@Nolesh爲什麼這比在運行時創建rects更高效? – Springrbua