RenderScript 수학 상수 및 함수

개요

아래의 수학 함수를 스칼라와 벡터에 적용할 수 있습니다. 벡터에 적용된 경우 반환되는 값은 입력의 각 항목에 적용된 함수의 벡터입니다.

예를 들면 다음과 같습니다.
float3 a, b;
// The following call sets
// a.x to sin(b.x),
// a.y to sin(b.y), and
// a.z to sin(b.z).
a = sin(b);

대신 입력을 n차원 공간에서 단일 벡터로 해석하는 distance(), length() 등의 함수는 벡터 수학 함수를 참고하세요.

32비트 부동 소수점 수에서 수학 연산의 정밀도는 pragmas rs_fp_relaxed 및 rs_fp_full의 영향을 받습니다. rs_fp_relaxed에서는 비정상 값이 0으로 플러시되고 0에 가까운 반올림이 이루어질 수 있습니다. 이에 비해 rs_fp_full은 1.17549435e-38f보다 작은 비정규 값 값을 올바르게 처리해야 합니다. rs_fp_rull은 짝수에 연결된 가장 가까운 값으로 반올림해야 합니다.

일반적인 수학 함수의 변형을 사용하면 다양한 정밀도/속도 절충점을 달성할 수 있습니다. 이름이 다음으로 시작하는 함수

  • native_: 정확도가 낮은 맞춤 하드웨어 구현이 있을 수 있습니다. 또한 준정규 값은 0으로 플러시되고, 0을 향한 반올림을 사용할 수 있으며, NaN 및 무한대 입력이 올바르게 처리되지 않을 수 있습니다.
  • 절반_: 16비트 부동 소수점 수를 사용하여 내부 계산을 수행할 수 있습니다. 또한 비정규 값을 0으로 플러시하고 0을 향한 반올림을 사용할 수 있습니다.

요약

상수
M_1_PI(M_1_PI) 1 / pi, 32비트 부동 소수점 수
M_2_PI(M_2_PI) 2 / pi, 32비트 부동 소수점 수
M_2_SQRTPI 2 / sqrt(pi), 32비트 부동 소수점 수
월~일 e(32비트 부동 소수점 수)
M_LN10 드림 log_e(10), 32비트 부동 소수점 수
M_LN2 log_e(2), 32비트 부동 소수점 수
M_LOG10E log_10(e), 32비트 부동 소수점 수
M_LOG2E - log_2(e), 32비트 부동 소수점 수
M_PI pi(32비트 부동 소수점 수)
M_PI_2 pi / 2, 32비트 부동 소수점 수
M_PI_4 pi / 4(32비트 부동 소수점 수)
M_SQRT1_2 드림 1 / sqrt(2), 32비트 부동 소수점 수
M_SQRT2 sqrt(2), 32비트 부동 소수점 수
함수
절대 정수의 절댓값
acos 역 코사인
아코시 역 하이퍼볼릭 코사인
acospi 역 코사인을 파이로 나눈 값
아신 역 사인
아신 역 하이퍼볼릭 사인
아신피 파이로 나눈 역 사인
아탄 역탄젠트
아탄2 비율의 역 탄젠트
atan2pi 파이로 나눈 비율의 역 탄젠트
아탄 역 하이퍼볼릭 탄젠트
아탄피 역탄젠트를 파이로 나눈 값
cbrt 세제곱근
Ceil 값 이상의 최소 정수
클램프 값을 범위로 제한
CLZ 선행 0비트 수
copysign 숫자의 기호를 다른 숫자에 복사합니다.
cos 코사인
코시 하이페볼릭 코사인
Cospi 파이를 곱한 숫자의 코사인
학위 라디안을 각도로 변환합니다.
erf 수학 오류 함수
erfc 수학적 상보 오차 함수
지수 e를 숫자로 거듭제곱합니다.
실험10 10 배수
실험2 2 배수
지수1 e를 숫자로 거듭제곱합니다.
FAB 부동 소수점 수의 절댓값
fdim 두 값 간 양의 차이
바닥 값 이하의 정수 중 최솟값
fma 곱하기 및 더하기
fmax 최대 2개의 부동 소수점 수
fmin 최소 2개의 부동 소수점 수
fmod 모듈로
프랙트 양의 분수부
frexp 이진 가수와 지수
half_recip 16비트 정밀도로 역수 계산됨
half_rsqrt 16비트 정밀도로 계산된 제곱근의 역수
half_sqrt 16비트 정밀도로 계산된 제곱근
하이팟 빗변
ilogb 밑이 2입니다.
ldexp 가수와 지수로 부동 소수점을 만듭니다.
성소수자 감마 함수의 자연 로그
로그 자연 로그
로그10 밑이 10인 대수
log1p 1을 더한 값의 자연 로그
로그2 밑이 2인 대수
logb 밑이 2입니다.
화남 곱하기 및 더하기
최대 최대
최소
믹스 두 개의 값을 혼합합니다.
modf 적분 및 분수 구성요소
숫자가 아님
nan_half 숫자가 아님
native_acos 근사 역 코사인
native_acosh 근사 역 하이퍼볼릭 코사인
native_acospi 근사 역 코사인을 파이로 나눈 값
native_asin 근사 역 사인
native_asinh 대략적인 역 하이퍼볼릭 사인
native_asinpi 근사 역 사인을 파이로 나눈 값
native_atan 근사 역탄젠트
native_atan2 비율의 근사 역 탄젠트
native_atan2pi 파이로 나눈 비율의 근사 역 탄젠트
native_atanh 대략적인 역 하이퍼볼릭 탄젠트
native_atanpi 대략적인 역탄젠트를 파이로 나눈 값
native_cbrt 대략적인 세제곱근
native_cos 근사 코사인
native_cosh 대략적인 쌍곡선 코사인
native_cospi 파이를 곱한 숫자의 근사 코사인
native_divide 대략적인 나눗셈
native_exp 대략 e를 숫자로 거듭제곱합니다.
native_exp10 약 10배, 50%
native_exp2 약 2자리를 숫자로 거듭제곱합니다.
네이티브_expm1 대략적인 e를 숫자 빼기 1로 거듭제곱
네이티브_하이라이트 대략적인 빗변
native_log 근사 자연 로그
native_log10 밑이 10인 대수의 대략적인 값
native_log1p 1을 더한 값의 대략적인 자연 로그
native_log2 대략적인 밑이 2인 대수
native_powr 대략적인 양수를 지수로 거듭제곱합니다.
native_recip 근사 역수
native_rootn 근사 n제곱근
native_rsqrt 제곱근의 근사 역수
native_sin 근사 사인
native_sincos 근사 사인 및 코사인
native_sinh 대략적인 쌍곡선 사인
native_sinpi 파이를 곱한 숫자의 근사 사인
native_sqrt 대략적인 제곱근
native_tan 근사 탄젠트
native_tanh 대략적인 쌍곡선 탄젠트
native_tanpi 숫자에 파이를 곱한 근사 탄젠트
nextafter 다음 부동 소수점 숫자
아래 값을 지수로 거듭제곱합니다.
pown 밑을 정수 지수로 거듭제곱합니다.
파우어 양의 밑을 지수로 거듭제곱합니다.
라디안 각도를 라디안으로 변환합니다.
나머지 나눗셈의 나머지
remquo 나눗셈의 나머지와 몫
린트 짝수로 반올림
루팅 N제곱근
둥근 0에서 반올림하기
rsRand 유사 랜덤 숫자
rsqrt 제곱근의 역수
서명 값의 부호
사인 사인
싱코스 사인 및 코사인
싱어 하이퍼볼릭 사인(hyperbolic sine)
신피 파이를 곱한 숫자의 사인
sqrt 제곱근
걸음 값보다 작은 경우 0, 그렇지 않으면 1
황갈색 탄젠트
tanh 하이퍼볼릭 탄젠트
tanpi 파이를 곱한 숫자의 탄젠트
tgamma 감마 함수
trunc 부동 소수점 자르기
지원 중단된 함수
rsC램프 지원 중단되었습니다. 값을 범위로 제한
rsFrac 지원 중단되었습니다. 부동 소수점 수의 소수 부분을 반환합니다.

상수

M_1_PI : 1 / pi, 32비트 부동 소수점 수


값: 0.318309886183790671537767526745028724f

pi의 역으로, 32비트 부동 소수점 형식으로 되어 있습니다.

M_2_PI : 2 / pi, 32비트 부동 소수점 수


값: 0.636619772367581343075535053490057448f

2를 pi로 나눈 값으로, 32비트 부동 소수점 수입니다.

M_2_SQRTPI : 2 / sqrt(pi), 32비트 부동 소수점 수


값: 1.128379167095512573896158903121545172f

2를 파이의 제곱근으로 나눈 값입니다(32비트 부동 소수점 수).

M_E : e, 32비트 부동 소수점 수


값: 2.718281828459045235360287471352662498f

숫자 e(32비트 부동 소수점 수)의 밑이 되는 자연 로그입니다.

M_LN10 : log_e(10), 32비트 부동 소수점 수


값: 2.302585092994045684017991454684364208f

10의 자연 로그로, 32비트 부동 소수점으로 표현됩니다.

M_LN2 : log_e(2), 32비트 부동 소수점 수


값: 0.693147180559945309417232121458176568f

2의 자연 로그로, 32비트 부동 소수점입니다.

M_LOG10E : log_10(e), 32비트 부동 소수점 수


값: 0.434294481903251827651128918916605082f

e에 대해 10을 밑으로 하는 로그로, 32비트 부동 소수점입니다.

M_LOG2E : log_2(e), 32비트 부동 소수점 수


값: 1.442695040888963407359924681001892137f

e를 밑으로 하는 로그로 32비트 부동 소수점 형식으로 되어 있습니다.

M_PI : pi, 32비트 부동 소수점 수


값: 3.141592653589793238462643383279502884f

상수 pi(32비트 부동 소수점 수)

M_PI_2 : pi / 2, 32비트 부동 소수점 수


값: 1.570796326794896619231321691639751442f

Pi를 2로 나눈 값은 32비트 부동 소수점 수입니다.

M_PI_4 : pi / 4, 32비트 부동 소수점 수


값: 0.785398163397448309615660845819875721f

Pi를 4로 나눈 값으로, 32비트 부동 소수점 수입니다.

M_SQRT1_2 : 1 / sqrt(2), 32비트 부동 소수점 수


값: 0.707106781186547524400844362104849039f

2의 제곱근을 32비트 부동 소수점으로 나타낸 역입니다.

M_SQRT2 : sqrt(2), 32비트 부동 소수점 수


값: 1.414213562373095048801688724209698079f

2의 제곱근으로, 32비트 부동 소수점입니다.

함수

abs : 정수의 절댓값

uchar abs(char v);
uchar2 abs(char2 v);
uchar3 abs(char3 v);
uchar4 abs(char4 v);
uint abs(int v);
uint2 abs(int2 v);
uint3 abs(int3 v);
uint4 abs(int4 v);
ushort abs(short v);
ushort2 abs(short2 v);
ushort3 abs(short3 v);
ushort4 abs(short4 v);

정수의 절댓값을 반환합니다.

부동 소수점 수의 경우 fabs()를 사용하세요.

acos : 역 코사인

float acos(float v);
float2 acos(float2 v);
float3 acos(float3 v);
float4 acos(float4 v);
half acos(half v); API 수준 24에 추가되었습니다.
half2 acos(half2 v); API 수준 24에 추가되었습니다.
half3 acos(half3 v); API 수준 24에 추가되었습니다.
half4 acos(half4 v); API 수준 24에 추가되었습니다.

역 코사인(라디안)을 반환합니다.

native_acos()도 참조하세요.

acosh : 역 하이퍼볼릭 코사인

float acosh(float v);
float2 acosh(float2 v);
float3 acosh(float3 v);
float4 acosh(float4 v);
half acosh(half v); API 수준 24에 추가되었습니다.
half2 acosh(half2 v); API 수준 24에 추가되었습니다.
half3 acosh(half3 v); API 수준 24에 추가되었습니다.
half4 acosh(half4 v); API 수준 24에 추가되었습니다.

역 하이퍼볼릭 코사인(라디안)을 반환합니다.

native_acosh()도 참조하세요.

acospi : 역 코사인을 pi로 나눈 값

float acospi(float v);
float2 acospi(float2 v);
float3 acospi(float3 v);
float4 acospi(float4 v);
half acospi(half v); API 수준 24에 추가되었습니다.
half2 acospi(half2 v); API 수준 24에 추가되었습니다.
half3 acospi(half3 v); API 수준 24에 추가되었습니다.
half4 acospi(half4 v); API 수준 24에 추가되었습니다.

파이로 나눈 라디안 단위의 역 코사인 값을 반환합니다.

역 코사인을 도 단위로 측정하려면 acospi(a) * 180.f을 사용합니다.

native_acospi()도 참조하세요.

asin : 역 사인

float asin(float v);
float2 asin(float2 v);
float3 asin(float3 v);
float4 asin(float4 v);
half asin(half v); API 수준 24에 추가되었습니다.
half2 asin(half2 v); API 수준 24에 추가되었습니다.
half3 asin(half3 v); API 수준 24에 추가되었습니다.
half4 asin(half4 v); API 수준 24에 추가되었습니다.

역 사인을 라디안 단위로 반환합니다.

native_asin()도 참조하세요.

아신 : 역 하이퍼볼릭 사인

float asinh(float v);
float2 asinh(float2 v);
float3 asinh(float3 v);
float4 asinh(float4 v);
half asinh(half v); API 수준 24에 추가되었습니다.
half2 asinh(half2 v); API 수준 24에 추가되었습니다.
half3 asinh(half3 v); API 수준 24에 추가되었습니다.
half4 asinh(half4 v); API 수준 24에 추가되었습니다.

역 하이퍼볼릭 사인을 라디안 단위로 반환합니다.

