정리필요

float half fixed 부동소수점

imitme 2018. 4. 11. 14:00
반응형

쉐이더 ; 화면에 어떻게 그릴지 정의한 코드


Float

#부르기

Float는 소수점 숫자를 자주 쓰는 단위이다.

Float는 '부동소수점이라고 부르기도 한다.

Float는 '적당한 수준의 소수점'이라 생각하면 쉽다.


#크기

Float는 32비트(4바이트)용량을 가진다.

Float는 소수점 아래 6자리까지 표현 가능한 숫자의 단위이다.


Float의 표현범위는 간단하게 쓰기에는 큰 느낌이다.

Float의 표현범위는 정밀하게 쓰기에는 다소 부족한 정도의 느낌이다.



#사용

Float는 정밀할 필요가 있는 데이터를 표현할때 사용한다.

Float계열의 숫자는 소수점을 가지고 있는 단위이다.

Float계열의 숫자는 소수점을 표시해주고 끝에 f라는 표시를 해주는 것이 일반적이다.(문법)




Half

#부르기

half로 (Nvidia쪽 GPU에서) 연산할 때, 연산수가 2배로 빨라진다.


#크기

half는 float의 1/2크기이다.

half는 16비트(2바이트)용량을 가진다.


#사용

half는 범위나 정밀도가 필요한 것에 쓰인다.

half는 Metallic, Smoothness, Occlusion 을 정의할 때 사용한다.



Fixed

#부르기


#크기

fixed는 half보다 더 작은 크기이다.

fixed는 11비트이다.


#사용

fixed는 컬러나 벡터 길이 표현할 때 사용한다.

fixed는 Albedo, Normal, Emission 을 정의할 때 사용한다.



#구조체 안에 정의된 내용

struct SurfaceOutputStandard

{

fixed3 Albedo;

fixed3 Normal;

fixed3 Emission;

half Metallic;

half Smoothness;

half Occlusion;

half Alpha;

}


#비교

크기 : Float > Half > Fixed

사용 정밀 : Float > Half > Fixed


float의 1/2크기는 half이다.

float과 half보다 더 작은 크기는 fixed이다.




부동소수점(floating point)

부동소수점은 실수를 컴퓨터 상에서 근사하게 표현할때 소수점의 위치를 고정하지 않고 소수점의 위치를 나타내는 수를 따로 적는 것이다.

부동소수점은 유효숫자를 나타내는 가수와 소수점의 위치를 풀이하는 지수로 나누어 표현한다.

부동소수점은 고정소수점방식보다 넓은 범위의 수를 나타낼 수 있다.

부동소수점은 고정소수점방식보다 과학기술 계산에 많이 이용된다.

부동소수점은 근사값으로 표현된다. (본래 이진법에서는 십진수 소수가 정확히 표현되지 않는다.)

부동소수점은 고정소수점방식보다 연산속도가 느리다.

부동소수점은 별도의 연산장치를 두는 경우가 많다.

부동소수점은 고정소수점방식과 달리 정수부분과 소수 부분의 자릿수가 일정하지 않다.

부동소수점은 고정소수점방식과 달리 유효숫자의 자릿수는 정해져 있다.


부동소수점방식은 32비트 컴퓨터과 IEEE에서의 방식이 다르다.

부동소수점방식은 IEEE(전기 전자 기술자 협회)에서 개발한 표현방식이 가장 널리 쓰이며 표준이다.

반응형