<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://mediawiki.zeropage.org/index.php?action=history&amp;feed=atom&amp;title=SolarSystem%2F%EC%83%81%ED%98%91</id>
	<title>SolarSystem/상협 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://mediawiki.zeropage.org/index.php?action=history&amp;feed=atom&amp;title=SolarSystem%2F%EC%83%81%ED%98%91"/>
	<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=SolarSystem/%EC%83%81%ED%98%91&amp;action=history"/>
	<updated>2026-05-14T17:08:30Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.8</generator>
	<entry>
		<id>https://mediawiki.zeropage.org/index.php?title=SolarSystem/%EC%83%81%ED%98%91&amp;diff=39263&amp;oldid=prev</id>
		<title>imported&gt;Unknown at 05:28, 7 February 2021</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=SolarSystem/%EC%83%81%ED%98%91&amp;diff=39263&amp;oldid=prev"/>
		<updated>2021-02-07T05:28:04Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt; #include &amp;amp;lt;windows.h&amp;amp;gt;&lt;br /&gt;
 #include &amp;amp;lt;gl\gl.h&amp;amp;gt;&lt;br /&gt;
 #include &amp;amp;lt;gl\glu.h&amp;amp;gt;&lt;br /&gt;
 #include &amp;amp;lt;gl\glaux.h&amp;amp;gt;&lt;br /&gt;
 #include &amp;amp;lt;stdio.h&amp;amp;gt;&lt;br /&gt;
 #include &amp;amp;lt;cmath&amp;amp;gt;&lt;br /&gt;
 HGLRC		hRC=NULL;&lt;br /&gt;
 HDC			hDC=NULL;&lt;br /&gt;
 HWND		hWnd = NULL;&lt;br /&gt;
 HINSTANCE	hInstance;&lt;br /&gt;
 &lt;br /&gt;
 GLUquadricObj *obj;&lt;br /&gt;
 &lt;br /&gt;
 GLfloat xrot=0.0f;&lt;br /&gt;
 GLfloat yrot=0.0f;&lt;br /&gt;
 &lt;br /&gt;
 GLfloat o1_rot = 0.0f;&lt;br /&gt;
 GLfloat o2_rot1 = 0.0f;&lt;br /&gt;
 GLfloat o2_rot2 = 0.0f; //수성&lt;br /&gt;
 GLfloat o3_rot = 0.0f; //금성&lt;br /&gt;
 GLfloat o4_rot = 0.0f;//지구&lt;br /&gt;
 GLfloat o5_rot = 0.0f;//화성&lt;br /&gt;
 GLfloat o6_rot = 0.0f;//목성&lt;br /&gt;
 GLfloat o7_rot = 0.0f;//토성&lt;br /&gt;
 GLfloat o8_rot = 0.0f;//천왕성&lt;br /&gt;
 GLfloat o9_rot = 0.0f;//해왕성&lt;br /&gt;
 GLfloat o10_rot = 0.0f;//명왕성&lt;br /&gt;
 &lt;br /&gt;
 GLfloat distance1 = 2.0f;//수성&lt;br /&gt;
 GLfloat distance2 = 3.2f;//금성 &lt;br /&gt;
 GLfloat distance3 = 4.2f;//지구&lt;br /&gt;
 GLfloat distance4 = 5.2f;//화성&lt;br /&gt;
 GLfloat distance5 = 6.2f;//목성&lt;br /&gt;
 GLfloat distance6 = 7.2f;//토성&lt;br /&gt;
 GLfloat distance7 = 8.2f;//천왕성&lt;br /&gt;
 GLfloat distance8 = 9.2f;//해왕성&lt;br /&gt;
 GLfloat distance9 = 10.2f;//명왕성&lt;br /&gt;
 &lt;br /&gt;
 float ambientLight[] = {0.5f,0.5f,0.5f,1.0f};&lt;br /&gt;
 float diffuseLight[] = {0.25f,0.25f,0.25f,1.0f};&lt;br /&gt;
 float lightPosition[] = {0.0f,0.0f,0.0f,1.0f};&lt;br /&gt;
 &lt;br /&gt;
 float matAmbient[] = {1.0f,1.0f,1.0f,1.0f};&lt;br /&gt;
 float matDiff[] = {1.0f,1.0f,1.0f,1.0f};&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 bool keys[256];&lt;br /&gt;
 bool active=TRUE;&lt;br /&gt;
 bool fullscreen=TRUE;&lt;br /&gt;
 &lt;br /&gt;
 LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 GLvoid ReSizeGLScene(GLsizei width, GLsizei height)&lt;br /&gt;
 {&lt;br /&gt;
 	if(height==0)&lt;br /&gt;
 		height=1;&lt;br /&gt;
 &lt;br /&gt;
 	glViewport(0,0,width,height);&lt;br /&gt;
 	glMatrixMode(GL_PROJECTION);&lt;br /&gt;
 	glLoadIdentity();&lt;br /&gt;
 	// Calculate The Aspect Ratio Of The Window&lt;br /&gt;
 	gluPerspective(45.0f,(GLfloat)width/(GLfloat)height,0.1f,100.0f);&lt;br /&gt;
 &lt;br /&gt;
 	glMatrixMode(GL_MODELVIEW);							// Select The Modelview Matrix&lt;br /&gt;
 	glLoadIdentity();&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 int InitGL(GLvoid)&lt;br /&gt;
 {&lt;br /&gt;
 	glClearColor(0.0f,0.0f,0.0f,0.0f);&lt;br /&gt;
 	glShadeModel(GL_SMOOTH);&lt;br /&gt;
 	glEnable(GL_DEPTH_TEST);&lt;br /&gt;
 	glEnable(GL_CULL_FACE);&lt;br /&gt;
 	glFrontFace(GL_CCW);&lt;br /&gt;
 	glEnable(GL_LIGHTING);&lt;br /&gt;
 &lt;br /&gt;
 	glMaterialfv(GL_FRONT,GL_AMBIENT,matAmbient);&lt;br /&gt;
 	glMaterialfv(GL_FRONT,GL_DIFFUSE,matDiff);&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 	glLightfv(GL_LIGHT0,GL_AMBIENT, ambientLight);&lt;br /&gt;
 	glLightfv(GL_LIGHT0,GL_DIFFUSE,diffuseLight);&lt;br /&gt;
 	glLightfv(GL_LIGHT0,GL_POSITION,lightPosition);&lt;br /&gt;
 &lt;br /&gt;
 	glEnable(GL_LIGHT0);	&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 	glClearDepth(1.0f);&lt;br /&gt;
 &lt;br /&gt;
 	glDepthFunc(GL_LEQUAL);&lt;br /&gt;
 	glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST);&lt;br /&gt;
 &lt;br /&gt;
 	obj = gluNewQuadric();&lt;br /&gt;
 	gluQuadricNormals(obj, GLU_SMOOTH);&lt;br /&gt;
 	gluQuadricOrientation(obj, GLU_OUTSIDE);&lt;br /&gt;
 	gluQuadricTexture(obj,GL_FALSE);&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 //	glEnable(GL_LIGHT0);&lt;br /&gt;
 	glEnable(GL_COLOR_MATERIAL);&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 	return TRUE;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 void CorrectOfCoordinate(float distance,float x,float y, float z)&lt;br /&gt;
 {&lt;br /&gt;
 	float absolute = float(sqrt(x*x+y*y+z*z));&lt;br /&gt;
 	float cosin = x/absolute;&lt;br /&gt;
 	float sin = y/absolute;&lt;br /&gt;
 	glTranslatef(-distance*cosin*cosin,-distance*sin*cosin,0.0f);	&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 int DrawGLScene(GLvoid)&lt;br /&gt;
 {&lt;br /&gt;
 	glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);&lt;br /&gt;
 	glLoadIdentity();&lt;br /&gt;
 	glTranslatef(0.0f,0.0f,-22.0f);&lt;br /&gt;
 	glRotatef(yrot,1.0f,0.0f,0.0f);&lt;br /&gt;
 	glRotatef(xrot,0.0f,1.0f,0.0f);&lt;br /&gt;
 	&lt;br /&gt;
 	glPushMatrix();&lt;br /&gt;
 		glRotatef(o1_rot,0.0f,1.0f,0.0f);&lt;br /&gt;
 		gluQuadricDrawStyle(obj,GLU_FILL);&lt;br /&gt;
 		glColor3f(0.5f,0.0f,0.0f);&lt;br /&gt;
 		gluSphere(obj,1.0f,24,24);&lt;br /&gt;
 		gluQuadricDrawStyle(obj,GLU_LINE);&lt;br /&gt;
 		glColor3f(1.0f,1.0f,1.0f);&lt;br /&gt;
 		gluCylinder(obj,1.0f,1.0f,0.1,24,24);&lt;br /&gt;
 	glPopMatrix();&lt;br /&gt;
 &lt;br /&gt;
 	glPushMatrix();&lt;br /&gt;
 		glRotatef(o2_rot1,0.0f,1.0f,0.0f);&lt;br /&gt;
 		glTranslatef(distance1,0.0f,0.0f);&lt;br /&gt;
 		glRotatef(o2_rot2,0.0f,1.0f,0.0f);&lt;br /&gt;
 		gluQuadricDrawStyle(obj,GLU_FILL);&lt;br /&gt;
 		glColor3f(0.3f,0.5f,0.8f);&lt;br /&gt;
 		gluSphere(obj,0.4f,12,12);&lt;br /&gt;
 	glPopMatrix();&lt;br /&gt;
 &lt;br /&gt;
 	glPushMatrix();&lt;br /&gt;
 		CorrectOfCoordinate(distance2,1.0f,1.0f,0.0f);&lt;br /&gt;
 		glRotatef(o3_rot,1.0f,1.0f,0.0f);&lt;br /&gt;
 		glTranslatef(distance2,0,0.0f);&lt;br /&gt;
 		glRotatef(o3_rot,0.0f,1.0f,0.0f);&lt;br /&gt;
 		gluQuadricDrawStyle(obj,GLU_FILL);&lt;br /&gt;
 		glColor3f(0.2f,0.1f,0.4f);&lt;br /&gt;
 		gluSphere(obj,0.2f,12,12);&lt;br /&gt;
 	glPopMatrix();&lt;br /&gt;
 &lt;br /&gt;
 	glPushMatrix();&lt;br /&gt;
 		CorrectOfCoordinate(distance3,1.0f,1.0f,0.0f);&lt;br /&gt;
 		glRotatef(o4_rot,0.2f,0.2f,0.0f);&lt;br /&gt;
 		glTranslatef(distance3,0.0f,0.0f);&lt;br /&gt;
 		glRotatef(o4_rot,0.0f,1.0f,0.0f);&lt;br /&gt;
 		gluQuadricDrawStyle(obj,GLU_FILL);&lt;br /&gt;
 		glColor3f(0.3f,0.5f,0.8f);&lt;br /&gt;
 		gluSphere(obj,0.4f,12,12);&lt;br /&gt;
 	glPopMatrix();&lt;br /&gt;
 &lt;br /&gt;
 	glPushMatrix();&lt;br /&gt;
 		CorrectOfCoordinate(distance4,0.1f,1.2f,0.0f);&lt;br /&gt;
 		glRotatef(o5_rot,0.1f,1.2f,0.0f);&lt;br /&gt;
 		glTranslatef(distance4,0.0f,0.0f);&lt;br /&gt;
 		glRotatef(o5_rot,0.0f,1.0f,0.0f);&lt;br /&gt;
 		gluQuadricDrawStyle(obj,GLU_FILL);&lt;br /&gt;
 		glColor3f(0.2f,0.7f,0.7f);&lt;br /&gt;
 		gluSphere(obj,0.4f,12,12);&lt;br /&gt;
 	glPopMatrix();&lt;br /&gt;
 &lt;br /&gt;
 	glPushMatrix();&lt;br /&gt;
 		CorrectOfCoordinate(distance5,0.07f,0.06f,0.0f);&lt;br /&gt;
 		glRotatef(o6_rot,0.07f,0.06f,0.0f);&lt;br /&gt;
 		glTranslatef(distance5,0.0f,0.0f);&lt;br /&gt;
 		glRotatef(o6_rot,0.0f,1.0f,0.0f);&lt;br /&gt;
 		gluQuadricDrawStyle(obj,GLU_FILL);&lt;br /&gt;
 		glColor3f(0.7f,0.8f,0.4f);&lt;br /&gt;
 		gluSphere(obj,0.4f,12,12);&lt;br /&gt;
 	glPopMatrix();&lt;br /&gt;
 &lt;br /&gt;
 	glPushMatrix();&lt;br /&gt;
 		CorrectOfCoordinate(distance6,0.0f,1.0f,0.0f);&lt;br /&gt;
 		glRotatef(o7_rot,0.0f,1.0f,0.0f);&lt;br /&gt;
 		glTranslatef(distance6,0.0f,0.0f);&lt;br /&gt;
 		glRotatef(o7_rot,0.0f,1.0f,0.0f);&lt;br /&gt;
 		gluQuadricDrawStyle(obj,GLU_FILL);&lt;br /&gt;
 		glColor3f(0.0f,0.5f,0.2f);&lt;br /&gt;
 		gluSphere(obj,0.4f,12,12);&lt;br /&gt;
 	glPopMatrix();&lt;br /&gt;
 &lt;br /&gt;
 	glPushMatrix();&lt;br /&gt;
 		CorrectOfCoordinate(distance7,0.7f,1.0f,0.0f);&lt;br /&gt;
 		glRotatef(o8_rot,0.7f,1.0f,0.0f);&lt;br /&gt;
 		glTranslatef(distance7,0.0f,0.0f);&lt;br /&gt;
 		glRotatef(o8_rot,0.0f,1.0f,0.0f);&lt;br /&gt;
 		gluQuadricDrawStyle(obj,GLU_FILL);&lt;br /&gt;
 		glColor3f(0.0f,0.5f,0.8f);&lt;br /&gt;
 		gluSphere(obj,0.4f,12,12);&lt;br /&gt;
 	glPopMatrix();&lt;br /&gt;
 &lt;br /&gt;
 	glPushMatrix();&lt;br /&gt;
 		CorrectOfCoordinate(distance8,0.1f,1.0f,0.0f);&lt;br /&gt;
 		glRotatef(o9_rot,0.1f,1.0f,0.0f);&lt;br /&gt;
 		glTranslatef(distance8,0.0f,0.0f);&lt;br /&gt;
 		glRotatef(o9_rot,0.0f,1.0f,0.0f);&lt;br /&gt;
 		gluQuadricDrawStyle(obj,GLU_FILL);&lt;br /&gt;
 		glColor3f(0.7f,0.8f,1.0f);&lt;br /&gt;
 		gluSphere(obj,0.9f,12,12);&lt;br /&gt;
 	glPopMatrix();&lt;br /&gt;
 &lt;br /&gt;
 	glPushMatrix();&lt;br /&gt;
 		CorrectOfCoordinate(distance2,0.3f,1.0f,0.0f);&lt;br /&gt;
 		glRotatef(o10_rot,0.3f,1.0f,0.0f);&lt;br /&gt;
 		glTranslatef(distance9,0.0f,0.0f);&lt;br /&gt;
 		glRotatef(o10_rot,0.0f,1.0f,0.0f);&lt;br /&gt;
 		gluQuadricDrawStyle(obj,GLU_FILL);&lt;br /&gt;
 		glColor3f(0.3f,0.5f,1.0f);&lt;br /&gt;
 		gluSphere(obj,0.7f,12,12);&lt;br /&gt;
 	glPopMatrix();&lt;br /&gt;
 	o1_rot+=2.5f;&lt;br /&gt;
 	if(o1_rot&amp;amp;gt;359.9f)&lt;br /&gt;
 		o1_rot=0.0f;&lt;br /&gt;
 	o2_rot1+=1.05f;&lt;br /&gt;
 	if(o2_rot1&amp;amp;gt;359.95f)&lt;br /&gt;
 		o2_rot1=0.0f;&lt;br /&gt;
 	o2_rot2+=4.0f;&lt;br /&gt;
 	if(o2_rot2&amp;amp;gt;358.0f)&lt;br /&gt;
 		o2_rot2=0;&lt;br /&gt;
 	o3_rot+=1.2f;&lt;br /&gt;
 	o4_rot+=1.8f;&lt;br /&gt;
 	o5_rot+=2.6f;&lt;br /&gt;
 	o6_rot+=3.9f;&lt;br /&gt;
 	o7_rot+=0.6f;&lt;br /&gt;
 	o8_rot+=1.3f;&lt;br /&gt;
 	o9_rot+=3.4f;&lt;br /&gt;
 	o10_rot+=3.8f;&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 		return TRUE;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 GLvoid KillGLWindow(GLvoid)&lt;br /&gt;
 {&lt;br /&gt;
 	if(fullscreen)&lt;br /&gt;
 	{&lt;br /&gt;
 		ChangeDisplaySettings(NULL,0);&lt;br /&gt;
 		ShowCursor(TRUE);&lt;br /&gt;
 	}&lt;br /&gt;
 &lt;br /&gt;
 	if(hRC)&lt;br /&gt;
 	{&lt;br /&gt;
 		if(!wglMakeCurrent(NULL,NULL))&lt;br /&gt;
 		{&lt;br /&gt;
 			MessageBox(NULL,&amp;quot;Release Of DC And RC Failed.&amp;quot;,&amp;quot;SHUTDOWN ERROR&amp;quot;,&lt;br /&gt;
 				MB_OK | MB_ICONINFORMATION);&lt;br /&gt;
 		}&lt;br /&gt;
 &lt;br /&gt;
 		if(!wglDeleteContext(hRC))&lt;br /&gt;
 		{&lt;br /&gt;
 			MessageBox(NULL,&amp;quot;Release Rendering Context Failed.&amp;quot;,&amp;quot;SHUTDOWN ERROR&amp;quot;,&lt;br /&gt;
 				MB_OK | MB_ICONINFORMATION);&lt;br /&gt;
 		}&lt;br /&gt;
 		hRC = NULL;&lt;br /&gt;
 &lt;br /&gt;
 		if(hDC &amp;amp;amp;&amp;amp;amp; !ReleaseDC(hWnd,hDC))&lt;br /&gt;
 		{&lt;br /&gt;
 			MessageBox(NULL,&amp;quot;Release Device Context Failed.&amp;quot;,&amp;quot;SHUTDOWN ERROR&amp;quot;,&lt;br /&gt;
 				MB_OK | MB_ICONINFORMATION);&lt;br /&gt;
 			hDC = NULL;&lt;br /&gt;
 		}&lt;br /&gt;
 &lt;br /&gt;
 		if(hWnd &amp;amp;amp;&amp;amp;amp; !DestroyWindow(hWnd))&lt;br /&gt;
 		{&lt;br /&gt;
 			MessageBox(NULL,&amp;quot;Could Not Release hWnd&amp;quot;,&amp;quot;SHUTDOWN ERROR&amp;quot;,&lt;br /&gt;
 				MB_OK | MB_ICONINFORMATION);&lt;br /&gt;
 			hWnd = NULL;&lt;br /&gt;
 		}&lt;br /&gt;
 		if(!UnregisterClass(&amp;quot;OpenGL&amp;quot;,hInstance))&lt;br /&gt;
 		{&lt;br /&gt;
 			MessageBox(NULL,&amp;quot;Could Not Unregister Class&amp;quot;,&amp;quot;SHUTDOWN ERROR&amp;quot;,&lt;br /&gt;
 				MB_OK | MB_ICONINFORMATION);&lt;br /&gt;
 			hInstance = NULL;&lt;br /&gt;
 		}&lt;br /&gt;
 	}&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 BOOL CreateGLWindow(char *title, int width, int height, int bits, bool fullscreenflag)&lt;br /&gt;
 {&lt;br /&gt;
 	GLuint PixelFormat;&lt;br /&gt;
 	WNDCLASS wc;&lt;br /&gt;
 	DWORD dwExStyle;&lt;br /&gt;
 	DWORD dwStyle;&lt;br /&gt;
 &lt;br /&gt;
 	RECT WindowRect;&lt;br /&gt;
 	WindowRect.left=(long)0;&lt;br /&gt;
 	WindowRect.right=(long)width;&lt;br /&gt;
 	WindowRect.top=(long)0;&lt;br /&gt;
 	WindowRect.bottom=(long)height;&lt;br /&gt;
 	fullscreen = fullscreenflag;&lt;br /&gt;
 	hInstance = GetModuleHandle(NULL);&lt;br /&gt;
 	wc.style = CS_HREDRAW | CS_VREDRAW | CS_OWNDC;&lt;br /&gt;
 	wc.lpfnWndProc=(WNDPROC)WndProc;&lt;br /&gt;
 	wc.cbClsExtra=0;&lt;br /&gt;
 	wc.cbWndExtra=0;&lt;br /&gt;
 	wc.hInstance=hInstance;&lt;br /&gt;
 	wc.hIcon = LoadIcon(NULL,IDI_WINLOGO);&lt;br /&gt;
 	wc.hCursor=LoadCursor(NULL,IDC_ARROW);&lt;br /&gt;
 	wc.hbrBackground=NULL;&lt;br /&gt;
 	wc.lpszMenuName=NULL;&lt;br /&gt;
 	wc.lpszClassName=&amp;quot;OpenGL&amp;quot;;&lt;br /&gt;
 &lt;br /&gt;
 	if(!RegisterClass(&amp;amp;amp;wc))&lt;br /&gt;
 	{&lt;br /&gt;
 		MessageBox(NULL,&amp;quot;Failed To Register The Window Class.&amp;quot;&lt;br /&gt;
 			,&amp;quot;ERROR&amp;quot;,MB_OK|MB_ICONEXCLAMATION);&lt;br /&gt;
 		return FALSE;&lt;br /&gt;
 	}&lt;br /&gt;
 &lt;br /&gt;
 	if(fullscreen)&lt;br /&gt;
 	{&lt;br /&gt;
 		DEVMODE dmScreenSettings;&lt;br /&gt;
 		memset(&amp;amp;amp;dmScreenSettings,0,sizeof(dmScreenSettings));&lt;br /&gt;
 		dmScreenSettings.dmPelsWidth = width;&lt;br /&gt;
 		dmScreenSettings.dmPelsHeight = height;&lt;br /&gt;
 		dmScreenSettings.dmBitsPerPel=bits;&lt;br /&gt;
 		dmScreenSettings.dmFields=DM_BITSPERPEL|DM_PELSWIDTH|DM_PELSHEIGHT;&lt;br /&gt;
 &lt;br /&gt;
 		if(ChangeDisplaySettings(&amp;amp;amp;dmScreenSettings,CDS_FULLSCREEN)!=DISP_CHANGE_SUCCESSFUL)&lt;br /&gt;
 		{&lt;br /&gt;
 			if(MessageBox(NULL,&amp;quot;The Requested FUllscreen Mode is Not Supported By\n Your video Card. Use Windowed Mode Instead?&amp;quot;,&amp;quot;NeHeGl&amp;quot;,MB_YESNO|&lt;br /&gt;
 				MB_ICONEXCLAMATION)==IDYES){&lt;br /&gt;
 				fullscreen=FALSE;&lt;br /&gt;
 			}&lt;br /&gt;
 			else&lt;br /&gt;
 			{&lt;br /&gt;
 				MessageBox(NULL,&amp;quot;Program Will Now Close&amp;quot;,&amp;quot;ERROR&amp;quot;,MB_OK|MB_ICONSTOP);&lt;br /&gt;
 				return FALSE;&lt;br /&gt;
 			}&lt;br /&gt;
 		}&lt;br /&gt;
 	}&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 	if(fullscreen)&lt;br /&gt;
 	{&lt;br /&gt;
 		dwExStyle=WS_EX_APPWINDOW;&lt;br /&gt;
 		dwStyle=WS_POPUP;&lt;br /&gt;
 		ShowCursor(FALSE);&lt;br /&gt;
 	}&lt;br /&gt;
 	else&lt;br /&gt;
 	{&lt;br /&gt;
 		dwExStyle=WS_EX_APPWINDOW | WS_EX_WINDOWEDGE;&lt;br /&gt;
 		dwStyle=WS_OVERLAPPEDWINDOW;&lt;br /&gt;
 	}&lt;br /&gt;
 	&lt;br /&gt;
 	AdjustWindowRectEx(&amp;amp;amp;WindowRect,dwStyle,FALSE,dwExStyle);&lt;br /&gt;
 	&lt;br /&gt;
 	if(!(hWnd=CreateWindowEx(dwExStyle,&lt;br /&gt;
 		&amp;quot;OpenGL&amp;quot;,&lt;br /&gt;
 		title,&lt;br /&gt;
 		WS_CLIPSIBLINGS |&lt;br /&gt;
 		WS_CLIPCHILDREN |&lt;br /&gt;
 		dwStyle,&lt;br /&gt;
 		0,0,&lt;br /&gt;
 		WindowRect.right-WindowRect.left,&lt;br /&gt;
 		WindowRect.bottom-WindowRect.top,&lt;br /&gt;
 		NULL,&lt;br /&gt;
 		NULL,&lt;br /&gt;
 		hInstance,&lt;br /&gt;
 		NULL)))&lt;br /&gt;
 	{&lt;br /&gt;
 		KillGLWindow();&lt;br /&gt;
 		MessageBox(NULL,&amp;quot;Window Creation Error&amp;quot;,&lt;br /&gt;
 			&amp;quot;Error&amp;quot;,MB_OK|MB_ICONEXCLAMATION);&lt;br /&gt;
 		return FALSE;&lt;br /&gt;
 	}&lt;br /&gt;
 &lt;br /&gt;
 	static PIXELFORMATDESCRIPTOR pfd = &lt;br /&gt;
 	{&lt;br /&gt;
 		sizeof(PIXELFORMATDESCRIPTOR),&lt;br /&gt;
 			1,&lt;br /&gt;
 			PFD_DRAW_TO_WINDOW |&lt;br /&gt;
 			PFD_SUPPORT_OPENGL |&lt;br /&gt;
 			PFD_DOUBLEBUFFER,&lt;br /&gt;
 			PFD_TYPE_RGBA,&lt;br /&gt;
 			bits,&lt;br /&gt;
 			0,0,0,0,0,0,&lt;br /&gt;
 			0,&lt;br /&gt;
 			0,&lt;br /&gt;
 			0,&lt;br /&gt;
 			0,0,0,0,&lt;br /&gt;
 			16,&lt;br /&gt;
 			0,&lt;br /&gt;
 			0,&lt;br /&gt;
 			PFD_MAIN_PLANE,&lt;br /&gt;
 			0,&lt;br /&gt;
 			0,0,0&lt;br /&gt;
 	};&lt;br /&gt;
 	&lt;br /&gt;
 &lt;br /&gt;
 	if(!(hDC=GetDC(hWnd)))&lt;br /&gt;
 	{&lt;br /&gt;
 		KillGLWindow();&lt;br /&gt;
 		MessageBox(NULL,&amp;quot;Can&amp;#039;t Creat A GL Device Context&amp;quot;,&amp;quot;ERROR&amp;quot;,MB_OK|MB_ICONEXCLAMATION);&lt;br /&gt;
 &lt;br /&gt;
 			return FALSE;&lt;br /&gt;
 	}&lt;br /&gt;
 &lt;br /&gt;
 	if(!(PixelFormat=ChoosePixelFormat(hDC,&amp;amp;amp;pfd)))&lt;br /&gt;
 	{&lt;br /&gt;
 		KillGLWindow();&lt;br /&gt;
 		MessageBox(NULL,&amp;quot;Can&amp;#039;t Find A Suitable PixelFormat&amp;quot;&lt;br /&gt;
 			,&amp;quot;ERROR&amp;quot;,MB_OK|MB_ICONEXCLAMATION);&lt;br /&gt;
 &lt;br /&gt;
 			return FALSE;&lt;br /&gt;
 	}&lt;br /&gt;
 	&lt;br /&gt;
 	if(!SetPixelFormat(hDC,PixelFormat,&amp;amp;amp;pfd))&lt;br /&gt;
 	{&lt;br /&gt;
 		KillGLWindow();&lt;br /&gt;
 		MessageBox(NULL,&amp;quot;Can&amp;#039;t Set The PixelFormat&amp;quot;&lt;br /&gt;
 			,&amp;quot;ERROR&amp;quot;,MB_OK|MB_ICONEXCLAMATION);&lt;br /&gt;
 &lt;br /&gt;
 			return FALSE;&lt;br /&gt;
 	}&lt;br /&gt;
 &lt;br /&gt;
 	if(!(hRC=wglCreateContext(hDC)))&lt;br /&gt;
 	{&lt;br /&gt;
 		KillGLWindow();&lt;br /&gt;
 		MessageBox(NULL,&amp;quot;Cant&amp;#039;t Create A GL Rendering Context&amp;quot;&lt;br /&gt;
 			,&amp;quot;ERROR&amp;quot;,MB_OK|MB_ICONEXCLAMATION);&lt;br /&gt;
 &lt;br /&gt;
 			return FALSE;&lt;br /&gt;
 	}&lt;br /&gt;
 &lt;br /&gt;
 	if(!wglMakeCurrent(hDC,hRC))&lt;br /&gt;
 	{&lt;br /&gt;
 		KillGLWindow();&lt;br /&gt;
 		MessageBox(NULL,&amp;quot;Can&amp;#039;t Activate The GL Rendering Context&amp;quot;&lt;br /&gt;
 			,&amp;quot;ERROR&amp;quot;,MB_OK|MB_ICONEXCLAMATION);&lt;br /&gt;
 &lt;br /&gt;
 			return FALSE;&lt;br /&gt;
 	}&lt;br /&gt;
 	&lt;br /&gt;
 	&lt;br /&gt;
 	ShowWindow(hWnd,SW_SHOW);&lt;br /&gt;
 	SetForegroundWindow(hWnd);&lt;br /&gt;
 	SetFocus(hWnd);&lt;br /&gt;
 	ReSizeGLScene(width,height);&lt;br /&gt;
 &lt;br /&gt;
 	if(!InitGL())&lt;br /&gt;
 	{&lt;br /&gt;
 		KillGLWindow();&lt;br /&gt;
 		MessageBox(NULL,&amp;quot;Initialization Failed&amp;quot;&lt;br /&gt;
 			,&amp;quot;ERROR&amp;quot;,MB_OK|MB_ICONEXCLAMATION);&lt;br /&gt;
 			return FALSE;&lt;br /&gt;
 	&lt;br /&gt;
 	}&lt;br /&gt;
 	&lt;br /&gt;
 	return TRUE;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 LRESULT CALLBACK WndProc(HWND hWnd,&lt;br /&gt;
 							UINT uMsg,&lt;br /&gt;
 							WPARAM wParam,&lt;br /&gt;
 							LPARAM lParam)&lt;br /&gt;
 {&lt;br /&gt;
 	switch(uMsg)&lt;br /&gt;
 	{&lt;br /&gt;
 	case WM_ACTIVATE:&lt;br /&gt;
 		{&lt;br /&gt;
 			if(!HIWORD(wParam))&lt;br /&gt;
 				active=TRUE;&lt;br /&gt;
 			else&lt;br /&gt;
 				active = FALSE;&lt;br /&gt;
 		return 0;&lt;br /&gt;
 		}&lt;br /&gt;
 &lt;br /&gt;
 	case WM_SYSCOMMAND:&lt;br /&gt;
 		{&lt;br /&gt;
 			switch(wParam)&lt;br /&gt;
 			{&lt;br /&gt;
 			case SC_SCREENSAVE:&lt;br /&gt;
 			case SC_MONITORPOWER:&lt;br /&gt;
 				return 0;&lt;br /&gt;
 			}&lt;br /&gt;
 			break;&lt;br /&gt;
 		}&lt;br /&gt;
 &lt;br /&gt;
 	case WM_CLOSE:&lt;br /&gt;
 		{&lt;br /&gt;
 			PostQuitMessage(0);&lt;br /&gt;
 			return 0;&lt;br /&gt;
 		}&lt;br /&gt;
 &lt;br /&gt;
 	case WM_KEYDOWN:&lt;br /&gt;
 		{&lt;br /&gt;
 			keys[wParam] = TRUE;&lt;br /&gt;
 			return 0;&lt;br /&gt;
 		}&lt;br /&gt;
 &lt;br /&gt;
 	case WM_KEYUP:&lt;br /&gt;
 		{&lt;br /&gt;
 			keys[wParam] = FALSE;&lt;br /&gt;
 			return 0;&lt;br /&gt;
 		}&lt;br /&gt;
 &lt;br /&gt;
 	case WM_SIZE:&lt;br /&gt;
 		{&lt;br /&gt;
 			ReSizeGLScene(LOWORD(lParam),HIWORD(lParam));&lt;br /&gt;
 &lt;br /&gt;
 			return 0;&lt;br /&gt;
 		}&lt;br /&gt;
 	}&lt;br /&gt;
 	return DefWindowProc(hWnd,uMsg,wParam,lParam);&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 int WINAPI WinMain(HINSTANCE hInstance,&lt;br /&gt;
 				   HINSTANCE hPrevInstance,&lt;br /&gt;
 				   LPSTR lpCmdLine,&lt;br /&gt;
 				   int nCmdShow)&lt;br /&gt;
 {&lt;br /&gt;
 		MSG msg;&lt;br /&gt;
 		BOOL done=FALSE;&lt;br /&gt;
 &lt;br /&gt;
 		if(MessageBox(NULL,&amp;quot;Would you like to run in FullScreen mode?&amp;quot;,&lt;br /&gt;
 			&amp;quot;Start FullScreen?&amp;quot;,MB_YESNO|MB_ICONQUESTION)==IDNO)&lt;br /&gt;
 		{&lt;br /&gt;
 			fullscreen=FALSE;&lt;br /&gt;
 		}&lt;br /&gt;
 &lt;br /&gt;
 		if(!CreateGLWindow(&amp;quot;namsang&amp;#039;s OpenGL FrameWork&amp;quot;,604,480,16,fullscreen))&lt;br /&gt;
 		{&lt;br /&gt;
 			return 0;&lt;br /&gt;
 		}&lt;br /&gt;
 &lt;br /&gt;
 		while(!done)&lt;br /&gt;
 		{&lt;br /&gt;
 			if(PeekMessage(&amp;amp;amp;msg,NULL,0,0,PM_REMOVE))&lt;br /&gt;
 			{&lt;br /&gt;
 				if(msg.message==WM_QUIT)&lt;br /&gt;
 					done=TRUE;&lt;br /&gt;
 				else&lt;br /&gt;
 				{&lt;br /&gt;
 					TranslateMessage(&amp;amp;amp;msg);&lt;br /&gt;
 					DispatchMessage(&amp;amp;amp;msg);&lt;br /&gt;
 				}&lt;br /&gt;
 			}&lt;br /&gt;
 			&lt;br /&gt;
 			if((active &amp;amp;amp;&amp;amp;amp; !DrawGLScene()) || keys[VK_ESCAPE])&lt;br /&gt;
 				done=TRUE;&lt;br /&gt;
 			else&lt;br /&gt;
 				SwapBuffers(hDC);&lt;br /&gt;
 &lt;br /&gt;
 			if(keys[VK_F1])&lt;br /&gt;
 			{&lt;br /&gt;
 				keys[VK_F1]=FALSE;&lt;br /&gt;
 				KillGLWindow();&lt;br /&gt;
 				fullscreen=!fullscreen;&lt;br /&gt;
 				if(!CreateGLWindow(&amp;quot;namsang&amp;#039;s OPenGL FrameWork&amp;quot;&lt;br /&gt;
 					,640,480,16,fullscreen))&lt;br /&gt;
 				{&lt;br /&gt;
 					return 0;&lt;br /&gt;
 				}&lt;br /&gt;
 			}&lt;br /&gt;
 			if(keys[VK_LEFT])&lt;br /&gt;
 				yrot+=0.2f;&lt;br /&gt;
 			if(keys[VK_RIGHT])&lt;br /&gt;
 				yrot-=0.2f;			&lt;br /&gt;
 			if(keys[VK_UP])&lt;br /&gt;
 				xrot+=0.2f;&lt;br /&gt;
 			if(keys[VK_DOWN])&lt;br /&gt;
 				xrot-=0.2f;&lt;br /&gt;
 			if(keys[VK_RETURN])&lt;br /&gt;
 			{&lt;br /&gt;
 				xrot=0;&lt;br /&gt;
 				yrot=0;&lt;br /&gt;
 			}&lt;br /&gt;
 			&lt;br /&gt;
 		}&lt;br /&gt;
 		KillGLWindow();&lt;br /&gt;
 		return (msg.wParam);&lt;br /&gt;
 }&lt;br /&gt;
&lt;/div&gt;</summary>
		<author><name>imported&gt;Unknown</name></author>
	</entry>
</feed>