native_asinh()도 참고하세요.

asinpi : 역 사인을 pi로 나눈 값

float asinpi(float v);
float2 asinpi(float2 v);
float3 asinpi(float3 v);
float4 asinpi(float4 v);
half asinpi(half v); API 수준 24에 추가되었습니다.
half2 asinpi(half2 v); API 수준 24에 추가되었습니다.
half3 asinpi(half3 v); API 수준 24에 추가되었습니다.
half4 asinpi(half4 v); API 수준 24에 추가되었습니다.

파이로 나눈 역 사인(라디안 단위)을 반환합니다.

역 사인을 도 단위로 측정하려면 asinpi(a) * 180.f을 사용합니다.

native_asinpi()도 참조하세요.

atan : 역탄젠트

float atan(float v);
float2 atan(float2 v);
float3 atan(float3 v);
float4 atan(float4 v);
half atan(half v); API 수준 24에 추가되었습니다.
half2 atan(half2 v); API 수준 24에 추가되었습니다.
half3 atan(half3 v); API 수준 24에 추가되었습니다.
half4 atan(half4 v); API 수준 24에 추가되었습니다.

역 탄젠트(라디안)를 반환합니다.

native_atan()도 참조하세요.

atan2 : 비율의 역 탄젠트

float atan2(float numerator, float 분모);
float2 atan2(float2 분자, float2 분모);
float3 atan2(float3 분자, float3 분모);
float4 atan2(float4 분자, float4 분모);
half atan2(half 분자, half 분모); API 수준 24에 추가되었습니다.
half2 atan2(half2 분자, half2 분모); API 수준 24에 추가되었습니다.
half3 atan2(half3 분자, half3 분모); API 수준 24에 추가되었습니다.
half4 atan2(half4 분자, half4 분모); API 수준 24에 추가되었습니다.
매개변수
분자분자.
분모분모입니다. 0일 수 있습니다.

(numerator / denominator)의 역 탄젠트를 라디안으로 반환합니다.

native_atan2()도 참조하세요.

atan2pi : pi로 나눈 비율의 역 탄젠트

float atan2pi(float numerator, float 분모);
float2 atan2pi(float2 분자, float2 분모);
float3 atan2pi(float3 분자, float3 분모);
float4 atan2pi(float4 분자, float4 분모);
half atan2pi(half 분자, half 분모); API 수준 24에 추가되었습니다.
half2 atan2pi(half2 분자, half2 분모); API 수준 24에 추가되었습니다.
half3 atan2pi(half3 분자, half3 분모); API 수준 24에 추가되었습니다.
half4 atan2pi(half4 분자, half4 분모); API 수준 24에 추가되었습니다.
매개변수
분자분자.
분모분모입니다. 0일 수 있습니다.

파이로 나눈 (numerator / denominator)의 역 탄젠트(라디안)를 반환합니다.

도 단위로 측정된 역 탄젠트를 가져오려면 atan2pi(n, d) * 180.f을 사용합니다.

native_atan2pi()도 참조하세요.

아탄 : 역 하이퍼볼릭 탄젠트

float atanh(float v);
float2 atanh(float2 v);
float3 atanh(float3 v);
float4 atanh(float4 v);
half atanh(half v); API 수준 24에 추가되었습니다.
half2 atanh(half2 v); API 수준 24에 추가되었습니다.
half3 atanh(half3 v); API 수준 24에 추가되었습니다.
half4 atanh(half4 v); API 수준 24에 추가되었습니다.

역 하이퍼볼릭 탄젠트를 라디안으로 반환합니다.

native_atanh()도 참조하세요.

atanpi : 역탄젠트를 pi로 나눈 값

float atanpi(float v);
float2 atanpi(float2 v);
float3 atanpi(float3 v);
float4 atanpi(float4 v);
half atanpi(half v); API 수준 24에 추가되었습니다.
half2 atanpi(half2 v); API 수준 24에 추가되었습니다.
half3 atanpi(half3 v); API 수준 24에 추가되었습니다.
half4 atanpi(half4 v); API 수준 24에 추가되었습니다.

역 탄젠트(라디안)를 pi로 나눈 값을 반환합니다.

도 단위로 측정된 역 탄젠트를 가져오려면 atanpi(a) * 180.f을 사용합니다.

native_atanpi()도 참조하세요.

cbrt : 큐브 루트

float cbrt(float v);
float2 cbrt(float2 v);
float3 cbrt(float3 v);
float4 cbrt(float4 v);
half cbrt(half v); API 수준 24에 추가되었습니다.
half2 cbrt(half2 v); API 수준 24에 추가되었습니다.
half3 cbrt(half3 v); API 수준 24에 추가되었습니다.
half4 cbrt(half4 v); API 수준 24에 추가되었습니다.

세제곱근을 반환합니다.

native_cbrt()도 참고하세요.

ceil : 값 이상의 정수 중 가장 작은 정수

float ceil(float v);
float2 ceil(float2 v);
float3 ceil(float3 v);
float4 ceil(float4 v);
half ceil(half v); API 수준 24에 추가되었습니다.
half2 ceil(half2 v); API 수준 24에 추가되었습니다.
half3 ceil(half3 v); API 수준 24에 추가되었습니다.
half4 ceil(half4 v); API 수준 24에 추가되었습니다.

값 이상의 정수 중 가장 작은 정수를 반환합니다.

예를 들어 ceil(1.2f)는 2.f를 반환하고 ceil(-1.2f)는 -1.f를 반환합니다.

floor()도 참고하세요.

clamp : 값을 범위로 제한

char clamp(char value, char min_value, char max_value); API 수준 19에 추가되었습니다.
char2 clamp(char2 value, char min_value, char max_value); API 수준 19에 추가되었습니다.
char2 clamp(char2 값, char2 min_value, char2 max_value); API 수준 19에 추가되었습니다.
char3 clamp(char3 value, char min_value, char max_value); API 수준 19에 추가되었습니다.
char3 clamp(char3 값, char3 min_value, char3 max_value); API 수준 19에 추가되었습니다.
char4 clamp(char4 value, char min_value, char max_value); API 수준 19에 추가되었습니다.
char4 clamp(char4 값, char4 min_value, char4 max_value); API 수준 19에 추가되었습니다.
float clamp(float value, float min_value, float max_value);
float2 clamp(float2 value, float min_value, float max_value);
float2 clamp(float2 값, float2 min_value, float2 max_value);
float3 clamp(float3 value, float min_value, float max_value);
float3 clamp(float3 값, float3 min_value, float3 max_value);
float4 clamp(float4 value, float min_value, float max_value);
float4 clamp(float4 value, float4 min_value, float4 max_value);
half clamp(half 값, half min_value, half max_value); API 수준 24에 추가되었습니다.
half2 clamp(half2 값, half min_value, half max_value); API 수준 24에 추가되었습니다.
half2 clamp(half2 값, half2 min_value, half2 max_value); API 수준 24에 추가되었습니다.
half3 clamp(half3 값, half min_value, half max_value); API 수준 24에 추가되었습니다.
half3 clamp(half3 값, half3 min_value, half3 max_value); API 수준 24에 추가되었습니다.
half4 clamp(half4 값, half min_value, half max_value); API 수준 24에 추가되었습니다.
half4 clamp(half4 값, half4 min_value, half4 max_value); API 수준 24에 추가되었습니다.
int clamp(int value, int min_value, int max_value); API 수준 19에 추가되었습니다.
int2 clamp(int2 value, int min_value, int max_value); API 수준 19에 추가되었습니다.
int2 clamp(int2 value, int2 min_value, int2 max_value); API 수준 19에 추가되었습니다.
int3 clamp(int3 value, int min_value, int max_value); API 수준 19에 추가되었습니다.
int3 clamp(int3 value, int3 min_value, int3 max_value); API 수준 19에 추가되었습니다.
int4 clamp(int4 value, int min_value, int max_value); API 수준 19에 추가되었습니다.
int4 clamp(int4 value, int4 min_value, int4 max_value); API 수준 19에 추가되었습니다.
long clamp(long value, long min_value, long max_value); API 수준 19에 추가되었습니다.
long2 clamp(long2 value, long min_value, long max_value); API 수준 19에 추가되었습니다.
long2 clamp(long2 value, long2 min_value, long2 max_value); API 수준 19에 추가되었습니다.
long3 clamp(long3 value, long min_value, long max_value); API 수준 19에 추가되었습니다.
long3 clamp(long3 value, long3 min_value, long3 max_value); API 수준 19에 추가되었습니다.
long4 clamp(long4 value, long min_value, long max_value); API 수준 19에 추가되었습니다.
long4 clamp(long4 value, long4 min_value, long4 max_value); API 수준 19에 추가되었습니다.
short clamp(short value, short min_value, short max_value); API 수준 19에 추가되었습니다.
short2 clamp(short2 value, short min_value, short max_value); API 수준 19에 추가되었습니다.
short2 clamp(short2 값, short2 min_value, short2 max_value); API 수준 19에 추가되었습니다.
short3 clamp(short3 value, short min_value, short max_value); API 수준 19에 추가되었습니다.
short3 clamp(short3 값, short3 min_value, short3 max_value); API 수준 19에 추가되었습니다.
short4 clamp(short4 value, short min_value, short max_value); API 수준 19에 추가되었습니다.
short4 clamp(short4 값, short4 min_value, short4 max_value); API 수준 19에 추가되었습니다.
uchar clamp(uchar 값, uchar min_value, uchar max_value); API 수준 19에 추가되었습니다.
uchar2 clamp(uchar2 값, uchar min_value, uchar max_value); API 수준 19에 추가되었습니다.
uchar2 clamp(uchar2 값, uchar2 min_value, uchar2 max_value); API 수준 19에 추가되었습니다.
uchar3 clamp(uchar3 값, uchar min_value, uchar max_value); API 수준 19에 추가되었습니다.
uchar3 clamp(uchar3 값, uchar3 min_value, uchar3 max_value); API 수준 19에 추가되었습니다.
uchar4 clamp(uchar4 값, uchar min_value, uchar max_value); API 수준 19에 추가되었습니다.
uchar4 clamp(uchar4 값, uchar4 min_value, uchar4 max_value); API 수준 19에 추가되었습니다.
uint clamp(uint 값, uint min_value, uint max_value); API 수준 19에 추가되었습니다.
uint2 clamp(uint2 value, uint min_value, uint max_value); API 수준 19에 추가되었습니다.
uint2 clamp(uint2 값, uint2 min_value, uint2 max_value); API 수준 19에 추가되었습니다.
uint3 clamp(uint3 값, uint min_value, uint max_value); API 수준 19에 추가되었습니다.
uint3 clamp(uint3 값, uint3 min_value, uint3 max_value); API 수준 19에 추가되었습니다.
uint4 clamp(uint4 value, uint min_value, uint max_value); API 수준 19에 추가되었습니다.
uint4 clamp(uint4 value, uint4 min_value, uint4 max_value); API 수준 19에 추가되었습니다.
ulong clamp(ulong value, ulong min_value, ulong max_value); API 수준 19에 추가되었습니다.
ulong2 clamp(ulong2 value, ulong min_value, ulong max_value); API 수준 19에 추가되었습니다.
ulong2 clamp(ulong2 value, ulong2 min_value, ulong2 max_value); API 수준 19에 추가되었습니다.
ulong3 clamp(ulong3 value, ulong min_value, ulong max_value); API 수준 19에 추가되었습니다.
ulong3 clamp(ulong3 value, ulong3 min_value, ulong3 max_value); API 수준 19에 추가되었습니다.
ulong4 clamp(ulong4 value, ulong min_value, ulong max_value); API 수준 19에 추가되었습니다.
ulong4 clamp(ulong4 value, ulong4 min_value, ulong4 max_value); API 수준 19에 추가되었습니다.
ushort clamp(ushort 값, ushort min_value, ushort max_value); API 수준 19에 추가되었습니다.
ushort2 clamp(ushort2 값, ushort min_value, ushort max_value); API 수준 19에 추가되었습니다.
ushort2 clamp(ushort2 값, ushort2 min_value, ushort2 max_value); API 수준 19에 추가되었습니다.
ushort3 clamp(ushort3 값, ushort min_value, ushort max_value); API 수준 19에 추가되었습니다.
ushort3 clamp(ushort3 값, ushort3 min_value, ushort3 max_value); API 수준 19에 추가되었습니다.
ushort4 clamp(ushort4 값, ushort min_value, ushort max_value); API 수준 19에 추가되었습니다.
ushort4 clamp(ushort4 값, ushort4 min_value, ushort4 max_value); API 수준 19에 추가되었습니다.
매개변수
value고정할 값입니다.
최소_값하한값, 스칼라 또는 일치 벡터
최댓값상한값, 하한값 유형과 일치해야 합니다.

값을 지정된 상한값 및 하한값으로 고정합니다. clamp()는 값이 min_value보다 작으면 min_value를, 값이 max_value보다 클 경우 max_value를 반환하고 그렇지 않으면 값을 반환합니다.

클램프에는 두 가지 변형이 있습니다. 하나는 최솟값과 최댓값이 모든 값의 항목에 적용되는 스칼라이고, 다른 하나에서는 최솟값과 최댓값이 벡터인 경우입니다.

min_value가 max_value보다 크면 결과가 정의되지 않습니다.

clz : 선행 0비트 수

char clz(char value);
char2 clz(char2 값);
char3 clz(char3 값);
char4 clz(char4 value);
int clz(int value);
int2 clz(int2 value);
int3 clz(int3 value);
int4 clz(int4 value);
short clz(short value);
short2 clz(short2 value);
short3 clz(short3 value);
short4 clz(short4 value);
uchar clz(uchar value);
uchar2 clz(uchar2 value);
uchar3 clz(uchar3 value);
uchar4 clz(uchar4 value);
uint clz(uint value);
uint2 clz(uint2 value);
uint3 clz(uint3 value);
uint4 clz(uint4 value);
ushort clz(ushort value);
ushort2 clz(ushort2 value);
ushort3 clz(ushort3 value);
ushort4 clz(ushort4 value);

