fixed instance loading forget to append basepath.. other path fixes (windows)
[csRadar.git] / vmdl.h
diff --git a/vmdl.h b/vmdl.h
index 7b5bb07263dec764036883064c23158afffbf29f..c558d0dbb45fb6152b1f02abbf3cbd007a0a2bf5 100644 (file)
--- a/vmdl.h
+++ b/vmdl.h
@@ -1,3 +1,38 @@
+// This software is not affiliated with Valve Corporation
+//   We are not affiliated, associated, authorized, endorsed by, or in any way officially 
+//   connected with Valve Corporation, or any of its subsidiaries or its affiliates. 
+// 
+//   All trademarks are property of their respective owners
+
+typedef struct mdl_mesh mdl_mesh_t;
+
+// High level API
+//=======================================================================================================================
+
+// Load model from vfs
+int mdl_from_find_files( const char *mdlname, mdl_mesh_t *ctx );
+void mdl_free( mdl_mesh_t *m );
+
+// Set ctx to blank / 0,0
+void mdl_error( mdl_mesh_t *m );
+
+// Implementation
+//=======================================================================================================================
+
+struct mdl_mesh
+{
+       u16  *indices;  
+       u32     num_indices;
+       
+       float *vertices;
+       u32     num_vertices;
+       
+       // Bounding box
+       boxf bounds;
+};
+
+#ifdef VALVE_IMPLEMENTATION
+
 // VVD
 //=======================================================================================================================
 //StudioMDL constants
@@ -453,16 +488,6 @@ mstudiobodyparts_t *studiohdr_pBodypart( studiohdr_t *t, int i )
 
 #pragma pack(pop)
 
-typedef struct 
-{
-       u16  *indices;  
-       u32     num_indices;
-       
-       float *vertices;
-       u32     num_vertices;
-} 
-mdl_mesh_t;
-
 void mdl_free( mdl_mesh_t *m )
 {
        free( m->indices );
@@ -520,6 +545,9 @@ int mdl_from_find_files( const char *mdlname, mdl_mesh_t *ctx )
                return 0;
        }
        
+       v3_copy( pMdl->hull_min, ctx->bounds[0] );
+       v3_copy( pMdl->hull_max, ctx->bounds[1] );
+       
        ctx->num_indices = vtx_count_indices( pVtxHdr );
 
        // Allocate and read indices
@@ -590,3 +618,5 @@ int mdl_from_find_files( const char *mdlname, mdl_mesh_t *ctx )
        
        return 1;
 }
+
+#endif