摘要: 一.整体思路 我们在用纹理增加细节那篇文章中提到过,要将图片渲染在屏幕上,首先要拿到图片的像素数组数据,然后将像素数组数据通过纹理单元传递到片段着色器中,最后通过纹理采样函数将纹理中对应坐标的颜色值采样出来,然后给最终的片段赋予颜色值。现在换成了yuv视频,我们应该如何处理呢?因为最终的片段颜色值是 阅读全文
posted @ 2024-02-26 17:55 故乡的樱花开了 阅读(193) 评论(0) 推荐(1) 编辑
摘要: 一.认识OpenSL ES OpenSL ES的全称是Open Sound Library For Embedded Systems,即应用于嵌入式系统的开源音频库。Android从2.3版本起就开始支持OpenSL ES标准了,并且通过NDK提供相应的API开发接口。OpenSL ES有以下特性: 阅读全文
posted @ 2024-02-22 17:14 故乡的樱花开了 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 一.对yuv的认识 yuv是一种颜色编码系统,它将图像的亮度和色度分离开来。y表示亮度,即黑白信息;uv表示色度,即颜色信息。yuv常用于视频压缩和传输中,因为它可以更有效地表示人眼对亮度和色度的敏感度不同的特性。人眼对亮度更加敏感,而对色度则不那么敏感。这就是为什么在视频压缩中,可以通过减少色度分 阅读全文
posted @ 2024-02-22 15:48 故乡的樱花开了 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 一.前言 我们的空气曲棍球游戏已经取得了很大的进展,桌子已经放到了一个很好的角度,并且由于使用了纹理,更加好看了。然而,我们现在是用的点去代替木槌,它们实际看起来还不像木槌,许多应用都是通过合并简单的物体去构建更复杂的物体,我们在这篇文章中将学会如何绘制木槌以及桌子中间的冰球。 我们还缺少一个方法在 阅读全文
posted @ 2024-02-07 23:25 故乡的樱花开了 阅读(175) 评论(0) 推荐(1) 编辑
摘要: 一.理解纹理 OpenGL中的纹理可以用来表示照片,图像。每个二维的纹理都由许多小的纹理元素组成,他们是小块的数据,类似于我们前面讨论的片段和像素。要使用纹理,最直接的方式是从图像文件加载数据。我们现在要加载下面这副图像作为空气曲棍球桌子的表面纹理: 我们将其存储在drawable文件夹中即可。每个 阅读全文
posted @ 2024-02-04 23:46 故乡的樱花开了 阅读(57) 评论(0) 推荐(0) 编辑
摘要: 一.前言 想象一下,你在游戏厅和朋友玩空气曲棍球游戏,从你的视角看,空气曲棍球桌是什么样的?你的那一端桌子会显得较大,因为你是从一个角度向下看桌子的,而不是俯视桌子,我们在上一篇文章中所写的程序就是俯视视角下的,在这片文章中,我们将走进三维,让绘制的桌子更符合实际的视角。 二.透视除法 在一个顶点坐 阅读全文
posted @ 2024-02-03 23:12 故乡的樱花开了 阅读(22) 评论(0) 推荐(0) 编辑
摘要: 一.前言 我们将上一篇文章中写的应用程序再次运行起来,然后将屏幕横过来,我们会发现空气曲棍球的桌子被压扁了。这之所以会发生,是因为我们没有考虑屏幕的宽高比,直接将坐标传递给了OpenGL。在这片文章中,我们会弄清楚为什么桌子被压扁了,以及如何使用投影解决这个问题。 二.宽高比的问题 我们现在都知道一 阅读全文
posted @ 2024-02-02 21:14 故乡的樱花开了 阅读(177) 评论(0) 推荐(1) 编辑
摘要: 一.平滑着色 我们已经知道,在OpenGL中,我们只能画点,直线和三角形,并且所有物体都是以他们为基础构建的。既然受限于这三个基本图元,那么我们如何用许多不同的颜色和着色表达更复杂的场景呢?我们能使用的一个方法就是使用上百万个小三角形,每个三角形的颜色都不同,这样就可以看到一副美丽,复杂,有丰富颜色 阅读全文
posted @ 2024-02-01 22:56 故乡的樱花开了 阅读(17) 评论(0) 推荐(0) 编辑
摘要: 一.前言 本篇文章会继续上一篇文章开始的工作,在这篇文章中,我们首先会加载并编译前面定义的着色器,然后把他们链接在一起放在OpenGL的一个程序里,接下来就可以使用这个着色器程序在屏幕上绘制空气曲棍球桌子结构了。 二.加载着色器 1.我们已经为着色器写了代码,下一步则要把他们加载进内存中。为此,我们 阅读全文
posted @ 2024-01-31 17:25 故乡的樱花开了 阅读(217) 评论(0) 推荐(1) 编辑
摘要: 一.前言 在这里,我会通过一个空气曲棍球游戏来一步步介绍OpenGL ES 3.0的相关内容。空气曲棍球游戏的规则是:我们首先需要一个有两个球门的长方形桌子,一个冰球和两个用来击打冰球的木槌;在每个回合开始前,冰球都会放在桌子的中间,每个玩家要尽力把冰球击进对方的球门,同时要防御对方的进攻,每进一球 阅读全文
posted @ 2024-01-17 16:57 故乡的樱花开了 阅读(164) 评论(0) 推荐(1) 编辑