// a mesh containing all shadow casting geometry for the whole model (including submodels), portions of this are referenced by each surface's num_firstshadowmeshtriangle
shadowmesh_t *shadowmesh;
+ // a mesh containing all SUPERCONTENTS_SOLID surfaces for this model or submodel, for physics engines to use
+ shadowmesh_t *collisionmesh;
+
// common functions
int (*SuperContentsFromNativeContents)(struct model_s *model, int nativecontents);
int (*NativeContentsFromSuperContents)(struct model_s *model, int supercontents);
void Mod_ShadowMesh_CalcBBox(shadowmesh_t *firstmesh, vec3_t mins, vec3_t maxs, vec3_t center, float *radius);
void Mod_ShadowMesh_Free(shadowmesh_t *mesh);
+void Mod_CreateCollisionMesh(dp_model_t *mod);
+
void Mod_FreeQ3Shaders(void);
void Mod_LoadQ3Shaders(void);
q3shaderinfo_t *Mod_LookupQ3Shader(const char *name);