1.

本函数可以禁用多边形正面或背面上的光照、阴影和颜色计算及操作,消除不必要的渲染计算是因为无论对象如何进行旋转或变换,都不会看到多边形的背面。用GL_CULL_FACE参数调用glEnable和glDisable可以启用或禁用剔除。

glEnalbe(GL_CULL_FACE) 开启剔除操作效果

glDisable(GL_CULL_FACE) 关闭剔除操作效果

2.

当我们需要绘制透明图片时,就需要关闭它

glDisable(GL_DEPTH_TEST);

3. glBlendFunc

http://blog.chinaunix.net/uid-20622737-id-2850251.html

    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
glBlendEquation(GL_FUNC_ADD);
glp_bt.draw();
glp_up.draw();

4   设置浏览窗口大小

glViewport(0, 0, 800, 600);

5. glBlendEquation

https://blog.csdn.net/flycatdeng/article/details/82664564

6 清空显存数据

glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

7.  opengl  纹理坐标和 定点坐标

glTexCoord2f( 0.0, 0.0 ); glVertex3f( -1.0, -1.0, 1.0 );

glTexCoord2f( 1.0, 0.0 ); glVertex3f( 1.0, -1.0, 1.0 );

glTexCoord2f( 1.0, 1.0 ); glVertex3f( 1.0, 1.0, 1.0 );

glTexCoord2f( 0.0, 1.0 ); glVertex3f( -1.0, 1.0, 1.0 );

Vertex v0(glm::vec3(-1, 1, 0) , glm::vec2(0, 1));
Vertex v1(glm::vec3(1, 1, 0) , glm::vec2(1, 1));
Vertex v2(glm::vec3(1, -1, 0 ) , glm::vec2(1.0, 0));
Vertex v3(glm::vec3(-1, -1, 0), glm::vec2(0, 0));

8  多线程

OpenGL和多线程基本上是敌人:在任何给定的时刻,只有一个线程可以“拥有渲染上下文”-是的,只要线程切换,您就可以切换GL渲染上下文,但要考虑成本,并考虑从一个OEM驱动程序到下一个,它没有得到很好的支持,可能对某些人而不是其他人有用。唯一的逻辑(也是明智的)选择是将所有OpenGL调用都保留在一个线程中(注意:有一些例外,有些线程可以在gl中调用这些与流数据有关的东西,而无需拥有渲染上下文) 。不幸的是,我们不能像建议的那样简单地在线程周围传递GL上下文,我们必须调用(w)glMakeCurrent,它告诉GL“此调用者线程现在拥有您”,但是无法告诉其他线程...

opengl 笔记的更多相关文章

  1. opengl笔记——旋转,一段代码的理解

    重看:opengl笔记——OpenGL好资料备忘 在找到这段代码,对理解opengl旋转很有帮助 ... glPushMatrix(); // initialze ModelView matrix g ...

  2. OpenGL 笔记 <2> Compiling and Linking a shader program

    Preface 这一节所有的主要内容都在一个OpenGL库文件中<LoadShaders.h> ,只需要用LoadShader()函数进行加载即可.但是由于老是出错,所以自己实现了一下,也 ...

  3. opengl 笔记(2)

    /*- * Opengl Demo Test * * Fredric : 2016-7-10 */ #include <GLUT/GLUT.h> #include <stdlib.h ...

  4. opengl 笔记(1)

    参考<opengl入门教程>.<OpenGL之坐标转换>.<OpenGL绘制管线操作细节>等资料. 复习下留个备忘:) /*- * Opengl Demo Test ...

  5. opengl笔记—— glMultMatrixf() 区别 glLoadMatrixf()

    能找到最好的解释来自:http://www.gamedev.net/topic/489879-glpushmatrixglpopmatrix--glloadmatrixf/ 原理: glPushMat ...

  6. opengl笔记

    GL_ARRAY_BUFFER(表示顶点数据) GL_ELEMENT_ARRAY_BUFFER(表示索引数据) GL_PIXEL_UNPACK_BUFEER( 表示传递给O p e n G L 的像素 ...

  7. OpenGL笔记(五) 着色器渲染(以Android为例)

    一.Android平台上下文环境的创建及初始化 1. 首先实例化Android上下文环境,即EGL的初始化. bool EGLCore::init(EGLContext sharedContext) ...

  8. OpenGL笔记(四) API参考

    常见API glActiveTexture 选择活动纹理单元 glAttachShader 将一个着色器对象绑定到一个程序对象 void glAttachShader(GLuint program, ...

  9. OpenGL笔记(三) GLSL语法与内建函数

    GLSL,OpenGL Shading Language,GLSL中没有指针,并且没有任何类型的字符串或字符. (1)GLSL的修饰符与基本数据类型 const:用于声明非可写的编译时常量变量: at ...

  10. OpenGL笔记(一) 绘制三角形

    GLTools: 一些有用且可复用的函数 GLEW: OpenGL API的一些扩展机制 GLUT: OpenGL Utility toolkit, OpenGL跨平台相关,隐藏平台相关细节 RC代表 ...

随机推荐

  1. redis修改持久化路径、日志路径、清缓存

    redis修改持久化路径和日志路径 vim redis.conf logfile /data/redis_cache/logs/redis.log #日志路径 dir /data/redis_cach ...

  2. PAT 甲级 1048 Find Coins (25 分)(较简单,开个数组记录一下即可)

    1048 Find Coins (25 分)   Eva loves to collect coins from all over the universe, including some other ...

  3. videojs改变音量大小

    <audio id=example-video preload="auto" class="video-js vjs-default-skin" type ...

  4. (十二)class文件结构:魔数和版本

    一.java体系结构 二.class格式文件概述 class文件是一种8位字节的二进制流文件, 各个数据项按顺序紧密的从前向后排列, 相邻的项之间没有间隙, 这样可以使得class文件非常紧凑, 体积 ...

  5. 【ARTS】01_30_左耳听风-201900603~201900609

    ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...

  6. iostat的坑

    简单使用iostat查询io使用量,会让你看不懂所以然,因为很多人疏忽了这个命令查到的结果根本不是实际值,需要注意的是一句话: “第1次采样信息与单独执行iostat的效果一样,为从系统开机到当前执行 ...

  7. Ubuntu linux 下的基本操作

    防火墙相关: 关闭防火墙: ufw disable

  8. 【VS开发】【数据库开发】libevent windows下基于VS2010的编译

    libevent是一个常用的网络库,下面就看看在windows下面编译测试的过程吧. 一 环境 系统:win8.1编译器:VS2013官方下载地址:http://libevent.org/版本:2.0 ...

  9. 通过js操作,将div设置为contenteditable的内容设为全选状态

    因为div设置为contenteitable可编辑的文本内容用 select()选择全部内容不生效,所以只能用下列方法: 先 creatTextRange或者 createRange <div ...

  10. hadoop WordCount例子详解。

    [学习笔记] 下载hadoop-2.7.4-src.tar.gz,拷贝hadoop-2.7.4-src.tar.gz中hadoop-mapreduce-project\hadoop-mapreduce ...