我对Open GL Shader Languagesin()
的速度和cos()
相关信息感兴趣。
GLSL 规范文档指出:
内置函数基本上分为三类:
- ...
- ...
- 它们代表一个操作图形硬件可能会在某个时候加速。三角函数属于这一类。
编辑:
正如已经指出的那样,计算单个操作的时钟周期sin()
并cos()
不能真正说明整个性能故事。
因此,为了澄清我的问题,我真正感兴趣的是是否值得优化sin()
并cos()
呼吁常见案例。
例如,在我的应用程序中,参数为0
. 那么这样的事情是否有意义:
float sina, cosa;
if ( rotation == 0 )
{
sina = 0;
cosa = 1;
}
else
{
sina = sin( rotation );
cosa = cos( rotation );
}
或者GLSL
编译器或sin()
和cos()
实现会为我处理这样的优化吗?