簡體   English   中英

SceneKit節點不會改變場景根節點的位置

[英]SceneKit nodes aren't changing position with scene's root node

我正在使用帶有ARKit的SceneKit,現在有一個簡單的應用程序,我點擊屏幕,它為我的場景添加了一個ARAnchor和一個SCNNode。

在某些時候,我想要移動整個場景,所以我嘗試更改sceneView.scene.rootNode.position.x += 10來測試它。 如果我在任何特定節點上調用它,該節點確實會正確移動。 但是在rootNode上調用它,沒有任何反應,我希望每個子節點(場景中的每個節點)都隨之移動。

為什么我的其他節點沒有正確移動,我能做些什么來解決這個問題? 或者我在考慮這個錯誤?

根據SCNScene.rootNode的文檔:

您不應該修改根節點的transform屬性。

根節點定義世界坐標系的原點 - 所有其他測量都與它相關。 因此,改變其位置,方向,規模或其變換的任何其他方面都沒有意義(並且通常是有問題的)。

如果要移動SceneKit場景中的所有內容,請創建一個新節點以包含所有其他節點,並更改該節點的變換。 (對於ARSCNView添加的節點,您無法執行此ARSCNView ,因為ARKit會生成根節點的直接子節點,但這些節點的重點是將它們放置在世界空間中。)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM