iOS で SceneKit を試す(Swift 3) その89 - SCNNode をフラット化する。
もう1つ忘れていたものノードのフラット化について。
Scene Graph でチルドノードが増えすぎたりするとドローコールが増えるため、パフォーマンスが落ちる可能性があり、 SceneKit の機能でノードのジオメトリをひとまとめにする Flatten Node の処理を行うことで緩和できる可能性がある。
フラット化できるもの
基本、ジオメトリとマテリアルのみで他は無視されたはず。
Scene Editor での使用
今回、ピンク、青と青のクローン、緑と緑のクローンの球を設定。
Scene Graph View でチルドノードのあるノードを選択。
右クリックから Flatten Node を押すとひとまとめになる。
Attributes Inspector の Geometory Elements のエレメントが3つになっており、 最適化がされている。
コードでの使用
SCNNode に flattenedClone() メソッドがあり、実行するとフラット化された SCNNode が返る。
注意点
たまに中身がおかしくなる場合があるので、必ず確認しよう。
特にコードで行う場合。
今回はここまで。