/CS484-Assignment-3

Introductory graphics course, learning to use shaders with OpenGL Shading Language.

Primary LanguageF#

Program:	CS 484 Assignment 3: GLSL Shader
Author:		Kyle Maysey
Email:		Kyle_Maysey@csu.fullerton.edu

Description:

	This program uses the open GL Shanding Language to implement phong illumination.  Currently the program is
loading a sphere generated by glut to allow me to better visualize how my shaders are operating.


Controls:

	Space		- Toggle light movement mode or model movement mode when mouse left click is held down.

	Left Click 	- In conjunction with moving the mouse it will translate the light source, or the object.

			Modifiers:
			
				- Control:	If control is held down it will restrict translation to z axis.
			
				- Shift:	If shift is held down it will restrict translation to the x and z axis.
	
	G		- Toggles the use of the shaders and the fixed openGL funcionality.

	Esc		- Quit application


How to run:

	1) In the command prompt, make the folder containing "glslshader.exe" your working directory
	
	2) Now call "glslshader.exe -x [vertex shader ending in .vs] -f [fragment shader ending in .fs]" to run the project.


Example command line:

	glslshader.exe -x shaders/phong.vs -f shaders/phong.fs

Known Bugs:

	--	When light is close to the edge of the sphere it appears to generate a second light around the edge.  Was more
		pronounced when I was using the half vector between the eye vector and the light vector, as opposed to calculating
		the reflection vector.