Creating a 3D Game With Textures and Lighting. Purpose: To create a first person shooter in 3D using OpenGL and the C++ programming language. The program consists of using models, textures, lighting, and polygons to create a 3D world in OpenGL. Various equations are used to calculate camera angles, movement, and physics. Various commands are needed in OpenGL to create this program. For example, to move the camera, “eye movements” are controlled by glLookAt, which takes an eye position with 3 points (x,y,z) and 2 vectors. One vectors is the up direction and the other is the forward direction. The most difficult part of the program so far is texturing the objects. To do this, there are various texture commands such as glTexImage2D, which is the final command to load in a texture from an image. The hard part is actually loading in the image from a file into the program. I have to read in the header, and then read in 4 bytes for each pixel (red, green, blue, alpha). I store this in an array of unsigned chars to load into video memory as a texture. A playable game, and hopefully multi-player functionality is expected. However, the game-play will be the last aspect programmed in and may not be fully completed if time runs out. To accomplish multi-player game-play, I will have to either use connections between computers, or more likely, multiple players on the same computer with split screens.