iOS で SceneKit を試す(Swift 3) その38 - Scene Editor カメラの基本設定
今回はカメラの基本設定のプロパティについてのご紹介。
カメラを選択して Attributes Inspector(Command + Option + 4)を選択。
パラメーターは以下のもの。
ちなみに、iOS 11 では、Projection のパラメーターが変更されたり、 Unity でなどである機能の SSAO (Screen Space Ambient Occlusion) が使用できるようになっている。
Identity
Name
カメラを識別するための名前。
コードでこのカメラを調べるために使う。
Identifier
Scene Editor での設定不可。
Projection
Projection Type
設定値 | 説明 |
---|---|
Perspective | デフォルト値。遠近感のある透視投影のカメラでシーンを表示する |
Orthographic | 遠近感のない平行投影のカメラでシーンを表示する |
X fov、Y fov (Feild Of View)
SCNCamera - SceneKit | Apple Developer Documentation より
画面を表示する視体積の角度。
上の画像を参照。
デフォルト値は互いに 0。
片方が 0 以外の場合はもう片方を自動的に調整され、
両方設定した場合はアスペクト比に最も適した値を使用し視野を自動的に調整される。
このプロパティは廃止予定で iOS 11 では Feild Of View と X fov、Y fov が1つになり、Focal Length (焦点距離)を設定して表示方法を決める。
Z Cliping
Near、Far
画面の奥、手前をどこまで表示するかを決める。
上の画像を参照。
デフォルト値は Near が 0、
Far は 100。
例えば、遠くに表示するものがない場合、Far の値を調整して表示させないことで端末の処理が軽くなる。
Category bitmask
設定されているノードのビットマスクを AND 演算して表示するか決める。
カメラのデフォルト値は 0 で全てを表示する。
注意: ビットマスクを設定しても、SCNView の allowsCameraControl を使用した場合、カメラを動作させるとビットマスク 0 に変更されるため表示される。
コード
let camera = SCNCamera() camera.name = "camera" camera.xFov = 0.0 camera.yFov = 0.0 camera.usesOrthographicProjection = false camera.zNear = 1.0 camera.zFar = 100.0 camera.categoryBitMask = 0
Scene Editor にはパラメーターがないが、 usesOrthographicProjection を true にして、 Orthographic 表示にした場合、orthographicScale で表示倍率を変更できる。 デフォルトは 1.0。
camera.usesOrthographicProjection = false camera.orthographicScale = 1.0
今回はここまで。
次回は カメラ の HDR について