2#include "Engine/Primitives/Primitive.h"
13class Camera :
public Primitive
16 Camera(std::string_view path =
"/camera");
17 Camera(
const Camera& other);
18 Camera& operator=(
const Camera& rhs);
19 ~Camera()
override =
default;
21 PrimType getType()
const override {
return PrimType::CAMERA; }
22 std::shared_ptr<Primitive> clone()
const override {
return std::make_shared<Camera>(*
this); }
23 TransformClass transformType()
const override {
return TransformClass::PRIMITIVE; }
24 void applyTransform(
const Matrix4& mat, TransformClass transformClass)
override;
26 Matrix4 getTransform()
const;
27 void setTransform(
const Matrix4& xform);
30 attr::AttributeHandle<Matrix4> transformHandle_;