O3D的优点和几个基本概念

 

 

O3d 使用一个程序可控的图形管道模型而不是一个固定功能的管道。这个程序可控的管道使用shader语言,依据hlslCg,使你可以通过vertex shaderspixel shaders来直接对cpu编程。在程序可控CPUs出现以前,图形程序员被限制在固定功能的图形处理流水线中。计算transformationslightingtexture coordinates和其他环境效果的算法是预编写在软件中来控制图形软件,如早期的OpenGLDirecet 3D。 在依据固定功能的图形处理流水线的系统中,全局状态创建给lightsmaterials,和textures,然后shape 消息被传到这个管道中。相比之下,使用程序可控的图形管道, 开发人员可以完全控制在vertex shader the pixel shade中使用的算法。并且,rasterizing frame-buffer 操作可以使用o3d API进行配置。(译自Google Code Labs)

 

Some basic knowledge:

 

什么是管线?什么是流水线?什么是Shader

 

什么是ShaderShader可以翻译为着色器,分为Vertex Shader & Pixel Shader ,即:顶点着色器和像素着色器。Shader主要指的是可编程管线的算法片段。

什么是管线?因为图形渲染象流水线一样的顺序执行,所以形象说法,下文所涉及的处理流水线就是这种东西。

 

老显卡和新显卡的区别是什么?

 

以前老显卡是不能编程的,所以叫固定管线。

详细说明:以前固定管线时代,顶点的运算是固定不变的,就是坐标变换,比如投影到屏幕上的坐标换算,后来GPU出现了,顶点的运算就可以编程了,把这些操作顶点的算法叫shader

   

通俗解释:什么是Vertex Shader

 

什么是Vertex?称顶点,由于模型是由很多坐标点定义的,这些点就是Vertex

什么是Vertex ShaderVertex shader是改变物体模型外形的,由于模型是由点构成的,因此改变点就是改变外形,比如星际争霸2demo片中所展示的那个神族母舰黑洞的技能效果,扭曲了单位的外型。

    

通俗解释:什么是Pixel Shader

 

什么是Pixel?象素,即一个象素点,象素点可以变化不同的颜色,由众多的象素点就可以组成我们现在所见的电脑显示内容。

什么是Pixel Shader?当模型顶点变换完之后,是需要填充颜色的,这些填充算法是针对屏幕上的每个像素的,所以叫Pixel Shader(像素着色器),以前这些内容是不能通过编程控制的,后来显示卡的GPU出来后就可以编程控制了,因此这些算法叫piexl shader

常见的毛发效果渲染:游戏引擎里面,动物身上所渲染的一根根毛发,就是用了Pixel Shader,因为毛发这种是针对每个像素的,所以要用到Pixel shader

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值