GLSL的roundEven函数是用来将浮点数值四舍五入到最接近的偶数的函数。该函数接受一个float类型的参数,返回一个float类型的结果。
该函数在GLSL 4.1及以上版本中支持,它的功能类似于C++11中的std::round函数。不同之处在于,当一个数值距离两个相邻整数的距离相等时,roundEven函数将四舍五入到最靠近偶数的整数,而std::round函数则在正负数之间交替选择。
float roundEven(float x);
参数名称:x
参数类型:float
参数描述:要四舍五入的浮点数
返回值类型:float
返回值描述:四舍五入到最接近偶数的整数
以下示例将一个浮点数值四舍五入到最靠近偶数的值:
float a = 2.5;
float b = 3.5;
float c = 4.5;
float d = -2.5;
float e = -3.5;
float f = -4.5;
float round_a = roundEven(a); // 2.0
float round_b = roundEven(b); // 4.0
float round_c = roundEven(c); // 4.0
float round_d = roundEven(d); // -2.0
float round_e = roundEven(e); // -4.0
float round_f = roundEven(f); // -4.0