1 #ifndef param_header
 2 #define param_header
 3 
 4 #include <stdio.h>
 5 
 6 #include "vector.h"
 7 #include "thread_group.h"
 8 
 9 //----------------------------------
10 // Simulation Parameters
11 //----------------------------------
12 #ifndef PROJECT_DEFINED
13 
14 #define MULTI_PASS
15 //#define SINGLE_PASS
16 //#define MULTI_THREAD
17 //#define MULTI_THREAD_RD
18 
19 //#define SIMD_VECTOR
20 
21 //#define FACING_PARTICLES
22 
23 
24 #endif
25 
26 #define MESH_PARTICLES
27 
28 #define INIT		//uses an initialization function for changing OGL context thread binding
29 
30 extern Thread_Group thread_group;
31 extern Thread_Group thread_render;
32 
33 extern FILE* file;
34 
35 //#define TEST_MODE
36 
37 //----------------------------------
38 // Frame rate Parameters
39 //----------------------------------
40 #define MAX_FPS 30
41 #define MAX_SPS 100
42 
43 #define MAX_FPS_INV ( 1.0f / MAX_FPS )
44 #define MAX_SPS_INV ( 1.0f / MAX_SPS )
45 
46 //----------------------------------
47 // Particle Parameters
48 //----------------------------------
49 #define PARTICLE_RADIUS 0.5f
50 #define PARTICLE_MASS	5.0f
51 
52 //inital cube of particles dimensions
53 #define INIT_NUM_X		 3
54 #define INIT_NUM_Y		40
55 #define INIT_NUM_Z		 3
56 
57 extern int init_num_x;
58 extern int init_num_y;
59 extern int init_num_Z;
60 
61 extern int total_particles;
62 
63 #define MAX_SEP				( 5.0f * PARTICLE_RADIUS )
64 #define INTERSECTION_SIZE	( 2.0f * PARTICLE_RADIUS )
65 
66 #define GRAVITY			( -9.81f )
67 #define GRAVITY_FORCE   ( GRAVITY * PARTICLE_MASS )
68 
69 #define DRAG_FAC		0.5f
70 #define DRAG_FORCE_CUT  1.0f
71 #define MASS_FAC        0.5f
72 
73 #define MAX_PUSH        ( 20.000f * GRAVITY * PARTICLE_MASS )
74 #define MAX_PULL        ( 00.001f * GRAVITY * PARTICLE_MASS )
75 
76 extern vector3 g_gravity_force;
77 
78 
79 //----------------------------------
80 // Constraint Parameters
81 //----------------------------------
82 #define CONSTRAINT_SIZE		 7.0f
83 #define CONSTRAINT_HEIGHT	 15.0f
84 #define CONSTRAINT_THICKNESS 01.0f
85 
86 #define HEIGHT_OFFSET 10.0f
87 
88 //----------------------------------
89 // Force Ball Variables
90 //----------------------------------
91 #define FB_MAX_DISTANCE (PARTICLE_RADIUS * 10.0f)
92 #define FB_MAX_PUSH     (MAX_PUSH * 0.5f)
93 
94 #endif


syntax highlighted by Code2HTML, v. 0.9.1