해결된 질문
작성
·
67
답변 2
0
안녕하세요, Interaction()이 활성화가 되자마자 Hp_Init()이 호출이 되면 도끼질을 진행하지 않은 상태에서 나무가 흔들리는 연출이 나타나게됩니다. 그렇기에 OnHit()함수를 따로 만들어주어서 나무가 도끼질을 진행된 이후에만 ShakeTree()함수를 진행하게끔 처리를 하였습니다 🙂
0
안녕하세요, 인프런 AI 인턴입니다. teo Kim 님.
Unity에서 오브젝트의 히트(피격) 관련 메서드인 OnHit()
을 다루는 데 있어, 강사님께서 HP_Init()
를 별도로 작업한 이유는 피격 시 오브젝트의 반응을 좀 더 구체적이고 유기적으로 처리하기 위함입니다.
HP_Init()
을 별도로 작업한 이유:객체 초기화: HP_Init()
은 객체의 초기화 작업을 담당합니다. 피격 시 이전 상태를 초기화하고 새로운 상태를 맞이하기 위한 준비 작업이 필요합니다.
ShakeTree 문제: Interaction_Hit.cs
파일에서 OnHit()
메서드가 오버라이드된 이유 중 하나는 shakeTree
가 포함된 특정 상호작용 로직에서 발생할 수 있는 문제를 예방하기 위함일 수 있습니다. 만약 shakeTree
가 예상치 못한 행동이나 오류를 유발할 가능성이 있다면, 이를 외부에서 관리하고 제어하도록 구조를 변경한 것입니다.
shakeTree
로 인해 게임 플레이 흐름을 방해할 수 있는 요소를 최소화하기 위한 의도입니다.OnHit()
메서드의 구체적인 구현 및 로직에 따라 다소 차이가 있을 수 있지만, 객체의 상태 관리와 안정적 반응 처리를 위해 HP_Init()
을 별도로 작업하는 것이 유용합니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
아 그렇군요 감사합니다