-/*
- * =============================================================================
- *
- * Copyright . . . -----, ,----- ,---. .---.
- * 2021-2023 |\ /| | / | | | | /|
- * | \ / | +-- / +----- +---' | / |
- * | \ / | | / | | \ | / |
- * | \/ | | / | | \ | / |
- * ' ' '--' [] '----- '----- ' ' '---' SOFTWARE
- *
- * =============================================================================
- */
-
-#define SR_NETWORKED
-#define VG_DEVWINDOW
-#include "common.h"
-#include "conf.h"
-#include "steam.h"
-#include "render.h"
-#include "audio.h"
-#include "world.h"
-#include "font.h"
-#include "player.h"
-#include "entity.c"
-#include "workshop.c"
-
-static int skaterift_loaded = 0;
-
-int main( int argc, char *argv[] )
-{
- vg_mem.use_libc_malloc = 0;
- vg_set_mem_quota( 160*1024*1024 );
- vg_enter( argc, argv, "Voyager Game Engine" );
- return 0;
-}
-
-VG_STATIC void vg_launch_opt(void)
-{
-}
-
-VG_STATIC void vg_preload(void)
-{
-vg_info(" Copyright . . . -----, ,----- ,---. .---. \n" );
-vg_info(" 2021-2023 |\\ /| | / | | | | /| \n" );
-vg_info(" | \\ / | +-- / +----- +---' | / | \n" );
-vg_info(" | \\ / | | / | | \\ | / | \n" );
-vg_info(" | \\/ | | / | | \\ | / | \n" );
-vg_info(" ' ' '--' [] '----- '----- ' ' '---' "
- "SOFTWARE\n" );
-
- steam_init();
- vg_loader_step( NULL, steam_end );
-}
-
-VG_STATIC void skaterift_load_post( void *data, u32 len )
-{
- skaterift_loaded = 1;
-}
-
-VG_STATIC void vg_load(void)
-{
- vg_bake_shaders();
- vg_async_call( skaterift_load_post, NULL, 0 );
-}
-
-VG_STATIC void vg_update(void)
-{
- steam_update();
-}
-
-VG_STATIC void vg_update_fixed(void)
-{
-}
-
-VG_STATIC void vg_update_post(void)
-{
-}
-
-VG_STATIC void vg_framebuffer_resize( int w, int h )
-{
- render_fb_resize();
-}
-
-VG_STATIC void vg_render(void)
-{
- glBindFramebuffer( GL_FRAMEBUFFER, 0 );
-
- glViewport( 0,0, vg.window_x, vg.window_y );
- glDisable( GL_DEPTH_TEST );
-
- glClearColor( 0.0f, 0.2f, 0.7f, 0.0f );
- glClear( GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT );
-
- /* Other shite */
- glDisable( GL_BLEND );
- glDisable( GL_DEPTH_TEST );
- vg_lines_drawall();
-}
-
-VG_STATIC void vg_gui(void)
-{
- if( !skaterift_loaded ) return;
-
- ui_rect null;
- ui_rect screen = { 0, 0, vg.window_x, vg.window_y };
- ui_rect window = { 0, 0, 1000, 700 };
- ui_rect_center( screen, window );
- vg_ui.wants_mouse = 1;
-
- ui_fill( window, ui_colour( k_ui_bg+1 ) );
- ui_outline( window, 1, ui_colour( k_ui_bg+7 ) );
-
- ui_rect title, panel;
- ui_split( window, k_ui_axis_h, 28, 0, title, panel );
- ui_fill( title, ui_colour( k_ui_bg+7 ) );
- ui_text( title, "Workshop tool", 1, k_ui_align_middle_center,
- ui_colourcont(k_ui_bg+7) );
-
- ui_rect quit_button;
- ui_split( title, k_ui_axis_v, title[2]-title[3], 2, title, quit_button );
-
- ui_dev_colourview();
-}