OpenGL ES
Shader开发指南(1):OpenGL渲染管线
前言Shader,即着色器,在图形世界中,指一些用于渲染图形的代码,它可以让图形开发人员通过编写相应的代码,来改变和增强最终的图形输出效果,比如在游戏中的各种酷炫的特效。 OpenGLOpenGL即开放图形库,它提供了一整套用于 渲染2D、3D矢量图形的跨语言、跨平台的应用程序编程接口(API)。甚至可以抽象的理解为,它是在Shader之上的一套框架式的引擎,开发者可以基于它提供的规范接口来快速的开发图形应用。现在的各种游戏开…
对于CPU来说,GPU其实也是一种外设(周边设备),与其的通信本质上和与一台打印机的通信并没有什么区别。CPU与GPU的通信,也无非就是通过IO操作将一些控制码写入GPU对外开放的寄存器,并且将需要传递的数据放在RAM上,然后把数据开始地址也写入GPU的专用寄存器,最后给GPU一个GO的信号(依然是写寄存器),GPU就会通过DMA获取RAM上的数据并进行处理。 在这个层面,是没有题目中的任何一个的。参与其中的,只是一种被称为GPU驱动…
导读通过阅读本文,你将获得以下收获: 1.如何读取解析YUV视频文件 2.如何将YUV转化为RGBA 3.如何将YUV帧画面通过OpenGL渲染到屏幕 今天的任务,就是渲染一个 YUV视频,立马送上效果图: [图片] 取自于宫崎骏大师的《龙猫》,满满的童年回忆~~ [图片] 整体思路根据前两篇讲解纹理映射的文章,我们要将图片纹理渲染到屏幕上,就要拿到图片的 像素数据数组,然后将像素数据数组通过纹理单元传到片段着色器中,再通过纹理采样函数将纹理中对应坐…
1 .什么是切线空间? Tangent Space,其实一个坐标系,也就是原点+三个坐标轴决定的一个相对空间,我们只要搞清楚原点和三个坐标轴是什么就可以了。在Tangent Space中,坐标原点就是顶点的位置,其中z轴是该顶点本身的法线方向(N)。另外两个坐标轴就是和该点相切的两条切线。这样的切线本来有无数条,但模型一般会给定该顶点的一个tangent,这个tangent方向一般是使用和纹理坐标方向相同的那条tangent(T)。而另一个坐标轴的…
补充一本 OpenGL ES 3.0 Programming Guide (2nd Edition),我认为这是有史以来所有 OpenGL 书籍中最棒的,没有之一。(小声地说,网上有电子版) OpenGL ES 3.0 Programming Guide (2nd Edition): Dan Ginsburg, Budirijanto Purnomo, Dave Shreiner, Aaftab Munshi: 9780321933881: Amazon.com: Books
计算机图形学基础(虎书)
简介本书的原版为《Fundamental Of Computer Graphics 4th Edition》,是同事给我的,翻译是原文+译文的形势。文章不属于机器直译,原因在于语言不存在一一对应的关系,我将尽可能的按照中国人看起来舒服的方式来翻译这些段子,如果段子让你感到身心愉悦,那还劳烦点个关注,追个更。如果我没有及时更新这些东西,那一定是明总把我拐走弹琴去了,不关罗老师的事。 这里是整书的全部内容目录,你可以跳转到感兴趣的章节,当有更新…
一看就懂的OpenGL ES教程——缓冲对象优化程序(一)
通过阅读本文,你将获得以下收获: 1.Opengl常见的缓冲对象 2.如何使用Vertex Buffer Objects(VBO)优化程序上篇回顾上一篇博文已经完成了绘制渐变色三角形的任务,这条路虽然漫长(5篇博文)但也算是一马平川,浩浩荡荡。经过前面 7篇博文的洗礼,相信你一定已经可以真正理解如何使用OpenGL es绘制一个渐变色的三角形了吧,那么恭喜你,此时你已经翻过了入门的第一座大山。本文就不继续翻山越岭了,而是讲一些优化性的内容,当…
Android openGl开发详解(一)——绘制简单图形
目录,不支持toc就偷个懒了,从我的csdn截个图过来咯。 [图片] [图片] 学习五部曲,弄清楚5个W一个H(when(什么时候使用)、where(在哪个地方使用?)、who(对谁使用)、what(是个什么东西)、why(为什么要这么用?).一个H即:how(到底该怎么用?)),基本的概念篇主要围绕这几个方面进行分析 1. What? openGl是什么?openGl ES又是什么?相信很多人从事开发的都或多或少听到过有关OpenGl这个东西,但是平时用的少,只知道有这么个东西,而…