第一个OPENGL例子

简介: #define GLUT_DISABLE_ATEXIT_HACK#include #include #include #include #include void init();void CALLBACK reshape(GLsizei w,GLsizei h);void CALLBACK di...

#define GLUT_DISABLE_ATEXIT_HACK
#include <Windows.h>
#include <math.h>
#include <gl/GL.h>
#include <gl/GLU.h>
#include <gl/GLAux.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=0.07145;
 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;j<=180;i+=10)
    {
     r=2*sin(i*RAD);
     z=2*cos(i*RAD);
     x=2*cos(i*RAD);
     y=2*sin(i*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()
{
 auxInitDisplayMode(AUX_SINGLE|AUX_RGB);
 auxInitPosition(0,0,300,300);
 auxInitWindow(TEXT("OpenGL Demo"));
 init();
 auxKeyFunc(AUX_LEFT,Left);
 auxKeyFunc(AUX_RIGHT,Right);
 auxKeyFunc(AUX_UP,Up);
 auxKeyFunc(AUX_DOWN,Down);
 auxReshapeFunc(reshape);
 auxMainLoop(display);
}

相关文章
|
机器学习/深度学习 自然语言处理 语音技术
深度学习在自然语言处理中的应用与挑战
【7月更文挑战第26天】本文深入探讨了深度学习如何革新自然语言处理(NLP)领域,包括它在文本分类、机器翻译和语音识别等方面的应用。文章还分析了深度学习模型面临的主要挑战,如数据依赖性、模型解释性不足以及对抗性样本的脆弱性,并讨论了未来研究方向。
117 0
|
算法 Unix Linux
MD5 生成文件校验
MD5 生成文件校验
295 0
|
弹性计算 开发者
阿里云弹性计算经济型e实例火爆发布
性价比首选,特惠云服务器,个人开发者、学生、小微企业大众的福音燃情上线啦!价格低至0.5元/天!!! 全用户群低价首选,续费不涨价!
1005 0
|
机器学习/深度学习 编解码 数据可视化
WGAN、CSGAN、ADC-GAN…你都掌握了吗?一文总结图像生成必备经典模型(三)
WGAN、CSGAN、ADC-GAN…你都掌握了吗?一文总结图像生成必备经典模型
608 0
|
Java 开发工具
在服务器中安装Java JDK
在服务器中安装Java JDK
201 0
|
Java 开发工具 Android开发
Cordova + idea 环境搭建
原文:Cordova + idea 环境搭建 1、安装前期工作 1)、安装Node.js http://nodejs.cn/download/ 里面内置了npm,可以用来安装 Cordova,把该路径添加到环境变量,这样就可以在 cmd 里面任何地方使用 npm 命令   2)、安装Android SDK 见 http://blog.
1356 1
|
算法 网络协议 Java
【Java】留下没有基础眼泪的面试题
计算机/Java基础面试题
10061 0
|
iOS开发 API