게임 개발/개발 일기(18)
-
[ 개발 일기 ] FSM은 어렵다
근데 구조를 짜고 에디터를 짜서 Unity Graph view를 사용해 FSM을 사용하기 편하게 만드는 것은 어렵다.Unity Graph View에 대해서는 찾아봐도 자료가 잘 안 나온다. 사실 자료는 나오긴 하는데 Unity 공식 문서거나, 2019년도 자료가 대부분이다. 유튜브 동영상을 하나 찾긴 했는데 코드로 설명하면 알아듣겠으나 영상에 대부분이 말로만 설명해 조금 더 찾아봐야할 것 같다. 그래도 프로젝트는 진행해야되니 일단은 Enum 형태로 디자인했다.using System.Collections;using System.Collections.Generic;using UnityEditorInternal;using UnityEngine;public enum TempFSMDesignAIState{ ..
2024.05.29 -
[ 개발 일기 ] FSM 디자인 고민중..
현재 FSM 디자인을 고민 중이다.Chicken Fly에서 Boss AI를 짤 때 사용할 겸 제작해보고 있는데 뭔가 마음에 들지 않는다.. 일단 원래 짜려고 했던 건 Root AI 오브젝트 아래에 여러 State가 있고, Editor를 활용해 Transition과 조건들을 설정할 수 있게 제작하려고 했다. 그런데 FSM_State를 상속한다고 Editor가 상속되지는 않아서 실패했다. 그래서 일단 오브젝트 밑에 자식으로 오브젝트를 생성해 AI가 실행되도록 해놨는데, 뭔가 오브젝트 밑에 여러 오브젝트가 들어가 한 눈에 잘 보이지가 않는다.( 나중에 버그 나면 쉽게 못 찾을 것 같다. ) 다른 작품에서는 이렇게 AI_Controller를 상속하는 오브젝트를 만들어서 State 구조를 코드에서 제작했다.근..
2024.05.28 -
[ 개발 일기 ] SO, Prefab을 에디터에서 저장하기
최근 졸업 작품에서 이전에 만든 Feedback Player를 사용하는데 문제가 발생했다. [ 개발 일기 ] Feedback Player ( Custom Editor )ㅎ.ㅎ 전에 불값으로 Feedback Player의 Feedback을 키고 끄고 했었는데뭔가 확장할 일이나 Feedback을 추가할 일이 생겼을 때 불편할 것 같아 결국 컴포넌트 형식으로 변경했다. 근데 그렇다고 만들어rivermountain.tistory.com Feedback을 추가하고 저장 후 프리팹을 껐는데 추가한 Feedback이 저장되지 않는 문제가 생겼다. Feedback의 Serialize Value를 수정할 경우에는 저장이 되었기에 한 번 문제에 대해 찾아보았더니EditorUtility.SetDirty()라는 것에 대해 알..
2024.04.26 -
[ 개발 일기 ] Feedback Player 가지고 놀기
이런 느낌의 피드백을 추가해서 완성한 FeedbackPlayer를 가지고 놀았다. HitFeedback 으로 이름을 수정해야하나 살짝 고민중.. 일단 한동안 Feedback 여러 가지 추가해보면서 개발 공부를 진행할 것 같다. Procedural Animation은 언제서부턴가 뒷전이 되어버렸다.
2024.04.24 -
[ 개발 일기 ] Feedback Player ( Custom Editor )
ㅎ.ㅎ 전에 불값으로 Feedback Player의 Feedback을 키고 끄고 했었는데뭔가 확장할 일이나 Feedback을 추가할 일이 생겼을 때 불편할 것 같아 결국 컴포넌트 형식으로 변경했다. 근데 그렇다고 만들어둔 에디터를 지우기는 또 아까워서다른 형식으로 에디터를 제작해보았다. Cinemachine에서 참고해서 Button을 눌러서 Feedback을 추가할 수 있도록 제작했다.( Cinemachine 처럼 Popup은 어캐하는지 모르겠다. ) 일단 지금은 이런 식으로 추가할 피드백마다 일일히 적어줘야하는 형식이다.다른 방식이 떠오르면 더 좋은 것으로 수정할 것 같다. 혹여나 더 좋은 생각이 있다면 댓글로 달아주기 바란다.
2024.04.23 -
[ 개발 일기 ] Unity Custom Editor 만져보기
졸업 작품하느라 개인적인 개발 공부가 하고 싶어서 남는 시간에개인 프로젝트를 하면서 다양한 개발 공부를 해보고 있다. 개인 프로젝트를 진행하면서 코드 구조도 깔끔하게 짜보는 연습을 하며여러 종류의 매니저와 인터페이스부터 제작하고 있다. 개인 프로젝트는 Procedural Animation 연습을 위해 시작했는데뭔가 다른 걸 더 많이 하는 것 같다. 아무튼 그렇게 개발을 하면서 Unity Custom Editor를 한 번 사용해봤다. 데미지를 받을 때 효과를 주는 피드백 플레이어인데 여기서 피드백을 추가할 때 피드백을 다른 컴포넌트로 추가하면 인스펙터창이 더러워질 것 같아하나로 관리하기로 했다. 피드백이 3종류 밖에 없기도 하고..사실 컴포넌트로 추가하는 방식으로 해도 큰..
2024.04.19