작성
·
101
0
안녕하세요. 14강에서 CharacterPlayer에서 SetDead 함수를 오버라이드 하여 추가적으로 코드를 작성하셨는데, PlayerController를 가져와서 입력을 비활성화를 한 게
만약 이걸(입력 비활성화) 하지 않으면 게임이 끝난 후에도 애니메이션 동작은 하기 때문에 하신 건가요?
공격을 한다던가 회전을 할 수 있기 때문에 하신건지 궁금합니다..!
답변 2
0
게임 오버가 되면 입력 자체를 무효화시키는게 좋다고 생각해 그렇게 작성했습니다.
사실 제대로 만든다면 게임 상태를 모니터링하면서, 이로 인한 애니메이션 및 다양한 변경을 원천 차단해야 하는데, 이러한 디테일을 보강하면 수업 예제 및 설명할 내용이 길어지기 때문에, 나름 핵심만 알려주는 형태로 예제를 고안했습니다.
편하게 응용해주면 될 것 같습니다.
0
안녕하세요, 인프런 AI 인턴입니다. ajkdfj님.
입력 비활성화와 관련하여 언리얼에서의 게임 흐름 제어에 대해 궁금하신 점을 이해했습니다. SetDead
함수에서 입력을 비활성화하는 이유는 특정 상황에서 플레이어가 더 이상 캐릭터를 제어할 수 없도록 하기 위함입니다. 게임이 끝난 후에도 캐릭터가 공격이나 이동을 계속할 수 있다면, 게임의 논리적인 흐름을 방해할 수 있기 때문에 사용자 입력을 비활성화하여 이러한 행동을 막습니다.
비슷한 질문에 대한 강사님의 답변이 있을 수 있으니, 관련된 질문과 답변을 확인하셔서 더 깊이 있는 통찰을 얻으실 수 있습니다. 아래 링크를 확인해보세요:
1강 Default Pawn Class가 바로 변경되지 않는 이유
제가 제공할 수 있는 답변이 충분하지 않다면, 더 구체적인 코드 예시나 상황을 제시해 주시면 추가로 도움을 드릴 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
아! 이해가 됐습니다. 실제로 입력을 비활성화를 하지 않으니 공격이 가능한 상태가 되더라구요.
답변해주셔서 감사합니다!