iPhone と Reality Composer で始める簡単 AR その19 - 物理アニメーション 重力編
今回は物理アニメーションでのシーン全体での処理について。
Reality Composer や RealityKit でも SceneKit 同様に何もしなくてもシーン全体で物理アニメーションの処理がされている。
SceneKit ではカテゴリマスクなどの設定が必要だったが、Reality Composer のシーンでは重力加速度と地平の物理判定の設定しかないため、簡単に物理アニメーションの設定を行うことができる。
また、以前も書いたがオブジェクトでは物理アニメーション用の種類と判定用の素材と形しかなく覚えることが少ない。
試してみる
アンカーを選択
新規作成から水平方向のアンカーを選択し、立方体のオブジェクト選択。
画面右上の歯車のマークからプロパティを開き Y 軸を 20cm ぐらいに移動。
物理設定から「含める」のスイッチをオンにして、モーションタイプを「ダイナミック」に変更。
再生ボタンを押すとシーンの Y 軸 0 が物理判定となっているので、立方体が床にぶつかるような物理アニメーションがされる。
オブジェクトのない空間をタップやクリックしプロパティを開き、下の「シーンの物理」の「衝突する」のチェックを外しシーンを再生すると、立方体は床にぶつからずそのまま落下し続ける。
立方体をコピーしサイズ調整で 200 %ぐらいに変更し少し下に移動。
コピーした立方体の物理設定から「含める」のスイッチをオンにして、モーションタイプを「固定」にすると空中に固定された物体となるので、そこで物理アニメーションが行われ上から落ちてきた立方体は止まることとなる。
Reality Composer では Y 軸 0 が床の平面となり、床を元にシャドウマップまたはレイトレースの影が落ちる。
そのため「シーンの物理」の「衝突する」のチェックを外すことはあまりお薦めしない。
物理アニメーションが適応されたオブジェクトの素材
パラメーター的なものが存在しないため GIF で見てみる。
シーンの物理に関してはデフォルトのコンクリート。
弾み方と地面に接してからの動きが異なると思われる。
設定できるものは以下のもの
- コンクリート
- 氷
- 鉛
- プラスチック
- 木材
- ゴム
注意点
これまで紹介したビヘイビアのアニメーション強調と物理アニメーションは排他的存在となっている。
回転など設定したアニメーションが静止した場合に物理アニメーション開始されるので注意。
また、待機は影響を受けず、表示、非表示などは物理アニメーション時も実行されるので注意。
まとめ
シーン全体での物理アニメーションでは重力しかないため設定はかなり簡単だと思われる。
次回は物理アニメーションで使用できるアクション「力を加える」について