NaN and infinity literals not allowed by shader model 错误解决方法

 

一般情况下发生在FX编写的时候,

特别注意以下情况pow(max(0, f), e),这句话会存在一个问题就是当max(0,f)的值为0时,将出现pow(0,e),而实际上对于这个幂次是没有意义的,所以会出现报错,可以修改此方法,或者使用多项式展开,或者使用更简单的办法,比如将0改为0.00001f,即

 

pow(max(0.00001f,f),e).

 

这样一般都能够解决问题了。

补充:shader中如果出现非法的运算,可能就会出现这种错误,比如除0之类的。

发布了162 篇原创文章 · 获赞 21 · 访问量 87万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览