美文网首页
OpenGL 入门

OpenGL 入门

作者: 轮回小飞飞 | 来源:发表于2018-03-22 15:38 被阅读0次

    走向3D

    2D + 透视 = 3D

    3D术语 (入门级)

    • 光栅化:实际绘制或填充每个顶点之间像素的形成线程
    • 着色:沿着顶点之间改变颜色值,弄够轻松创建光照照射在一个立方体上的效果
    • 纹理贴图:不过是一个用来贴倒三角形或多边形上的图片。在GPU上,文理是快捷有效的
    • 混合:将不同的颜色混在一起

    2D卡迪尔坐标系

    x轴与y轴是垂直的,他们共同定义了一个xy平面,简而言之,在任何坐标系系统中,2条轴如果直角相交,就定义了一个平面。如果一个系统只有2个轴,那么就只有1个平面就可以有从来绘图。


    3D笛卡尔坐标

    常用函数

    glutInit() 负责初始化GLUT库。它会处理向程序输入的命令行参数,并且移除其中与控制GLUT如何操作相关的部分。它必须是应用程序第一个GLUT函数,负责设置其他GLUT例程必需的数据结构。

    glutInitDisplayMode() 设置了程序所使用的窗口类型。窗口设置更多的OpenGL 特性,例如RAGA颜色空间,使用深度缓存或动画效果。

    glutInitWindowsSize() 设置所需的窗口大小,如果不想在这个设置一个固定值,也可以先查询显示设备的尺寸,然后根据计算机的屏幕动态设置窗口的大小。

    glutCreateWindow(),它的功能和它的名字一样,如果当前的系统环境可以满足glutInitDisplayMode()的显示模式要求,这里就会创建一个窗口(此时会调用计算机窗口系统的接口)。只有GLUT创建了一个窗口之后(其中包含创建创建OpenGL环境的过程),我们才可以使用OpenGL相关的函数

    glewInit()函数,属于另一个辅助库GLEW(OpenGL Extention Wrangler)。GLEW可以简化获取函数地址的过程,并且包含了可以跨平台使用的其他一些OpenGL编程方法。

    glutDisplayFunc(),它设置了一个显示回调(diplay callback),即GLUT在每次更新窗口内容的时候回自动调用该例程

    glutMainLoop(),这是一个无限执行的循环,它会负责一直处理窗口和操作系统的用户输入等操作。(注意:不会执行在glutMainLoop()之后的所有命令。)

    相关文章

      网友评论

          本文标题:OpenGL 入门

          本文链接:https://www.haomeiwen.com/subject/ysvaqftx.html