유니티) 포물선 궤적그리기
포탄을 날리거나 포탄 궤적을 보여주기 위해 사용된다.
유니티에서는 Line Renderer을 이용해봤다.
나는 포탄궤적이 아닌 캐릭터가 날아갈 점프 궤적을 그리는데 이용했다.
스크립트
셋팅
playerPlane : 라인이 그려질 plane(땅)의 위치를 셋팅해준다. 궤적이 시작하는 위치
마우스로 캐릭터 방향바꾸기 글에서 학습한적이 있었다.
https://funfunhanblog.tistory.com/40 (평면을 결정하는 최소 조건)
targetPoint는 포물선이의 끝점이된다. (내 게임에서는 노란색 circle에서 최종 위치를 받아온다)
체크
Raycast를 통해 마우스가 위치하는 곳을 가져온다.
center : 시작벡터와 착지위치벡터의 합에 1/2은 위치가 포물선의 중간위치가 된다.
targetRotation : 라인위치와 최종위치를 빼면 포물선의 방향백터를 구할 수 있다.
(벡터OA -벡터 OB = 벡터BA) center가 아닌 캐릭터의 위치로 계산해도됨)
Physics.Linecast : 포물을 그리는 라인에 물체가 걸리면 부딪힌 지점을 넘겨준다.
실제로 궤적(라인)을 그리는 부분
theArc : 두 벡터 사이를 원하는 간격으로 보간 부분
(이해를 못함.. 이쪽은 공부가 필요하다)
lineRenderer.SetPosition : 위에서 구해준 라인의 벡터들의 위치를 설정
학습참고 : http://maedoop.dothome.co.kr/660
'유니티 > 기능구현' 카테고리의 다른 글
유니티) 타이머를 만들기 (일시정지) (0) | 2020.12.30 |
---|---|
유니티) 가변셀, 가변스크롤 LayoutRebuilder.ForceRebuildLayoutImmediate (0) | 2020.07.23 |
유니티) 미니맵 만들기 RenderTexture (0) | 2019.02.25 |
유니티) 오브젝트 레이캐스트 검출하기 (Physics.Raycast) (0) | 2019.02.21 |
유니티) 마우스로 캐릭터 방향 바꾸기 ScreenPointToRay(Input.mousePosition) (1) | 2019.01.04 |