반응형
1. 원형 발사체.
Vector2 dirVec = new Vector2(Mathf.Cos(Mathf.PI * 2 * i / roundNum) ,
Mathf.Sin(Mathf.PI * 2 * i / roundNum));
rigid.AddForce(dirVec.normalized * 6f, ForceMode2D.Impulse);
2. 부채꼴 모양 발사체.
Vector2 dirVec =
new Vector2(Mathf.Cos(Mathf.PI * 10 * curPatternCount / maxPatternCount[patternIndex]),-1);
rigid.AddForce(dirVec.normalized * 3, ForceMode2D.Impulse);
3. 벡터의 각도 구하기. (역함수)
Vector2 ObjectA;
Vector2 ObjectB;
Vector2 Direction = ObjectA - ObjectB;
float Angle = Mathf.Atan2(Direction.y, Direction.x) * (180 / Mathf.PI)
// Mathf.Atan2() : 라디안값 | * (180/Mathf.PI) : 라디안 -> 각도 변환식.
https://alpaca-code.tistory.com/80(자세한 글)
4. 각도로 (방향)벡터 구하기
https://www.gpgstudy.com/forum/viewtopic.php?t=18665
5. 두 벡터의 사이 각도 구하기 (벡터의 내적)
float GetAngleByTwoVector(Vector2 vec1, Vector2 vec2) {
float theta = Mathf.Acos(Vector2.Dot(vec1, vec2) /
(vec1.magnitude * vec2.magnitude));
return theta * (180 / Mathf.PI);
}
이 함수에 vec1, vec2를 넣으면 사이각 (둘중 180도 이하인 각)을 출력해줌.
이상으로 도움이 되었길 바라며,
끝.
반응형
'게임 개발 > 게임수학' 카테고리의 다른 글
벡터의 외적. (정의, 크기 계산법, 계산 방법, 방향 결정법, 활용법) (0) | 2023.11.03 |
---|---|
오일러각의 정의, 문제점과 사원수의 특징, 사용이유 (0) | 2023.10.12 |
단위 벡터로 만들기. 벡터 크기 1로 만들기. 벡터의 정규화 하는법. (2) | 2023.01.17 |
소박한 집합론(수의 종류,구분) (0) | 2022.11.26 |
유니티) 2, 3차원에서 적용 가능한 벡터의 정규화 방법. (0) | 2022.11.18 |
댓글