공부/Unity

24.05.14

월러비 2024. 6. 9. 10:59

 

  • 주먹공격 공격 위치에 있는 플레이어의 충돌체를 찾아 그 자리에 파티클 출력하고, 타격지점이 없다면 적 위치에 파티클 출력하게끔 바꿨다.
  • IDamage / Enemy / Melee 수정
  • Fist / Sword 프리펩 Hit Particle Position 수정
  • Collider.ClosestPointOnBounds : 충돌체로부터 가장 가까운 좌표를 반환하는 함수 ⇒ 이걸로 충돌 위치에 파티클을 출력할 수 있게 할 수 있다.

 

  • 월드좌표는 역행렬 함수(transform.InverseTransformPoint : 좌표 역행렬 실행 함수)롤 사용하여 뒤집으면 ‘로컬좌표’가 된다.
    • Transform.InversePoint : 좌표 역행렬 수행 함수
    • Transform.InverseDirectin = 방향(rotation) 역행렬 수행 함수
    • Transform.InverseVector = 벡터(Transform, Rotation, Scale 전부 바꿈) 역행렬 수행 함수
    • 월드 좌표 = World Matrix
    • 충돌위치 * 월드위치 : 파티클생성하면 적 위치에서 살짝 뒤쪽에 나온다.
      • Position * World Matrix = World Position * World Matrix^-1 = Position
    • 충돌위치(Local 위치) * 적 월드위치 → (Transform.Position? 아니면 뭔 함수가 있다) 좌표변환 → 어떠한 위치 * 적 월드위치 역행렬 → 역행렬 수행 → 충돌위치(L)
  • IDamage → IDamagable / Enemy / Melee 수정 → 충돌 위치에 파티클 출력 미완성

 

  • 기능 테스트 꿀팁 : 유닛테스트에 리소스즈 폴더를 만들어 아무 오브젝트를 만든다음 그걸 소환시켜서 확인해본다.
  • hitPoint와 적 월드좌표가 만나면 hitPoint에 월드좌표만큼 벡터변환이 이뤄져서 파티클 위치가 적 월드좌표 뒤쪽에 생성되므로, 변환된 벡터에 hitPoint를 역행렬 변환하여 원래 위치로 가져온다.
  • IDamagable / Enemy / Melee 수정 → 근거리 완료
  • Warp를 위한 기본 프리펩과 스크립트 생성
  • Player 프리펩에 Weapon Component에 Warp 프리펩을 넣었다.

 

  • Warp 관련 애니메이션 가져오기 / 애니메이션 컨트롤러 정리 / 워프에 쓸 이펙트 가져오기
  • Warp 를 위해 WeaponComponent , WeaponDatas , Player 에 무기 추가 관련 코드 작성(원래 있던거에서 이름하고 버튼만 바꿈)

 

  • 워프 애니메이션 실행
  • 애니메이션 실행 관련 함수 코드 작성

'공부 > Unity' 카테고리의 다른 글

24.05.17  (0) 2024.06.09
24.05.16  (0) 2024.06.09
24.05.13  (0) 2024.06.09
24.05.10  (0) 2024.06.09
24.05.09  (0) 2024.06.09