값의 선행 0비트 수를 반환합니다.

예를 들어 clz((char)0x03)는 6을 반환합니다.

copysign : 특정 숫자의 기호를 다른 숫자의 부호를 복사합니다.

float copysign(float magnitude_value, float sign_value);
float2 copysign(float2 magnitude_value, float2 sign_value);
float3 copysign(float3 magnitude_value, float3 sign_value);
float4 copysign(float4 magnitude_value, float4 sign_value);
half copysign(half magnitude_value, half sign_value); API 수준 24에 추가되었습니다.
half2 copysign(half2 magnitude_value, half2 sign_value); API 수준 24에 추가되었습니다.
half3 copysign(half3 magnitude_value, half3 sign_value); API 수준 24에 추가되었습니다.
half4 copysign(half4 magnitude_value, half4 sign_value); API 수준 24에 추가되었습니다.

sign_value에서 magnitude_value로 부호를 복사합니다.

반환되는 값은 magnitude_value 또는 -magnitude_value입니다.

예를 들어 copysign(4.0f, -2.7f)는 -4.0f를 반환하고 copysign(-4.0f, 2.7f)는 4.0f를 반환합니다.

cos : 코사인

float cos(float v);
float2 cos(float2 v);
float3 cos(float3 v);
float4 cos(float4 v);
half cos(half v); API 수준 24에 추가되었습니다.
half2 cos(half2 v); API 수준 24에 추가되었습니다.
half3 cos(half3 v); API 수준 24에 추가되었습니다.
half4 cos(half4 v); API 수준 24에 추가되었습니다.

라디안으로 측정된 각도의 코사인을 반환합니다.

native_cos()도 참조하세요.

cosh : 하이페볼릭 코사인

float cosh(float v);
float2 cosh(float2 v);
float3 cosh(float3 v);
float4 cosh(float4 v);
half cosh(half v); API 수준 24에 추가되었습니다.
half2 cosh(half2 v); API 수준 24에 추가되었습니다.
half3 cosh(half3 v); API 수준 24에 추가되었습니다.
half4 cosh(half4 v); API 수준 24에 추가되었습니다.

v의 쌍곡선 코사인을 반환합니다. 여기서 v는 라디안으로 측정됩니다.

native_cosh()도 참조하세요.

cospi : pi를 곱한 숫자의 코사인

float cospi(float v);
float2 cospi(float2 v);
float3 cospi(float3 v);
float4 cospi(float4 v);
half cospi(half v); API 수준 24에 추가되었습니다.
half2 cospi(half2 v); API 수준 24에 추가되었습니다.
half3 cospi(half3 v); API 수준 24에 추가되었습니다.
half4 cospi(half4 v); API 수준 24에 추가되었습니다.

(v * pi)의 코사인을 반환합니다. 여기서 (v * pi)는 라디안으로 측정됩니다.

도 단위로 측정된 값의 코사인을 가져오려면 cospi(v / 180.f)를 호출합니다.

native_cospi()도 참고하세요.

: 라디안을 도 단위로 변환합니다.

float degrees(float v);
float2 degrees(float2 v);
float3 degrees(float3 v);
float4 degrees(float4 v);
half degrees(half v); API 수준 24에 추가되었습니다.
half2 degrees(half2 v); API 수준 24에 추가되었습니다.
half3 degrees(half3 v); API 수준 24에 추가되었습니다.
half4 degrees(half4 v); API 수준 24에 추가되었습니다.

라디안에서 각도로 변환합니다.

erf : 수학 오류 함수

float erf(float v);
float2 erf(float2 v);
float3 erf(float3 v);
float4 erf(float4 v);
half erf(half v); API 수준 24에 추가되었습니다.
half2 erf(half2 v); API 수준 24에 추가되었습니다.
half3 erf(half3 v); API 수준 24에 추가되었습니다.
half4 erf(half4 v); API 수준 24에 추가되었습니다.

오류 함수를 반환합니다.

erfc : 수학적 상보 오차 함수

float erfc(float v);
float2 erfc(float2 v);
float3 erfc(float3 v);
float4 erfc(float4 v);
half erfc(half v); API 수준 24에 추가되었습니다.
half2 erfc(half2 v); API 수준 24에 추가되었습니다.
half3 erfc(half3 v); API 수준 24에 추가되었습니다.
half4 erfc(half4 v); API 수준 24에 추가되었습니다.

상보 오차 함수를 반환합니다.

exp : e를 숫자로 거듭제곱

float exp(float v);
float2 exp(float2 v);
float3 exp(float3 v);
float4 exp(float4 v);
half exp(half v); API 수준 24에 추가되었습니다.
half2 exp(half2 v); API 수준 24에 추가되었습니다.
half3 exp(half3 v); API 수준 24에 추가되었습니다.
half4 exp(half4 v); API 수준 24에 추가되었습니다.

e를 v로 거듭제곱한 e를 반환합니다. 즉, e ^ v를 반환합니다.

native_exp()도 참조하세요.

exp10 : 10을 숫자로 거듭제곱

float exp10(float v);
float2 exp10(float2 v);
float3 exp10(float3 v);
float4 exp10(float4 v);
half exp10(half v); API 수준 24에 추가되었습니다.
half2 exp10(half2 v); API 수준 24에 추가되었습니다.
half3 exp10(half3 v); API 수준 24에 추가되었습니다.
half4 exp10(half4 v); API 수준 24에 추가되었습니다.

v로 거듭제곱한 10을 반환합니다. 즉, 10.f ^ v를 반환합니다.

native_exp10()도 참조하세요.

exp2 : 2를 숫자로 거듭제곱

float exp2(float v);
float2 exp2(float2 v);
float3 exp2(float3 v);
float4 exp2(float4 v);
half exp2(half v); API 수준 24에 추가되었습니다.
half2 exp2(half2 v); API 수준 24에 추가되었습니다.
half3 exp2(half3 v); API 수준 24에 추가되었습니다.
half4 exp2(half4 v); API 수준 24에 추가되었습니다.

v로 거듭제곱한 2를 반환합니다. 즉, 2.f ^ v를 반환합니다.

native_exp2()도 참조하세요.

expm1 : e를 숫자 빼기 1로 거듭제곱

float expm1(float v);
float2 expm1(float2 v);
float3 expm1(float3 v);
float4 expm1(float4 v);
half expm1(half v); API 수준 24에 추가되었습니다.
half2 expm1(half2 v); API 수준 24에 추가되었습니다.
half3 expm1(half3 v); API 수준 24에 추가되었습니다.
half4 expm1(half4 v); API 수준 24에 추가되었습니다.

v - 1로 거듭제곱한 e를 반환합니다. 즉, (e ^ v) - 1을 반환합니다.

native_expm1()도 참조하세요.

fabs : 부동 소수점 수의 절댓값

float fabs(float v);
float2 fabs(float2 v);
float3 fabs(float3 v);
float4 fabs(float4 v);
half fabs(half v); API 수준 24에 추가되었습니다.
half2 fabs(half2 v); API 수준 24에 추가되었습니다.
half3 fabs(half3 v); API 수준 24에 추가되었습니다.
half4 fabs(half4 v); API 수준 24에 추가되었습니다.

부동 소수점 v의 절댓값을 반환합니다.

정수의 경우 abs()를 사용하세요.

fdim : 두 값의 양의 차이

float fdim(float a, float b);
float2 fdim(float2 a, float2 b);
float3 fdim(float3 a, float3 b);
float4 fdim(float4 a, float4 b);
half fdim(half a, half b); API 수준 24에 추가되었습니다.
half2 fdim(half2 a, half2 b); API 수준 24에 추가되었습니다.
half3 fdim(half3 a, half3 b); API 수준 24에 추가되었습니다.
half4 fdim(half4 a, half4 b); API 수준 24에 추가되었습니다.

두 값 사이의 양의 차이를 반환합니다.

a > b인 경우 (a - b)를 반환하고 그렇지 않으면 0f를 반환합니다.

floor : 값 이하의 정수 중 가장 작은 정수

float 바닥(float v);
float2 floor(float2 v);
float3 바닥(float3 v);
float4 바닥(float4 v);
half floor(half v); API 수준 24에 추가되었습니다.
half2 floor(half2 v); API 수준 24에 추가되었습니다.
half3 floor(half3 v); API 수준 24에 추가되었습니다.
half4 floor(half4 v); API 수준 24에 추가되었습니다.

값보다 크지 않은 최소 정수를 반환합니다.

예를 들어 floor(1.2f)는 1.f를 반환하고 floor(-1.2f)는 -2.f를 반환합니다.

ceil()도 참고하세요.

fma : 곱셈 및 덧셈

float fma(float multiplicand1, float multiplicand2, float offset);
float2 fma(float2 multiplicand1, float2 multiplicand2, float2 offset);
float3 fma(float3 multiplicand1, float3 multiplicand2, float3 offset);
float4 fma(float4 multiplicand1, float4 multiplicand2, float4 offset);
half fma(half multiplicand1, half multiplicand2, half offset); API 수준 24에 추가되었습니다.
half2 fma(half2 multiplicand1, half2 multiplicand2, half2 offset); API 수준 24에 추가되었습니다.
half3 fma(half3 multiplicand1, half3 multiplicand2, half3 offset); API 수준 24에 추가되었습니다.
half4 fma(half4 multiplicand1, half4 multiplicand2, half4 offset); API 수준 24에 추가되었습니다.

곱셈과 덧셈. (multiplicand1 * multiplicand2) + offset를 반환합니다.

이 함수는 mad()와 유사합니다. fma()는 곱한 결과의 전체 정밀도를 유지하며 덧셈 후에만 반올림합니다. mad()는 곱셈과 덧셈 후에 반올림합니다. rs_fp_relaxed 모드에서는 이러한 추가 정밀도가 보장되지 않습니다.

fmax : 최대 부동 소수점 수 2개

float fmax(float a, float b);
float2 fmax(float2 a, float b);
float2 fmax(float2 a, float2 b);
float3 fmax(float3 a, float b);
float3 fmax(float3 a, float3 b);
float4 fmax(float4 a, float b);
float4 fmax(float4 a, float4 b);
half fmax(half a, half b); API 수준 24에 추가되었습니다.
half2 fmax(half2 a, half b); API 수준 24에 추가되었습니다.
half2 fmax(half2 a, half2 b); API 수준 24에 추가되었습니다.
half3 fmax(half3 a, half b); API 수준 24에 추가되었습니다.
half3 fmax(half3 a, half3 b); API 수준 24에 추가되었습니다.
half4 fmax(half4 a, half b); API 수준 24에 추가되었습니다.
half4 fmax(half4 a, half4 b); API 수준 24에 추가되었습니다.

a와 b의 최댓값(예: (a < b ? b : a))을 반환합니다.

max() 함수는 동일한 결과를 반환하지만 더 많은 데이터 유형에 적용할 수 있습니다.

fmin : 최소 2개의 부동 소수점 수

float fmin(float a, float b);
float2 fmin(float2 a, float b);
float2 fmin(float2 a, float2 b);
float3 fmin(float3 a, float b);
float3 fmin(float3 a, float3 b);
float4 fmin(float4 a, float b);
float4 fmin(float4 a, float4 b);
half fmin(half a, half b); API 수준 24에 추가되었습니다.
half2 fmin(half2 a, half b); API 수준 24에 추가되었습니다.
half2 fmin(half2 a, half2 b); API 수준 24에 추가되었습니다.
half3 fmin(half3 a, half b); API 수준 24에 추가되었습니다.
half3 fmin(half3 a, half3 b); API 수준 24에 추가되었습니다.
half4 fmin(half4 a, half b); API 수준 24에 추가되었습니다.
half4 fmin(half4 a, half4 b); API 수준 24에 추가되었습니다.

a와 b의 최솟값(예: (a > b ? b : a))을 반환합니다.

min() 함수는 동일한 결과를 반환하지만 더 많은 데이터 유형에 적용할 수 있습니다.

fmod : 모듈로

float fmod(float numerator, float 분모);
float2 fmod(float2 분자, float2 분모);
float3 fmod(float3 분자, float3 분모);
float4 fmod(float4 분자, float4 분모);
half fmod(half 분자, half 분모); API 수준 24에 추가되었습니다.
half2 fmod(half2 분자, half2 분모); API 수준 24에 추가되었습니다.
half3 fmod(half3 분자, half3 분모); API 수준 24에 추가되었습니다.
half4 fmod(half4 분자, half4 분모); API 수준 24에 추가되었습니다.

(분자 / 분모)의 나머지 부분을 반환합니다. 여기서 몫은 0에 가까운 자리수로 반올림됩니다.

remainder() 함수는 비슷하지만 가장 가까운 정수로 반올림됩니다. 예를 들어 fmod(-3.8f, 2.f)는 -1.8f (-3.8f - -1.f * 2.f)를 반환하고 remainder(-3.8f, 2.f)는 0.2f (-3.8f - -2.f * 2.f)를 반환합니다.

프랙트 : 양의 분수

float fract(float v);
float fract(float v, float* floor);
float2 fract(float2 v);
float2 fract(float2 v, float2* floor);
float3 fract(float3 v);
float3 fract(float3 v, float3* floor);
float4 fract(float4 v);
float4 fract(float4 v, float4* floor);
half fract(half v); API 수준 24에 추가되었습니다.
half fract(half v, half* floor); API 수준 24에 추가되었습니다.
half2 fract(half2 v); API 수준 24에 추가되었습니다.
half2 fract(half2 v, half2* floor); API 수준 24에 추가되었습니다.
half3 fract(half3 v); API 수준 24에 추가되었습니다.
half3 fract(half3 v, half3* floor); API 수준 24에 추가되었습니다.
half4 fract(half4 v); API 수준 24에 추가되었습니다.
half4 fract(half4 v, half4* floor); API 수준 24에 추가되었습니다.
매개변수
v입력 값입니다.
하한선이 null이 아니면 *층은 v의 층으로 설정됩니다.

