낑깡의 게임 프로그래밍 도전기

2023년 8월 23일 수요일 유니티 C# 키네마틱, Tag, Class, Time.deltaTime, normalized, Force 본문

Unity C#

2023년 8월 23일 수요일 유니티 C# 키네마틱, Tag, Class, Time.deltaTime, normalized, Force

낑깡겜플밍 2023. 8. 23. 21:01
반응형

키네마틱은 중력의 영향, 물리적의 영향을 안받는 상태다.

무적 아이템을 먹는다면 뚫고 지나간다면 콜리전을 끄는것도 방법이고 다 뿌시고 간다면 키네마틱을 키는 것도 방법이 겠다.

 

오브젝트 이름으로 찾으면 이름이 바뀌면 에러

테그는 편리하지만 몬스터의 종류가 늘어날때 마다 하나하나 씩 다 만들어줘야함

 

클래스하는법

 

스타트로 초기화 하는법
나랑 부딪친 게임오브젝트에서 컴포넌트를 찾아라

널이아니면 몬스터를 가져온거(가져오기 성공)

현재 몬스터가 너무 추상화되어있어서 슬라임 파괴가 어려움 좀더구체화 시켜줘야함 상속을 통해서

 

 

컴퓨터마다 성능이 달라 스피드가 차이 나는 문제 해결

Time.deltaTime

 

대각선으로 갈때 빨리가는 것해결 (D와W같이 눌렀을때)

D와 W를 같이 누르면 (1, 1, 0)이 되므로 피타코라스의 법칙에 따라 root2씩이동한다.

이렇게 해결. vec.normalized
리지드바디를 통해서 속도 제어. 해당으로 하면 죄표자체를 바꾸는 Tanslate와는 달리 벽을 뚫을 일이 없다
물론 노멀라이즈드를 추가해줘야 똑같은 길이로 간다

 

AddForce 는 월드좌표계 기준

AddRelativeForce 는 로컬좌표계 기준

 

중력에대한 힘때문에 다시 업을 해도 그 힘만큼 받지 못함 그래서 벨로시티를 0으로 초기화하고 다시 재생하면 원하는 힘만큼 올라간다

 

반응형