min.3Cg

Langue: en

Version: 350635 (ubuntu - 24/10/10)

Section: 3 (Bibliothèques de fonctions)

NAME

min - returns the minimum of two scalars or each respective component of two vectors

SYNOPSIS

   float  min(float  a, float  b);
   float1 min(float1 a, float1 b);
   float2 min(float2 a, float2 b);
   float3 min(float3 a, float3 b);
   float4 min(float4 a, float4 b);
 
 
 
   half   min(half  a, half  b);
   half1  min(half1 a, half1 b);
   half2  min(half2 a, half2 b);
   half3  min(half3 a, half3 b);
   half4  min(half4 a, half4 b);
 
 
 
   fixed  min(fixed  a, fixed  b);
   fixed1 min(fixed1 a, fixed1 b);
   fixed2 min(fixed2 a, fixed2 b);
   fixed3 min(fixed3 a, fixed3 b);
   fixed4 min(fixed4 a, fixed4 b);
 
 
 

PARAMETERS


a
Scalar or vector.
b
Scalar or vector.

DESCRIPTION

Returns the minimum of two same-typed scalars a and b or the respective components of two same-typed vectors a and b. The result is a three-component vector.

REFERENCE IMPLEMENTATION

min for float3 vectors could be implemented this way:
   float3 min(float3 a, float3 b)
   {
     return float3(a.x < b.x ? a.x : b.x, 
                   a.y < b.y ? a.y : b.y, 
                   a.z < b.z ? a.z : b.z);
   }
 
 
 

PROFILE SUPPORT

min is supported in all profiles. min is implemented as a compiler built-in.

Support in the fp20 is limited.

SEE ALSO

clamp, max