]> git.localhorst.tv Git - blobs.git/blobdiff - src/graphics/CreatureSkin.hpp
varying material and schlick/fresnel
[blobs.git] / src / graphics / CreatureSkin.hpp
index 1b5b6b8bc47ae4dd625f0818dff28e2d5539b8e6..1dce8b532390ad0753262a42e2d0f1cb2a7edfff 100644 (file)
@@ -28,9 +28,13 @@ public:
        void Activate() noexcept;
 
        void SetM(const glm::mat4 &m) noexcept;
+       void SetV(const glm::mat4 &v) noexcept;
        void SetVP(const glm::mat4 &v, const glm::mat4 &p) noexcept;
        void SetMVP(const glm::mat4 &m, const glm::mat4 &v, const glm::mat4 &p) noexcept;
+       void SetBaseColor(const glm::vec3 &) noexcept;
+       void SetHighlightColor(const glm::vec4 &) noexcept;
        void SetTexture(ArrayTexture &) noexcept;
+       void SetAmbient(const glm::vec3 &) noexcept;
        void SetLight(int n, const glm::vec3 &pos, const glm::vec3 &color, float strength) noexcept;
        void SetNumLights(int n) noexcept;
 
@@ -54,8 +58,11 @@ private:
        GLuint m_handle;
        GLuint mv_handle;
        GLuint mvp_handle;
-       GLuint sampler_handle;
 
+       GLuint base_color_handle;
+       GLuint highlight_color_handle;
+       GLuint sampler_handle;
+       GLuint ambient_handle;
        GLuint num_lights_handle;
        GLuint light_handle[MAX_LIGHTS * 3];