2018年07月24日
《その429》視点・注視点・上方の向き を変更する
視点・注視点・上方の向き を変更する
前回《427》,前々回《428》に引き続き、Sample3DSceneRenderer.cpp についてです。
CreateWindowSizeDependentResources関数内の eye, at, up の値を変更することで、図形の見え方が変わります。
以下の画像は、すべて プログラム開始時点(ゼロ秒経過時点)での 立体の状態を表しています。
// 手前1.5,高さ0.7 の位置から見ています。y軸の正の向きを上にしています。
// 目の位置 (0.0, 0.7, 1.5)
// 見つめる先 (0.0, -0.1, 0.0)
// 上方の向き (0.0, 1.0, 0.0)
static const XMVECTORF32 eye = { 0.0f, 0.7f, 1.5f, 0.0f };
static const XMVECTORF32 at = { 0.0f, -0.1f, 0.0f, 0.0f };
static const XMVECTORF32 up = { 0.0f, 1.0f, 0.0f, 0.0f };
// 目の高さを 0.0 に下げました。
// 目の位置 (0.0, 0.0, 1.5)
// 見つめる先 (0.0, -0.1, 0.0)
// 上方の向き (0.0, 1.0, 0.0)
static const XMVECTORF32 eye = { 0.0f, 0.0f, 1.5f, 0.0f };
static const XMVECTORF32 at = { 0.0f, -0.1f, 0.0f, 0.0f };
static const XMVECTORF32 up = { 0.0f, 1.0f, 0.0f, 0.0f };
// 目の位置を変えて やや右方向から見ています。
// 目の位置 (0.7, 0.0, 1.5)
// 見つめる先 (0.0, -0.1, 0.0)
// 上方の向き (0.0, 1.0, 0.0)
static const XMVECTORF32 eye = { 0.7f, 0.0f, 1.5f, 0.0f };
static const XMVECTORF32 at = { 0.0f, -0.1f, 0.0f, 0.0f };
static const XMVECTORF32 up = { 0.0f, 1.0f, 0.0f, 0.0f };
// 目の位置を少し上に変更しました。
// 目の位置 (0.7, 0.7, 1.5)
// 見つめる先 (0.0, -0.1, 0.0)
// 上方の向き (0.0, 1.0, 0.0)
static const XMVECTORF32 eye = { 0.7f, 0.7f, 1.5f, 0.0f };
static const XMVECTORF32 at = { 0.0f, -0.1f, 0.0f, 0.0f };
static const XMVECTORF32 up = { 0.0f, 1.0f, 0.0f, 0.0f };
// 目の位置を変えて 斜め下方向から見るようにしました。
// 目の位置 (0.7, -0.7, 1.5)
// 見つめる先 (0.0, -0.1, 0.0)
// 上方の向き (0.0, 1.0, 0.0)
static const XMVECTORF32 eye = { 0.7f, -0.7f, 1.5f, 0.0f };
static const XMVECTORF32 at = { 0.0f, -0.1f, 0.0f, 0.0f };
static const XMVECTORF32 up = { 0.0f, 1.0f, 0.0f, 0.0f };
// 見つめる先を少し上に変えました(その結果、図形はやや下に移動します)。
// 目の位置 (0.7, -0.7, 1.5)
// 見つめる先 (0.0, 0.2, 0.0)
// 上方の向き (0.0, 1.0, 0.0)
static const XMVECTORF32 eye = { 0.7f, -0.7f, 1.5f, 0.0f };
static const XMVECTORF32 at = { 0.0f, 0.2f, 0.0f, 0.0f };
static const XMVECTORF32 up = { 0.0f, 1.0f, 0.0f, 0.0f };
// x軸の正の向きを上に変更しました(その結果、赤色の面が上になります)。
// 目の位置 (0.7, -0.7, 1.5)
// 見つめる先 (0.0, 0.2, 0.0)
// 上方の向き (1.0, 0.0, 0.0)
static const XMVECTORF32 eye = { 0.7f, -0.7f, 1.5f, 0.0f };
static const XMVECTORF32 at = { 0.0f, 0.2f, 0.0f, 0.0f };
static const XMVECTORF32 up = { 1.0f, 0.0f, 0.0f, 0.0f };
// 目の位置を少し遠くしました(その結果、図形が小さくなります)。
// 目の位置 (1.2, -1.2, 2.5)
// 見つめる先 (0.0, 0.2, 0.0)
// 上方の向き (1.0, 0.0, 0.0)
static const XMVECTORF32 eye = { 1.2f, -1.2f, 2.5f, 0.0f };
static const XMVECTORF32 at = { 0.0f, 0.2f, 0.0f, 0.0f };
static const XMVECTORF32 up = { 1.0f, 0.0f, 0.0f, 0.0f };
// 上方の向きを (1.0, 1.0, 1.0) に変更して、図形を真上 (1.2, 1.2, 1.2) から見ています。
// 目の位置 (1.2, 1.2, 1.2)
// 見つめる先 (0.0, 0.1, 0.0)
// 上方の向き (1.0, 1.0, 1.0)
static const XMVECTORF32 eye = { 1.2f, 1.2f, 1.2f, 0.0f };
static const XMVECTORF32 at = { 0.0f, 0.1f, 0.0f, 0.0f };
static const XMVECTORF32 up = { 1.0f, 1.0f, 1.0f, 0.0f };
この記事へのコメント
コメントを書く
この記事へのトラックバックURL
https://fanblogs.jp/tb/7926333
※ブログオーナーが承認したトラックバックのみ表示されます。
この記事へのトラックバック