v의 양의 소수 부분을 반환합니다(예: v - floor(v)).

예를 들어 fract(1.3f, &val)는 0.3f를 반환하고 val을 1.f로 설정합니다. fract(-1.3f, &val)는 0.7f를 반환하고 val을 -2.f로 설정합니다.

frexp : 바이너리 가수와 지수

float frexp(float v, int* exponent);
float2 frexp(float2 v, int2* exponent);
float3 frexp(float3 v, int3* exponent);
float4 frexp(float4 v, int4* exponent);
half frexp(half v, int* exponent); API 수준 24에 추가되었습니다.
half2 frexp(half2 v, int2* 지수); API 수준 24에 추가되었습니다.
half3 frexp(half3 v, int3* 지수); API 수준 24에 추가되었습니다.
half4 frexp(half4 v, int4* exponent); API 수준 24에 추가되었습니다.
매개변수
v입력 값입니다.
지수지수가 null이 아니면 *지수는 v의 지수로 설정됩니다.

v의 이진 가수와 지수를 반환합니다(예: v == mantissa * 2 ^ exponent).

가수는 항상 0.5 (포함)와 1.0 (제외) 사이입니다.

역순 연산은 ldexp()를 참고하세요. logb() 및 ilogb()도 참조하세요.

half_recip : 16비트 정밀도로 역수 계산됨

float half_recip(float v); API 수준 17에 추가되었습니다.
float2 half_recip(float2 v); API 수준 17에 추가되었습니다.
float3 half_recip(float3 v); API 수준 17에 추가되었습니다.
float4 half_recip(float4 v); API 수준 17에 추가되었습니다.

값의 근사치 역수를 반환합니다.

정밀도는 16비트 부동 소수점 값의 정밀도입니다.

native_recip()도 참조하세요.

half_rsqrt : 16비트 정밀도로 계산된 제곱근의 역수

float half_rsqrt(float v); API 수준 17에 추가되었습니다.
float2 half_rsqrt(float2 v); API 수준 17에 추가되었습니다.
float3 half_rsqrt(float3 v); API 수준 17에 추가되었습니다.
float4 half_rsqrt(float4 v); API 수준 17에 추가되었습니다.

(1.f / sqrt(value))의 근사치 값을 반환합니다.

정밀도는 16비트 부동 소수점 값의 정밀도입니다.

rsqrt(), native_rsqrt()도 참고하세요.

half_sqrt : 16비트 정밀도로 계산된 제곱근

float half_sqrt(float v); API 수준 17에 추가되었습니다.
float2 half_sqrt(float2 v); API 수준 17에 추가되었습니다.
float3 half_sqrt(float3 v); API 수준 17에 추가되었습니다.
float4 half_sqrt(float4 v); API 수준 17에 추가되었습니다.

값의 근사치 제곱근을 반환합니다.

정밀도는 16비트 부동 소수점 값의 정밀도입니다.

sqrt(), native_sqrt()도 참고하세요.

hypot : 빗변

float hypot(float a, float b);
float2 hypot(float2 a, float2 b);
float3 hypot(float3 a, float3 b);
float4 hypot(float4 a, float4 b);
half hypot(half a, half b); API 수준 24에 추가되었습니다.
half2 hypot(half2 a, half2 b); API 수준 24에 추가되었습니다.
half3 hypot(half3 a, half3 b); API 수준 24에 추가되었습니다.
half4 hypot(half4 a, half4 b); API 수준 24에 추가되었습니다.

빗변을 반환합니다(예: sqrt(a * a + b * b)).

native_hypot()도 참조하세요.

ilogb : 2진 지수

int ilogb(float v);
int ilogb(half v); API 수준 24에 추가되었습니다.
int2 ilogb(float2 v);
int2 ilogb(half2 v); API 수준 24에 추가되었습니다.
int3 ilogb(float3 v);
int3 ilogb(half3 v); API 수준 24에 추가되었습니다.
int4 ilogb(float4 v);
int4 ilogb(half4 v); API 수준 24에 추가되었습니다.

가수가 1.f (포함)에서 2.f (제외)인 값의 밑 2 지수를 반환합니다.

예를 들어 ilogb(8.5f)는 3을 반환합니다.

가수의 차이로 인해 이 숫자는 frexp()에서 반환하는 것보다 1 적습니다.

logb()도 비슷하지만 부동 소수점 수를 반환합니다.

ldexp : 가수와 지수로 부동 소수점을 만듭니다.

float ldexp(float mantissa, int exponent);
float2 ldexp(float2 mantissa, int exponent);
float2 ldexp(float2 mantissa, int2 exponent);
float3 ldexp(float3 mantissa, int exponent);
float3 ldexp(float3 mantissa, int3 exponent);
float4 ldexp(float4 mantissa, int exponent);
float4 ldexp(float4 mantissa, int4 exponent);
half ldexp(half mantissa, int exponent); API 수준 24에 추가되었습니다.
half2 ldexp(half2 mantissa, int 지수); API 수준 24에 추가되었습니다.
half2 ldexp(half2 mantissa, int2 exponent); API 수준 24에 추가되었습니다.
half3 ldexp(half3 mantissa, int 지수); API 수준 24에 추가되었습니다.
half3 ldexp(half3 mantissa, int3 exponent); API 수준 24에 추가되었습니다.
half4 ldexp(half4 mantissa, int exponent); API 수준 24에 추가되었습니다.
half4 ldexp(half4 mantissa, int4 exponent); API 수준 24에 추가되었습니다.
매개변수
Mantissa만티사.
지수지수, 단일 구성요소 또는 일치하는 벡터

가수와 지수에서 생성된 부동 소수점을 반환합니다(가수 * 2 ^ 지수).

역방향 연산은 frexp()를 참고하세요.

lgamma : 감마 함수의 자연 로그

float lgamma(float v);
float lgamma(float v, int* sign_of_gamma);
float2 lgamma(float2 v);
float2 lgamma(float2 v, int2* sign_of_gamma);
float3 lgamma(float3 v);
float3 lgamma(float3 v, int3* sign_of_gamma);
float4 lgamma(float4 v);
float4 lgamma(float4 v, int4* sign_of_gamma);
half lgamma(half v); API 수준 24에 추가되었습니다.
half lgamma(half v, int* sign_of_gamma); API 수준 24에 추가되었습니다.
half2 lgamma(half2 v); API 수준 24에 추가되었습니다.
half2 lgamma(half2 v, int2* sign_of_gamma); API 수준 24에 추가되었습니다.
half3 lgamma(half3 v); API 수준 24에 추가되었습니다.
half3 lgamma(half3 v, int3* sign_of_gamma); API 수준 24에 추가되었습니다.
half4 lgamma(half4 v); API 수준 24에 추가되었습니다.
half4 lgamma(half4 v, int4* sign_of_gamma); API 수준 24에 추가되었습니다.
매개변수
v
감마의_기호sign_of_gamma가 null이 아니면 *sign_of_gamma는 v의 감마값이 음수이면 -1.f로 설정되고 그렇지 않으면 1.f로 설정됩니다.

감마 함수의 절댓값에 대한 자연 로그(log(fabs(tgamma(v))))를 반환합니다.

tgamma()도 참조하세요.

log : 자연 로그

float log(float v);
float2 log(float2 v);
float3 log(float3 v);
float4 log(float4 v);
half log(half v); API 수준 24에 추가되었습니다.
half2 log(half2 v); API 수준 24에 추가되었습니다.
half3 log(half3 v); API 수준 24에 추가되었습니다.
half4 log(half4 v); API 수준 24에 추가되었습니다.

자연 로그를 반환합니다.

native_log()도 참고하세요.

log10 : 밑이 10인 대수

float log10(float v);
float2 log10(float2 v);
float3 log10(float3 v);
float4 log10(float4 v);
half log10(half v); API 수준 24에 추가되었습니다.
half2 log10(half2 v); API 수준 24에 추가되었습니다.
half3 log10(half3 v); API 수준 24에 추가되었습니다.
half4 log10(half4 v); API 수준 24에 추가되었습니다.

밑이 10인 로그를 반환합니다.

native_log10()도 참고하세요.

log1p : 1을 더한 값의 자연 로그

float log1p(float v);
float2 log1p(float2 v);
float3 log1p(float3 v);
float4 log1p(float4 v);
half log1p(half v); API 수준 24에 추가되었습니다.
half2 log1p(half2 v); API 수준 24에 추가되었습니다.
half3 log1p(half3 v); API 수준 24에 추가되었습니다.
half4 log1p(half4 v); API 수준 24에 추가되었습니다.

(v + 1.f)의 자연 로그를 반환합니다.

native_log1p()도 참조하세요.

log2 : 밑이 2인 대수

float log2(float v);
float2 log2(float2 v);
float3 log2(float3 v);
float4 log2(float4 v);
half log2(half v); API 수준 24에 추가되었습니다.
half2 log2(half2 v); API 수준 24에 추가되었습니다.
half3 log2(half3 v); API 수준 24에 추가되었습니다.
half4 log2(half4 v); API 수준 24에 추가되었습니다.

밑이 2인 로그를 반환합니다.

native_log2()도 참조하세요.

logb : 밑이 2개 지수

float logb(float v);
float2 logb(float2 v);
float3 logb(float3 v);
float4 logb(float4 v);
half logb(half v); API 수준 24에 추가되었습니다.
half2 logb(half2 v); API 수준 24에 추가되었습니다.
half3 logb(half3 v); API 수준 24에 추가되었습니다.
half4 logb(half4 v); API 수준 24에 추가되었습니다.

가수가 1.f (포함)에서 2.f (제외)인 값의 밑 2 지수를 반환합니다.

예를 들어 logb(8.5f)는 3.f를 반환합니다.

가수의 차이로 인해 이 숫자는 frexp()에서 반환하는 것보다 1 적습니다.

ilogb()도 비슷하지만 정수를 반환합니다.

mad : 곱셈과 덧셈

float mad(float multiplicand1, float multiplicand2, float offset);
float2 mad(float2 multiplicand1, float2 multiplicand2, float2 offset);
float3 mad(float3 multiplicand1, float3 multiplicand2, float3 offset);
float4 mad(float4 multiplicand1, float4 multiplicand2, float4 offset);
half mad(half multiplicand1, half multiplicand2, half offset); API 수준 24에 추가되었습니다.
half2 mad(half2 multiplicand1, half2 multiplicand2, half2 offset); API 수준 24에 추가되었습니다.
half3 mad(half3 multiplicand1, half3 multiplicand2, half3 offset); API 수준 24에 추가되었습니다.
half4 mad(half4 multiplicand1, half4 multiplicand2, half4 offset); API 수준 24에 추가되었습니다.

곱셈과 덧셈. (multiplicand1 * multiplicand2) + offset를 반환합니다.

이 함수는 fma()와 유사합니다. fma()는 곱한 결과의 전체 정밀도를 유지하며 덧셈 후에만 반올림합니다. mad()는 곱셈과 덧셈 후에 반올림합니다. rs_fp_relaxed 모드에서는 mad()가 곱셈 후 반올림을 수행하지 않을 수 있습니다.

max : 최댓값

char max(char a, char b);
char2 max(char2 a, char2 b);
char3 max(char3 a, char3 b);
char4 max(char4 a, char4 b);
float max(float a, float b);
float2 max(float2 a, float b);
float2 max(float2 a, float2 b);
float3 max(float3 a, float b);
float3 max(float3 a, float3 b);
float4 max(float4 a, float b);
float4 max(float4 a, float4 b);
half max(half a, half b); API 수준 24에 추가되었습니다.
half2 max(half2 a, half b); API 수준 24에 추가되었습니다.
half2 max(half2 a, half2 b); API 수준 24에 추가되었습니다.
half3 max(half3 a, half b); API 수준 24에 추가되었습니다.
half3 max(half3 a, half3 b); API 수준 24에 추가되었습니다.
half4 max(half4 a, half b); API 수준 24에 추가되었습니다.
half4 max(half4 a, half4 b); API 수준 24에 추가되었습니다.
int max(int a, int b);
int2 max(int2 a, int2 b);
int3 max(int3 a, int3 b);
int4 max(int4 a, int4 b);
long max(long a, long b); API 수준 21에 추가되었습니다.
long2 max(long2 a, long2 b); API 수준 21에 추가되었습니다.
long3 max(long3 a, long3 b); API 수준 21에 추가되었습니다.
long4 max(long4 a, long4 b); API 수준 21에 추가되었습니다.
short max(short a, short b);
short2 max(short2 a, short2 b);
short3 max(short3 a, short3 b);
short4 max(short4 a, short4 b);
uchar max(uchar a, uchar b);
uchar2 max(uchar2 a, uchar2 b);
uchar3 max(uchar3 a, uchar3 b);
uchar4 max(uchar4 a, uchar4 b);
uint max(uint a, uint b);
uint2 max(uint2 a, uint2 b);
uint3 max(uint3 a, uint3 b);
uint4 max(uint4 a, uint4 b);
ulong max(ulong a, ulong b); API 수준 21에 추가되었습니다.
ulong2 max(ulong2 a, ulong2 b); API 수준 21에 추가되었습니다.
ulong3 max(ulong3 a, ulong3 b); API 수준 21에 추가되었습니다.
ulong4 max(ulong4 a, ulong4 b); API 수준 21에 추가되었습니다.
ushort max(ushort a, ushort b);
ushort2 max(ushort2 a, ushort2 b);
ushort3 max(ushort3 a, ushort3 b);
ushort4 max(ushort4 a, ushort4 b);

