- vg_convar_push( (struct vg_convar){
- .name = "debugsdf",
- .data = &debugsdf,
- .data_type = k_convar_dtype_i32,
- .opt_i32 = { .min=0, .max=1, .clamp=1 },
- .persistent = 1
- });
-
- vg_convar_push( (struct vg_convar){
- .name = "phys",
- .data = &sv_phys,
- .data_type = k_convar_dtype_i32,
- .opt_i32 = { .min=0, .max=1, .clamp=1 },
- .persistent = 1
- });
-
- vg_convar_push( (struct vg_convar){
- .name = "thirdperson",
- .data = &thirdperson,
- .data_type = k_convar_dtype_i32,
- .opt_i32 = { .min=0, .max=1, .clamp=1 },
- .persistent = 1
- });
-
- vg_function_push( (struct vg_cmd){
- .name = "reset",
- .function = reset_player
- });
-
- v3f lightDir = { 0.1f, 0.8f, 0.2f };
- v3_normalize( lightDir );
-
- /* Unpack player */
- model *char_dev = vg_asset_read( "models/char_dev.mdl" );
- model_unpack( char_dev, &player.mesh );
- player.legl = *submodel_get( char_dev, "legl" );
- player.legu = *submodel_get( char_dev, "legu" );
- player.board = *submodel_get( char_dev, "skateboard" );
- player.torso = *submodel_get( char_dev, "torso" );
- player.wheels = *submodel_get( char_dev, "wheels" );
- player.foot = *submodel_get( char_dev, "foot" );
-
- /* new model */
- player.leg_r0 = *submodel_get( char_dev, "leg_r0" );
- player.leg_r1 = *submodel_get( char_dev, "leg_r1" );
- player.foot_r = *submodel_get( char_dev, "foot_r" );
- player.leg_l0 = *submodel_get( char_dev, "leg_l0" );
- player.leg_l1 = *submodel_get( char_dev, "leg_l1" );
- player.foot_l = *submodel_get( char_dev, "foot_l" );
- player.arm_r0 = *submodel_get( char_dev, "arm_r0" );
- player.arm_r1 = *submodel_get( char_dev, "arm_r1" );
- player.hand_r = *submodel_get( char_dev, "hand_r" );
- player.arm_l0 = *submodel_get( char_dev, "arm_l0" );
- player.arm_l1 = *submodel_get( char_dev, "arm_l1" );
- player.hand_l = *submodel_get( char_dev, "hand_l" );
- player.body = *submodel_get( char_dev, "body" );
- player.head = *submodel_get( char_dev, "head" );
- free(char_dev);
-
- /* temp */
- model *cement_model = vg_asset_read("models/cement_r1.mdl" );
- model_unpack( cement_model, &world.cement );
- free( cement_model );
-
- /* Setup scene */
- scene_init( &world.geo );
- scene_init( &world.detail );
- scene_init( &world.foliage );
-
- model *mworld = vg_asset_read( "models/free_dev.mdl" );
- model *mtest = vg_asset_read( "models/test.mdl" );
-
- model *msky = vg_asset_read( "models/skydome.mdl" );
- model_unpack( msky, &world.skydome );
- free( msky );
-
- scene_add_model( &world.geo, mworld, submodel_get( mworld, "terrain" ),
- (v3f){0.0f,0.0f,0.0f}, 0.0f, 1.0f );
- scene_copy_slice( &world.geo, &world.terrain );
-
- scene_add_model( &world.geo, mworld, submodel_get( mworld, "terrain_rocks" ),
- (v3f){0.0f,0.0f,0.0f}, 0.0f, 1.0f );
- scene_copy_slice( &world.geo, &world.terrain_rocks );
-
- submodel *ptree = submodel_get( mtest, "tree" ),
- *pt_groundcover[] =
- {
- submodel_get( mtest, "bush" ),
- submodel_get( mtest, "bush" ),
- submodel_get( mtest, "blubber" ),
- };