FLSL2.0学习笔记(一)

最近在学习Flare3D 2.5的FLSL2.0着色语言,把其记录下来,方便以后查看。

一、什么是FLSL?
       FLSL 是一种高级的shader 语言,专供Flare3D使用。和GLSL,HLSL以及PiexlBender 3D有些相似之处,FLSL可以让你同时执行片元和顶点的操作,简化开发过程。
       FLSL2.0中有两种FLSL对象:FLSLMaterial和FLSLFilter。FLSLMaterial是一个完整的shader,可以在你的Flare3D程序中直接编译和执行。FLSLFilter只是整个shader的一个部分,它可以像其他Filter一样能够结合其他Filter来创建一些复杂的效果。
二、FLSL2.0的结构
       一个最简单的FLSL2.0文件如:

use namespace flare.transforms;
technique main() 
{
	output vertex = transform();
	output fragment = float4(1);
}

       我们做的第一件事就是告诉编译器我们要使用的namespace(命名空间)。这个命名空间包括基本数据类型和一些函数库。你也能添加自己的命名空间和自定义函数。  

       第二排是必须的,technique 不能改变,函数名main 可以任意取,可以带小括号也可以不带小括号。函数里有一个顶点着色器的输出和一个片元着色器的输出。其中transform() 就的flare.transforms这个命名空间里定义的函数。着色语言是以矢量和矩阵为基础,所以有很多矢量表示法,如:片元着色器的输出是float4(1.0) ,表示由4个为1.0 的浮点数组成的矢量。从颜色的体系来理解这4个矢量分别表示颜色的红色、绿色、蓝色和透明度,float4(1.0) = float4(1.0,1.0,1.0,1.0) 结果就是不透明的白色。  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值