OpenGL ES 顶点着色器内建变量和矩阵变换

一、简介 顶点着色器用于基于顶点的操作,例如通过矩阵变换位置、计算照明方程式以生成逐顶点的颜色以及生成或者变换纹理坐标。 常见概念: 属性:用顶点数组提供的顶点数据(关键字:attribute/in) 输出:在图元光栅化阶段为每个生成的片段计算顶点着色器的输出,并作为片段着色器的输入(关键字:v...

2019-04-25 17:20:11

阅读数 82

评论数 0

OpenGL ES 绘制图元:glDrawArrays 和 glDrawElements 介绍

一、简介 在 OpenGL ES 2.0 中,使用 glDrawArrays 和 glDrawElements 两个接口绘制图元。 在 OpenGL ES 3.0 中,又新增了 glDrawRangeElements、glDrawElementsInstanced 和 glDrawArraysIn...

2019-04-11 09:50:38

阅读数 76

评论数 0

OpenGL ES 给着色器(Shader)中传递数据

一、前言 在 OpenGL 开发中,肯定会接触到顶点着色器(vertex shader)和片段着色器(fragment shader),着色器语言的语法这里不做过多介绍,下面是一些着色器的示例: OpenGL ES 2.0 顶点着色器示例: uniform mat4 u_Matrix; //...

2019-04-08 19:16:55

阅读数 106

评论数 0

OpenGL ES 3.0 着色语言基础语法

前言 在 OpenGL 开发中,不得不提到着色语言,着色语言用于编写顶点着色器和片段着色器。接下来就简单介绍一下着色语言的一些基础语法。 备注:内容来自于《OpenGL ES 3.0编程指南》一书。 一、版本规范 在 OpenGL ES 3.0 中,顶点着色器和片段着色器的第一行总是声明着色器版本...

2019-03-31 00:38:34

阅读数 83

评论数 0

OpenGL ES 3.0 对比 OpenGL ES 2.0 的异同点和新功能

一、相同点 相比于 OpenGL ES 1.x 系列的固定功能管线,OpenGL ES 2.0 和 OpenGL ES 3.0 都是可编程图形管线。开发者可以自己编写图形管线中的 顶点着色器 和 片段着色器 两个阶段的代码。 二、不同点 OpenGL ES 3.0 是向后兼容 OpenGL ...

2019-03-28 00:55:32

阅读数 395

评论数 1

你可能不知道的几个 git 实用指令

前言 很常见的不说了,介绍几个你们可能不知道但是却实用的命令吧,数量不多。 一、克隆工程 我们都知道克隆某个工程的代码使用 “git clone url”,这样默认拉取的是 master 分支的代码。如果你只想拉取某个分支的代码,可以使用该命令: git clone url -b &amp...

2019-02-28 23:29:22

阅读数 273

评论数 1

Android Studio 配置一键生成 JNI 头文件工具

一、前言 我们知道进行 NDK 开发中,native 方法大多是需要进行静态注册的,如果手动一个个写,不仅容易出错,而且繁琐和浪费时间。那么有什么好用的工具可以使用呢? 这个其实是有的,就在我们的JDK中就有一个 javah.exe 工具帮助我们生成 JNI 的头文件,我们只需要将其配置到 And...

2019-02-28 00:03:17

阅读数 894

评论数 0

Android Gradle 使用指南(收藏向)

前言 目前 Android 的开发大都使用 Android Studio 了,而 Android Studio 所使用的 Gradle 也是大有文章,其中有许多可以定制和使用的技巧。 Gradle 的语法是使用的 Groovy 语言,这里不做详细介绍了。 下面是我总结的一些常用的选项以及释义...

2019-02-27 00:18:55

阅读数 768

评论数 0

自定义Camera系列之:GLSurfaceView + Camera2

一、前言 假如你要使用 OpenGL ES 来渲染相机的话,使用 GLSurfaceView 将是一个很常用的选择。 这里介绍 GLSurfaceView + Camera2 的组合。 如果你对 Camera2 的相关类和接口还不熟悉,可以先看看下面这些介绍: CameraManager详解 C...

2019-02-14 00:16:19

阅读数 732

评论数 0

自定义Camera系列之:TextureView + Camera2

一、前言 之前已经介绍过过时的旧 Camera 的使用了,毕竟在从 Android 5.0 后推荐使用 Camera2 了,所以现在开始介绍 Camera2 相关使用。该篇介绍 TextureView ,这也是谷歌示例中使用的组合。 如果你对 Camera2 的相关类和接口还不熟悉,可以先看看...

2019-01-31 00:12:52

阅读数 1237

评论数 2

自定义Camera系列之:SurfaceView + Camera2

一、前言 之前已经介绍过过时的旧 Camera 的使用了,毕竟在从 Android 5.0 后推荐使用 Camera2 了,所以现在开始介绍 Camera2 相关使用。老规矩还是从 SurfaceView 说起。 如果你对 Camera2 的相关类和接口还不熟悉,可以先看看下面这些介绍: ...

2019-01-27 23:43:36

阅读数 799

评论数 0

自定义Camera系列之:GLSurfaceView + Camera

一、前言 假如你要使用 OpenGL ES 来渲染相机的话,使用 GLSurfaceView 将是一个很常用的选择。 这里介绍 GLSurfaceView + Camera 的组合。虽然从 Android 5.0 后推荐使用 Camera2 了,不过某些旧工程或者需要适配低版本的场景还是用得着...

2019-01-23 00:08:12

阅读数 859

评论数 2

Android Camera2 之 CaptureRequest 和 CaptureResult

CaptureRequest 介绍 一、简介 CaptureRequest 表示一个捕捉的请求。我们可以为不同的场景(预览、拍照)创建不同的捕捉请求,并可以配置不同的捕捉属性,如:预览分辨率,预览目标,对焦模式、曝光模式等等。 官方文档链接:https://developer.android...

2019-01-12 00:32:01

阅读数 1857

评论数 3

Android Camera2 之 CameraCaptureSession 详解

一、简介 CameraCaptureSession 是一个事务,用来向相机设备发送获取图像的请求。 主要为 setRepeatingRequest() 和 capture() 方法。setRepeatingRequest() 是重复请求获取图像数据,常用于预览或连拍,capture() 是获取...

2019-01-08 23:57:57

阅读数 1575

评论数 1

Android Camera2 之 CameraCharacteristics 详解

一、简介 CameraCharacteristics 是专门用来描述相机设备属性的一个类,继承自 CameraMetadata 类。给对给定的相机,它里面所包含的属性都是 固定的 。 包括:曝光补偿(Exposure compensation)、自动曝光/自动对焦/自动白平衡模式(AE / A...

2019-01-07 00:08:40

阅读数 1834

评论数 1

Android Camera2 之 CameraDevice 详解

一、简介 CameraDevice 是一个连接的相机设备代表,你可以把它看作为相机设备在 java 代码中的表现。类比于旧 API 中的 Camera 类。 官方文档链接:https://developer.android.google.cn/reference/android/hardware/...

2018-12-29 17:59:59

阅读数 683

评论数 2

Android Camera2 之 CameraManager 详解

一、简介 CameraManager 是系统服务之一,专门用于 检测 和 打开相机,以及 获取相机设备特性。 官方文档其实说的蛮清楚的了,英文好的同学也可以直接看官方文档把:https://developer.android.google.cn/reference/android/hardwa...

2018-12-29 17:30:06

阅读数 1334

评论数 0

自定义Camera系列之:TextureView + Camera

一、前言 上一篇介绍了 自定义Camera系列之:SurfaceView + Camera,接着我们介绍使用 TextureView + Camera 的组合。 为什么选择 TextureView ? 由于 SurfaceView 是拥有一个独立的 Surface,不在 View hiera...

2018-12-26 22:11:13

阅读数 1165

评论数 1

自定义Camera系列之:SurfaceView + Camera

一、前言 之前一直想把 Camera 系列的写一下,拖了很久,现在慢慢填坑吧。 首先介绍 SurfaceView + Camera 的组合。虽然从 Android 5.0 后推荐使用 Camera2 了,不过某些旧工程或者需要适配低版本的场景还是用得着旧的 Camer API 的。 为什么选...

2018-12-25 23:34:16

阅读数 1111

评论数 1

Android 性能优化总结

一、简介 性能调优是开发中少不了的一个过程,同时也是一名优秀的程序员需要掌握的基本技能。下面我们来看一下在 Android 中可以从哪些方面来进行性能优化吧。 二、内存优化 内存是很重要的一个模块了,所以我也将其放在了第一位来说明。那么如何来优化我们应用的内存呢? 当应用内存不足时,将发生内存溢出...

2018-12-18 23:36:00

阅读数 914

评论数 0

提示
确定要删除当前文章?
取消 删除