关闭

mac下强迫症安装python小坑

有洁癖的强迫症真难受啊。。。 我以前在mac上使用python的时候就是使用homebrew单独安装了一个python来使用的,突然间今天下午强迫症来了,觉得有两个python的2.7版本不舒服,要是一个2.7的一个3.x的还可以接受啊。我就想着把使用homebrew安装的python2.7卸载了,使用系统自带的python2.7的版本。想法虽好,经过小半会的卸载后,使用easy_install安...
阅读(2031) 评论(0)

利用EGL在android上使用C/C++写OpenGL ES程序

使用Native代码GLSurfaceView 在Java层使用EGL 在native层使用EGL 很多教程都是在C/C++写的OpenGL的代码,其中有很多优秀的框架,除了前面提过的Assimp库外,还有很强大的库glm,从另外一个角度来看,在学习EGL的时候,很多的资料都是C语言的代码,我在android上写OpenGL ES的代码似乎从来没见过那些代码,不使用一下总觉得缺少点什么。事实上,An...
阅读(3972) 评论(0)

AndroidStudio使用NDK配置方法

配置Gradle生成so 编译多个模块 关联Androidmk到Gradle 使用cmake 配置Gradle生成so在AndroidStudio2.1及以前我是通过下面的方式配置NDK的,不知道是从哪个版本开始的,我第一次在AS上使用NDK的时候用的就是AndroidStudio2.1了。首先在gradle.properties里面添加android.useDeprecatedNDK = true...
阅读(6415) 评论(8)

利用OpenGL ES进行Android手游录屏研究

前面在Android5.0录屏方案中研究过关于手机录屏直播直播的问题,只是使用系统自带的API需要21以上,大部分手游引擎底层封装一般都是opengl es,这篇博客继续研究这个问题,实现使用opengl es录制手机屏幕,希望在手游录屏方面有所作用。依前面在OpenGL ES 帧缓冲对象(FBO):Render to texture中使用的例子为例,就当它是一个游戏,录屏的相关接口我封装到一个库里...
阅读(2192) 评论(0)

OpenGL ES EGL介绍

前面已经在android平台上使用OpenGL ES的API了解了如何创建3D图形已经使用FBO渲染到纹理进行一些其他的操作,起初我学习OpenGL ES的目的就是为了研究Android平台上录制屏幕的方案。到目前为止,基础知识已经具备了,还差一点需要了解的是Embedded Graphics Library (EGL),EGL是连接OpenGL ES和本地窗口系统的接口,由于OpenGL ES是跨...
阅读(2228) 评论(1)

OpenGL ES 帧缓冲对象(FBO):Render to texture

帧缓冲对象FBO 创建帧缓冲对象 纹理附着 渲染缓冲对象附着 渲染到纹理Render to Texture 渲染到深度纹理帧缓冲对象FBO渲染管线的最后一个阶段是到帧缓冲区。前面学习的好多知识所做的渲染操作都是在默认的帧缓冲中进行的,这个默认的帧缓冲是我们创建一个Surface时自动创建和配置好的,这篇博客就创建我们自己的缓冲区而不使用系统提供的缓冲区,这样就有了另一种渲染方式,默认情况下,我们使用...
阅读(3105) 评论(5)

OpenGL ES 加载3D模型

前面绘制的矩形、立方体确实确实让人看烦了,并且实际生活中的物体是非常复杂的,我们不可能像前面哪样指定顶点来绘制,因此本篇博客就说明通过OpenGL ES加载一个3D模型。这样复杂物体的设计工作就可以交给专业的设计师来做了,进行3D建模的工具比如3dmax、maya等。设计师通过这些软件构建出来漂亮的3D模型,并且可以通过软件导出有关该模型的各种数据信息文件,比如顶点坐标,法向量,纹理坐标等信息。模型...
阅读(2295) 评论(0)

OpenGL ES 片元操作

