openglES3.0中shader注意事项

  • 同一个uniform变量可以在vshader和fshader中同时声明,共享使用。
  • uniform变量只读,尝试写入,会产生编译错误。
  • fshader中的in变量不能是int,因为它是插值后的结果,只能是浮点数,int的话否则会造成编译错误。
  • in/out的变量顺序可以不一致
  • uniform,in,out变量可以穿插声明
  • gles中in/out结构体,需要加struct
  • vShader和fShader中有一个共同的uniform变量时,要保证其精度相同,否则会出现编译错误。
Error: Uniform signalLineStep precision mismatch with other stage

加入下行代码即可

precision mediump int;
out struct zebra_t{
float type;
float flag;
}zebra;
  • 定义变量时不必初始化
  • uniform变量不能设置默认值
  • uniform float的设置值不要太大,否则会出现问题,比如传入时间,要取余数,限定在一定范围内。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值