OpenGL
文章平均质量分 51
_Captain
这个作者很懒,什么都没留下…
展开
-
OpenGL 画直线 WIN7 VS2012
接着上篇博客。OpenGL VS2012环境搭建以及第一个OpenGL例子(WIN7 64位系统)我们改动下代码:#includevoid myDraw(void){ glClear(GL_COLOR_BUFFER_BIT); glBegin(GL_LINES); glVertex2f(0.0f,0.0f); glVertex2f(0.5f,0.5f);原创 2013-10-10 01:12:13 · 2399 阅读 · 0 评论 -
GLES 顶点数组之 结构数组 与 数组结构
在OpenGL ES中指定顶点数据可以使用一个顶点数组对每个顶点指定,例如顶点位置信息 ,也可以将一个常量值用于一个图元的所有顶点,例如图元的颜色。即常量顶点属性和顶点数组。原创 2015-03-24 23:13:31 · 2161 阅读 · 0 评论 -
OpenGL(一) 使用Win API 建立黑色窗口
在OpenGL Win平台开发时,需要创建一个窗口来作为GL的容器。原创 2015-07-21 00:45:21 · 2260 阅读 · 0 评论 -
OpenGL简单模糊效果
这里实现简单的模糊效果,具体做法是在片段着色器中,从图像中读取样本时对纹理坐标进行偏移,从图像中抽出左上右下四个样本,然后在着色器中取平均值。原图效果:模糊系数 0.001模糊系数0.0015看起来就和眼睛花了一样……片段着色器代码:const char* fragmentShader = { "原创 2015-09-01 00:19:18 · 8839 阅读 · 0 评论 -
OpenGL 数学库 GLM 投影矩阵公式 glm::perspective 已经抛弃角度的使用,转为使用弧度
这两天都被 glm::perspective 所困扰,图像显示出来的是倒立的,上下颠倒了。glm::mat4 proj = glm::perspective(60.0f, 1.0f, 0.3f, 1000.0f);今天才硬着头皮 去看了 glm::perspective 函数的实现,然后和 透视投影矩阵计算公式对比。才发现原来传入 的 视野角度 fovy 是要 弧度!!!原创 2015-11-27 20:31:00 · 16878 阅读 · 2 评论 -
ps_3_0 does not allow textures or samplers to be members of compound types
在 Fragment Shader中下面代码编译出错precision lowp float;struct Material //替换顶点色{ sampler2D diffusetexture; //引入纹理;};uniform Material m_material;void main(){ sampler2D tex=texture2D(m_material.dif原创 2015-12-15 20:57:25 · 1929 阅读 · 0 评论 -
ES3.0 中 Vertex Shader 的out变量未赋值,导致 glLinkProgram 失败
GLSL中,定义了但是 没有使用的变量会被优化掉,在之前就遇到过。(GLSL 中 ,如果定义的 变量 没有在代码中使用到,那么不会被编译,用 glget* 是获取不到的,返回 -1 。算是被优化掉了。http://blog.csdn.net/huutu/article/details/50322905 )而且如果 Vertexshader 中的定义的 Out 变量未使用,被优化掉后,会引起 FragmentShader 的问题,导致 glLinkProgram 失败!原创 2016-02-01 19:54:59 · 3927 阅读 · 0 评论 -
Android GLES多线程处理
这几天在进行Lives2D的Android移植,lib的编译都OK,然后也简单的跑起来了,然后开始添加Android端的MediaPlayer来播放音效。MediaPlayer加入之后,问题就出现很多了,JNIEnv的存储、JMethod获取都是比较繁琐的事情,我对Android也不怎么熟悉,花了很多时间。但是测试发现,游戏各种崩溃。测试场景如上,一个按钮,点击就会调用JNI 来PlayAudio原创 2017-10-05 17:44:20 · 1346 阅读 · 0 评论 -
GLES 顶点缓冲区对象(VBO)
使用顶点数组时,指定的顶点数据保存在系统内存中,在进行glDrawArrays 或者glDrawElements 的时候,需要把这些顶点数据复制到显卡内存。很麻烦。其实我们想想,直接把顶点数据保存在显卡内存中,这样不是就免去了复制这一步操作。这种方法可以改进渲染性能,而且降低了内存带宽消耗。原创 2015-03-26 01:05:48 · 2523 阅读 · 0 评论 -
骨头动画解析
骨头动画与顶点动画:骨头动画包括:外皮(所有顶点)骨头1.外皮(所有顶点) ,每个顶点包含一下信息,Pos(位置信息) UV纹理 Normal(法线) Color(定点色) boneIndex(骨头索引)boneIndex(骨头索引):每个顶点受到2-4或者更多的骨头影响,这些骨头就记录在骨头索引中boneIndex,并且记录下每个骨头的权重。2、骨头原创 2014-12-30 00:57:37 · 1839 阅读 · 0 评论 -
OpenGL 三种滤波模式 效果对比
GL_NEARESTGL_LINEARMipMapped原创 2014-03-09 18:51:34 · 4171 阅读 · 0 评论 -
Opengl es2.0 glEnable(GL_TEXTURE_2D)报错 GL_INVALID_ENUM
Opengl es2.0 glEnable(GL_TEXTURE_2D)报错 GL_INVALID_ENUM一开始报错glviewport error原创 2014-05-02 01:21:49 · 7181 阅读 · 3 评论 -
Unity 切换Shader耗CPU大
Shader.CreateGPUProgram()这个函数过程就是创建GLProgram链接Shader的一个过程,在Unity3d中的Shader.Find()是直接创建GLProgram的。如果是自己去写引擎,GLProgram一般在初始化的时候就会创建完毕,然后用类似GLProgramManager管理。Unity中的问题我们也可以用这个方法解决,但是Unity提供了简便方法。原创 2014-07-28 15:44:26 · 8601 阅读 · 0 评论