두 인수의 최댓값을 반환합니다.

min : 최솟값

char min(char a, char b);
char2 min(char2 a, char2 b);
char3 min(char3 a, char3 b);
char4 min(char4 a, char4 b);
float min(float a, float b);
float2 min(float2 a, float b);
float2 min(float2 a, float2 b);
float3 min(float3 a, float b);
float3 min(float3 a, float3 b);
float4 min(float4 a, float b);
float4 min(float4 a, float4 b);
half min(half a, half b); API 수준 24에 추가되었습니다.
half2 min(half2 a, half b); API 수준 24에 추가되었습니다.
half2 min(half2 a, half2 b); API 수준 24에 추가되었습니다.
half3 min(half3 a, half b); API 수준 24에 추가되었습니다.
half3 min(half3 a, half3 b); API 수준 24에 추가되었습니다.
half4 min(half4 a, half b); API 수준 24에 추가되었습니다.
half4 min(half4 a, half4 b); API 수준 24에 추가되었습니다.
int min(int a, int b);
int2 min(int2 a, int2 b);
int3 min(int3 a, int3 b);
int4 min(int4 a, int4 b);
long min(long a, long b); API 수준 21에 추가되었습니다.
long2 min(long2 a, long2 b); API 수준 21에 추가되었습니다.
long3 min(long3 a, long3 b); API 수준 21에 추가되었습니다.
long4 min(long4 a, long4 b); API 수준 21에 추가되었습니다.
short min(short a, short b);
short2 min(short2 a, short2 b);
short3 min(short3 a, short3 b);
short4 min(short4 a, short4 b);
uchar min(uchar a, uchar b);
uchar2 min(uchar2 a, uchar2 b);
uchar3 min(uchar3 a, uchar3 b);
uchar4 min(uchar4 a, uchar4 b);
uint min(uint a, uint b);
uint2 min(uint2 a, uint2 b);
uint3 min(uint3 a, uint3 b);
uint4 min(uint4 a, uint4 b);
ulong min(ulong a, ulong b); API 수준 21에 추가되었습니다.
ulong2 min(ulong2 a, ulong2 b); API 수준 21에 추가되었습니다.
ulong3 min(ulong3 a, ulong3 b); API 수준 21에 추가되었습니다.
ulong4 min(ulong4 a, ulong4 b); API 수준 21에 추가되었습니다.
ushort min(ushort a, ushort b);
ushort2 min(ushort2 a, ushort2 b);
ushort3 min(ushort3 a, ushort3 b);
ushort4 min(ushort4 a, ushort4 b);

두 인수의 최솟값을 반환합니다.

mix : 두 값을 혼합합니다.

float 믹스(부동 소수점 수, 부동 소수점 수, 부동 소수점 수);
float2 mix(float2 start, float2 stop, float drop);
float2 mix(float2 start, float2 stop, float2 종류);
float3mix(float3 start, float3 stop, float 종류);
float3 mix(float3 start, float3 stop, float3 종류);
float4 mix(float4 start, float4 stop, float 종류);
float4 mix(float4 start, float4 stop, float4 종류);
half mix(half start, half stop, HALf 분수); API 수준 24에 추가되었습니다.
half2 mix(half2 start, half2stop, half 역시 분수) API 수준 24에 추가되었습니다.
half2 믹스(half2 start, half2 stop, half2 분수) API 수준 24에 추가되었습니다.
half3 mix(half3 start, half3 stop, half 역시 분수) API 수준 24에 추가되었습니다.
half3 mix(half3 start, half3 그러한 중지, half3 분수); API 수준 24에 추가되었습니다.
half4 mix(half4 start, half4 그러한 중지, half 분수); API 수준 24에 추가되었습니다.
half4 mix(half4 start, half4 stop, half4 역시 분수) API 수준 24에 추가되었습니다.

start + ((stop - start) * 분수)를 반환합니다.

이는 두 값을 혼합할 때 유용할 수 있습니다. 예를 들어 color1이 40% 이고 color2가 60% 인 새 색상을 만들려면 mix(color1, color2, 0.6f)을 사용합니다.

modf : 적분 및 분수 구성요소

float modf(float v, float* integral_part);
float2 modf(float2 v, float2* integral_part);
float3 modf(float3 v, float3* integral_part);
float4 modf(float4 v, float4* integral_part);
half modf(half v, half* integral_part); API 수준 24에 추가되었습니다.
half2 modf(half2 v, half2* integral_part); API 수준 24에 추가되었습니다.
half3 modf(half3 v, half3* integral_part); API 수준 24에 추가되었습니다.
half4 modf(half4 v, half4* integral_part); API 수준 24에 추가되었습니다.
매개변수
v소스 값입니다.
적분_부*integral_part는 숫자의 정수 부분으로 설정됩니다.
반환 값
값의 부동 소수점 부분입니다.

숫자의 적분 및 소수 구성요소를 반환합니다.

두 구성요소 모두 x와 같은 기호를 갖습니다. 예를 들어 입력 값이 -3.72f이면 *integral_part가 -3.f로 설정되고 .72f가 반환됩니다.

nan : 숫자가 아님

float nan(uint v);
매개변수
v사용되지 않습니다.

NaN 값 (숫자가 아님)을 반환합니다.

nan_half : 숫자가 아님

half nan_half() API 수준 24에 추가되었습니다.

반정밀도 부동 소수점 NaN 값 (숫자가 아님)을 반환합니다.

native_acos : 근사 역 코사인

float native_acos(float v); API 수준 21에 추가되었습니다.
float2 native_acos(float2 v); API 수준 21에 추가되었습니다.
float3 native_acos(float3 v); API 수준 21에 추가되었습니다.
float4 native_acos(float4 v); API 수준 21에 추가되었습니다.
half native_acos(half v); API 수준 24에 추가되었습니다.
half2 native_acos(half2 v); API 수준 24에 추가되었습니다.
half3 native_acos(half3 v); API 수준 24에 추가되었습니다.
half4 native_acos(half4 v); API 수준 24에 추가되었습니다.

근사 역 코사인(라디안)을 반환합니다.

이 함수는 -1보다 작거나 1보다 큰 입력 값에서 정의되지 않은 결과를 생성합니다.

acos()도 참조하세요.

native_acosh : 근사 역 하이퍼볼릭 코사인

float native_acosh(float v); API 수준 21에 추가되었습니다.
float2 native_acosh(float2 v); API 수준 21에 추가되었습니다.
float3 native_acosh(float3 v); API 수준 21에 추가되었습니다.
float4 native_acosh(float4 v); API 수준 21에 추가되었습니다.
half native_acosh(half v); API 수준 24에 추가되었습니다.
half2 native_acosh(half2 v); API 수준 24에 추가되었습니다.
half3 native_acosh(half3 v); API 수준 24에 추가되었습니다.
half4 native_acosh(half4 v); API 수준 24에 추가되었습니다.

대략적인 역 하이퍼볼릭 코사인(라디안)을 반환합니다.

acosh()도 참조하세요.

native_acospi : 근사 역 코사인을 파이로 나눈 값

float native_acospi(float v); API 수준 21에 추가되었습니다.
float2 native_acospi(float2 v); API 수준 21에 추가되었습니다.
float3 native_acospi(float3 v); API 수준 21에 추가되었습니다.
float4 native_acospi(float4 v); API 수준 21에 추가되었습니다.
half native_acospi(half v); API 수준 24에 추가되었습니다.
half2 native_acospi(half2 v); API 수준 24에 추가되었습니다.
half3 native_acospi(half3 v); API 수준 24에 추가되었습니다.
half4 native_acospi(half4 v); API 수준 24에 추가되었습니다.

근사 역 코사인(라디안 단위)을 파이로 나눈 값을 반환합니다.

역 코사인을 도 단위로 측정하려면 acospi(a) * 180.f을 사용합니다.

이 함수는 -1보다 작거나 1보다 큰 입력 값에서 정의되지 않은 결과를 생성합니다.

acospi()도 참조하세요.

native_asin : 근사 역 사인

float native_asin(float v); API 수준 21에 추가되었습니다.
float2 native_asin(float2 v); API 수준 21에 추가되었습니다.
float3 native_asin(float3 v); API 수준 21에 추가되었습니다.
float4 native_asin(float4 v); API 수준 21에 추가되었습니다.
half native_asin(half v); API 수준 24에 추가되었습니다.
half2 native_asin(half2 v); API 수준 24에 추가되었습니다.
half3 native_asin(half3 v); API 수준 24에 추가되었습니다.
half4 native_asin(half4 v); API 수준 24에 추가되었습니다.

근사 역 사인을 라디안 단위로 반환합니다.

이 함수는 -1보다 작거나 1보다 큰 입력 값에서 정의되지 않은 결과를 생성합니다.

asin()도 참고하세요.

native_asinh : 근사 역 하이퍼볼릭 사인

float native_asinh(float v); API 수준 21에 추가되었습니다.
float2 native_asinh(float2 v); API 수준 21에 추가되었습니다.
float3 native_asinh(float3 v); API 수준 21에 추가되었습니다.
float4 native_asinh(float4 v); API 수준 21에 추가되었습니다.
half native_asinh(half v); API 수준 24에 추가되었습니다.
half2 native_asinh(half2 v); API 수준 24에 추가되었습니다.
half3 native_asinh(half3 v); API 수준 24에 추가되었습니다.
half4 native_asinh(half4 v); API 수준 24에 추가되었습니다.

대략적인 역 하이퍼볼릭 사인(라디안)을 반환합니다.

asinh()도 참고하세요.

native_asinpi : 근사 역 사인을 pi로 나눈 값

float native_asinpi(float v); API 수준 21에 추가되었습니다.
float2 native_asinpi(float2 v); API 수준 21에 추가되었습니다.
float3 native_asinpi(float3 v); API 수준 21에 추가되었습니다.
float4 native_asinpi(float4 v); API 수준 21에 추가되었습니다.
half native_asinpi(half v); API 수준 24에 추가되었습니다.
half2 native_asinpi(half2 v); API 수준 24에 추가되었습니다.
half3 native_asinpi(half3 v); API 수준 24에 추가되었습니다.
half4 native_asinpi(half4 v); API 수준 24에 추가되었습니다.

근사 역 사인(라디안 단위)을 파이로 나눈 값을 반환합니다.

역 사인을 도 단위로 측정하려면 asinpi(a) * 180.f을 사용합니다.

이 함수는 -1보다 작거나 1보다 큰 입력 값에서 정의되지 않은 결과를 생성합니다.

asinpi()도 참고하세요.

native_atan : 근사 역탄젠트

float native_atan(float v); API 수준 21에 추가되었습니다.
float2 native_atan(float2 v); API 수준 21에 추가되었습니다.
float3 native_atan(float3 v); API 수준 21에 추가되었습니다.
float4 native_atan(float4 v); API 수준 21에 추가되었습니다.
half native_atan(half v); API 수준 24에 추가되었습니다.
half2 native_atan(half2 v); API 수준 24에 추가되었습니다.
half3 native_atan(half3 v); API 수준 24에 추가되었습니다.
half4 native_atan(half4 v); API 수준 24에 추가되었습니다.

근사 역 탄젠트(라디안)를 반환합니다.

atan()도 참조하세요.

native_atan2 : 비율의 대략적인 역 탄젠트

float native_atan2(float 분자, 부동 소수점 분모); API 수준 21에 추가되었습니다.
float2 native_atan2(float2 분자, float2 분모); API 수준 21에 추가되었습니다.
float3 native_atan2(float3 분자, float3 분모); API 수준 21에 추가되었습니다.
float4 native_atan2(float4 분자, float4 분모); API 수준 21에 추가되었습니다.
half native_atan2(half 분자, half 분모); API 수준 24에 추가되었습니다.
half2 native_atan2(half2 분자, half2 분모); API 수준 24에 추가되었습니다.
half3 native_atan2(half3 분자, half3 분모); API 수준 24에 추가되었습니다.
half4 native_atan2(half4 분자, half4 분모); API 수준 24에 추가되었습니다.
매개변수
분자분자.
분모분모입니다. 0일 수 있습니다.

(numerator / denominator)의 근사 역 탄젠트를 라디안으로 반환합니다.

atan2()도 참조하세요.

native_atan2pi : pi로 나눈 비율의 대략적인 역 탄젠트

float native_atan2pi(float 분자, float 분모); API 수준 21에 추가되었습니다.
float2 native_atan2pi(float2 분자, float2 분모); API 수준 21에 추가되었습니다.
float3 native_atan2pi(float3 분자, float3 분모); API 수준 21에 추가되었습니다.
float4 native_atan2pi(float4 분자, float4 분모); API 수준 21에 추가되었습니다.
half native_atan2pi(half 분자, half 분모); API 수준 24에 추가되었습니다.
half2 native_atan2pi(half2 분자, half2 분모); API 수준 24에 추가되었습니다.
half3 native_atan2pi(half3 분자, half3 분모); API 수준 24에 추가되었습니다.
half4 native_atan2pi(half4 분자, half4 분모); API 수준 24에 추가되었습니다.
매개변수
분자분자.
분모분모입니다. 0일 수 있습니다.

(numerator / denominator)의 근사 역 탄젠트를 라디안 단위로 pi로 나눈 값을 반환합니다.

도 단위로 측정된 역 탄젠트를 가져오려면 atan2pi(n, d) * 180.f을 사용합니다.

atan2pi()도 참조하세요.

native_atanh : 근사 역 하이퍼볼릭 탄젠트

float native_atanh(float v); API 수준 21에 추가되었습니다.
float2 native_atanh(float2 v); API 수준 21에 추가되었습니다.
float3 native_atanh(float3 v); API 수준 21에 추가되었습니다.
float4 native_atanh(float4 v); API 수준 21에 추가되었습니다.
half native_atanh(half v); API 수준 24에 추가되었습니다.
half2 native_atanh(half2 v); API 수준 24에 추가되었습니다.
half3 native_atanh(half3 v); API 수준 24에 추가되었습니다.
half4 native_atanh(half4 v); API 수준 24에 추가되었습니다.

