안녕하세요!
오늘 BIC랑 경기게임오디션 서류를 아슬아슬하게 제출하고 오랜만에 개발일지를 씁니다ㅋㅋ
이번에는 저희가 트리거 시스템을 만들면서 겪었던 문제들과, 그 해결에 관해 써보려 합니다

저희 게임의 레벨에는 여러 특수 이벤트들이 존재하는데, 대부분 트리거가 관여하고 있습니다

트리거는 이벤트가 발생하면 조건을 체크해서 액션을 실행하는 단순한 형태입니다
그런데 작업을 마우스로만 하다보니 할 게 많아지자 꽤 불편했지기 시작했습니다


그래서 텍스트 서칭이나, 복사 붙여넣기등 여러 편의 기능들을 추가하게 되었습니다
이렇게 큰 문제 없이 작업을 하나 싶었습니다

하지만 트리거의 갯수자체가 이렇게 많아져버리는 건 또 다른 문제였습니다
갯수가 많다보니 원하는 트리거를 찾기도 힘들고, 어떤 시퀸스인지 한눈에 들어오지 않았습니다
이로 인해 실수가 생겼고, 디버깅을 하느라 또 시간을 써야 했습니다

그래서 만든 것이 트리거 윈도우입니다. (왼쪽이 하이어러키, 오른쪽이 트리거 윈도우) (첫 움짤의 에디터)
트리거들만 모아서 한눈에 볼 수 있게 했습니다.
그리고 트리거가 다른 트리거를 호출하는 경우에 자식으로 둬서, 구조를 파악하기 쉽게 했습니다.

그리고 많은 트리거들을 좀 더 그룹화하기 위해서 Phase라는 단계적 상태를 정의했습니다.
특정 Phase에서만 동작하는 트리거, 특정 Phase 이전에만 동작하는 트리거, ... 이런식으로 자동으로 분석을 해서 분류하는 기능을 만들었습니다.

그래서 많은 수의 트리거들이 단계별로 정렬된 형식으로 보이게 만들었습니다
읽어주셔서 감사합니다!
-------------이전글---------------
1편 소개
2편 괴물
3편 약탈자
4편 파편시스템
5편 대쉬퍼즐
6편 브금소개
7편 스프라이트 순서 처리
9편 대화 시스템
10편 그래픽 리소스 제작과정
11편 레벨 프로토타입 영상
12편 지형 시스템
13편 버려진 레벨들
14편 무기 시스템
15편 룬 시스템
16편 폭탄 퍼즐 레벨
17편 몬스터 제작 과정
18편 모바일 최적화 삽질기
19편 특수효과 발전과정
--------------------------
댓글 영역
획득법
① NFT 발행
작성한 게시물을 NFT로 발행하면 일주일 동안 사용할 수 있습니다. (최초 1회)
② NFT 구매
다른 이용자의 NFT를 구매하면 한 달 동안 사용할 수 있습니다. (구매 시마다 갱신)
사용법
디시콘에서지갑연결시 바로 사용 가능합니다.