粒子特效(Particle Efects)水,火,雾,气,三维软件开发。
一.GLSL特殊的数据类型取样器
●取样器sampler
●2种常见基本的类型,sampler2D和samplerCube
●只能是unifrom
●用于纹理采样
* sampler1D,访问一维纹理
* sampler2D,访问二维纹理
* sampler3D,访问三维纹理
* samplerCube,访问立方体纹理
* sampler1DShadow,访问一个带有对比的一维深度纹理
* sampler2DShadow,访问一个带有对比的二维深度纹理
二.变量限定符
●const,用于声明非可写的编译常量变量
●attribute,用于经常更改的信息,只可以在顶点着色器使用
●uniform,用于不经常更改的信息,用于片元、顶点着色器使用
●varying,用于从顶点着色器传递到片元着色器的插值信息
三.GLSL内建变量
gl_Color:颜色
gL_Normal:法线
gL_Vertex:顶点信息
gL_MultiTexCoorde0:
四.顶点着色器vertex Shader中使用的内建变量
vec4 gl_Position:用来设置顶点转换到屏幕坐标的位置
注意:vertex Shader一定要去更新这个数值
float gl_pointSize,点的大小。(矩形)
vec4 gl_CLipVertex,启用了CLip Plan(裁剪屏幕)
五.顶点着色器Vertex Shader,片元着色器Fragment Shader都可以使用的变量
varying Vec4 gL_FrontColor:正面颜色
varying Vec4 gt_BackColor:背面颜色
varying Vec4 gl_FrontSecondDaryColor:镜面颜色
varying Vec4 gl_FrogCoorg.xy,代表像素在FrameBuffer画面的位置.
六.Fragment Shader内建输出变量
gL_FragColor,代表面所要填入的颜色
gL_FragData,填入面颜色
gL_FragDepth:颜色的深度值
能简单描述一下OpenGL的渲染流程吗?
image.png
网友评论