Apple Engine

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

2017-07-01から1ヶ月間の記事一覧

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 でなどである機能の…

iOS で SceneKit を試す(Swift 3) その37 - Scene Editor の Material、Shininess と Fresnel

Blinn と Phong のライティングモデルでは Shininess と Fresnel を設定することができる。 Shininess 光沢の度合い。値を大きくすると光沢が小さくなる。 Shininess のデフォルト値 1 Shininess の値 4 Fresnel シャボン玉のように輪郭部分だけ光の反射が異…

iOS で SceneKit を試す(Swift 3) その36 - Scene Editor の Material のテクスチャ設定

Scene Editor の Material は SCNMaterial となっており、 diffuse、specular などの各ビジュアルプロパティに設定するためのコンテナ SCNMaterialProperty が用意されている。 SCNMaterialProperty 自体が持つプロパティは 度々コードの方で使用している An…

iOS で SceneKit を試す(Swift 3) その35 - Scene Editor の Material, Physically Based プロパティ

今回は Physically Based プロパティのご紹介。 Physically Based とは? 現実世界のライトの光などを近似させた物理ベースのシェーダーで 2010 年ぐらいから PC ゲームなどで使われ始め、モバイル GPU の進化によりスマートフォンのゲームでも使用される。 …

iOS で SceneKit を試す(Swift 3) その34 - Scene Editor の Material プロパティ

前回紹介を省略したマテリアルのプロバティについてご紹介。 Physically Based の Metalness、Roughness やテクスチャマッピングに関しては他の記事で紹介する。 以下の説明では Physically Based 以外のものを列挙しているが、 ライティングモデルの Consta…

iOS で SceneKit を試す(Swift 3) その34 - Scene Editor の Material Inspector

ジオメトリ選択後に Material Inspector を選択すると(Command + Option + 5)、以下のような表示になる。 長くなるので Lighting Model に影響のある設定(上の画像でいうPropaerties)に関しては別の記事で紹介する。 Materials 現在使用しているマテリア…

iOS で SceneKit を試す(Swift 3) その33 - ジオメトリの質感を決めるマテリアルについて

SceneKit で言うマテリアルとはジオメトリの質感を決めるための設定だと考えてもらえば良いかと。 これまででも、firstMaterial などで設定していたがもう少し詳しくを紹介していく。 以前に、3DCG にはカメラ、ジオメトリ、ライトが必要だと書いたが、もう…

iOS で SceneKit を試す(Swift 3) その33 - Scene Editor のジオメトリの Attribute Inspector

ビルトインジオメトリの設定値以外で、他の項目に触れていないため、もう少し見てみる。 概要 設定されているもの ジオメトリの情報 モーフアニメーション用の設定 サブディビジョンサーフェイスの設定 ジオメトリのシェアリングの解除 ライト情報のベイク …

iOS で SceneKit を試す(Swift 3) その32 - コードからカスタムジオメトリをつくってみる

コードからジオメトリをつくろうと思う。 ほぼ、自前でジオメトリを描画することはないと思われるので今回はさわりだけ。 テンプレートにあった宇宙船やビルトインのジオメトリ。 これらはオブジェクトファイルの読み込み、Scene Editor からのドラッグ&ドロ…

iOS で SceneKit を試す(Swift 3) その31 - ビルトインジオメトリ SCNShape(パスからの図形)

SCNText はフォントからジオメトリを作成するが、こちらは UIBezierPath で作成するジオメトリ。 設定値は SCNText 同様にイニシャライズや個別でパスと押出し設定を行う。 面取り(chamfer) も SCNText と同様の設定を行うことができる。 Scene Editor で UI…

iOS で SceneKit を試す(Swift 3) その30 - ビルトインジオメトリ SCNText(テキスト)

フォントから作成する 3D テキストのジオメトリ。 NSString もしくは NSAttributedString で使用したいテキストを設定する。 ベースラインではなく、ディセンダ(下の空き)を含めるため、 原点においても文字は左下は原点にこないので注意。 また、文字の奥…

iOS で SceneKit を試す(Swift 3) その29 - ビルトインジオメトリ SCNTube(チューブ型)

チューブ型のジオメトリ。 Scene Editor でのパラメーター オブジェクトライブラリの Tube を Scene Editor にドラッグ&ドロップして、Attributes Inspector を開く(Command + Option + 4) 1番上の Tube の項目で設定値が変更できる Dimensions Inner rad…

iOS で SceneKit を試す(Swift 3) その28 - ビルトインジオメトリ SCNTorus(ドーナツ型)