대략적인 역 하이퍼볼릭 탄젠트를 라디안 단위로 반환합니다.

atanh()도 참조하세요.

native_atanpi : 근사 역탄젠트를 pi로 나눈 값

float native_atanpi(float v); API 수준 21에 추가되었습니다.
float2 native_atanpi(float2 v); API 수준 21에 추가되었습니다.
float3 native_atanpi(float3 v); API 수준 21에 추가되었습니다.
float4 native_atanpi(float4 v); API 수준 21에 추가되었습니다.
half native_atanpi(half v); API 수준 24에 추가되었습니다.
half2 native_atanpi(half2 v); API 수준 24에 추가되었습니다.
half3 native_atanpi(half3 v); API 수준 24에 추가되었습니다.
half4 native_atanpi(half4 v); API 수준 24에 추가되었습니다.

근사 역 탄젠트(라디안 단위)를 파이로 나눈 값을 반환합니다.

도 단위로 측정된 역 탄젠트를 가져오려면 atanpi(a) * 180.f을 사용합니다.

atanpi()도 참조하세요.

native_cbrt : 대략적인 세제곱근

float native_cbrt(float v); API 수준 21에 추가되었습니다.
float2 native_cbrt(float2 v); API 수준 21에 추가되었습니다.
float3 native_cbrt(float3 v); API 수준 21에 추가되었습니다.
float4 native_cbrt(float4 v); API 수준 21에 추가되었습니다.
half native_cbrt(half v); API 수준 24에 추가되었습니다.
half2 native_cbrt(half2 v); API 수준 24에 추가되었습니다.
half3 native_cbrt(half3 v); API 수준 24에 추가되었습니다.
half4 native_cbrt(half4 v); API 수준 24에 추가되었습니다.

대략적인 세제곱근을 반환합니다.

cbrt()도 참고하세요.

native_cos : 근사 코사인

float native_cos(float v); API 수준 21에 추가되었습니다.
float2 native_cos(float2 v); API 수준 21에 추가되었습니다.
float3 native_cos(float3 v); API 수준 21에 추가되었습니다.
float4 native_cos(float4 v); API 수준 21에 추가되었습니다.
half native_cos(half v); API 수준 24에 추가되었습니다.
half2 native_cos(half2 v); API 수준 24에 추가되었습니다.
half3 native_cos(half3 v); API 수준 24에 추가되었습니다.
half4 native_cos(half4 v); API 수준 24에 추가되었습니다.

라디안으로 측정된 각도의 근사 코사인을 반환합니다.

cos()도 참조하세요.

native_cosh : 근사 쌍곡선 코사인

float native_cosh(float v); API 수준 21에 추가되었습니다.
float2 native_cosh(float2 v); API 수준 21에 추가되었습니다.
float3 native_cosh(float3 v); API 수준 21에 추가되었습니다.
float4 native_cosh(float4 v); API 수준 21에 추가되었습니다.
half native_cosh(half v); API 수준 24에 추가되었습니다.
half2 native_cosh(half2 v); API 수준 24에 추가되었습니다.
half3 native_cosh(half3 v); API 수준 24에 추가되었습니다.
half4 native_cosh(half4 v); API 수준 24에 추가되었습니다.

근사 쌍곡선 코사인을 반환합니다.

cosh()도 참조하세요.

native_cospi : pi를 곱한 숫자의 근사 코사인

float native_cospi(float v); API 수준 21에 추가되었습니다.
float2 native_cospi(float2 v); API 수준 21에 추가되었습니다.
float3 native_cospi(float3 v); API 수준 21에 추가되었습니다.
float4 native_cospi(float4 v); API 수준 21에 추가되었습니다.
half native_cospi(half v); API 수준 24에 추가되었습니다.
half2 native_cospi(half2 v); API 수준 24에 추가되었습니다.
half3 native_cospi(half3 v); API 수준 24에 추가되었습니다.
half4 native_cospi(half4 v); API 수준 24에 추가되었습니다.

(v * pi)는 라디안으로 측정된 (v * pi)의 근사 코사인을 반환합니다.

도 단위로 측정된 값의 코사인을 가져오려면 cospi(v / 180.f)를 호출합니다.

cospi()도 참고하세요.

native_divide : 대략적인 나눗셈

float native_divide(float left_vector, float right_vector); API 수준 21에 추가되었습니다.
float2 native_divide(float2 left_vector, float2 right_vector); API 수준 21에 추가되었습니다.
float3 native_divide(float3 left_vector, float3 right_vector); API 수준 21에 추가되었습니다.
float4 native_divide(float4 left_vector, float4 right_vector); API 수준 21에 추가되었습니다.
half native_divide(half left_vector, half right_vector); API 수준 24에 추가되었습니다.
half2 native_divide(half2 left_vector, half2 right_vector); API 수준 24에 추가되었습니다.
half3 native_divide(half3 left_vector, half3 right_vector); API 수준 24에 추가되었습니다.
half4 native_divide(half4 left_vector, half4 right_vector); API 수준 24에 추가되었습니다.

두 값의 대략적인 나눗셈을 계산합니다.

native_exp : 대략적인 e를 숫자로 거듭제곱

float native_exp(float v); API 수준 18에 추가되었습니다.
float2 native_exp(float2 v); API 수준 18에 추가되었습니다.
float3 native_exp(float3 v); API 수준 18에 추가되었습니다.
float4 native_exp(float4 v); API 수준 18에 추가되었습니다.
half native_exp(half v); API 수준 24에 추가되었습니다.
half2 native_exp(half2 v); API 수준 24에 추가되었습니다.
half3 native_exp(half3 v); API 수준 24에 추가되었습니다.
half4 native_exp(half4 v); API 수준 24에 추가되었습니다.

빠른 근사 경험치

-86.f~86.f의 입력에 유효합니다. 정밀도는 16비트 부동 소수점 값을 사용할 때 예상되는 수준보다 나쁘지 않습니다.

exp()도 참조하세요.

native_exp10 : 약 10을 숫자로 거듭제곱

float native_exp10(float v); API 수준 18에 추가되었습니다.
float2 native_exp10(float2 v); API 수준 18에 추가되었습니다.
float3 native_exp10(float3 v); API 수준 18에 추가되었습니다.
float4 native_exp10(float4 v); API 수준 18에 추가되었습니다.
half native_exp10(half v); API 수준 24에 추가되었습니다.
half2 native_exp10(half2 v); API 수준 24에 추가되었습니다.
half3 native_exp10(half3 v); API 수준 24에 추가되었습니다.
half4 native_exp10(half4 v); API 수준 24에 추가되었습니다.

빠른 대략적인 실험 10입니다.

-37.f~37.f의 입력에 유효합니다. 정밀도는 16비트 부동 소수점 값을 사용할 때 예상되는 수준보다 나쁘지 않습니다.

exp10()도 참조하세요.

native_exp2 : 대략 2를 숫자로 거듭제곱

float native_exp2(float v); API 수준 18에 추가되었습니다.
float2 native_exp2(float2 v); API 수준 18에 추가되었습니다.
float3 native_exp2(float3 v); API 수준 18에 추가되었습니다.
float4 native_exp2(float4 v); API 수준 18에 추가되었습니다.
half native_exp2(half v); API 수준 24에 추가되었습니다.
half2 native_exp2(half2 v); API 수준 24에 추가되었습니다.
half3 native_exp2(half3 v); API 수준 24에 추가되었습니다.
half4 native_exp2(half4 v); API 수준 24에 추가되었습니다.

빠른 근사치 실험 2입니다.

-125.f~125.f의 입력에 유효합니다. 정밀도는 16비트 부동 소수점 값을 사용할 때 예상되는 수준보다 나쁘지 않습니다.

exp2()도 참조하세요.

native_expm1 : 대략적인 e를 숫자 빼기 1로 거듭제곱

float native_expm1(float v); API 수준 21에 추가되었습니다.
float2 native_expm1(float2 v); API 수준 21에 추가되었습니다.
float3 native_expm1(float3 v); API 수준 21에 추가되었습니다.
float4 native_expm1(float4 v); API 수준 21에 추가되었습니다.
half native_expm1(half v); API 수준 24에 추가되었습니다.
half2 native_expm1(half2 v); API 수준 24에 추가되었습니다.
half3 native_expm1(half3 v); API 수준 24에 추가되었습니다.
half4 native_expm1(half4 v); API 수준 24에 추가되었습니다.

근사치 (e ^ v) - 1을 반환합니다.

expm1()도 참조하세요.

native_hypot : 대략적인 빗변

float native_hypot(float a, float b); API 수준 21에 추가되었습니다.
float2 native_hypot(float2 a, float2 b); API 수준 21에 추가되었습니다.
float3 native_hypot(float3 a, float3 b); API 수준 21에 추가되었습니다.
float4 native_hypot(float4 a, float4 b); API 수준 21에 추가되었습니다.
half native_hypot(half a, half b); API 수준 24에 추가되었습니다.
half2 native_hypot(half2 a, half2 b); API 수준 24에 추가되었습니다.
half3 native_hypot(half3 a, half3 b); API 수준 24에 추가되었습니다.
half4 native_hypot(half4 a, half4 b); API 수준 24에 추가되었습니다.

대략적인 native_sqrt(a * a + b * b)를 반환합니다.

hypot()도 참고하세요.

native_log : 근사 자연 로그

float native_log(float v); API 수준 18에 추가되었습니다.
float2 native_log(float2 v); API 수준 18에 추가되었습니다.
float3 native_log(float3 v); API 수준 18에 추가되었습니다.
float4 native_log(float4 v); API 수준 18에 추가되었습니다.
half native_log(half v); API 수준 24에 추가되었습니다.
half2 native_log(half2 v); API 수준 24에 추가되었습니다.
half3 native_log(half3 v); API 수준 24에 추가되었습니다.
half4 native_log(half4 v); API 수준 24에 추가되었습니다.

대략적인 로그입니다.

0에 매우 가까운 값은 정확하지 않습니다.

log()도 참고하세요.

native_log10 : 약 밑이 10인 대수

float native_log10(float v); API 수준 18에 추가되었습니다.
float2 native_log10(float2 v); API 수준 18에 추가되었습니다.
float3 native_log10(float3 v); API 수준 18에 추가되었습니다.
float4 native_log10(float4 v); API 수준 18에 추가되었습니다.
half native_log10(half v); API 수준 24에 추가되었습니다.
half2 native_log10(half2 v); API 수준 24에 추가되었습니다.
half3 native_log10(half3 v); API 수준 24에 추가되었습니다.
half4 native_log10(half4 v); API 수준 24에 추가되었습니다.

빠른 대략적인 log10

0에 매우 가까운 값은 정확하지 않습니다.

log10()도 참고하세요.

native_log1p : 값에 1을 더한 대략적인 자연 로그

float native_log1p(float v); API 수준 21에 추가되었습니다.
float2 native_log1p(float2 v); API 수준 21에 추가되었습니다.
float3 native_log1p(float3 v); API 수준 21에 추가되었습니다.
float4 native_log1p(float4 v); API 수준 21에 추가되었습니다.
half native_log1p(half v); API 수준 24에 추가되었습니다.
half2 native_log1p(half2 v); API 수준 24에 추가되었습니다.
half3 native_log1p(half3 v); API 수준 24에 추가되었습니다.
half4 native_log1p(half4 v); API 수준 24에 추가되었습니다.

(v + 1.0f)의 근사 자연 로그를 반환합니다.

log1p()도 참고하세요.

native_log2 : 밑이 2인 대략적인 로그

float native_log2(float v); API 수준 18에 추가되었습니다.
float2 native_log2(float2 v); API 수준 18에 추가되었습니다.
float3 native_log2(float3 v); API 수준 18에 추가되었습니다.
float4 native_log2(float4 v); API 수준 18에 추가되었습니다.
half native_log2(half v); API 수준 24에 추가되었습니다.
half2 native_log2(half2 v); API 수준 24에 추가되었습니다.
half3 native_log2(half3 v); API 수준 24에 추가되었습니다.
half4 native_log2(half4 v); API 수준 24에 추가되었습니다.

빠른 근사치 log2입니다.

0에 매우 가까운 값은 정확하지 않습니다.

log2()도 참고하세요.

native_powr : 대략적인 양의 밑을 지수로 거듭제곱

float native_powr(float base, float 지수); API 수준 18에 추가되었습니다.
float2 native_powr(float2 base, float2 지수); API 수준 18에 추가되었습니다.
float3 native_powr(float3 base, float3 지수); API 수준 18에 추가되었습니다.
float4 native_powr(float4 base, float4 지수); API 수준 18에 추가되었습니다.
half native_powr(half base, half 지수); API 수준 24에 추가되었습니다.
half2 native_powr(half2 base, half2 지수); API 수준 24에 추가되었습니다.
half3 native_powr(half3 base, half3 지수); API 수준 24에 추가되었습니다.
half4 native_powr(half4 base, half4 지수); API 수준 24에 추가되었습니다.
매개변수
베이스0.f에서 256.f 사이여야 합니다. 이 함수는 0에 매우 가까운 값은 정확하지 않습니다.
지수-15.f에서 15.f 사이여야 합니다.

빠른 근사치 (밑 ^ 지수)

powr()도 참조하세요.

native_recip : 근사 역수

float native_recip(float v); API 수준 21에 추가되었습니다.
float2 native_recip(float2 v); API 수준 21에 추가되었습니다.
float3 native_recip(float3 v); API 수준 21에 추가되었습니다.
float4 native_recip(float4 v); API 수준 21에 추가되었습니다.
half native_recip(half v); API 수준 24에 추가되었습니다.
half2 native_recip(half2 v); API 수준 24에 추가되었습니다.
half3 native_recip(half3 v); API 수준 24에 추가되었습니다.
half4 native_recip(half4 v); API 수준 24에 추가되었습니다.

