- void(*DrawShadowVolume)(struct entity_render_s *ent, vec3_t relativelightorigin, float lightradius, int visiblevolume);
+ void(*DrawShadowVolume)(struct entity_render_s *ent, vec3_t relativelightorigin, float lightradius);
+ // draw the lighting on a model (through stencil)
+ void(*DrawLight)(struct entity_render_s *ent, vec3_t relativelightorigin, vec3_t relativeeyeorigin, float lightradius, float *lightcolor, const matrix4x4_t *matrix_modeltofilter, const matrix4x4_t *matrix_modeltoattenuationxyz, const matrix4x4_t *matrix_modeltoattenuationz);
+
+ void (*FindNonSolidLocation)(struct model_s *model, vec3_t in, vec3_t out, vec_t radius);
+ mleaf_t *(*PointInLeaf)(struct model_s *model, const float *p);
+ int (*PointContents)(struct model_s *model, const float *p);
+ qbyte *(*LeafPVS)(struct model_s *model, mleaf_t *leaf);
+ void (*BuildPVSTextureChains)(struct model_s *model);