projects
/
opengl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
IK is working!!!
[opengl.git]
/
skybox.hpp
diff --git
a/skybox.hpp
b/skybox.hpp
index f1ac4ee9a19c2ab3bab08440c496e49515855756..6961e8d861104d82843739e28978e399b7104d12 100644
(file)
--- a/
skybox.hpp
+++ b/
skybox.hpp
@@
-1,13
+1,28
@@
+#ifndef SKYBOX_HPP
+#define SKYBOX_HPP
+
#include <string>
#include <vector>
#include <GL/glew.h>
#include <glm/glm.hpp>
#include "program.hpp"
#include <string>
#include <vector>
#include <GL/glew.h>
#include <glm/glm.hpp>
#include "program.hpp"
+#include "image.hpp"
class Skybox {
public:
class Skybox {
public:
- Skybox(const std::vector<std::string> faces);
+ // img must be HDR
+ Skybox(const Image img);
void draw(glm::mat4 proj, glm::mat4 view) const;
void draw(glm::mat4 proj, glm::mat4 view) const;
+ GLuint getTexture() const { return cubemapTexId; }
+ GLuint getIrradianceMap() const { return irradianceTexId; }
+ GLuint getPrefilterMap() const { return prefilterTexId; }
+ GLuint getBRDFMap() const { return brdfMapTexId; }
private:
private:
- GLuint texId, vao;
+ GLuint hdrTexId, cubemapTexId, irradianceTexId, prefilterTexId, brdfMapTexId;
+ GLuint captureFBO, captureRBO;
+ GLuint vao;
const Program program;
const Program program;
+ void generatePrefilterMap() const;
+ void generateBRDFMap() const;
};
};
+
+#endif