スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
カメラの焦点距離や画角などの関係性について
今までも何となくの理解はしていたのですが、

今回 S3D 用のカメラリグを作成するにあたりきっちり理解しなおす事にしました。

ご存知の通り、カメラの Angle of View(画角)もしくは Focal Length(焦点距離)は値を変えると
連動してそのもう一方の値も変化します。

あまりカメラのアトリビュートに詳しくない方はこの2つの値だけで
実際のカメラの画角と焦点距離の関係をシミュレートしていると思うかもしれません。
しかしこう勘違いをしている人はまずかなりの確率で正しいシミュレートはできていません

実際に、(%MAYA_LOCATION%)\scripts\AETemplates にある
AEcameraTemplate.mel という Mel で以下の様に計算されています。


float $focal = `getAttr $focalStr`; //Focal Length
float $aperture = `getAttr $horStr`; //Horizontal Film Aperture
float $fov = (0.5 * $aperture) / ($focal * 0.03937);
$fov = 2.0 * atan ($fov);
$fov = 57.29578 * $fov; //Angle of View


float $fov = `floatSliderGrp -q -value fovGrp`; //Angle of View
float $aperture = `getAttr $horStr`; //Horizontal Film Aperture
float $focal = tan (0.00872665 * $fov);
$focal = (0.5 * $aperture) / ($focal * 0.03937); //Focal Length

見ての通り、上は Angle of View を、下はFocal Length を算出している部分です。
どんな計算を行っているかはこの際どうでもいいとして、
これらの他に算出のために使用している変数として
Horizontal Film Aperture(撮像面の横の長さ)もある事がわかりますね。

この値、デフォルトでは 1.417 インチで
Vertical Film Aperture(撮像面の縦の長さ)が 0.945 インチになっているため
その縦横比である Film Aspect Ratio が 1.5 になっています。
ということはこれはアスペクト比 3:2 でレンダリングした時のみ
正しいシミュレートがなされるという事になってしまっている
のです。

試しに Horizontal Film Aperture もしくは Film Aspect Ratio の値を変えてみてください。
連動して Angle of View の値も変わり、
それまでとの Angle of View と Focal Length との関係性とは変わるはずです。

1009_1.png

つまり正しいシミュレートをさせるならこの Film Aspect Ratio の値を
実際にレンダリングする際のアスペクト比にする必要があるのです。

Film Aspect Ratio の値を変えると Vertical ではなく Horizontal の長さが変わるようなので
こちらの値を変える事にしましょう。

defaultResolution.width : defaultResolution.height =
horizontalFilmAperture : verticalFilmAperture
なので、エクスプレッションで以下の式を実行すれば期待通りの結果になりそうです。


camera.horizontalFilmAperture = camera.verticalFilmAperture *
defaultResolution.width / defaultResolution.height;

このたった一行の簡単なエクスプレッションを描くだけで、
カメラは正しいシミュレートをしてくれるようになるはずです。
より正しいカメラを使用したいのであれば是非ご参考にしてください。



短期ですが明日からまた海外へ出張してしまいますので
少し更新が遅れると思いますがご了承くださいm(__)m
コメント
管理者のみ閲覧可能にする
Profile
HN らい

都内某社テクニカルディレクター
都内某専門学校講師
都内某企業講師
元中国某社S3Dスーパーバイザー
Contact
(ENGLISH OK. 可以用中文。)
Categories
Archives
RSS Link
QR Code