OpenGL概述
来源:互联网 发布:上古卷轴5精灵捏脸数据 编辑:程序博客网 时间:2024/05/21 06:35
OpenGL概述
上一节配置好了VS下开发OpenGL程序的环境:Visual Studio配置OpenGL开发环境
1、一个实例
首先,可以实现一个小实例程序:
#include <windows.h>#include <gl/glut.h>void display(){glClear(GL_COLOR_BUFFER_BIT);glColor3f(1.0, 1.0, 1.0);glBegin(GL_POLYGON);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();}void init(){glClearColor(0.0, 0.0, 0.0, 0.0); glMatrixMode(GL_PROJECTION); glLoadIdentity(); glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);}int main(int argc, char** argv){glutInit(&argc, argv);glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);glutInitWindowSize(250, 250);glutInitWindowPosition(100, 100);glutCreateWindow("husheng");init();glutDisplayFunc(display);glutMainLoop();return 0;}
运行可以得到:
这段代码是一个OpenGL程序所必须的基本内容。
2、OpenGL管线
3、OpenGL工具库(GLUT)
OpenGL包含的函数介绍:
窗口管理:
①glutInit(int *argc,char **argv)对GLUT进行初始化。
②glutInitDisplayMode(unsigned int mode)指定是使用RGBA模式还是颜色索引模式。
③glutInitWindowPosition(int x,int y)指定了窗口左上角的屏幕位置。
④glutInitWindowSize(int width,int size)指定了窗口的大小。
⑤glutInitContextVersion(int majorVersion,int minorVersion)声明了OpenGL要使用哪个版本。
⑥glutInitContextFlags(int flags)声明OpenGL渲染环境的类型。
显示回调函数:
glutDisplayFunc(void(*func)(void))事件回调函数。
运行程序:
glutMainLoop()启动程序。
处理输入事件:
①glutReshapeFunc(void(*func)(int w,int h))窗口大小发生变化时采取什么行动。
②glutMotionFunc(void(*func)(int x,int y))注册一个函数,当按下鼠标移动鼠标时,调用这个函数。
====================================================================================
结束。
- OpenGL概述
- OpenGL 概述
- OpenGL概述
- OpenGL概述
- OpenGL概述
- OpenGL概述
- [OpenGL红宝书]第一章 OpenGL概述
- OpenGL系列1:OpenGL概述
- OpenGL ES概述
- OpenGL ES 概述
- android.opengl.GLSurfaceView概述
- android.opengl.GLSurfaceView概述
- android.opengl.GLSurfaceView 概述
- OpenGL ES 概述
- 【OpenGL】Shader概述
- OpenGL基本API概述
- 【OpenGL】Shader概述
- 【菜鸟也能玩转OpenGL】概述
- Contains Duplicate
- Java中PreparedStatement和Statement的用法区别
- android源码分析之类Build
- Hibernate配置过程发生的问题及解决方法
- 记一次MySQL手工注入案例
- OpenGL概述
- Hive开发人员如何提升?
- 数据库使用总结 Sql sever ,mysql,sqlite
- ROS新手教程【一】ROS开源机器人操作系统简介
- GBDT(MART) 迭代决策树入门教程 | 简介
- 浅谈const,static,extern
- 对服务器开发的误解
- Android开源特效框架
- ecshop增加点击购买直接进入购物车