转:http://wiki.jikexueyuan.com/project/opengl-es-guide/pipeline.html OpenGL ES 主要用来开发 3D 图形应用的。OpenGL ES (OpenGL for Embedded Systems) 是 OpenGL 三维图形 AP ...
分类:
移动开发 时间:
2018-01-26 22:44:40
阅读次数:
203
Tesselation的作用:给低片面数模型镶嵌更多片面,让低模变高模。 和法线贴图不同,法线本质是通过改变低模表面的颜色来模拟高模,比如在一个片面上普通diffuse是均匀的颜色分布(因为光照颜色一样,它插值顶点对应纹理色值,所以是均匀的,很多情况还是单一的,比如全是灰色等),而法线贴图通过插手光 ...
分类:
其他好文 时间:
2018-01-25 00:32:57
阅读次数:
203
本节我们将尝试利用三角形制作一个“走马灯”效果。 一个三角形如图示方式,从左向右依次移动。 先看一下代码: MyGlWindow.cpp MyGlWindow.h 重点看cpp文件里的变化。 先定义了几个变量(其实也可以定义成常量),方便后面使用,他们分别是: float triangleWidth ...
使用之前的方法写Shader是一件很痛苦的事情,把Shader代码直接卸载C++文件中,需要使用很多引号来包裹,既不美观也不方便。 我们这节的目的是使用纯文本文件保存Shader。 首先在工程中创建两个文件,分别命名为VertexShaderCode.glsl 和 FragmentShaderCod ...
上节的最后我们实现了两个绿色的三角形,而绿色是直接在Fragment Shader中指定的。 这节我们将为这两个三角形进行更加自由的着色——五个顶点各自使用不同的颜色。 要实现这个目的,我们分两步进行,首先 在顶点数组里增加数据用来表示颜色 修改sendDataToOpenGL()函数中的verts ...
本节将采用两种方法绘制两个三角形。 先看第一种方法的代码 MyGlWindow.cpp 和上一节的代码很相似,区别是verts数组增加了6个元素(能额外表示3个顶点),另外glDrawArrays()函数的最后一个参数变成了6,表示绘制六个顶点。这样当然就可以绘制2个三角形了。 但是这种方法造成了一 ...
本节将绘制一个三角形 先看最终代码: MyGlWindow.cpp: 启用通道 每个顶点都有多种attributes,例如位置,颜色等。 为了让把数据从内存发送到显卡中,我们需要告诉OpenGL去开启某个attribute。 17 行使用glEnableVertexAttribArray()函数来启 ...
原文地址:mingw qt作者:孙1东 不使用Qt SDK,使用mingw编译qt源代码所遇问题及解决方法: configure -fast -release -no-exceptions -no-rtti -no-stl -no-qt3support -no-opengl -no-multimed ...
分类:
编程语言 时间:
2018-01-15 22:44:02
阅读次数:
1473
一、直线扫描算法:通过已知两点可以求得直线方程: y = kx + b;k = (y1-y0)/(x1-x0);b = y0 - kx0;1、数值微分法(DDA)已知过端点P0 (x0, y0), P1(x1, y1)的直线段L:y = kx + b,容易得知直线斜率为:k = (y1-y0)/(x ...
分类:
编程语言 时间:
2018-01-15 22:36:19
阅读次数:
232
一、片段测试:片断测试其实就是测试每一个像素,只有通过测试的像素才会被绘制,没有通过测试的像素则不进行绘制。OpenGL提供了多种测试操作,利用这些操作可以实现一些特殊的效果。1、剪裁测试,类似遮罩剪裁测试用于限制绘制区域。我们可以指定一个矩形的剪裁窗口,当启用剪裁测试后,只有在这个窗口之内的像素才 ...
分类:
其他好文 时间:
2018-01-15 22:30:24
阅读次数:
214