projects
/
carveJwlIkooP6JGAAIwe30JlM.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
preview for challenges and new system
[carveJwlIkooP6JGAAIwe30JlM.git]
/
world_gen.c
diff --git
a/world_gen.c
b/world_gen.c
index 2650539a48679dbc8957779da68003c9d1b74a2f..6bef3ef9ed6e53fd82b6f0c5ca9684bdf49aa09e 100644
(file)
--- a/
world_gen.c
+++ b/
world_gen.c
@@
-136,7
+136,8
@@
VG_STATIC void world_apply_procedural_foliage( world_instance *world,
ray_hit hit;
hit.dist = INFINITY;
ray_hit hit;
hit.dist = INFINITY;
- if( ray_world( world, pos, (v3f){0.0f,-1.0f,0.0f}, &hit )){
+ if( ray_world( world, pos, (v3f){0.0f,-1.0f,0.0f}, &hit,
+ k_material_flag_ghosts )){
struct world_surface *m1 = ray_hit_surface( world, &hit );
if((hit.normal[1] > 0.8f) && (m1 == mat) && (hit.pos[1] > 0.0f+10.0f)){
world_gen_add_blob( world, scene, &hit );
struct world_surface *m1 = ray_hit_surface( world, &hit );
if((hit.normal[1] > 0.8f) && (m1 == mat) && (hit.pos[1] > 0.0f+10.0f)){
world_gen_add_blob( world, scene, &hit );
@@
-191,6
+192,10
@@
VG_STATIC void world_gen_generate_meshes( world_instance *world ){
&world->meta, i );
scene_copy_slice( &world->scene_geo, &surf->sm_geo );
&world->meta, i );
scene_copy_slice( &world->scene_geo, &surf->sm_geo );
+ scene_set_vertex_flags( &world->scene_geo,
+ surf->sm_geo.vertex_start,
+ surf->sm_geo.vertex_count,
+ (u16)(surf->info.flags & 0xffff) );
}
/* compress that bad boy */
}
/* compress that bad boy */
@@
-272,12
+277,12
@@
VG_STATIC void world_gen_generate_meshes( world_instance *world ){
}
/* unpack challenge models */
}
/* unpack challenge models */
- for( u32 i=0; i<mdl_arrcount( &world->ent_
challeng
e ); i++ ){
- ent_
challenge *challenge = mdl_arritm( &world->ent_challeng
e, i );
+ for( u32 i=0; i<mdl_arrcount( &world->ent_
objectiv
e ); i++ ){
+ ent_
objective *objective = mdl_arritm( &world->ent_objectiv
e, i );
- for( u32 j=0; j<
challeng
e->submesh_count; j ++ ){
+ for( u32 j=0; j<
objectiv
e->submesh_count; j ++ ){
mdl_submesh *sm = mdl_arritm( &world->meta.submeshs,
mdl_submesh *sm = mdl_arritm( &world->meta.submeshs,
-
challeng
e->submesh_start+j );
+
objectiv
e->submesh_start+j );
world_unpack_submesh_dynamic( world, &world->scene_no_collide, sm );
}
}
world_unpack_submesh_dynamic( world, &world->scene_no_collide, sm );
}
}