stuff
[carveJwlIkooP6JGAAIwe30JlM.git] / terrain.h
index 739fb75633fbaac3e5cc95e186578eb4c36675f0..d35dc0ab0f39ffdaa3c57b53bb891d86b48ee124 100644 (file)
--- a/terrain.h
+++ b/terrain.h
@@ -1,10 +1,14 @@
+#include "common.h"
+
+static void render_terrain(m4x4f projection, v3f camera);
+static void render_sky(m4x3f camera);
+
 #ifndef TERRAIN_H
 #define TERRAIN_H
 
-#define VG_3D
-#include "vg/vg.h"
 #include "model.h"
 #include "render.h"
+#include "water.h"
 
 #include "shaders/terrain.h"
 #include "shaders/sky.h"
@@ -38,7 +42,7 @@ static void terrain_init(void)
    free(msky);
 }
 
-static void render_terrain(m4x4f projection)
+static void render_terrain(m4x4f projection, v3f camera)
 {
    shader_terrain_use();
    shader_terrain_uTexGarbage(0);
@@ -51,6 +55,8 @@ static void render_terrain(m4x4f projection)
    m4x3_identity( identity_matrix );
    shader_terrain_uPv( projection );
    shader_terrain_uMdl( identity_matrix );
+   shader_terrain_uCamera( camera );
+   shader_terrain_uPlane( (v4f){ 0.0f,1.0f,0.0f, wrender.height } );
 }
 
 static void render_sky(m4x3f camera)
@@ -70,6 +76,9 @@ static void render_sky(m4x3f camera)
    shader_sky_use();
    shader_sky_uMdl(identity_matrix);
    shader_sky_uPv(full);
+   shader_sky_uTexGarbage(0);
+   shader_sky_uTime( vg_time );
+   vg_tex2d_bind( &tex_terrain_noise, 0 );
 
    glDepthMask(GL_FALSE);
    glDisable(GL_DEPTH_TEST);