Apple Engine

Apple, iPhone, iOS, その周辺のことについて

開発

iOS で SceneKit を試す(Swift 3) その67 - PhysicsBody の振る舞い 1

今回は Scene Editor の Physics Inspector (Command + Option + 6) 部分の Settings のところを見てゆく。 このパラメーターは物理シミュレーション時にジオメトリがどのような特性を持っているか設定する。 次回に説明する Velocity を含め、設定するパラ…

iOS で SceneKit を試す(Swift 3) その66 - PhysicsBody の当たり判定 PhysicsShape について

まず、最初にあたり判定から。 Scene Editor のデフォルト、もしくはコードで SCNPhysicsBody 設定の際 nil を渡すと、 そのジオメトリの形状が当たり判定となる。 また、当たり判定のジオメトリが荒いほど物理シミュレーションの演算が軽くなる。 Scene Edi…

iOS で SceneKit を試す(Swift 3) その65 - 物理シミュレーションについて

以前、軽く紹介していたが、何回かに分けては詳しく見ていこうと思う。 SceneKit での物理シミュレーションの種類 大きく分けると以下のもの PhysicsWorld PhysicsBody PhysicsField PhysicsWorld は物理シミュレーションは全体についての設定。 PhysicsBody…

iOS で SceneKit を試す(Swift 3) その64 - SCNSkinner と Bone について

人型のキャラクタなどに稼動できる骨を入れて、骨を動かすと該当箇所のジオメトリが変化する 所謂、Skinning と Bone を使用してアニメーションを SCNSkinner が行う。 公式ドキュメントの画像を参照 正直、コード上で書くのは手間がかかり、Scene Editor で…

iOS で SceneKit を試す(Swift 3) その63 - Scene Editor で Light Map のテクスチャを作成する

Scene Editor ではライトを当てたジオメトリに対して、光を当てた表面情報を画像として Light Map を作成することができる。 内容的には Ambient Occlusion と同じような操作。 Light Map のパラメーター Scene Editor でジオメトリを選択し、 Attributes In…

iOS で SceneKit を試す(Swift 3) その62 - Scene Editor で Ambient Occlusion のテクスチャを作成する

Scene Editor ではジオメトリに対して Ambient Occlusion 用のテクスチャを焼き付け画像ファイルを作成することができる。 Ambient Occlusion とは? 周辺の光が塞がれて届かない隅のポリゴンに対して陰を着色することで物体をリアルに見せる技術。 SceneKit…

iOS で SceneKit を試す(Swift 3) その61 - Xcede の Scene Editor でのメニューバー

Scene Editor 表示時、Scene Editor でのみ変更されるのは「Editor」だけ。 ということで、Editor の紹介で項目は5つ。 Selection Display Edit Convert to SceneKit scene file format (.scn) Enable default lighting 4つ目の .scn への変換は以前紹介済み…

iOS で SceneKit を試す(Swift 3) その60 - SCNMorpher でモーフィング

SceneKit では SCNNode に SCNMorpher が紐づけられており、1つまたは複数のジオメトリを配列として渡すと、各ジオメトリへ変形させることができるモーフィングというものが使える。 (3DCG のオーサリングツールでは Blend Shape と呼ばれているものある) …

iOS で SceneKit を試す(Swift 3) その59 - Blender で Collada (.dae) をエクスポートし Scene Editor で読み込む

とりあえず、手軽に試すため Blender でオブジェクトを DAE でエクスポートして、Scene Editor で読み込んでみる。 Apple 自体、Maya からエクスポートしている感じがしているので、Blender でエクスポートしたものが必ず上手く使えるわけではないので注意。…

iOS で SceneKit を試す(Swift 3) その58 - 3D のオブジェクトファイルを Scene File (scn) に変換する。

今まではテンプレートの ship.scn を使用したり新規で作成していたが、プロジェクトに読み込んだオブジェクトファイルを scn に変換することができる。 scn に変換する方法 変換方法は以下の3つ Xcode のメニューバーの機能から変換する オブジェクトファイ…

