GLSL-概述

OpenGL ES 2.0 管线

OpenGL ES的版本主要有1.x,2.x,3.x等等,目前最流行、适用范围最广的是2.x。从2.0开始,OpenGL引入管线的概念,摒弃之前的fixed function的概念,加入shader可编程单元。

其中可操作的两个步骤分别是Vertex ShaderFragment Shader。本文介绍的GLSL主要是用来编写这两种Shader的。

未经特殊说明,本文默认基于OpenGL 2.0x。

OpenGL ES Shading 概览

上面提到,Shader总共分两种:Vertex ShaderFragment Shader。下文中的GLSL语法除非特殊说明,均适用于二者。

Vertex 处理器

Vertex处理器是一个可编程单元,它以顶点信息作为输入,进行相应的处理。运行在其上的代码被称为Vertex ShaderVertex Shader同一时间只能处理一个Vertex的信息,也无法处理需要多个Vertex信息的操作。

Fragment 处理器

Vertex处理器是一个可编程单元,它以Vertex处理器处理之后的结果作为输入,进行相应的处理。运行在其上的代码被称为Fragment ShaderFragment Shader不能修改Fragment的位置信息,也不能获取到其他Fragment的数据。 Fragment Shader处理后的数据用来更新内存或文理,进而显示到屏幕上。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏纯洁的微笑

springboot(四):thymeleaf使用详解

在上篇文章springboot(二):web综合开发中简单介绍了一下thymeleaf,这篇文章将更加全面详细的介绍thymeleaf的使用。thymeleaf...

68710
来自专栏IMWeb前端团队

React高阶组件(译)

本文作者:IMWeb zzbozheng 原文出处:IMWeb社区 未经同意,禁止转载 原文:https://daveceddia.com/extra...

1916
来自专栏HTML5学堂

DOCTYPE 文档类型

HTML5学堂:在HTML版本从4.0升级到5.0之后,可以采用<!doctype html>这种最新的文档声明方式,那么以前4.0版本,我们也应当有所了解,主...

2926
来自专栏编程

Python读书笔记4

上期介绍了数字型数据,本期和大家分享的是另一个常见的数据类型字符串,可以简单的理解为Excel中的文本。 Excel在存储内核中其实只有两种:文本、数字;日期归...

2095
来自专栏calmound

cocos2d-x 3.0 Node与Node层级结构

节点解释: 节点是场景图的基本元素。场景图的基本元素必须是节点对象或者是节点对象的子类。 其中主要可以看到Layer、MenuItem、Scene、Sprite...

2795
来自专栏互联网杂技

SpringBoot ( 四 ) :thymeleaf 使用详解

简单说, Thymeleaf 是一个跟 Velocity、FreeMarker 类似的模板引擎,它可以完全替代 JSP 。相较与其他的模板引擎,它有如下三个极吸...

1573
来自专栏Java3y

Juqery就是这么简单

什么是Jquery? Jquey就是一款跨主流浏览器的JavaScript库,简化JavaScript对HTML操作 就是封装了JavaScript,能够简化我...

3305
来自专栏AhDung

【C#】妈妈再也不用担心自定义控件如何给特殊类型的属性添加默认值了,附自定义GroupBox一枚

------------------更新:201411190903------------------

982
来自专栏我杨某人的青春满是悔恨

谈谈Swift的extension

3.times { puts 'hello world' } 这是一条Ruby语句,它会打印“hello world”三次,意图清晰,语法简洁。

812
来自专栏Micro_awake web

HTML&CSS书写规范

第一部分:HTML书写规范: 1.1 HTML整体结构: 1.1.1:HTML基础设施: 文档以"<!DOCTYPE...>"首行顶格开始,推荐使用"<!DOC...

21110

扫码关注云+社区