Name
trunc - returns largest integer not greater than a scalar or each vector component.
Synopsis
float trunc(float x); float1 trunc(float1 x); float2 trunc(float2 x); float3 trunc(float3 x); float4 trunc(float4 x); half trunc(half x); half1 trunc(half1 x); half2 trunc(half2 x); half3 trunc(half3 x); half4 trunc(half4 x); fixed trunc(fixed x); fixed1 trunc(fixed1 x); fixed2 trunc(fixed2 x); fixed3 trunc(fixed3 x); fixed4 trunc(fixed4 x);Parameters
- x
- Vector or scalar which to truncate.
Description
Returns the integral value nearest to but no larger in magnitude than x.
Reference Implementation
trunc for a float3 vector could be implemented like this.
float3 trunc(float3 v) { float3 rv; int i; for (i=0; i<3; i++) { float x = v[i]; rv[i] = x < 0 ? -floor(-x) : floor(x); } return rv; }Profile Support
trunc is supported in all profiles except fp20.
See Also