ARのトラッキングを止める
ARSessionについているARInputManagerをオフ
ARのカメラ描画をやめる
カメラ映像が映っているところを真っ黒にしたい
ARCameraについているARCameraBackgroundをオフ
CameraはSolidColorでBackgroundで色を設定する
スケール変更
ARFoundationのサンプルにScaleというものがある。
Scaleは実際にオブジェクトのサイズを変更しているのではなく、ARSessionOriginを変更している。
ARシーンのコンテンツの見かけのスケールを調整する方法を示します。これは、コンテンツの代わりに「ARSessionOrigin」を移動、回転、およびスケーリングすることによりこれを行います。複雑なシーンは、作成後に移動できないことが多く(例:地形)、スケールは物理学、パーティクル効果、AIナビゲーションなどの他のシステムに悪影響を与える可能性があります。「ARSessionOrigin」のスケール機能は、検出された平面上の位置にコンテンツを「表示」し、たとえば、建物サイズのオブジェクトをテーブルトップミニチュアにスケールする場合に便利です。
このサンプルを使用するには、最初に平面が検出されるまでデバイスを動かしてから、平面をタップします。タッチポイントにコンテンツが表示されます。コンテンツを配置した後、画面上のスライダーを使用してその回転と拡大縮小を調整できます。コンテンツ自体は移動、回転、拡大縮小されないことに注意してください。
関連するスクリプトは「MakeAppearOnPlane.cs」です。
ARSessionOriginにScaleControllerを付けて、
Sliderをセットしたらよい
参考
ARにおける大きさ変化
スケール調整は地面推定して、タップして配置した後しか使えない?
RotateとScale
エディタだとRotateを動かした後ならScaleが動く。
Rotateのスライダーを動かすとContentPlacement Offsetというオブジェクトができる
Zが-2
Zの数字は回転前のARSessionOriginのScaleの大きさで変化している。
デフォルトは-2m
Scale100だと-0.5m
この状態になるとARSessionOriginのZの位置が100(オブジェクトまでの距離)になる
そして中心がオブジェクトの位置になる
そしてオブジェクトを中心に外回りして対象を映す。
スケールの変更はカメラの距離が近づいているだけに見える。なんでスケールが変わったらカメラがオブジェクトに近づくのかよくわかっていない。
Fov
ARの時fovは端末のカメラの画角によって変わっているのか?
VRは端末によって変わっているらしい。
一部のVR SDKには、VRカメラに使用される固定視野値があります。これらのSDKでVRが有効になっている場合、このプロパティは常にSDKから値を返します。プロパティを設定しようとすると警告がログに記録され、値は無視されます。
エディタではデフォルトは60
極端な数値にして実行してもちゃんと現実空間にあった表示がされてたので、変更されているっぽい!
だが、ARInputManagerとARCameraBackgroundをオフにした状態だとfovはエディタで設定した数値のままだった。つまりどちらかでfovを変えている。どっちだろ〜
下のスレッドはVuforiaで強制的にfovを変更しようと試みている。
やはり、デバイスから強制的にfovを変更しているので、上書きでfovを変更するのは大変らしい。