X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=common.h;h=19b5a6fa5d84130b030ec431864fb0a911270aaa;hb=0ca7f5ca2560908de1a03db112df67e52b476107;hp=6b10d8b2894d6ae21b082d1c0c40ebcd22f9163b;hpb=ff8fcac9582d07bc1ccbf08421d6ffec1758a755;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/common.h b/common.h index 6b10d8b..19b5a6f 100644 --- a/common.h +++ b/common.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021-2022 Mt.ZERO Software, Harry Godden - All Rights Reserved + * Copyright (C) 2021-2023 Mt.ZERO Software, Harry Godden - All Rights Reserved */ #ifndef COMMON_H @@ -36,90 +36,23 @@ struct ray_hit v3f pos, normal; }; -VG_STATIC int network_scores_updated = 0; - -VG_STATIC u32 utf8_byte0_byte_count( u8 char0 ) -{ - for( u32 k=2; k<4; k++ ) - { - if( !(char0 & (0x80 >> k)) ) - return k; - } - - return 0; -} - -VG_STATIC void str_utf8_collapse( const char *str, char *buf, u32 length ) -{ - u8 *ustr = (u8 *)str; - u32 utf32_code = 0x00000000; - u32 i=0, j=0, utf32_byte_ct=0; - - for(;i < length-1;) - { - if( ustr[i] == 0x00 ) - break; - - if( ustr[i] & 0x80 ) - { - if( utf32_byte_ct ) - { - utf32_byte_ct --; - utf32_code |= (ustr[i] & 0x3F) << (utf32_byte_ct*6); - - if( !utf32_byte_ct ) - { - const char *match; - size_t chars = anyascii( utf32_code, &match ); - - for( u32 k=0; k> utf32_byte_ct); - utf32_code <<= utf32_byte_ct*6; - } - } - else - { - utf32_byte_ct = 0x00; - buf[j ++] = str[i]; - } - - i++; - } - - buf[j] = 0x00; -} - VG_STATIC float - k_runspeed = 20.0f, /* depr */ - k_board_radius = 0.3f, - k_board_length = 0.45f, - k_board_allowance = 0.04f, k_friction_lat = 12.0f, k_friction_resistance = 0.01f, + k_max_push_speed = 16.0f, k_push_accel = 10.0f, k_push_cycle_rate = 8.0f, + k_steer_ground = 2.5f, k_steer_air = 3.6f, - k_steer_air_lerp = 0.3f, - k_pump_force = 0.0f, - k_downforce = 5.0f, - k_walk_downforce = 8.0f, + k_jump_charge_speed = (1.0f/1.0f), k_jump_force = 5.0f, + k_pitch_limit = 1.5f, k_look_speed = 2.0f, - k_spin_boost = 2.2f, - k_cog_spring = 0.2f, k_cog_damp = 0.02f, k_cog_mass_ratio = 0.9f, @@ -130,9 +63,30 @@ VG_STATIC float k_mmdecay = 12.0f, k_spring_angular = 1.0f, - k_spring_force = 15.0f, - k_spring_dampener = 5.0f; + k_spring_force = 300.0f, + k_spring_dampener = 5.0f, + + k_grind_spring = 50.0f, + k_grind_aligment = 10.0f, + k_grind_dampener = 5.0f, + k_surface_spring = 100.0f, + k_surface_dampener = 40.0f, + k_manul_spring = 200.0f, + k_manul_dampener = 30.0f, + k_board_interia = 8.0f, + + k_grind_decayxy = 30.0f, + k_grind_axel_min_vel = 3.0f, + k_grind_axel_max_angle = 0.95f, /* cosine(|a|) */ + k_grind_axel_max_vangle = 0.4f, + k_grind_max_friction = 3.0f, + k_grind_max_edge_angle = 0.97f, + + k_board_length = 0.45f, + k_board_width = 0.13f, + k_board_end_radius = 0.1f, + k_board_radius = 0.14f; /* 0.07 */ VG_STATIC float k_walkspeed = 10.0f, @@ -143,6 +97,14 @@ VG_STATIC float k_walk_friction = 10.0f, k_walk_step_height = 0.2f; +VG_STATIC float + k_cam_punch = -0.1f, + k_cam_spring = 20.0f, + k_cam_damp = 6.7f; + +VG_STATIC float + k_day_length = 30.0f; /* minutes */ + VG_STATIC float k_ragdoll_floatyiness = 20.0f, k_ragdoll_floatydrag = 1.0f, k_ragdoll_limit_scale = 1.0f; @@ -152,6 +114,9 @@ VG_STATIC int k_ragdoll_div = 1, k_ragdoll_debug_collider = 1, k_ragdoll_debug_constraints = 0; +VG_STATIC int k_debug_light_indices = 0, + k_debug_light_complexity = 0, + k_light_preview = 0; VG_STATIC int freecam = 0; VG_STATIC int walk_grid_iterations = 1; @@ -160,31 +125,47 @@ VG_STATIC int cl_thirdperson = 0; VG_STATIC void common_var_temp(void) { + VG_VAR_F32( k_day_length ); + + VG_VAR_F32( k_cam_punch ); + VG_VAR_F32( k_cam_damp ); + VG_VAR_F32( k_cam_spring ); + + VG_VAR_F32( k_grind_dampener ); + VG_VAR_F32( k_grind_spring ); + VG_VAR_F32( k_grind_aligment ); + VG_VAR_F32( k_surface_spring ); + VG_VAR_F32( k_surface_dampener ); + VG_VAR_F32( k_board_interia ); + VG_VAR_F32( k_grind_decayxy ); + VG_VAR_F32( k_grind_axel_min_vel ); + VG_VAR_F32( k_grind_axel_max_angle ); + VG_VAR_F32( k_grind_max_friction ); + VG_VAR_F32( k_walkspeed ); VG_VAR_F32( k_stopspeed ); VG_VAR_F32( k_airspeed ); VG_VAR_F32( k_walk_friction ); VG_VAR_F32( k_walk_air_accel ); - VG_VAR_F32( k_runspeed ); VG_VAR_F32( k_walk_accel ); VG_VAR_I32( freecam ); VG_VAR_I32( cl_thirdperson ); VG_VAR_F32_PERSISTENT( fc_speed ); - /* TODO: NOT PERSISTENT */ VG_VAR_F32( k_ragdoll_limit_scale ); VG_VAR_I32( k_ragdoll_div ); VG_VAR_I32( k_ragdoll_debug_collider ); VG_VAR_I32( k_ragdoll_debug_constraints ); + VG_VAR_I32( k_debug_light_indices ); + VG_VAR_I32( k_debug_light_complexity ); + VG_VAR_I32( k_light_preview ); VG_VAR_F32( k_friction_lat ); VG_VAR_F32( k_cog_spring ); VG_VAR_F32( k_cog_damp ); - VG_VAR_F32( k_cog_mass_ratio ); - VG_VAR_F32( k_downforce ); VG_VAR_F32( k_spring_force ); VG_VAR_F32( k_spring_dampener );