오늘로 사전캠프가 종료되고 9월9일(월)부터 본 캠프가 시작된다.
유튜브 <골드메탈> 영상 시청 및 따라 만들기 - 3D 쿼터뷰 액션게임
추가 및 수정한 스크립트
Player.cs :: 총을 추가해서 해당 마우스 방향으로 총을 발사시 캐릭터가 돌아가게 하는 기능 추가
private void Turn()
{
//지정된 벡터를 향해서 회전시켜주는 함수 - 3D기능
//현재 플레이어 위치에 방향벡터를 더해서 우리가 나아가는 쪽으로 오브젝트를 회전한다는 뜻
//#1.키보드에 의한 회전
transform.LookAt(transform.position + moveVec);
//#2.마우스에 의한 회전
if (fDown)
{
//스크린 -> 월드로 Ray를 쏘는 함수
Ray ray = followCamera.ScreenPointToRay(Input.mousePosition);
RaycastHit rayHit;
if (Physics.Raycast(ray, out rayHit, 100))
{
Vector3 nextVec = rayHit.point - transform.position;
nextVec.y = 0; //마스크가 없기에 부피가 있는 콜라이더 물체를 클릭시 캐릭터가 빙빙 도는 현상을 막기위해 y =0 추가
transform.LookAt(transform.position + nextVec);
}
}
}
followCamera는 현재 화면을 비추는 mainCamera를 가지고있다.
스키린화면(우리가 보는 화면)에서 월드(3D 월드스페이스를 말함)로 레이저를 쏘는데 그방향이 '마우스 위치'로 레이저를 쏜다.
RaycastHit는 레이저가 발사해서 맞은 곳의 data를 가져온다.
즉, 캐릭터가 향하는 방향 nextVec를 벡터의 뺼셈을 이용하여 방향벡터를 구하고
현재 캐릭터의 위치에 방향벡터를 더하여 방향을 수정해준다.
https://www.youtube.com/watch?v=07q9RUTRq4M
: 원거리 무기 로직 구현 및 총알 오브젝트 및 탄피 생성 방법
'내일배움캠프_Unity_6기 > TIL(Today I Learend)' 카테고리의 다른 글
TIL : 2024-09-09(월) :: GitHub 기초 (0) | 2024.09.09 |
---|---|
TIL : 2024-09-07(토) (0) | 2024.09.07 |
TIL : 2024-09-05(목) (0) | 2024.09.05 |
TIL : 2024-09-04(수) (0) | 2024.09.04 |
TIL : 2024-09-03(화) (0) | 2024.09.03 |