zoukankan      html  css  js  c++  java
  • OpenGL入门的几个知识点[1]

    1、OpenGL坐标系

    OpenGL坐标系跟笛卡尔直角坐标系类似,只是z轴相反,OpenGL坐标系z轴正方向向外。

    001

    2、顶点信息由坐标位置、颜色值、法向量、纹理坐标组成。

    3、核心函数后缀

    后缀 类型 对应C变量 对应OpenGL数据类型
    b 8-bit int signed char GLbyte
    s 16-bit int short GLshort
    i 32-bit int long GLint,GLsizei
    f 32-bit float float GLfloat,GLclampf
    d 64-bit float double GLdouble,GLclampd
    ub 8-bit unsigned int unsigned char GLubyte,GLboolean
    us 16-bit unsigned int unsigned short GLushort
    ui 32-bit unsigned int unsigned long GLuint,GLenum,GLbitfield
    v      

    有些函数的这些后缀的最后还有一个字母v ,它表示这个函数所接受的参数是个指向值向量 (数组)的指针,而不是一系列的单独参数。

    例:

    glColor3f(1.0f, 0.0f, 0.0f);

    GLfloat color_array[] = {1.0f, 0.0f, 0.0f};

    glColor3fv(color_array);

    4、状态变量

    //保存和恢复状态变量

    void glPushAttrib(GLbitfield mask)

    void glPopAttrib(void)

    //查询状态变量状态,激活、取消状态变量

    Glboolean glIsEnable(GLenum cap)  //GL_TRUE,GL_FALSE

    void glEnable(GLenum cap)

    void glDisable(GLenum cap)

    //获取状态变量取值范围  params[0]最小值,params[1]最大值

    void glGetBooleanv(GLenum pname,GLboolean *params)

    void glGetDoublev(GLenum pname,GLdouble *params)

    void glGetFloatv(GLenum pname,GLfloat *params)

    void glGetIntegerv(GLenum pname,GLint *params)

    5、渲染描述表

    HGLRC hrc;

    一个线程必须且只能使用一个当前渲染描述表。渲染描述表是线性安全的,多个线程可以同时使用一个渲染描述表。

  • 相关阅读:
    JavaScript与OC的交互
    通过修改自动布局的约束实现键盘弹出后view上推
    Foundation框架之NSArray
    Foundation框架之NSString
    Foundation框架之常用结构体
    C语言中的预处理指令
    C语言指针使用总结
    C语言中函数的使用及多文件团队开发
    Foundation框架简介
    文件的输入与输出
  • 原文地址:https://www.cnblogs.com/afarmer/p/2033642.html
Copyright © 2011-2022 走看看