+/*
+ * Copyright (C) 2021-2022 Mt.ZERO Software, Harry Godden - All Rights Reserved
+ */
+
#include "common.h"
#include "model.h"
#include "shaders/blit.h"
#include "shaders/standard.h"
#include "shaders/vblend.h"
-#include "shaders/unlit.h"
static void render_water_texture( m4x3f camera );
static void render_water_surface( m4x4f pv, m4x3f camera );
{
m4x4_projection( mat,
gpipeline.fov,
- (float)vg_window_x / (float)vg_window_y,
+ (float)vg.window_x / (float)vg.window_y,
nearz, farz );
}
if( !fb )
{
glBindFramebuffer( GL_FRAMEBUFFER, 0 );
- glViewport( 0, 0, vg_window_x, vg_window_y );
+ glViewport( 0, 0, vg.window_x, vg.window_y );
}
else
{
glBindFramebuffer( GL_FRAMEBUFFER, fb->fb );
- glViewport( 0, 0, vg_window_x / fb->div, vg_window_y / fb->div );
+ glViewport( 0, 0, vg.window_x / fb->div, vg.window_y / fb->div );
}
}
static void fb_init( struct framebuffer *fb )
{
- i32 ix = vg_window_x / fb->div,
- iy = vg_window_y / fb->div;
+ i32 ix = vg.window_x / fb->div,
+ iy = vg.window_y / fb->div;
glGenFramebuffers( 1, &fb->fb );
glBindFramebuffer( GL_FRAMEBUFFER, fb->fb );
if( !fb->allocated )
return;
- i32 ix = vg_window_x / fb->div,
- iy = vg_window_y / fb->div;
+ i32 ix = vg.window_x / fb->div,
+ iy = vg.window_y / fb->div;
glBindTexture( GL_TEXTURE_2D, fb->colour );
glTexImage2D( GL_TEXTURE_2D, 0, fb->format, ix, iy, 0,
if( gpipeline.ready )
{
glBindTexture( GL_TEXTURE_2D, gpipeline.rgb_background );
- glTexImage2D( GL_TEXTURE_2D, 0, GL_RGB, vg_window_x, vg_window_y, 0,
+ glTexImage2D( GL_TEXTURE_2D, 0, GL_RGB, vg.window_x, vg.window_y, 0,
GL_RGB, GL_UNSIGNED_BYTE, NULL );
}
}
glGenTextures( 1, &gpipeline.rgb_background );
glBindTexture( GL_TEXTURE_2D, gpipeline.rgb_background );
- glTexImage2D( GL_TEXTURE_2D, 0, GL_RGB, vg_window_x, vg_window_y,
+ glTexImage2D( GL_TEXTURE_2D, 0, GL_RGB, vg.window_x, vg.window_y,
0, GL_RGB, GL_UNSIGNED_BYTE, NULL);
glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR );
shader_blit_register();
shader_standard_register();
shader_vblend_register();
- shader_unlit_register();
vg_acquire_thread_sync();
{