static int sv_scene = 0;
/* Components */
-#define SR_NETWORKED
+//#define SR_NETWORKED
/* uncomment this to run the game without any graphics being drawn */
-#define SR_NETWORK_TEST
+//#define SR_NETWORK_TEST
#include "steam.h"
#include "network.h"
-#include "road.h"
+#include "model.h"
+//#include "road.h"
#include "scene.h"
-#include "ik.h"
+//#include "ik.h"
#include "audio.h"
-#include "terrain.h"
-#include "character.h"
+//#include "terrain.h"
+//#include "character.h"
#include "ragdoll.h"
#include "rigidbody.h"
#include "render.h"
-#include "gate.h"
-#include "water.h"
#include "world.h"
#include "player.h"
#include "shaders/unlit.h"
#include "physics_test.h"
+#include "anim_test.h"
+
+#include "gate.h"
+#include "water.h"
void vg_register(void)
{
.persistent = 1
});
+ vg_convar_push( (struct vg_convar){
+ .name = "fcs",
+ .data = &fc_speed,
+ .data_type = k_convar_dtype_f32,
+ .opt_f32 = { .clamp = 0 },
+ .persistent = 1
+ });
+
vg_convar_push( (struct vg_convar){
.name = "ledit",
.data = &lightedit,
if( sv_scene == 0 )
{
- character_load( &player.mdl, "ch_default" );
+ character_load( &player.mdl, "ch_new" );
character_init_ragdoll( &player.mdl );
world_load();
network_init();
}
- else
+ else if( sv_scene == 1 )
{
physics_test_start();
}
+ else if( sv_scene == 2 )
+ {
+ anim_test_start();
+ }
}
void vg_free(void)
{
physics_test_update();
}
+ else if( sv_scene == 2 )
+ {
+ anim_test_update();
+ }
}
static void vg_framebuffer_resize( int w, int h )
m4x4f world_4x4;
m4x3_expand( player.camera_inverse, world_4x4 );
- gpipeline.fov = freecam? 60.0f: 135.0f; /* 120 */
+ gpipeline.fov = freecam? 60.0f: 125.0f; /* 120 */
m4x4_projection( vg_pv, gpipeline.fov,
(float)vg_window_x / (float)vg_window_y,
0.02f, 2100.0f );
{
m4x4_projection( vg_pv, gpipeline.fov,
(float)vg_window_x / (float)vg_window_y,
- 0.04f, 600.0f );
+ 0.01f, 600.0f );
m4x4_mul( vg_pv, world_4x4, vg_pv );
}
draw_player();
{
physics_test_render();
}
+ else if( sv_scene == 2 )
+ {
+ anim_test_render( &tex_characters );
+ }
#endif
}
render_update_lighting_ub();
}
+
+ //glPolygonMode( GL_FRONT_AND_BACK, GL_LINE );
+ render_world_routes_ui();
+ //glPolygonMode( GL_FRONT_AND_BACK, GL_FILL );
+
+#if 0
+ static double last_b_press = 0.0;
+
+ double localtime = vg_time - last_b_press;
+
+ world_routes_ui_updatetime( 0, localtime );
+ world_routes_ui_draw( 0, (v4f){ 1.0f,0.0f,1.0f,1.0f}, 9.0f );
+
+ if( glfwGetKey(vg_window,GLFW_KEY_B) )
+ world_routes_ui_notch( 0, localtime );
+
+ if( vg_time-last_b_press > 1.0 )
+ if( glfwGetKey(vg_window,GLFW_KEY_N) )
+ {
+ last_b_press = vg_time;
+ world_routes_ui_newseg( 0 );
+ }
+
+ static double last_m_press;
+ if( vg_time-last_m_press > 1.0 )
+ if( glfwGetKey( vg_window, GLFW_KEY_M) )
+ {
+ last_m_press = vg_time;
+
+ vg_info( "start: %u\n",world.routes.routes[0].ui.segment_count );
+ for( int i=0; i<world.routes.routes[0].ui.segment_count; i++ )
+ world_routes_ui_popfirst(0);
+
+ vg_info( "new: %u\n",world.routes.routes[0].ui.segment_count );
+ }
+#endif
}