개요 정말 오랜만에 2D프로젝트를 만들고있다. 무한 런게임을 제작중인데, 공중 발판을 제작하던 중 생각해보니 '캐릭터가 발판 아래에서 점프를하면 발판에 충돌하지 않고 위로 올라가야할텐데...' 라는 생각이 들어 찾아보게 되었고 해법을 정리한다. 본문 처음에는 이렇게 생각했다. 1. 플레이어가 발 아래로 캐스팅을 쏴서 발판의 콜라이더를 온오프? 2. 반대로 발판이 오버랩 검사를 해서 플레이어가 위에있을때만 콜라이더를 온? 하지만 연산이 걱정되기도하고 워난 플랫폼 게임이라면 항상있는 소위말하는 국룰이니까 찾아보면 있을것같아서 찾아봤다. 검색어를 어떻게 해야할지 난감해서 'unity 2d air platform' 'unity 2d up platform' 이런식으로 검색해봤는데 정답은 "One-Way Platf..
Raycasthit은 구조체 이고 레이캐스트를 할 때 맞은 오브젝트에 대한 정보를 담아서 out하는 구조체이다 그 안에는 바로 접근가능한 transform과 collider멤버를통해 collider.transform으로 접근가능한 transform이 있다. 둘의 차이는 만약 레이캐스트에맞은 오브젝트가 리지드바디가 있을경우 Raycasthit.transform은 리지드바디가 붙어있는 Transform을 반환한다. 예를들어 이런식으로 루트부모에 리지드바디를달고 그 자식에 콜라이더를 달아놓으면 자식 콜라이더의 사이즈대로 충돌을 체크하겠지만 Raycasthit.transform은 리지드바디가있는 루트부모인 ZergelingMonster를 반환한다. 여기서 콜라이더가 붙어있는 오브젝트를 반환받고싶다면 Raycas..