https://github.com/BaekNothing/aipoet_haru.git

캡처5.PNG

Haru 는 Unity 2019.4.23f1버전을 기반으로 제작되었습니다.

unity 2019를 선택한 이유는, 2020년 버전 이후의 유니티에는 WebGL로 빌드할 수 없는 치명적인 오류가 있었기 때문에 (2020년 이후 빌드는 웹에서 열었을 때 로딩이 끝나지 않음) 비교적 안정적인 2019년 형을 기반으로 제작했습니다.

캡처6.PNG

창작지능은, Unity에서는 위치와 충돌 여부만 체크하고, 텍스트 생성은 외부의 서버를 이용합니다.

텍스트 생성에 관여하는 서버는 총 2가지로,

서버 1. WebGL 퍼블리싱 및 WebGL과 직접 통신하는 서버

서버 2. "서버 1"에서 텍스트를 받으면 Gpt-3 api를 이용해 새로운 문장을 만들어낸 뒤 서버 1로 다시 돌려주는 서버

입니다. 이 때, 서버 1과 서버 2를 분리한 이유는, Gpt-3를 사용하는 과정에서 python3환경을 세팅하기 위해 리눅스를 사용했는데. WebGL을 배포하는 서버는 윈도우 환경에서 구성되었기 때문에 둘 간의 충돌을 피하고자 의도적으로 분리하여 구성했습니다.

Unity에서는 서버 1, 2와 통신하는 것 이외에도, Yolo, Papago 등의 api를 사용합니다.

캡처10.PNG

서버1,2 의 경우 Nodejs + express로 구성되었으며, 주로 rquest모듈을 사용합니다.

캡처7.PNG

서버가 보내주는 텍스트를 받으면 Unity의 각 개체에 반영됩니다.

텍스트 이외에, 서버에서 받는 날씨 데이터 등의 값으로 인해 각 개체들의 상태가 변화하기도 합니다.

캡처8.PNG