inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진

Camera #3

캐릭터의 이동과 RigidBody 관련 설정에 대해서

해결된 질문

682

leomessi

작성한 질문수 50

1

본 수업의 다른 질문에서 '불멸의너구리좌'님께서 말씀해주신 질문과 비슷한 문제인데요,

RigidBody 컴포넌트에 의해 캐릭터가 이동 및 회전 시 물리적인 힘이 가해지고, 이 힘이 계속 남아있어 한번 넘어지게 되면 다시 이동을 시켜도 계속 넘어진 상태로 있게 됩니다.

이 점을 해결하기 위한 좋은 방법은 y축을 Freeze하는 방법이 제일 좋은 방법인가요?

또 하나 파생 질문을 드리자면 예를 들어 오버워치는 캐릭터가 평소엔 벽에 부딪혀도 쓰러지거나 하지 않는데, 캐릭터가 사망하게 되면 쓰러져서 데굴데굴 굴러다니게 됩니다. 이런 상황에서는 평소엔 y축이 Freeze 상태였다가 생명력이 0이 되면 Freeze가 풀리게 되는 식으로 구현이 되는 건가요?

3D 게임에서 캐릭터 오브젝트들의 RigidBody를 어떻게 설정해주는게 보편적인지 궁금해요.

C# unity

답변 3

2

Rookiss

맞습니다.
배그같은 실사 FPS 게임이 아니라면
저런 엄격한 물리 판정이 필요할 일이 거~~의 없죠. (특히 RPG 기준으로)

2

Rookiss

y축 고정보다 더 확실한 방법은, 그냥 유니티 물리를 적용받지 않게 설정하는건데요.
RigidBody 설정에서 IsKinematic 체크박스를 클릭하시면 됩니다.
(물론 이렇게 될 경우 중력은 알아서 처리를 해주긴 해야합니다)
사실 극히 예외적인 경우가 아니면
보편적인 장르에서 유니티 물리를 적용할 일은 거의 없다고 보시면 됩니다.
정말 필요하다면 말씀하신대로 유닛이 죽을 때 화려하게 구른다거나~ 할 때만 잠시 켜주면 되겠죠.

0

leomessi

아 그렇군요.. 전 저 현상이 거슬려서 isKinematic을 켜주긴 했는데 중력 작용은 해주고 싶어서 좀 딜레마였습니다.

결론은 유니티 엔진에서 만드는 게 물리 시뮬레이션같은 것도 아니고, 일반적인 게임에서는 그렇게까지 필요하진 않다는 말씀이시죠?

UI 기능 관련 질문이 있습니다!

0

37

2

픽셀 좌표 스크린 좌표

0

33

0

전체적으로 코드 읽는게 굉장히 오래 걸리네요...

0

73

2

카메라 #2 수업 캐릭터 쓰러짐 해결

0

84

1

플레이어 움직임이 끝날때, 기울어짐 현상

0

83

1

Input 적용과 관련하여 질문 있습니다.

0

75

1

디버그 불가.. Unity에 연결 불가

0

82

1

달리기 애니메이션 에러

0

89

2

오랜만에 게임을 만들다가 사운드 관련해서 뭔가 궁금한게 있어서 봤습니다

0

66

1

GetKey 오류

0

109

2

에셋을 어디에 올려두신지 알 수 있나요?

0

107

1

재귀호출? 오류나는데 왜 이래요 ?

0

169

6

Animation blending 파라미터 계산

0

68

1

newPos와 to지점이 겹쳐져야 하는거 아닌가요?

0

97

3

오브젝트 복제하니까 자꾸 이런게 뜨면서 꺼집니다

0

88

2

질문있습니다

0

143

2

아 이거 소스코드 같은거 없나요?

0

142

3

질문 드립니다. string.IsNullOrEmpty(name)

0

87

2

@Managers 가 씬에 배치되어 있어도 문제가 되지 않나요?

0

136

2

유니티6 NavMesh 안되는분들

1

176

1

Unity6 Unity-Chan Material 마젠타 문제 해결법

7

527

1

GetComponent<Poolable> 질문드립니다.

0

102

2

UI 불러오지 못함

0

118

2

UI 자동화 #1 - Util.cs의 FindChild함수에서 component.name에 컴포넌트 이름이 뜹니다.

0

155

2