}
}
-void draw_vmf_group( csr_target *rt, vmf_map *map, vdf_node *root, int const group, m4x3f prev, m4x3f inst )
+void draw_vmf_group( csr_target *rt, vmf_map *map, vdf_node *root, const char *group, m4x3f prev, m4x3f inst )
{
m4x3f transform = M4X3_IDENTITY;
vmf_solid solid;
vmf_vert tri[3];
+ u32 group_id = 0;
+
+ if( group )
+ {
+ group_id = vmf_visgroup_id( root, group );
+ }
+
// Multiply previous transform with instance transform to create basis
if( prev )
{
vdf_foreach( world, "solid", brush )
{
+ if( group && !vmf_visgroup_match( brush, group_id ) )
+ continue;
+
solidgen_push( &solid, brush );
}
vdf_foreach( root, "entity", ent )
{
+ if( group && !vmf_visgroup_match( ent, group_id ) )
+ continue;
+
if( ent->user & VMF_FLAG_IS_PROP )
{
// Create model transform