ドーナツ型のジオメトリ。 Scene Editor でのパラメーター オブジェクトライブラリの Torus を Scene Editor にドラッグ&ドロップして、Attributes Inspector を開く(Command + Option + 4) 1番上の Torus の項目で設定値が変更できる Dimensions Ring Ra…

iOS で SceneKit を試す(Swift 3) その27 - ビルトインジオメトリ SCNSphere(球)

球のジオメトリ。 Scene Editor でのパラメーター オブジェクトライブラリの Sphere か GeoSphere を Scene Editor にドラッグ&ドロップして、Attributes Inspector を開く(Command + Option + 4) 1番上の Sphere の項目で設定値が変更できる Sphere と G…

iOS で SceneKit を試す(Swift 3) その26 - ビルトインジオメトリ SCNPyramid(三角錐)

三角錐のジオメトリ。 Scene Editor でのパラメーター オブジェクトライブラリの Pyramid を Scene Editor にドラッグ&ドロップして、Attributes Inspector を開く(Command + Option + 4) 1番上の Pyramid の項目で設定値が変更できる Size 幅、高さ、奥…

iOS で SceneKit を試す(Swift 3) その25 - ビルトインジオメトリ SCNPlane(平面)

奥行き 0 の縦状態がデフォルトの平面のジオメトリで、角を丸くすることができる。 このビルトインジオメトリは、デフォルトでマテリアルがポリゴンが両面描画される。 裏面が必要ない場合は Material Inspector(Command + Option + 5)> Setting > Double …

iOS で SceneKit を試す(Swift 3) その24 - ビルトインジオメトリ SCNCylinder(円柱)

円柱のジオメトリ。 Scene Editor でのパラメーター オブジェクトライブラリの Cylinder を Scene Editor にドラッグ&ドロップして、Attributes Inspector を開く(Command + Option + 4) 1番上の Cylinder の項目で設定値が変更できる Dimensions Radius …

iOS で SceneKit を試す(Swift 3) その23 - ビルトインジオメトリ SCNCone(円錐)

円錐のジオメトリ。 Scene Editor でのパラメーター オブジェクトライブラリの Cone を Scene Editor にドラッグ&ドロップして、Attribute Inspector を開く(Command + Option + 4) 1番上の Cone の項目で設定値が変更できる Dimensions Top radius 上底…

iOS で SceneKit を試す(Swift 3) その22 - ビルトインジオメトリ SCNCapsule(カプセル型)

円柱の上下に半球をつけたカプセル型のジオメトリ。 Scene Editor でのパラメーター オブジェクトライブラリの Capsule を Scene Editor にドラッグ&ドロップして、Attribute Inspector を開く(Command + Option + 4) 1番上の Capsule の項目で設定値が変…

iOS で SceneKit を試す(Swift 3) その21 - ビルトインジオメトリ SCNBox(立方体)

立方体のジオメトリ。角を丸くすることができる。 Scene Editor でのパラメーター オブジェクトライブラリの Box を Scene Editor にドラッグ&ドロップして、Attributes Inspector を開く(Command + Option + 4) 1番上の Box の項目で設定値が変更できる …

iOS で SceneKit を試す(Swift 3) その20 - ビルトインジオメトリ SCNFloor(無限の大きさを持つ平面)

Y軸 0、XZ 軸が無限の大きさを持つ平面。 初期値では原点に配置される。 Scene Editor でのパラメーター オブジェクトライブラリの Floor を Scene Editor にドラッグ&ドロップして、Attributes Inspector を開く(Command + Option + 4) 1番上の Floor の…

iOS で SceneKit を試す(Swift 3) その19 - ジオメトリについて

SceneKit で言うジオメトリは平面や立体の物体を指し、 プログラムで形を作り、法線やテクスチャ情報、マテリアルなどその他の情報を付加して物体を表示している。 SceneKit でのジオメトリの使用方法 使用方法は以下のもの。 ビルトインのジオメトリを使用…

ARKit を SpriteKit で試す

注意ベータ版で公開されているドキュメントを元に記事を作成しているため、API や動作が製品版と異なる可能性あり SceneKit や Unity、Unreal Engine でほぼ制作されると思われるが、 一応、SpriteKit の 2DCG を使用した ARKit アプリを作成することができ…

iOS で SceneKit を試す(Swift 3) その18 - Scene Editor の Constraints を試す

3DCG ではオブジェクトの動きなどに制約を与えるコンストレイントというものがある。 SceneKit では SCNConstraint というスーパークラスがあり、サブクラスで機能が割り当てられている。 一応、SCNTransformConstraint というクラスが用意されており、カス…