#pragma once
#include "node.h"
#include "shape.h"
#include "texture.h"
#include "event.h"

class NodeViewport : public Node
{
public:
    std::unique_ptr<Plane> m_faces;
    std::unique_ptr<Sampler> m_sampler;
    uint16_t m_tex_id;
    glm::vec2 drag_start;
    glm::vec2 drag_end;
    bool dragging = false;
    float angle = 0.0f;
    float angle_old;
    
    virtual void draw() override;
    virtual Node* clone_instantiate() const override;
    virtual void create() override;
    virtual kEventResult handle_event(Event* e) override;
};
