我有一個正在移動和旋轉的3D對象。 我想實現的目的是在屏幕上顯示3D物體的周圍2D框。 (我會定義其2D框,投影到屏幕上時,它包含我的3D對象的最小的矩形。) 這裏是一個快速圖紙來說明我的意思:http://img4.hostingpics.net/pics/719280exemple.png
計算圍繞3D對象的2D矩形
我已經使用3D邊界框嘗試但是由此產生的2D投影太大(旋轉3D盒的投影角落可能離實際頂點相當遠)。 3D對象旋轉之後的2D邊界框也不起作用(因爲它是平坦的,例如圍繞x軸的90°旋轉會將我的2D框投影爲線)
一種替代方法可以是查看所有頂點我的3D對象並確定哪些是x/y中的最小/最大值。然而:(i)這可能是cpu消耗,特別是對於大型模型,以及(ii)我無法找到訪問我的3D對象的(轉換的)頂點的方式 - 我正在使用libgdx。
有沒有人有一個想法如何實現這一目標?
非常感謝
PS:我也張貼這對libgdx論壇,但我想這不僅是libgdx相關
你嘗試過用你正在渲染的相機「投射」三維邊界框? – cfrick 2014-11-06 19:19:36
謝謝。這確實可行。然而,我的鬥爭與libgdx錯誤有關(參見下面的答案) – Francois 2014-11-07 08:53:33