Xcode 11 での SceneKit の変更点 その1 - 概要と Scene Editor
リリース版が出たので詳細を書いていこうと思う。
コードのプロパティやメソッドは過去記事参照。
- Scene Editor の変更
- エリアライトの追加
- リフレクションプローブの追加
- シーン全体のスクリーンスペースリフレクションの追加
- カメラの Bloom のプロパティとホワイトバランスの追加
- マテリアルでクリアコートのプロパティが追加
Scene Editor
プレビュー下に Default lighting が追加
Xcode のアプリメニュー Editor > Rendaring Option > Enable default lighting で設定していたものが、Scene Editor 上でできる様になった。
Default lighting はシーン上にライトがない場合これを設定すると、シーンにアンビエントライトが追加される。
また、Xcode 11 から Default lighting のライトの適応され方が変更された。
(上の画像が OFF / 下の画像が ON)
プレビュー用の機能なので実際ビルドした際はみためが異なる場合があるので注意。
ライブラリ
Library のモーダル (Command + Shift + L) から、ドラッグ&ドロップできる項目で「Area light」「Reflection Probe」が追加された。
Gabo (Directional Light / Spot Light のみ)
Scene Editor 上でライトの Gabo が設定できる様になった。
基本的には過去記事でコード上で書いた状態と同じ。
Gabo については過去記事から抜粋。
ライブや舞台等で、ライトの前に光の当てたい部分を削ったプレートを置いて照明を照らすことで、壁面に絵や文字を投影することができ、そのプレートや効果を指すとのこと。
SCNLight の shadowMode を modulated にしないと適応されないため、Scene Editor 上でも「Modulated」にしないと Disable 状態で画像を設定できない。
また、現状ドロップリストから画像が選択できないため、ドラッグ&ドロップで設定する。
Custom Shader / Shader Modifiers のプロパティ表示の変更
NSTableView の表示だったが、「+」ボタンを押して項目が追加される様になった。
設定できるものは以前と同様に、Float, Float4, Color, Texture となっている。
バグ: Scene Editor の左側 Scene Graph View
Library のモーダル (Command + Shift + L) から、ドラッグ&ドロップで Scene Graph View ドラッグした際にドロップできない場合がある。
ちなみに Xcode のバグで SpriteKit でも同様に起きる。
Feedback にバグリポートを出したがリアクションなし。
次回、エリアライトについて