iOS で SceneKit を試す(Swift 3) その57 - SceneKit で使用できるオブジェクトファイル

SceneKit でのリソースの操作やオブジェクトファイルの読み込みは Model I/O のフレームワークを使用しており、 ファイルの読み込みは Model I/O に依存している。 オブジェクトファイルをプロジェクトで使用する場合、Project Navigator (Command + 1) にド…

iOS で SceneKit を試す(Swift 3) その56 - SceneKit プロジェクトファイルの .scnassets フォルダとは?

xcassets はプロジェクトの画像などのアセットを管理し最適化を行なっているが、 scnassets は SceneKit のファイルの管理をするフォルダ。 .scnassets にファイルを配置するとビルド時に内容を最適化してくれる。 主な最適化は2つ。 scnassets フォルダを選…

iOS で SceneKit を試す(Swift 3) その55 - SCNNode の Pivot(原点)を変更する

SCNNode の説明で書き忘れていた Pivot について。 SCNNode には Pivot と呼ばれる原点がある。 例えば球のジオメトリである SCNSphere は Pivot が中心にあり、 移動、回転、拡大縮小を行なった場合、中心から動作が行われる。 Pivot を変更することのメリ…

iOS で SceneKit を試す(Swift 3) その54 - Scene Editor の Geometory / Material の Unshare ボタンとは?

Scene Editor でコピーされたノードは負荷低減のため、 基本的には使い回しできるようになっている。 Geometory の Unshare ボタン そのため、Text(SCNText)で文字を書き、そのノードを Command + C, V などで コピー&ペーストし、 コピーした Text の文字…

iOS で SceneKit を試す(Swift 3) その53 - SceneKit の Point Of View

これまで紹介した SceneKit のカメラは、コードで設定するか、scn ファイル内のカメラで設定していた。 SceneKit の SCNView(SCNSceneRenderer)には pointOfView というプロパティがあり、 これに SCNCamera を設定しているノードを設定するとカメラに設定…

iOS で SceneKit を試す(Swift 3) その53 - SCNLight の Gobo と Category BitMask

シーン上でキャストシャドウを行うと基本的にはシャドウマップが作成される。 もし、ジオメトリの影を落とす際、細かなフォルムが必要なければ 事前にテクスチャ画像を作成したものを使用し、シャドウマップを生成させないことでライド使用時の負荷を減らす…

iOS で SceneKit を試す(Swift 3) その52 - Scene Editor の Light Probe

シーンで動かない物体にはライトマップでテクスチャに焼き付けると綺麗な見た目となるが、 キャラクターなど動くもがあった場合、光は反映されない。 Light Probe はシーンの色の変化とすべての方向から受け取る照明の強度を球体で設定し、 有効範囲にある P…

iOS で SceneKit を試す(Swift 3) その51 - Scene Editor の IES Light

IES Light はテキストデータのファイルを使用し照明のシミュレーションを行い陰や光を与える。 Directional Light とほぼ同じで、Scale のパラメーターがなく、IES ファイルの選択がある。 基本的にはライトからのシャドウマップで表現しているため、アーテ…

iOS で SceneKit を試す(Swift 3) その50 - Scene Editor の Directional Light

太陽光のように一定の方向に光を放つ Directional Light のご紹介。 設置位置に関わらず一定で光の影響を与える。 遮るジオメトリがあった場合に影を与えるキャストシャドウを設定することができる。 以下の画像は、ライトの位置を変更しても、光沢と影が変…

iOS で SceneKit を試す(Swift 3) その49 - Scene Editor の Spot Light と Cast Shadow (Shadow Mapping)

舞台照明で使用されているスポットライトを模した Spot Light のご紹介。 設置位置から円錐状に光の影響を与え、任意で遮るジオメトリがあった場合に影を与えるキャストシャドウが使用できる。 その前にキャストシャドウとは? シャドウマップというライトか…

