Render resource handling for camera
This commit is contained in:
@@ -13,10 +13,9 @@
|
||||
|
||||
namespace OpenVulkano::Scene
|
||||
{
|
||||
class Camera : public Node
|
||||
class Camera : public RenderResourceHolder<Camera>, public Node
|
||||
{
|
||||
public:
|
||||
ICloseable* renderCamera = nullptr;
|
||||
static constexpr inline size_t SIZE = sizeof(Math::Matrix4f) * 3 + sizeof(Math::Vector4f) + sizeof(float) * 12;
|
||||
static constexpr inline DescriptorSetLayoutBinding DESCRIPTOR_SET_LAYOUT_BINDING = { 0, DescriptorSetLayoutBinding::Type::TYPE_UNIFORM_BUFFER_DYNAMIC, 1, ShaderProgramType::ALL_GRAPHICS };
|
||||
|
||||
@@ -36,10 +35,7 @@ namespace OpenVulkano::Scene
|
||||
{
|
||||
}
|
||||
|
||||
~Camera() override
|
||||
{
|
||||
//if (renderCamera) renderCamera->Close();
|
||||
}
|
||||
~Camera() override = default;
|
||||
|
||||
void Init(float width, float height, float nearPlane, float farPlane)
|
||||
{
|
||||
@@ -152,6 +148,10 @@ namespace OpenVulkano::Scene
|
||||
float GetWidth() const { return m_width; }
|
||||
float GetHeight() const { return m_height; }
|
||||
Math::Vector2f GetSize() const { return { m_width, m_height }; }
|
||||
|
||||
using RenderResourceHolder<Camera>::GetRenderResource;
|
||||
using RenderResourceHolder<Camera>::HasRenderResource;
|
||||
using RenderResourceHolder<Camera>::operator RenderResourcePtr&;
|
||||
};
|
||||
|
||||
class PerspectiveCamera : public Camera
|
||||
|
||||
Reference in New Issue
Block a user