값의 근사치의 근사치를 반환합니다.

half_recip()도 참조하세요.

native_rootn : 대략적인 n번째 루트

float native_rootn(float v, int n); API 수준 21에 추가되었습니다.
float2 native_rootn(float2 v, int2 n); API 수준 21에 추가되었습니다.
float3 native_rootn(float3 v, int3 n); API 수준 21에 추가되었습니다.
float4 native_rootn(float4 v, int4 n); API 수준 21에 추가되었습니다.
half native_rootn(half v, int n); API 수준 24에 추가되었습니다.
half2 native_rootn(half2 v, int2 n); API 수준 24에 추가되었습니다.
half3 native_rootn(half3 v, int3 n); API 수준 24에 추가되었습니다.
half4 native_rootn(half4 v, int4 n); API 수준 24에 추가되었습니다.

값의 대략적인 N번째 루트를 계산합니다.

rootn()도 참고하세요.

native_rsqrt : 제곱근의 근사치 역수

float native_rsqrt(float v); API 수준 21에 추가되었습니다.
float2 native_rsqrt(float2 v); API 수준 21에 추가되었습니다.
float3 native_rsqrt(float3 v); API 수준 21에 추가되었습니다.
float4 native_rsqrt(float4 v); API 수준 21에 추가되었습니다.
half native_rsqrt(half v); API 수준 24에 추가되었습니다.
half2 native_rsqrt(half2 v); API 수준 24에 추가되었습니다.
half3 native_rsqrt(half3 v); API 수준 24에 추가되었습니다.
half4 native_rsqrt(half4 v); API 수준 24에 추가되었습니다.

근사치 (1 / sqrt(v))를 반환합니다.

rsqrt(), half_rsqrt()도 참고하세요.

native_sin : 근사 사인

float native_sin(float v); API 수준 21에 추가되었습니다.
float2 native_sin(float2 v); API 수준 21에 추가되었습니다.
float3 native_sin(float3 v); API 수준 21에 추가되었습니다.
float4 native_sin(float4 v); API 수준 21에 추가되었습니다.
half native_sin(half v); API 수준 24에 추가되었습니다.
half2 native_sin(half2 v); API 수준 24에 추가되었습니다.
half3 native_sin(half3 v); API 수준 24에 추가되었습니다.
half4 native_sin(half4 v); API 수준 24에 추가되었습니다.

라디안으로 측정된 각도의 근사 사인을 반환합니다.

sin()도 참조하세요.

native_sincos : 근사 사인 및 코사인

float native_sincos(float v, float* cos); API 수준 21에 추가되었습니다.
float2 native_sincos(float2 v, float2* cos); API 수준 21에 추가되었습니다.
float3 native_sincos(float3 v, float3* cos); API 수준 21에 추가되었습니다.
float4 native_sincos(float4 v, float4* cos); API 수준 21에 추가되었습니다.
half native_sincos(half v, half* cos); API 수준 24에 추가되었습니다.
half2 native_sincos(half2 v, half2* cos); API 수준 24에 추가되었습니다.
half3 native_sincos(half3 v, half3* cos); API 수준 24에 추가되었습니다.
half4 native_sincos(half4 v, half4* cos); API 수준 24에 추가되었습니다.
매개변수
v라디안 단위로 입력되는 값입니다.
cos*cos는 코사인 값으로 설정됩니다.
반환 값
사인.

값의 근사인 사인과 코사인 값을 반환합니다.

sincos()도 참고하세요.

native_sinh : 대략적인 쌍곡선 사인

float native_sinh(float v); API 수준 21에 추가되었습니다.
float2 native_sinh(float2 v); API 수준 21에 추가되었습니다.
float3 native_sinh(float3 v); API 수준 21에 추가되었습니다.
float4 native_sinh(float4 v); API 수준 21에 추가되었습니다.
half native_sinh(half v); API 수준 24에 추가되었습니다.
half2 native_sinh(half2 v); API 수준 24에 추가되었습니다.
half3 native_sinh(half3 v); API 수준 24에 추가되었습니다.
half4 native_sinh(half4 v); API 수준 24에 추가되었습니다.

라디안으로 지정된 값의 대략적인 하이퍼볼릭 사인을 반환합니다.

sinh()도 참고하세요.

native_sinpi : pi를 곱한 숫자의 대략적인 사인

float native_sinpi(float v); API 수준 21에 추가되었습니다.
float2 native_sinpi(float2 v); API 수준 21에 추가되었습니다.
float3 native_sinpi(float3 v); API 수준 21에 추가되었습니다.
float4 native_sinpi(float4 v); API 수준 21에 추가되었습니다.
half native_sinpi(half v); API 수준 24에 추가되었습니다.
half2 native_sinpi(half2 v); API 수준 24에 추가되었습니다.
half3 native_sinpi(half3 v); API 수준 24에 추가되었습니다.
half4 native_sinpi(half4 v); API 수준 24에 추가되었습니다.

(v * pi)의 근사인 사인(v * pi)을 반환합니다. 여기서 (v * pi)는 라디안으로 측정됩니다.

도 단위로 측정된 값의 사인을 가져오려면 sinpi(v / 180.f)를 호출합니다.

sinpi()도 참고하세요.

native_sqrt : 대략적인 제곱근

float native_sqrt(float v); API 수준 21에 추가되었습니다.
float2 native_sqrt(float2 v); API 수준 21에 추가되었습니다.
float3 native_sqrt(float3 v); API 수준 21에 추가되었습니다.
float4 native_sqrt(float4 v); API 수준 21에 추가되었습니다.
half native_sqrt(half v); API 수준 24에 추가되었습니다.
half2 native_sqrt(half2 v); API 수준 24에 추가되었습니다.
half3 native_sqrt(half3 v); API 수준 24에 추가되었습니다.
half4 native_sqrt(half4 v); API 수준 24에 추가되었습니다.

대략적인 제곱근(v)을 반환합니다.

sqrt(), half_sqrt()도 참고하세요.

native_tan : 근사 탄젠트

float native_tan(float v); API 수준 21에 추가되었습니다.
float2 native_tan(float2 v); API 수준 21에 추가되었습니다.
float3 native_tan(float3 v); API 수준 21에 추가되었습니다.
float4 native_tan(float4 v); API 수준 21에 추가되었습니다.
half native_tan(half v); API 수준 24에 추가되었습니다.
half2 native_tan(half2 v); API 수준 24에 추가되었습니다.
half3 native_tan(half3 v); API 수준 24에 추가되었습니다.
half4 native_tan(half4 v); API 수준 24에 추가되었습니다.

라디안으로 측정된 각도의 대략적인 탄젠트를 반환합니다.

native_tanh : 대략적인 쌍곡선 탄젠트

float native_tanh(float v); API 수준 21에 추가되었습니다.
float2 native_tanh(float2 v); API 수준 21에 추가되었습니다.
float3 native_tanh(float3 v); API 수준 21에 추가되었습니다.
float4 native_tanh(float4 v); API 수준 21에 추가되었습니다.
half native_tanh(half v); API 수준 24에 추가되었습니다.
half2 native_tanh(half2 v); API 수준 24에 추가되었습니다.
half3 native_tanh(half3 v); API 수준 24에 추가되었습니다.
half4 native_tanh(half4 v); API 수준 24에 추가되었습니다.

값의 대략적인 하이퍼볼릭 탄젠트를 반환합니다.

tanh()도 참조하세요.

native_tanpi : 숫자에 파이를 곱한 근사 탄젠트

float native_tanpi(float v); API 수준 21에 추가되었습니다.
float2 native_tanpi(float2 v); API 수준 21에 추가되었습니다.
float3 native_tanpi(float3 v); API 수준 21에 추가되었습니다.
float4 native_tanpi(float4 v); API 수준 21에 추가되었습니다.
half native_tanpi(half v); API 수준 24에 추가되었습니다.
half2 native_tanpi(half2 v); API 수준 24에 추가되었습니다.
half3 native_tanpi(half3 v); API 수준 24에 추가되었습니다.
half4 native_tanpi(half4 v); API 수준 24에 추가되었습니다.

(v * pi)의 근사적 탄젠트(v * pi)를 반환합니다. 여기서 (v * pi)는 라디안으로 측정됩니다.

도 단위로 측정된 값의 탄젠트를 가져오려면 tanpi(v / 180.f)를 호출합니다.

tanpi()도 참고하세요.

nextafter : 다음 부동 소수점 숫자

float nextafter(float v, float target);
float2 nextafter(float2 v, float2 target);
float3 nextafter(float3 v, float3 target);
float4 nextafter(float4 v, float4 target);
half nextafter(half v, half target); API 수준 24에 추가되었습니다.
half2 nextafter(half2 v, half2 target); API 수준 24에 추가되었습니다.
half3 nextafter(half3 v, half3 target); API 수준 24에 추가되었습니다.
half4 nextafter(half4 v, half4 target); API 수준 24에 추가되었습니다.

v에서 타겟 방향으로 다음 표현 가능한 부동 소수점 숫자를 반환합니다.

rs_fp_relaxed 모드에서는 비정규화된 입력 값이 다음으로 비정규화된 값을 생성하지 못할 수 있습니다. 완화 모드에서는 비정규화된 값의 지원이 선택사항이기 때문입니다.

pow : 밑을 지수로 거듭제곱

float pow(float base, float 지수);
float2 pow(float2 base, float2 지수);
float3 pow(float3 base, float3 지수);
float4 pow(float4 base, float4 지수);
half pow(half base, half 지수); API 수준 24에 추가되었습니다.
half2 pow(half2 base, half2 지수); API 수준 24에 추가되었습니다.
half3 pow(half3 base, half3 지수); API 수준 24에 추가되었습니다.
half4 pow(half4 base, half4 지수); API 수준 24에 추가되었습니다.

거듭제곱 지수만큼 거듭제곱한 밑을 반환합니다. 즉, 밑이 ^ 지수입니다.

pown()과 powr()은 유사합니다. pown()은 정수 지수를 사용합니다. powr()에서는 밑이 음수가 아닌 것으로 가정합니다.

pown : 밑을 정수 지수로 거듭제곱

float pown(float base, int 지수);
float2 pown(float2 base, int2 지수);
float3 pown(float3 base, int3 지수);
float4 pown(float4 base, int4 지수);
half pown(half base, int 지수); API 수준 24에 추가되었습니다.
half2 pown(half2 base, int2 지수); API 수준 24에 추가되었습니다.
half3 pown(half3 base, int3 지수); API 수준 24에 추가되었습니다.
half4 pown(half4 base, int4 지수); API 수준 24에 추가되었습니다.

거듭제곱 지수만큼 거듭제곱한 밑을 반환합니다. 즉, 밑이 ^ 지수입니다.

pow()와 powr()은 유사합니다. 두 함수 모두 부동 지수를 사용합니다. powr()에서는 밑이 음수가 아닌 것으로 가정합니다.

powr : 양의 밑을 지수로 거듭제곱

float powr(float base, float 지수);
float2 powr(float2 base, float2 지수);
float3 powr(float3 base, float3 지수);
float4 powr(float4 base, float4 지수);
half powr(half base, half 지수); API 수준 24에 추가되었습니다.
half2 powr(half2 base, half2 지수); API 수준 24에 추가되었습니다.
half3 powr(half3 base, half3 지수); API 수준 24에 추가되었습니다.
half4 powr(half4 base, half4 지수); API 수준 24에 추가되었습니다.

거듭제곱 지수만큼 거듭제곱한 밑을 반환합니다. 즉, 밑이 ^ 지수입니다. 밑은 0 이상이어야 합니다.

pow()와 pown()은 서로 유사합니다. 둘 다 밑에 대해서는 가정하지 않습니다. pow()는 부동 소수점 수 지수를 사용하는 반면 pown()은 정수를 사용합니다.

native_powr()도 참조하세요.

라디안 : 각도를 라디안으로 변환합니다.

float 라디안(float v);
float2라디안(float2 v);
float3라디안(float3 v);
float4라디안(float4 v);
half 라디안(half v); API 수준 24에 추가되었습니다.
half2 라디안(half2 v); API 수준 24에 추가되었습니다.
half3 라디안(half3 v); API 수준 24에 추가되었습니다.
half4 라디안(half4 v); API 수준 24에 추가되었습니다.

도에서 라디안으로 변환합니다.

remainder : 나눗셈의 나머지 부분

float lefter(float 분자, float 분모);
float2 keepder(float2 분자, float2 분모);
float3 keepder(float3 분자, float3 분모);
float4 lefter(float4 분자, float4 분모);
half lefter(half 분자, half 분모); API 수준 24에 추가되었습니다.
half2 halfder(half2 분자, half2 분모); API 수준 24에 추가되었습니다.
half3 있었던 부분(half3 분자, half3 분모) API 수준 24에 추가되었습니다.
half4 REST(half4 분자, half4 분모) API 수준 24에 추가되었습니다.

(분자 / 분모)의 나머지 부분을 반환합니다. 여기서 몫은 가장 가까운 정수로 반올림됩니다.

fmod() 함수는 비슷하지만 가장 가까운 정수로 반올림됩니다. 예를 들어 fmod(-3.8f, 2.f)는 -1.8f (-3.8f - -1.f * 2.f)를 반환하고 remainder(-3.8f, 2.f)는 0.2f (-3.8f - -2.f * 2.f)를 반환합니다.

remquo : 나눗셈의 나머지와 몫

