以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 C/C++编程思想 』  (http://bbs.xml.org.cn/list.asp?boardid=61)
----  VC++中OpenGL的配置  (http://bbs.xml.org.cn/dispbbs.asp?boardid=61&rootid=&id=58064)


--  作者:卷积内核
--  发布时间:1/15/2008 8:10:00 AM

--  VC++中OpenGL的配置

一、下载并安装glut库
    opengl的glut库 GLUT不是OpenGL所必须的,但它会给学习带来一定的方便,推荐安装。
    Windows环境下的GLUT下载地址:(大小约为150k)
    http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip
    Windows环境下安装GLUT的步骤:
    1、将下载的压缩包解开,将得到5个文件
    2、在“我的电脑”中搜索“gl.h”,并找到其所在文件夹(Program Files\Microsoft Visual Studio\VC98\Include\GL文件夹”)。把解压得到的glut.h放到这个文件夹。
    3、把解压得到的glut.lib和glut32.lib放到静态函数库所在文件夹(Program Files\Microsoft Visual Studio\VC98\lib”文件夹)。
    4、把解压得到的glut.dll和glut32.dll放到操作系统目录下面的system32文件夹内。(典型的位置为:C:\Windows\System32)

二、VC工程配置:
  1)创建一个Win32 Console Application。
  2)链接OpenGL libraries。单击Project,再单击Settings,再找到Link单击,最后在Object/library modules 的最前面加上opengl32.lib glu32.lib glut.lib glaux.lib

     3)修改代码如下:

#include "stdafx.h"
#include <GL/glut.h>

void display(void)
{
   glClear (GL_COLOR_BUFFER_BIT);/**//* clear all pixels  */
   glColor3f (1.0, 1.0, 1.0);
   glBegin(GL_POLYGON);/**//* draw white polygon with corners at(0.25, 0.25, 0.0) and (0.75, 0.75, 0.0)*/
      glVertex3f (0.25, 0.25, 0.0);
      glVertex3f (0.75, 0.25, 0.0);
      glVertex3f (0.75, 0.75, 0.0);
      glVertex3f (0.25, 0.75, 0.0);
   glEnd();
   glFlush ();/**//* start processing buffered OpenGL routines  */
}

void init (void)
{
   glClearColor (0.0, 0.0, 0.0, 0.0);/**//* select clearing color  */
   glMatrixMode(GL_PROJECTION);
   glLoadIdentity();
   glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);/**//* initialize viewing values  */
}

int main(int argc, char** argv)
{
   glutInit(&argc, argv);
   glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB);/**//*Declare initial display mode(single buffer and RGBA).*/
   glutInitWindowSize (250, 250); /**//*Declare initial window size.*/
   glutInitWindowPosition (100, 100);/**//*Declare initial window position.*/
   glutCreateWindow ("hello");/**//*Open window with "hello"in its title bar.*/  
   init ();/**//*Call initialization routines.*/
   glutDisplayFunc(display); /**//*Register callback function to display graphics.*/
   glutMainLoop();/**//*Enter main loop and process events.*/
   return 0;   /**//* ANSI C requires main to return int. */
}


W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
3,123.047ms