剪裁测试 模板测试 深度测试 混合片元着色器后续操作还包括剪裁测试、模板测试、深度测试、混合等,最终才会被送到帧缓冲区。剪裁测试剪裁测试可以在渲染时用来限制绘制区域,通过制定一个矩阵进一步限制帧缓冲区可以写入的像素,启用剪裁测试后,绘制不会在整个屏幕(帧缓冲区)进行,而是在指定的矩形区域进行。不在矩形区域中的片元被丢弃,在矩形区域内的片元才能被送往帧缓冲区,实际效果就是在屏幕上开辟了一个小窗口。剪裁...
阅读(1217) 评论(0)

OpenGL ES 纹理设置

纹理过滤 纹理采样 最近点采样 线性纹理采样 MIPMAP纹理纹理过滤纹理拉伸:重复拉伸和截取拉伸用于指定纹理坐标超过(00.0,1.0)范围时所发生的行为,使用glTexParameterf函数指定,GL_TEXTURE_WRAP_S 定义 s 坐标超出范围[0.0, 1.0]的情况,GL_TEXTURE_WRAP_T 设定 t 坐标。 GL_REPEAT 重复纹理,超过1的部分其实只看它的小数...
阅读(833) 评论(0)

OpenGL ES 纹理

纹理概念 纹理对象和纹理加载 应用纹理的例子使用前面学过的技术已经可以利用OpenGL ES构建立体图形,并通过顶点着色器和片元着色器对其进行各种变化呢和光照等效果使得三维效果更加真实,实际上我看看到很多的3D游戏漂亮多了,那是因为有各种各样的漂亮的图像带给人很多视觉盛宴,这篇文章在前面的基础上,增加物体的表面贴图,使得物体更加好看。纹理概念纹理用来表示图像照片或者说一系列的数据,使用纹理可以使物体...
阅读(878) 评论(1)

OpenGL ES 光照效果