float remquo(float 분자, 부동 소수점 수 분모, 정수* 몫);
float2 remquo(float2 분자, float2 분모, int2* 몫);
float3 remquo(float3 분자, float3 분모, int3* 몫);
float4 remquo(float4 분자, float4 분모, int4* 몫);
half remquo(half 분자, half 분모, 정수* 몫); API 수준 24에 추가되었습니다.
half2 remquo(half2 분자, half2 분모, int2* 몫); API 수준 24에 추가되었습니다.
half3 remquo(half3 분자, half3 분모, int3* 몫); API 수준 24에 추가되었습니다.
half4 remquo(half4 분자, half4 분모, int4* 몫); API 수준 24에 추가되었습니다.
매개변수
분자분자.
분모분모입니다.
*몫은 정수 몫으로 설정됩니다.
반환 값
나머지 비트로, 하위 3비트에만 정확합니다.

(분자 / 분모)의 몫과 나머지를 반환합니다.

몫의 부호와 하위 3비트만 정확성이 보장됩니다.

이 함수는 주기 함수를 구현하는 데 유용합니다. 몫의 하위 비트는 사분면에, 나머지는 사분면 내의 거리를 제공합니다. 예를 들어 sin(x)의 구현은 remquo(x, PI / 2.f, &quadrant)를 호출하여 매우 큰 x값을 제한된 범위 내의 값으로 줄일 수 있습니다.

예: remquo(-23.5f, 8.f, &quot)는 quot의 하위 비트 3개를 3으로 설정하고 부호를 음수로 설정합니다. 0.5f를 반환합니다.

rint : 짝수로 반올림

float rint(float v);
float2 rint(float2 v);
float3 rint(float3 v);
float4 rint(float4 v);
half rint(half v); API 수준 24에 추가되었습니다.
half2 rint(half2 v); API 수준 24에 추가되었습니다.
half3 rint(half3 v); API 수준 24에 추가되었습니다.
half4 rint(half4 v); API 수준 24에 추가되었습니다.

가장 가까운 정수 값으로 반올림합니다.

rint()는 절반 값을 짝수로 반올림합니다. 예를 들어 rint(0.5f)는 0.f를 반환하고 rint(1.5f)는 2.f를 반환합니다. 마찬가지로 rint(-0.5f)은 -0.f를 반환하고 rint(-1.5f)는 -2.f를 반환합니다.

round()는 비슷하지만 0에서 멀어지는 방향으로 반올림됩니다. trunc()는 소수를 자릅니다.

rootn : N번째 루트

float rootn(float v, int n);
float2 rootn(float2 v, int2 n);
float3 rootn(float3 v, int3 n);
float4 rootn(float4 v, int4 n);
half rootn(half v, int n); API 수준 24에 추가되었습니다.
half2 rootn(half2 v, int2 n); API 수준 24에 추가되었습니다.
half3 rootn(half3 v, int3 n); API 수준 24에 추가되었습니다.
half4 rootn(half4 v, int4 n); API 수준 24에 추가되었습니다.

값의 N제곱근을 계산합니다.

native_rootn()도 참고하세요.

round : 0에서 반올림하기

float round(float v);
float2 round(float2 v);
float3 round(float3 v);
float4 round(float4 v);
half round(half v); API 수준 24에 추가되었습니다.
half2 round(half2 v); API 수준 24에 추가되었습니다.
half3 round(half3 v); API 수준 24에 추가되었습니다.
half4 round(half4 v); API 수준 24에 추가되었습니다.

가장 가까운 정수 값으로 반올림합니다.

round()는 0에서 떨어진 값의 절반을 반올림합니다. 예를 들어 round(0.5f)는 1.f를 반환하고 round(1.5f)는 2.f를 반환합니다. 마찬가지로 round(-0.5f)은 -1.f를 반환하고 round(-1.5f)는 -2.f를 반환합니다.

rint()는 비슷하지만 절반을 짝수 쪽으로 반올림합니다. trunc()는 소수를 자릅니다.

rsClamp : 값을 범위로 제한

char rsClamp(char amount, char low, char high);
int rsClamp(int amount, int low, int high);
short rsClamp(short amount, short short, short high);
uchar rsClamp(uchar amount, uchar low, uchar high);
uint rsClamp(uint amount, uint low, uint high);
ushort rsClamp(ushort amount, ushort min, ushort high);
매개변수
금액고정할 값입니다.
낮음하한값
높음상한값

사용이 중단되었습니다. 대신 clamp()를 사용합니다.

낮음과 높은 값 사이의 값을 고정합니다.

rsFrac : 부동 소수점 수의 소수 부분을 반환합니다.

float rsFrac(float v);

사용이 중단되었습니다. 대신 fract()를 사용하세요.

부동 소수점 수의 소수 부분을 반환합니다.

rsRand : 유사 랜덤 숫자

float rsRand(float max_value);
float rsRand(float min_value, float max_value);
int rsRand(int max_value);
int rsRand(int min_value, int max_value);

0 (또는 min_value)에서 max_malue 사이의 임의의 값을 반환합니다.

rsqrt : 제곱근의 역수

float rsqrt(float v);
float2 rsqrt(float2 v);
float3 rsqrt(float3 v);
float4 rsqrt(float4 v);
half rsqrt(half v); API 수준 24에 추가되었습니다.
half2 rsqrt(half2 v); API 수준 24에 추가되었습니다.
half3 rsqrt(half3 v); API 수준 24에 추가되었습니다.
half4 rsqrt(half4 v); API 수준 24에 추가되었습니다.

(1 / sqrt(v))를 반환합니다.

half_rsqrt(), native_rsqrt()도 참고하세요.

sign : 값의 부호

float sign(float v);
float2 sign(float2 v);
float3 부호(float3 v);
float4 sign(float4 v);
half 부호(half v); API 수준 24에 추가되었습니다.
half2 부호(half2 v); API 수준 24에 추가되었습니다.
half3 부호(half3 v); API 수준 24에 추가되었습니다.
half4 부호(half4 v); API 수준 24에 추가되었습니다.

값의 부호를 반환합니다.

if (v < 0) return -1.f; else if (v > 0)는 1.f를 반환합니다. else는 0.f를 반환합니다.

sin : 사인

float sin(float v);
float2 sin(float2 v);
float3 sin(float3 v);
float4 sin(float4 v);
half sin(half v); API 수준 24에 추가되었습니다.
half2 sin(half2 v); API 수준 24에 추가되었습니다.
half3 sin(half3 v); API 수준 24에 추가되었습니다.
half4 sin(half4 v); API 수준 24에 추가되었습니다.

라디안으로 측정된 각도의 사인을 반환합니다.

native_sin()도 참조하세요.

사인코스 : 사인 및 코사인

float sincos(float v, float* cos);
float2 sincos(float2 v, float2* cos);
float3 sincos(float3 v, float3* cos);
float4 sincos(float4 v, float4* cos);
half sincos(half v, half* cos); API 수준 24에 추가되었습니다.
half2 sincos(half2 v, half2* cos); API 수준 24에 추가되었습니다.
half3 sincos(half3 v, half3* cos); API 수준 24에 추가되었습니다.
half4 sincos(half4 v, half4* cos); API 수준 24에 추가되었습니다.
매개변수
v라디안 단위로 입력되는 값입니다.
cos*cos는 코사인 값으로 설정됩니다.
반환 값
v.

값의 사인 및 코사인 값을 반환합니다.

native_sincos()도 참조하세요.

sinh : 하이퍼볼릭 사인

float sinh(float v);
float2 sinh(float2 v);
float3 sinh(float3 v);
float4 sinh(float4 v);
half sinh(half v); API 수준 24에 추가되었습니다.
half2 sinh(half2 v); API 수준 24에 추가되었습니다.
half3 sinh(half3 v); API 수준 24에 추가되었습니다.
half4 sinh(half4 v); API 수준 24에 추가되었습니다.

v의 하이퍼볼릭 사인을 반환합니다. 여기서 v는 라디안으로 측정됩니다.

native_sinh()도 참고하세요.

sinpi : pi를 곱한 숫자의 사인

float sinpi(float v);
float2 sinpi(float2 v);
float3 sinpi(float3 v);
float4 sinpi(float4 v);
half sinpi(half v); API 수준 24에 추가되었습니다.
half2 sinpi(half2 v); API 수준 24에 추가되었습니다.
half3 sinpi(half3 v); API 수준 24에 추가되었습니다.
half4 sinpi(half4 v); API 수준 24에 추가되었습니다.

(v * pi)의 사인(v * pi)을 반환합니다. 여기서 (v * pi)는 라디안으로 측정됩니다.

도 단위로 측정된 값의 사인을 가져오려면 sinpi(v / 180.f)를 호출합니다.

native_sinpi()도 참고하세요.

sqrt : 제곱근

float sqrt(float v);
float2 sqrt(float2 v);
float3 sqrt(float3 v);
float4 sqrt(float4 v);
half sqrt(half v); API 수준 24에 추가되었습니다.
half2 sqrt(half2 v); API 수준 24에 추가되었습니다.
half3 sqrt(half3 v); API 수준 24에 추가되었습니다.
half4 sqrt(half4 v); API 수준 24에 추가되었습니다.

값의 제곱근을 반환합니다.

half_sqrt(), native_sqrt()도 참고하세요.

단계 : 값보다 작은 경우 0, 그렇지 않으면 1

float step(float Edge, float v);
float2 step(float Edge, float2 v); API 수준 21에 추가되었습니다.
float2 step(float2 edge, float v);
float2 step(float2 edge, float2 v);
float3 step(float Edge, float3 v); API 수준 21에 추가되었습니다.
float3 step(float3 edge, float v);
float3 step(float3 edge, float3 v);
float4 step(float Edge, float4 v); API 수준 21에 추가되었습니다.
float4 step(float4 edge, float v);
float4 step(float4 edge, float4 v);
half step(half Edge, half v); API 수준 24에 추가되었습니다.
half2 step(half Edge, half2 v); API 수준 24에 추가되었습니다.
half2 step(half2 Edge, half v); API 수준 24에 추가되었습니다.
half2 step(half2 edge, half2 v); API 수준 24에 추가되었습니다.
half3 step(half Edge, half3 v); API 수준 24에 추가되었습니다.
half3 step(half3 Edge, half v); API 수준 24에 추가되었습니다.
half3 step(half3 edge, half3 v); API 수준 24에 추가되었습니다.
half4 step(half Edge, half4 v); API 수준 24에 추가되었습니다.
half4 step(half4 Edge, half v); API 수준 24에 추가되었습니다.
half4 step(half4 edge, half4 v); API 수준 24에 추가되었습니다.

v < Edge이면 0.f를 반환하고 그렇지 않으면 1.f를 반환합니다.

이는 루프와 분기 명령을 사용하지 않고 조건부 계산을 만드는 데 유용할 수 있습니다. 예를 들어 벡터의 해당 요소에 대해 (a[i] < b[i]) ? 0.f : atan2(a[i], b[i])를 계산하는 대신 step(a, b) * atan2(a, b)를 사용할 수 있습니다.

tan : 탄젠트

float tan(float v);
float2 tan(float2 v);
float3 tan(float3 v);
float4 tan(float4 v);
half tan(half v); API 수준 24에 추가되었습니다.
half2 tan(half2 v); API 수준 24에 추가되었습니다.
half3 tan(half3 v); API 수준 24에 추가되었습니다.
half4 tan(half4 v); API 수준 24에 추가되었습니다.

라디안으로 측정된 각도의 탄젠트를 반환합니다.

native_tan()도 참조하세요.

tanh : 하이퍼볼릭 탄젠트

float tanh(float v);
float2 tanh(float2 v);
float3 tanh(float3 v);
float4 tanh(float4 v);
half tanh(half v); API 수준 24에 추가되었습니다.
half2 tanh(half2 v); API 수준 24에 추가되었습니다.
half3 tanh(half3 v); API 수준 24에 추가되었습니다.
half4 tanh(half4 v); API 수준 24에 추가되었습니다.

값의 하이퍼볼릭 탄젠트를 반환합니다.

native_tanh()도 참조하세요.

tanpi : pi를 곱한 숫자의 탄젠트

float tanpi(float v);
float2 tanpi(float2 v);
float3 tanpi(float3 v);
float4 tanpi(float4 v);
half tanpi(half v); API 수준 24에 추가되었습니다.
half2 tanpi(half2 v); API 수준 24에 추가되었습니다.
half3 tanpi(half3 v); API 수준 24에 추가되었습니다.
half4 tanpi(half4 v); API 수준 24에 추가되었습니다.

(v * pi)의 탄젠트를 반환합니다. 여기서 (v * pi)는 라디안으로 측정됩니다.

도 단위로 측정된 값의 탄젠트를 가져오려면 tanpi(v / 180.f)를 호출합니다.

native_tanpi()도 참조하세요.

tgamma : 감마 함수

float tgamma(float v);
float2 tgamma(float2 v);
float3 tgamma(float3 v);
float4 tgamma(float4 v);
half tgamma(half v); API 수준 24에 추가되었습니다.
half2 tgamma(half2 v); API 수준 24에 추가되었습니다.
half3 tgamma(half3 v); API 수준 24에 추가되었습니다.
half4 tgamma(half4 v); API 수준 24에 추가되었습니다.

값의 감마 함수를 반환합니다.

lgamma()도 참조하세요.

trunc : 부동 소수점 자르기

float trunc(float v);
float2 trunc(float2 v);
float3 trunc(float3 v);
float4 trunc(float4 v);
half trunc(half v); API 수준 24에 추가되었습니다.
half2 trunc(half2 v); API 수준 24에 추가되었습니다.
half3 trunc(half3 v); API 수준 24에 추가되었습니다.
half4 trunc(half4 v); API 수준 24에 추가되었습니다.

잘라내기를 사용하여 적분으로 반올림합니다.

예를 들어 trunc(1.7f)는 1.f를 반환하고 trunc(-1.7f)는 -1.f를 반환합니다.

다른 반올림 옵션은 rint() 및 round()를 참조하세요.