본문 바로가기

게임개발일지

유니티게임개발 - 1.대화 기능 만들기

팀 프로젝트를 하게 됬는데, 당장 할당된 역할이 없어 내 개인 프로젝트에도 사용할 수 있는 대화기능을 구현하기로 했다.에셋도 있으나 공부를 위해 직접 구현했다.

 

<전체적인 대화 실행 모습>
<자동 출력 기능, 문장이 이미 끝났으면 다음으로 넘어가며, 대화가 끝나면 알아서 종료한다>
<스킵 기능>
<선택지같은 중요상황은 스킵이나 자동, 넘기기 등을 제한했다. 조만간 일반 대화에서도 스킵 불가를 적용할 예정>

아직 커스텀에디터 수정요소가 많은 대화 트리거. 파일만 있다면 특정범위의 대화를 에디터에 바로 불러올 수 있다.

부분수정은 안되지만, 전체로 덮어씌우는 건 가능.

 

대화 기능 자체는 튜토리얼이 많이 제공되어 있지만, 선택지는 거의 없는게 놀라웠다.

 

간략히 정리하자면, 선택했을때 출력할 문장의 시작과 끝이 있의 정보가 있는 ChoiceData를 전달받아

클릭하면 그 범위의 대화내용을 빼내어 출력하는 방식이다.

 

외부파일은 최소화하고 싶었기에 당장은 일반대화 + 선택후대화 / 선택지대화 이렇게 두개의 json파일만 사용하도록 할 예정이다.

 

깃허브 링크 : https://github.com/netckle/Dialog

 

<앞으로 작업할 부분>

- 한 글자씩 출력 시, 리치 텍스트의 태그가 보이지 않도록 하기 (다른 분이 구현 해놓았다)

- 커스텀 태그를 이용해, 대화하는 캐릭터의 애니메이션이나 카메라를 조종할 수 있도록 하기

- 대화 트리거 다듬기

- 파일 부분 수정 가능

- 리팩토링으로 깔끔하게 다듬기- 퀘스트 시스템 추가 및 연동?

 

p.s 내일 사망여각 나온다더라 21000원인데 일러도 깔끔하고 재밌을듯