slot 0.0.1
A real time UI render framework
载入中...
搜索中...
未找到
BaseCamera.h
浏览该文件的文档.
1//
2// Created by zhou_zhengming on 2026/5/15.
3//
4
5#pragma once
6#include "Object/Object.h"
7
8namespace z8
9{
10class BaseCamera : public Object {
11private:
12 DirectX::XMFLOAT3 Target;
13 DirectX::XMFLOAT3 Up;
14 DirectX::XMFLOAT4X4 View;
15 DirectX::XMFLOAT4X4 Proj;
16 DirectX::XMFLOAT4X4 ViewProj;
17
18 inline static float Near = 1.0f;
19 inline static float Far = 1000.0f;
20 // 编辑器相机采用中等垂直视场角;超广角会夸大观察方向上的近远透视差,
21 // 使比例正确的物体看起来沿 Z 轴被拉长。
22 inline static float Fov = 60.0f;
23public:
24 BaseCamera();
25 DirectX::XMFLOAT4X4& GetView() { return View; }
26 DirectX::XMFLOAT4X4& GetProj() { return Proj; }
27 DirectX::XMFLOAT4X4& GetViewProj() { return ViewProj; }
28 void Update(Timer *) override;
29 void UpdateView();
30 void UpdateProj(float aspect);
31 void UpdateViewProj();
32 void UpdateTarget();
33};
34}
35
36
37
38
39
Definition BaseCamera.h:10
DirectX::XMFLOAT4X4 View
Definition BaseCamera.h:14
void Update(Timer *) override
Definition BaseCamera.cpp:22
void UpdateProj(float aspect)
Definition BaseCamera.cpp:39
DirectX::XMFLOAT4X4 Proj
Definition BaseCamera.h:15
DirectX::XMFLOAT4X4 & GetProj()
Definition BaseCamera.h:26
void UpdateTarget()
Definition BaseCamera.cpp:52
static float Fov
Definition BaseCamera.h:22
DirectX::XMFLOAT4X4 ViewProj
Definition BaseCamera.h:16
static float Near
Definition BaseCamera.h:18
DirectX::XMFLOAT4X4 & GetView()
Definition BaseCamera.h:25
BaseCamera()
Definition BaseCamera.cpp:12
void UpdateView()
Definition BaseCamera.cpp:27
DirectX::XMFLOAT3 Target
Definition BaseCamera.h:12
DirectX::XMFLOAT4X4 & GetViewProj()
Definition BaseCamera.h:27
DirectX::XMFLOAT3 Up
Definition BaseCamera.h:13
static float Far
Definition BaseCamera.h:19
void UpdateViewProj()
Definition BaseCamera.cpp:45
Definition Object.h:14
资源的强类型引用,同时覆盖持久化 ID 与运行时索引两种边界。
Definition ResourceRef.h:36
Definition Timer.h:9
世界矩阵 描述坐标系,左手坐标系 使用 DirectX12 坐标系的描述
Definition Application.h:15