iOS で SceneKit を試す(Swift 3) その48 - Scene Editor の Ambient Light

シーン全体に光を与える Ambient Light のご紹介。 設置位置に関係なく光の影響を与え、ジオメトリの暗部である陰の色を薄めたりできる。 シーン設定 iOS SceneKit のテンプレートでプロジェクト作成。 今回は床が必要ないので、ship.scn を表示するだけ。 S…

iOS で SceneKit を試す(Swift 3) その47 - Scene Editor の Omni Light と Attenuation

豆電球のような Omni Light の設定を見ていく。 Omni Light は設置位置によって光の影響を変化させるが、ジオメトリの影を落とすことはできない。 影は必要ないが光の影響を与えたい場合などで使用するのが良いかと思われる。 シーン設定 ひとまず、iOS Scen…

iOS で SceneKit を試す(Swift 3) その46 - SCNLight の共通設定

前回の書き忘れがあったのでライトの種類の前にこちらの紹介。 ライトには種類があったが、Light Probe 以外でいくつかの共通設定があるので、まずはこちらから。 Name コードで使用するための識別用の名前。 Light Probe でも使用可能。 Type ライトの種類…

iOS で SceneKit を試す(Swift 3) その45 - Scene Editor の Light について

今回はシーンのライトについて軽くご紹介。 シーン上には必ずライトとなるものが1つ必要となり、 SCNNode で light プロパティに SCNLight を設定するか、 以前、紹介したシーン設定の Light Environment (Image Based Lighting) を設定することで、 ジオメ…

iOS で SceneKit を試す(Swift 3) その44 - Scene Editor モーションブラー

実際のカメラでは速い動きを物体を撮る際、カメラ性能にもよりますが残像が出る場合があり、 それを SceneKit のカメラである SCNCamera でシミュレーション行う。 Scene Editor の パラメーター プロパティは一つのみ。 Motion Blur - Intensity 最大値を …

iOS で SceneKit を試す(Swift 3) その42 - Scene Editor カメラのポストプロセス

カメラとなる SCNCamara では画面描画後に簡易的な画像処理を行うことができる。 使用できる処理は以下のもの。 画面の周りを暗くするケラレ処理 ブラウン管のような色のにじみを出すカラーフリンジ 簡易的な色の調整を行うカラーグレーディング さらに複雑…

iOS で SceneKit を試す(Swift 3) その41 - Scene Editor カメラの Depth of Field(被写界深度)

カメラとなる SCNCamara で被写界深度のシミュレーションを行う。 実際のカメラと同様に距離でオブジェクトにピントを合わせて、 他がボケるさせる効果の設定を行う。 ちなみに、今回紹介するすべてのプロパティが macOS, tvOS, watchOS でも廃止予定で、 iO…

iOS で SceneKit を試す(Swift 3) その40 - Scene Editor カメラの HDR 設定 Part2

引き続き HDR の説明。 カメラとなる SCNCamara の HDR とは、 トーンマッピング処理を行い、シーン全体の輝度値を、ディスプレイに表示できる狭い範囲の輝度値に変換するすること。 具体的には露出調整、Bloom 効果を表現する。 また、HDR は Scene Editor …

iOS で SceneKit を試す(Swift 3) その39 - Scene Editor カメラの HDR 設定 Part1

今回は HDR の説明と設定の準備。 HDR (High Dynamic Range) とは ざっくり説明すると、表示される画面は色の情報しか持たないが、 ピクセルごとに色とは別に光の情報を持つもの。 現実の色のより広いレンジを持ち、画像処理の際に多彩な表現を行うことがで…

iOS で SceneKit を試す(Swift 3) その38 - Scene Editor カメラの基本設定

今回はカメラの基本設定のプロパティについてのご紹介。 カメラを選択して Attributes Inspector(Command + Option + 4)を選択。 パラメーターは以下のもの。 ちなみに、iOS 11 では、Projection のパラメーターが変更されたり、 Unity でなどである機能の…

スポンサーリンク