2017-10-04 94 views
0

Xcode中的場景編輯器顯示尺寸但沒有單位。它是英寸尺寸還是米尺寸?Xcode中場景編輯器使用什麼單位?

例如,當我選擇一個節點時,例如,一個盒子,當我在Node Inspector中檢查它的屬性,並在「Bounding Box」旁邊的「Transforms」部分檢查它的大小時,不顯示任何單位。

Bounding Box in the Scene Editor in Xcode

單位似乎並不涉及到了在「語言&地區」偏好設置中設置系統的測量單位(在「高級...」酥料餅),因爲數字唐當我在「公制」和「美國」之間切換測量單位時,在節點檢查器中不會發生變化。

回答

0

尺寸以米爲單位表示。請參閱SceneKit文檔:

SceneKit的物理模擬中的所有值都使用國際單位制(SI):質量單位是千克;力,脈衝和扭矩的單位是牛頓,牛頓秒和牛頓米;和節點位置和大小的距離單位是計量器

+0

從蘋果獲得有關顯示丟失單位的反饋意見:「SceneKit中的基本單位始終是計量表,不能更改,因此您始終可以認爲它是事實。」 –

2

你從蘋果那裏得到的答案是正確的,但也是不完整的。

在諸如SceneKit的3D場景圖模型中,長度單位對於大多數目的而言並不重要。它可以是完全任意的,只要你的單位一直使用,單位的選擇和使用對視覺效果沒有影響。例如,下面的場景看起來都如出一轍:

  • 將1.0米寬的立方體,遠離相機3.0米
  • 一個0.1米寬的立方體,遠離0.3米從相機
  • 0.91米多寬的立方體,遠離相機2.73米
  • 一個1.0英尺寬的立方體,從相機
  • 一個6.28 frobnitz寬立方體,18.84 frobnitz遠離相機(你如何轉換frobnitz到米?隱而不宣3.0英尺遠沒關係!)

除此之外,場景圖中的每個節點都可以對其子節點應用縮放比例。因此,您可以將寬度設置爲1.0單位的立方體和設置爲3.0單位的攝像機設置爲相距3.0的單位,並且將這兩個單位都視爲規模爲0.91的節點的子節點,即使在其他地方還有其他地方在「1.0單位」是指1米的場景中,立方體和相機不同意「1.0單位」的含義。 (對於他們來說,這是一個美國院子)。因此,SceneKit(和Xcode的場景編輯UI)中的大多數基於長度的屬性都不標記它們的單位,因爲它們的單位與其父級(可能是任意的)節點。

有幾個地方的場景空間單位的意義開始發揮作用:

  1. 如果你開始使用物理模擬。當質量,力量,能量和摩擦開始捲入其中時,長度單位與其他數量單位之間的關係變得重要。物理引擎的其餘部分(質量,力量,衝動)使用SI單位(千克,牛頓,牛頓秒),所以爲了簡單起見,我們假設長度(以及延伸,面積,體積和速度)也一樣。

  2. 如果您需要渲染場景以使結果看起來與另一個3D空間對齊,如在AR或VR中。當與ARKit一起使用時,SceneKit長度/距離以米爲單位,以便渲染的圖像看起來像ARKit所測量的那樣居住在真實世界中。

所以,是的 - 你從蘋果公司得到的答案是正確的......在最廣泛的使用案例,這是最好的假設的SceneKit空間未標記的單位是米,並設計相應。但重要的是要知道爲什麼,什麼時候該假設適用,什麼時候只是一個任意假設。

相關問題