일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- C++최적화
- moreeffectiveC++
- UE_LOG
- 데이터애셋
- 구조적 바인딩
- 알고리즘
- 강참조
- 자료구조
- 델리게이트
- 정렬알고리즘
- 애셋로드
- 언리얼가비지컬렉터
- 스마트포인터
- map
- 프로그래머스
- 약참조
- BFS
- C++
- UML관련
- dataasset
- 람다
- 선택정렬
- 정렬
- tweakobjectptr
- enumasByue
- 비동기호출방법
- makeweakobjectptr
- stl
- 크리티컬섹션
- unorder_map
- Today
- Total
기억을 위한 기록들
액터간의 거리 구하는 함수(Get Distance to)(feat.Size) 본문
1. 개요
게임을 하다보면 캐릭터와 캐릭터 간의 거리를 구해야한다.
플레이어와 몬스터
플레이어와 아이템
등등 거리로 가능하고 불가능한 설정들을 해주기 전에
얼마나 적당한 거리에 있는지를 확인 해야 한다.
2. 함수 사용
쉽게 구할 수 있다. 함수 내부를 살펴보자
다른 액터와 플레이어 액터의 Location 뺀 다음 Size() 함수를 사용해 리턴 해준다.
Size 함수를 보자.
플레이어와 적 캐릭터의 위치를 뺀값을 벡터의 크기(길이)를 구한다.
(FMath 클래스 Sqrt()함수 -> 제곱근(https://ko.wikipedia.org/wiki/%EC%A0%9C%EA%B3%B1%EA%B7%BC)을 사용한다.)
Get Distance To 함수내부와 같이 계산해보자
나온 xyz값을 Size() 함수대로
4. 함수 해석 구현
결론:
GetDistanceTo 함수로 거리를 구하자
* VectorLength는
*피타고라스의 정리 사용(결과 같음)
https://www.youtube.com/watch?v=DuxaTK_DEOo
* 부족하거나 이상한 부분 태글해주시면 감사하겠습니다.
'그래픽스(Graphics) > Game Math' 카테고리의 다른 글
[3D 게임수학] 2. 벡터(Vector) (0) | 2021.02.15 |
---|---|
[3D 게임수학] 1. 선형대수(Linear Algerbra) (0) | 2021.02.08 |
UE4 쿼터니온 활용 참고 (0) | 2020.05.18 |
Quaternion (쿼터니온/사원수) (0) | 2020.05.13 |
[UE4]액터간의 방향을 구해보자 (1) (0) | 2019.11.10 |