openGL
文章平均质量分 92
王者亚瑟
士不可不弘毅,任重而道远。专注于Android。
展开
-
openGL 3D图形和openGL简介
基本概念与说明OpenGL是一个图形API,用来绘制三维物体(也可以是2D物体),OpenGL ES (OpenGL for Embedded Systems) 是 OpenGL三维图形 API 的子集。 Android平台下,对于OpenGL ES有一套Java的封装,唯一非Java的部分就是GLSL脚本(GLSL,OpenGL Shader Language,即着色器语言) OpenGL E原创 2017-07-13 20:38:18 · 4596 阅读 · 0 评论 -
Android上Java程序和Opengl通信方式和opengl es着色器
阅读本文前如果是初次接触opengl可以先阅读前文: openGL 3D图形和openGL简介和 android studio上第一个opengl es程序原创 2017-07-14 18:46:46 · 1529 阅读 · 0 评论 -
android studio上第一个opengl es程序
android上openGL es基础知识 第一个opengl es程序原创 2017-07-14 14:47:25 · 6548 阅读 · 4 评论 -
opengles透视矩阵投影原理
学习本文前建议先学习前文opengl es相关矩阵知识: 解决android opengl es绘制物体屏幕横竖屏切换物体压扁形变以及矩阵相关知识 在上文中我们知道要把空间物体(下图传给顶点着色器的gl_position坐标)最终显示在二维屏幕需要经过归一化设备坐标(在[-1,1]范围),实际opengl经过了具体过程可以用如下流程图来表示: 即两个变换和三个不同坐标空间。 可见从gl_原创 2017-07-20 19:20:08 · 2687 阅读 · 0 评论 -
opengl es 颜色和着色
上一节介绍了opengl es着色器原理和过程 我们对着色器原理和过程有了较为详细的理解,并且重点讲解了使用顶点着色器来实现opengl基本图元(点,直线,三角形)的位置,那么本节讲解opengl es对颜色的绘制。三角形扇: 之前讲解如果想描述一个长方形可以用两个三角形来描述,比如: // Triangle 1 -0.5f, -0.5f,原创 2017-07-17 23:43:45 · 2044 阅读 · 2 评论 -
opengl es着色器原理和过程
上一篇文章具体参考上文: Android上Java程序和Opengl通信方式和opengl es着色器着色器原理:我们之前多次介绍过OpenGL里面图形都是通过顶点着色器和片段着色器共同完成的,顶点着色器计算每个顶点在屏幕上的最终位置,OpenGL把这些顶点组装成点,直线,三角形并且分解成片段,会询问片段着色器每个片段的最终颜色,如果没有顶点着色器OpenGL就不知道在哪绘制图形,如果没有片段着色原创 2017-07-16 23:43:46 · 1948 阅读 · 0 评论 -
opengl es 纹理
纹理: 简单说来纹理就是一张图像或者照片能被加载进opengl。opengl中的纹理可以用来表示图像,照片,甚至由一个数学算法生成的分形数据。每个二维纹理都是由许多小的纹理元素组成,他们是小块数据类似像素。通常,直接去加载一个图像文件来作为纹理。每个二维纹理都有自己的坐标从(0,0)到(1,1)如下: 在opengl es2.0中规定每个纹理不必是正方形,但每个维度必须是2的幂。加载纹理:原创 2017-07-21 15:38:58 · 653 阅读 · 0 评论 -
解决android opengl es绘制物体屏幕横竖屏切换物体压扁形变以及矩阵相关知识
在android上如果手机屏幕由竖屏切换到横屏,这个时候Ui会发生变化,变形,通常在Android中我们可以通过写不同的xml来适配这种屏幕变化引起的ui布局变化。然而,在opengl es也会存在由于屏幕切换导致ui问题,为此,opengl提出了归一化坐标来解决这个问题。归一化设备坐标: 具体说来就是把较小(端)边固定在[-1,1]范围,而较大边(端)按屏幕尺寸比例缩放。 比如1280x720原创 2017-07-20 00:17:09 · 3211 阅读 · 1 评论