X-Git-Url: https://git.ucc.asn.au/?p=atyndall%2Fcits2231.git;a=blobdiff_plain;f=globals.h;h=e9e42f26276a184ea39f4f9d3e54956cfad17fb9;hp=e85ea2597e80243b9176a36fe83542f7e0352dca;hb=156ee3d62238bda349822b1f72009dcdaf1daf80;hpb=d3465c5cd0e6e9b414e669e8c8aa464b03f2fd24 diff --git a/globals.h b/globals.h index e85ea25..e9e42f2 100644 --- a/globals.h +++ b/globals.h @@ -13,6 +13,10 @@ #define NTEXTURE 30 // The number of textures (in the models-textures dir) #define MAXOBJECTS 256 +#ifndef M_PI +#define M_PI 3.14159265358979323846 +#endif + // Meshes and textures arrays extern mesh* meshes[]; extern texture* textures[]; @@ -24,6 +28,9 @@ extern const char *objectMenuEntries[]; // Scene object arrays extern SceneObject sceneObjs[]; extern int nObjects; +extern int curObject; +extern int buttonSelected; +extern int manipulateState; // Directories containing models extern char *dirDefault1; @@ -32,39 +39,60 @@ extern char *dirDefault2; // Stores the directory name for the meshes and textures. extern char dataDir[]; -// Lighting -extern GLfloat lightColor[]; -extern GLfloat lightPosition[]; - -extern int moving, startx, starty; -extern int lightMoving, lightStartX, lightStartY; - - -extern float jump; -extern float lightAngle, lightHeight; -extern GLfloat angle; -extern GLfloat angle2; - -/* Near and far parameters */ -extern GLfloat near; -extern GLfloat far; - -/* Zoom factor for mouse movements */ -extern GLfloat zoomFactor; - -/* Recursion level for floor drawing */ -extern int drawFloorRecurse; +extern int startx, starty; /* Size of floor, from -n to n */ extern int floorSize; +extern float squareSize; + +/* Current camera position */ +extern GLfloat camx, camy, camz, keyrot; +extern GLfloat factor; + +/* Length of axis lines */ +extern GLfloat lineLength; /* Light 0 parameters */ extern GLfloat diffuse0[]; extern GLfloat ambient0[]; extern GLfloat specular0[]; -extern GLfloat emission0[]; -extern GLfloat light0_pos[]; +extern GLfloat direction0[]; + +extern GLfloat lightPosition0[]; + +extern float lightAngle0, lightHeight0; +extern int lightMoving0, lightStartX0, lightStartY0; + +/* Light 1 parameters */ +extern GLfloat diffuse1[]; +extern GLfloat ambient1[]; +extern GLfloat specular1[]; +extern GLfloat direction1[]; + +extern GLfloat lightPosition1[]; + +extern float lightAngle1, lightHeight1; +extern int lightMoving1, lightStartX1, lightStartY1; + +/* Material types */ +extern GLfloat ambient[]; +extern GLfloat diffuse[]; +extern GLfloat specular[]; +extern GLfloat shine; extern GLfloat glightmodel[]; +extern GLfloat emission[]; + +extern GLfloat lightBallSize; + +/* Beginning width, height */ +extern int width, height; + +/* Zoom and rotate tracking */ +extern GLfloat zoom, rotate, camAngle; +extern GLfloat zoomFactor, camRotateFactor, camAngleFactor; +extern GLfloat leftrightFactor, nearfarFactor, bigsmallFactor, updownFactor, rotateFactor, texscaleFactor; -#endif /* GLOBALS_H */ +/* Texture state tracking */ +extern int currentGroundTexture, currentMeshTexture; +#endif /* GLOBALS_H */ \ No newline at end of file