(no commit message)
[atyndall/cits2231.git] / globals.c
index b220669..a406be4 100644 (file)
--- a/globals.c
+++ b/globals.c
@@ -35,7 +35,10 @@ const char *objectMenuEntries[NMESH] = {
 };
 
 SceneObject sceneObjs[MAXOBJECTS];  // An array with details of the objects in a scene
-int nObjects=0;                     // How many objects there are in the scene currently.
+int nObjects = 0;                   // How many objects there are in the scene currently.
+int curObject = -1;                 // The scene object that is currently selected, (-1 is no object)
+int buttonSelected = -1;                 // Either GLUT_LEFT_BUTTON, GLUT_MIDDLE_BUTTON or -1 (no button)
+int manipulateState = STATE_CAMERA_ROTATE_MOVE; // See manipulateStates enum
 
 // Directories containing models
 char *dirDefault1 = "models-textures";
@@ -43,10 +46,7 @@ char *dirDefault2 = "/cslinux/examples/CITS2231/project-files/models-textures";
 
 char dataDir[200];  // Stores the directory name for the meshes and textures.
 
-int moving, startx, starty;
-
-/* Recursion level for floor drawing */
-int drawFloorRecurse = 8;
+int startx, starty;
 
 /* Size of floor, from -n to n, floorSize must be divisible by squareSize */
 int floorSize = 200;
@@ -82,7 +82,7 @@ float lightAngle1 = 360.0, lightHeight1 = 5;
 int lightMoving1 = 0, lightStartX1, lightStartY1;
 
 /* Material types */
-GLfloat ambient[] = {1.0, 1.0, 1.0, 1.0};
+GLfloat ambient[] = {0.2, 0.2, 0.2, 1.0};
 GLfloat diffuse[] = {1.0, 0.8, 0.0, 1.0};
 GLfloat specular[] = {1.0, 1.0, 1.0, 1.0};
 GLfloat shine = 100.0;
@@ -90,11 +90,12 @@ GLfloat glightmodel[] = {0.2,0.2,0.2,1};
 GLfloat emission[] = {0.0, 0.3, 0.3, 1.0};
 
 /* Zoom and rotate tracking */
-GLfloat zoom = 0.0, rotate = 0.0;
-GLfloat zoomFactor = 0.2, rotateFactor = 0.5;
+GLfloat zoom = 0.0, rotate = 0.0, camAngle = 40.0;
+GLfloat zoomFactor = 0.2, camRotateFactor = 0.5, camAngleFactor = 0.5;
+GLfloat leftrightFactor = 0.5, nearfarFactor = 0.5, bigsmallFactor = 0.6, updownFactor = 0.03, rotateFactor = 0.8, texscaleFactor = 0.05;
 
 /* Beginning width, height */
-int width = 500, height = 500;
+int width = 750, height = 750;
 
 /* Texture state tracking */
 int currentGroundTexture = 0, currentMeshTexture = 0;
\ No newline at end of file

UCC git Repository :: git.ucc.asn.au