VC++6.0 OpenGL环境搭建

1、解压glutdll37beta.zip(资源可在这里http://download.csdn.net/detail/yongzhewunan/7262551
2、 将 glut.dll , glut32.dll 拷贝到 C:\Windows\System32(具体路径根据自己机器软件的安装情况进行查找)
3、将glut.lib ,glut32.lib拷贝到 C:\Program Files\Microsoft Visual Studio\VC98\Lib
4、将glut.h 拷贝到 C:\Program Files\Microsoft Visual Studio\VC98\Include\GL
环境配置完成
新建一个工程Win32控制台工程,点击project->settings->Link,在Object/libraty modules中添加
 opengl32.lib glu32.lib glaux.lib (注意:中间有空格
拷贝下面的代码到项目的cpp文件中运行,验证环境是否搭建成功
#include <windows.h>
#include <math.h>
#include <gl/gl.h>
#include <gl/glu.h>
#include <gl/glaux.h>
#include "stdafx.h"


void init();
void CALLBACK reshape(GLsizei w, GLsizei h);
void CALLBACK display();
GLfloat s,h;



//回调函数,绘制窗口时调用
void CALLBACK display()
{
    //清空窗口,设置背景色为白色
	glClearColor(1,1,1,1);
	glClear(GL_COLOR_BUFFER_BIT);
	//取景变换
	glLoadIdentity();
	gluLookAt(5,5,h,s,0,0,0,1,0);
	//设置前景色为黑色
	glColor3f(0,0,0);
	

	//绘图开始,两条水平 平行线
	GLfloat RAD=3.1415926/180;
	GLfloat x,y,z,r;
	int i,j;
	for(i=0;i<180;i+=5)
	{
	    glBegin(GL_LINE_LOOP);
		    r=2*sin(i*RAD);
			z=2*cos(i*RAD);
			for(j=0;j<360;j+=10)
			{
			    x=r*cos(j*RAD);
			    y=r*sin(j*RAD);
				glVertex3f(x,y,z);
			}
		glEnd();
	}
	for(j=0;j<360;j+=10)
	{
	    glBegin(GL_LINE_LOOP);
		    
			for(i=0;i<180;i+=5)
			{
			    r=2*sin(i*RAD);
		 	    z=2*cos(i*RAD);
			    x=r*cos(j*RAD);
			    y=r*sin(j*RAD);
				glVertex3f(x,y,z);
			}
		glEnd();
	}
    //清空帧缓存
	glFlush();

}



void init()
{
    glShadeModel(GL_FLAT);
	s=0;
    h=5;
}

//回调函数,窗口初始化和大小改变时,调用此函数
void CALLBACK reshape(GLsizei w, GLsizei h)
{
    //设置当前矩阵为投影变换矩阵
	glMatrixMode(GL_PROJECTION);
	//设置投影变换
	glLoadIdentity();
	gluPerspective(30,1,-3,3);
	//设置当前矩阵为模式变换 矩阵
	glMatrixMode(GL_MODELVIEW);
	//设置视区变换
	glViewport(0,0,w,h);
}


void CALLBACK Left()
{
	s+=0.1;
}


void CALLBACK Right()
{
	s-=0.1;
}


void CALLBACK Up()
{
	h-=0.1;
}


void CALLBACK Down()
{
	h+=0.1;
}


//主函数

void main()
{
    //设置OpenGL的显示模式:单缓存、RGB模式
	auxInitDisplayMode(AUX_SINGLE|AUX_RGB);
	//设置窗口大小和主题
	auxInitPosition(0,0,300,300);
	auxInitWindow("OPenGL Demo");
	init();
	
	//设置回调函数
	auxKeyFunc(AUX_LEFT,Left);
	auxKeyFunc(AUX_RIGHT,Right);
	auxKeyFunc(AUX_UP,Up);
	auxKeyFunc(AUX_DOWN,Down);
	auxReshapeFunc(reshape);
	auxMainLoop(display);
}
如果出现下面的界面,那么恭喜你,可以在windos上进行openGL图形编程了。


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值