确定GLSL中最小/最大矢量的逻辑是什么?

Toj*_*oji 15 glsl

我有点惊讶我不知道这一点,但承认你还在学习:)从来没有伤害过:)

在GLSL有minmax函数,根据他们的文档:

返回两个值中较小/较大的值

但是,当值是向量时,如何确定?很明显(1, 1)会少于(2, 2),但什么是最小或最大的(1, 3)(4, -2)?这种逻辑在哪里正式描述?

Joh*_*eek 32

引用我能找到第一个来源(PDF),位于§8.3常用功能的顶部,第132页:

这些都是按组件运行的.描述是按组件.

几乎所有在向量上运算但仅对标量有意义的函数在组件方面都是有效的.(这包括abs,sign,floor,trunc,round,roundEven,ceil,fract,mod,modf,min,max,clamp,mix,step,smoothstep,和很多更多).

因此,例如,对最小(1, 3)(4, -2)(1, -2).

  • 真棒!这就是我的假设,但我很难找到文档来验证它.谢谢! (2认同)