float angle = v3_dot(hit->normal,(v3f){0.0f,1.0f,0.0f});
q_axis_angle( qsurface, axis, angle );
- q_axis_angle( qrandom, (v3f){0.0f,1.0f,0.0f}, vg_randf()*VG_TAUf );
+ q_axis_angle( qrandom, (v3f){0.0f,1.0f,0.0f}, vg_randf64()*VG_TAUf );
q_mul( qsurface, qrandom, qsurface );
q_m3x3( qsurface, transform );
v3_copy( hit->pos, transform[3] );
for( u32 i=0; i<particles; i++ ){
v3f pos;
- v3_mul( volume, (v3f){ vg_randf(), 1000.0f, vg_randf() }, pos );
+ v3_mul( volume, (v3f){ vg_randf64(), 1000.0f, vg_randf64() }, pos );
pos[1] = 1000.0f;
v3_add( pos, world->scene_geo.bbx[0], pos );
VG_STATIC void world_load( u32 index, const char *path )
{
+ vg_rand_seed( 9001 );
+
world_instance *world = &world_global.worlds[index];
world_init_blank( world );
world->status = k_world_status_loading;