Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

게임 프로그래밍

[Unity-Shader] 벡터의 연산 본문

카테고리 없음

[Unity-Shader] 벡터의 연산

Junwe 2020. 4. 28. 16:54

1. 벡터에 숫자를 곱하기

단순히 벡터의 크기가 늘거나 줄어듭니다.(1 이하의 소수점일 경우)

2. 벡터끼리 더하기

각 요소를 더해주면 됩니다. 단 벡터의 단위는 같아야 합니다.

벡터끼리 더하면 재밌는 사실이 나옵니다. '길이가 같은 두 벡터를 더하면, 두 벡터 사이의 절반인 각도가 나온다'는 것입니다.

모든 벡터의 길이를 1로 만드는 단위 벡터로 만드는 경우 이 사실이 굉장히 유용합니다.

3. 벡터끼리 빼기

A벡터에서 B벡터를 빼준다면 B->A 로 향하는 방향이 나오게 됩니다.

이 공식은 쉐이더에서 버텍스가 바로보는 조명의 방향이나 카메라의 방향을 구할 때 주로 사용합니다.

4. 벡터의 곱셈

벡터의 곱셈은 내적(Dot)와 외적(Cross) 두 가지 종류가 있습니다. 여기서는 내적에 관련된 이야기만 하겠습니다.

벡터의 내적은 '두 벡터의 각도의 차이를 숫자로 표현한 것' 입니다.

벡터가 단위 벡터일때 한하여 cos 값은

이렇게 됩니다.

0도에서는 1,

90도에서는 0,

180도 에서는 -1입니다.

 

Comments