#pragma once

#include "VoxelProgram.hpp"

namespace pass {
    /// Unique voxels pass
    class WorldProgram: public VoxelProgram {
    public:
        WorldProgram(const options &opts);
        ~WorldProgram();

        void setup(glm::mat4 modelMatrix, glm::vec4 sphereProj, float curvature);

    protected:
        void setModel(const GLfloat *matrix);

    private:
        GLuint ModelMatrixID;
    };
}