わたなべ 2018/08/16(Thu) 15:59
https://qiita.com/Reputeless/items/5bc7e72aa873be90e91d
上記記事のスカイスフィアのように球の中から覗く処理で
カメラ部分を
s3d::Camera camera = Graphics3D::GetCamera();
camera.fovDegree = 90.;// 水平視野角の変更
Graphics3D::SetCamera(camera);
const Vec3 pos = Graphics3D::GetCamera().pos;
上記のように水平視野角は変更できますが、
垂直視野角の変更、またはそれに類する処理は可能ですか?
Reputeless 2018/08/16(Thu) 22:13
垂直の視野角は 水平視野角×画面のアスペクト比 で決定されます。
わたなべ 2018/08/17(Fri) 15:09
回答ありがとうございます。
よく考えればそうですね。
スフィアの中で(位置は固定)視点の向きを変更しながら見える画像の出力を行いたいのですが、
(例えば自分から見て左に30度ずつ動かしてjpg出力するイメージ)
その出力中は別画面を表示(またはそのままの画面を表示)することは可能でしょうか?
スクリーンショット出力で実装したところ見た目が高速で回転してしまうので、
何か方法があればご教授ください。
Reputeless 2018/08/20(Mon) 10:48
スクリーンショット出力が一番簡単な方法です。
ほかには RenderTexture を作ってそこに描画し、
RenderTexture::saveDDS() で RenderTexture の内容を DDS 形式で画像ファイルに保存する方法が思いつきます。