18 {{0.0f, 0.0f, -1.0f, 0.0f},
19 {0.0f, -1.0f, 0.0f, 0.0f},
20 {-1.0f, 0.0f, 0.0f, 0.0f},
21 {0.0f, 0.0f, 0.0f, 1.0f}},
23 {{0.0f, 0.0f, 1.0f, 0.0f},
24 {0.0f, -1.0f, 0.0f, 0.0f},
25 {1.0f, 0.0f, 0.0f, 0.0f},
26 {0.0f, 0.0f, 0.0f, 1.0f}},
28 {{1.0f, 0.0f, 0.0f, 0.0f},
29 {0.0f, 0.0f, -1.0f, 0.0f},
30 {0.0f, 1.0f, 0.0f, 0.0f},
31 {0.0f, 0.0f, 0.0f, 1.0f}},
33 {{1.0f, 0.0f, 0.0f, 0.0f},
34 {0.0f, 0.0f, 1.0f, 0.0f},
35 {0.0f, -1.0f, 0.0f, 0.0f},
36 {0.0f, 0.0f, 0.0f, 1.0f}},
38 {{1.0f, 0.0f, 0.0f, 0.0f},
39 {0.0f, -1.0f, 0.0f, 0.0f},
40 {0.0f, 0.0f, -1.0f, 0.0f},
41 {0.0f, 0.0f, 0.0f, 1.0f}},
43 {{-1.0f, 0.0f, 0.0f, 0.0f},
44 {0.0f, -1.0f, 0.0f, 0.0f},
45 {0.0f, 0.0f, 1.0f, 0.0f},
46 {0.0f, 0.0f, 0.0f, 1.0f}},
61 return compare_m4m4(
a.persmat.ptr(),
b.persmat.ptr(), FLT_MIN) && (
a.uv_scale ==
b.uv_scale) &&
62 (
a.uv_bias ==
b.uv_bias) && (
a.equirect_scale ==
b.equirect_scale) &&
63 (
a.equirect_bias ==
b.equirect_bias) && (
a.fisheye_fov ==
b.fisheye_fov) &&
64 (
a.fisheye_lens ==
b.fisheye_lens) && (
a.type ==
b.type);
109 return eevee::is_panoramic(
data_.type);
113 return data_.type == CAMERA_ORTHO;
117 return *
reinterpret_cast<const float3 *
>(
data_.viewinv[3]);
121 return *
reinterpret_cast<const float3 *
>(
data_.viewinv[2]);
void perspective_m4(float mat[4][4], float left, float right, float bottom, float top, float nearClip, float farClip)
bool compare_m4m4(const float mat1[4][4], const float mat2[4][4], float limit)
const CameraData & data_get() const
bool is_panoramic() const
bool is_orthographic() const
const GPUUniformBuf * ubo_get() const
const float3 & forward() const
const float3 & position() const
A running instance of the engine.
smooth(Type::VEC3, "prev") .smooth(Type CameraData
void cubeface_winmat_get(float4x4 &winmat, float near, float far)
bool operator!=(const CameraData &a, const CameraData &b)
bool operator==(const CameraData &a, const CameraData &b)
static const float cubeface_mat[6][4][4]
static const pxr::TfToken b("b", pxr::TfToken::Immortal)