一个立方体 光照模型 环境光 散射光 镜面光为了演示光照效果,在前面学习过的内容基础上我们首先创建一个立方体,同时为了看起来直观一些,这个立方体每个面采用中心为白色,周围红色的渐变方案,不然看上去同样的颜色混在一起,看不出来是否是立方体。并且添加上转动旋转功能,这样转动起来立体感更强一些。一个立方体立方体类Rectangle.javapublic class Rectangle { priv...
阅读(1693) 评论(2)

OpenGL ES 矩阵变换及其数学原理

矩阵变换及其数学原理引子推荐这篇文章线性代数的本质,这篇文章挺不错的,揭示了矩阵和向量的内涵。首先概要性的提一下 向量刻画的是线性空间中的对象。 矩阵刻画的是向量在线性空间中的运动(变换,跃迁),相似矩阵本质上就是同一个线性变换的不同的描述。 在一个线性空间中,选定了一组基,对于任何一个线性变化都可以用一个确定的矩阵来描述 矩阵不仅可以作为线性变换的描述,而且可以作为一组基的描述,作为变换的矩阵,不...
阅读(1472) 评论(3)

OpenGL ES 透视投影

图元装配 剪裁坐标 透视除法 视口变换 利用w分量产生三维效果 透视投影 透视投影背后的数学原理 透视投影例子前面我们知道了一个顶点要想显示到屏幕上,它的x、y、z分量都要在[-1,1]之间,我们回顾一下渲染管线的图元装配阶段,它实际上做了以下几件事:剪裁坐标、透视分割、视口变换。图元装配的输入是顶点着色器的输出,抓哟是物体坐标gl_Position,之后到光栅化阶段。图元装配剪裁坐标当顶点着色器写...
阅读(1734) 评论(0)

OpenGL ES 正交投影

OpenGL ES 正交投影OpenGL ES 正交投影 绘制正方形 引入投影 正交投影背后的数学 摄像机设置 视口绘制正方形在最开始绘制的六边形里面好像看起来挺容易的,也没有出现什么问题,接下来不妨忘记前面绘制六边形的代码,让我们按照自己的理解来绘制一个简单的正方形。按照我的理解,要想在屏幕中间显示一个正方形,效果如下图所示应该创建的数据如下图所示即传给渲染管线的顶点数据如下图:float[] v...
阅读(1862) 评论(0)

OpenGL ES 着色器

OpenGL ES 着色器OpenGL ES 着色器 着色器语言 向量 矩阵 向量和矩阵的分量 采样器 数组 类型转换 变量限定符 varying变量的原理 获取着色器变量 内建变量 顶点着色器 片元着色器 函数 片元着色器浮点变量精度 着色器程序1.着色器语言着色器语言是一种高级图形编程语言,和C/C++语言很类似,但存在很大差别,比如,不支持double,byte,short,不支持unin,e...
阅读(972) 评论(0)

OpenGL ES入门

OpenGL ES渲染管线概述渲染管线一般是由显示芯片GPU内部处理图形信号的并行处理单元组成,这些并行处理单元之间是独立的,从另一个角度看,渲染管线实际上也是一系列绘制过程,这一系列过程的输入是待绘制物体的相关描述信息,输出的是要显示的图像帧数据。OpenGL ES管线主要包括:读取顶点数据—>顶点着色器—>组装图元—>光栅化图元—>片元着色器—>写入帧缓冲区—>显示到屏幕上 读取顶点数据指的是将...
阅读(1344) 评论(1)

Android5.0录屏方案

导语 本文主要是围绕android直播助手的功能做了一些研究,因为之前对Android多媒体相关的内容知之甚少,只有概念,于是查阅了相关资料并做以总结。 由于我对音视频相关知识零基础所以补充了一些相关知识 视音频编解码技术零基础学习方法 视音频数据处理入门:RGB、YUV像素数据处理 采集音频原始数据---->压缩编码----> 封装 采集视频原始数据---->压缩编码----> 封装 音视频编码...
阅读(4049) 评论(4)

Android点阵屏效果的控件

最近发现了一个比较好玩的效果,android实现的LED点阵屏幕效果,挺有意思的,于是花了点时间实现了一下,这个用在演唱会上的粉丝当成牌子举是不是挺好的呢,或者是送给妹子?哈哈~ 实现思路比较简单,主要是计算汉字对应的点阵矩阵,汉字通过GB2312编码,每个汉字对用两个byte来表示,而一个汉字被存储为点阵时,以16*16表示,需要16*16=256bit,也就是32byte,GB2312编码也...
阅读(2297) 评论(2)

Android绘制View相关的几个问题

前面关于View绘制的话题好像零散的写过博客,虽然好久没有认真的研究一些东西了,平时忙其他的东西,但是本着每个月必须花几天时间看看android的想法,今天整理了几个View绘制相关的问题,这里不会涉及View测量布局绘制的那部分细节,因为这些前面已经写过了。主要有以下几个问题 1.View绘制流程 invalidate/requestLayout 2.View树和DecorView 4.真...
阅读(2901) 评论(0)

AndroidStudio导入第三方开源库

AndroidStudio还是0.8的版本的时候下载下来看了一下,都推出三年左右的工具了,我竟然没有用过,昨天打算好好研究一下以便以后转向AS,毕竟google出的这么好的IDE,不用都对不起自己。不过真心很好用,尤其黑色的主题风格很舒服,但对于一直使用eclipse的我还是有点不习惯,主要是导包的方式和eclipse差异是在很大,于是在网上各种搜索,研究了很久才弄明白,根据别人的资料加上自己的理...
阅读(3084) 评论(1)
94条 共5页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:294477次
    • 积分:4328
    • 等级:
    • 排名:第7704名
    • 原创:89篇
    • 转载:5篇
    • 译文:0篇
    • 评论:178条
    联系我
    qhyuan1992@qq.com
    最新评论