]> git.tdb.fi Git - r2c2.git/blobdiff - source/3d/view.h
Improve graphics quality with some shaders and effects
[r2c2.git] / source / 3d / view.h
index 3b0d625df7456c74178becd3eb9476e01718ffb3..225e3937297a36c33202acee728fe890d58462eb 100644 (file)
@@ -1,8 +1,11 @@
 #ifndef R2C2_3D_VIEW_H_
 #define R2C2_3D_VIEW_H_
 
+#include <msp/gl/ambientocclusion.h>
 #include <msp/gl/camera.h>
+#include <msp/gl/colorcurve.h>
 #include <msp/gl/pipeline.h>
+#include <msp/gl/shadowmap.h>
 #include "sky.h"
 
 namespace R2C2 {
@@ -18,6 +21,9 @@ protected:
        Msp::GL::Camera camera;
        Msp::GL::Pipeline pipeline;
        Sky3D sky;
+       Msp::GL::ShadowMap shadow;
+       Msp::GL::ColorCurve colorcurve;
+       Msp::GL::AmbientOcclusion ambient_occlusion;
 
 public:
        View3D(Layout3D &, unsigned, unsigned);
@@ -29,9 +35,15 @@ public:
        Ray create_ray(int, int) const;
        Ray create_ray(float, float) const;
 
+private:
+       void compute_bounds(Vector &, Vector &);
+public:
        void view_all(bool = false);
 
        void render();
+
+private:
+       void update_shadow_area();
 };
 
 } // namespace R2C2