본문 바로가기
AI/AI활용

[ AI로 게임 만들기 ][ GPT3.5 ] 01_프로토타이핑 - 모험 씬 기능 도출

by OhEasy 2024. 3. 27.
728x90

이전 글은 아래 링크 참조
일하면서 하다보니까 작업 시간이 매우 적다. (야근 개싫음)

 

[ AI로 게임 만들기 ][ GPT3.5 ] 00_컨셉 및 디자인

깃허브 설정 이런 내용은 생략 이전 글은 아래 링크 참조 [ AI로 게임 만들기 ] GPT3.5 vs Google Gemini 시작 약 1년정도 지켜 보니 AI를 안쓰면 ㅎㄱ 같다. ㅎㄱ 되기 싫으니 나도 한번 써봐야 겠다. 1. 규

525easy.tistory.com

1. 작업 내용 - 프로토타이핑 - 모험 씬 기능 도출

GPT가 제공해 준 작업 순서는 다음과 같다. 기니까 접어둔다.
(복붙 시 번호가 안붙는 상황이 나와서 내용 복붙 후 번호만 붙임)

더보기

1. 컨셉 및 디자인 단계:
게임의 핵심 메커니즘 및 재미 요소를 결정합니다.
게임의 세계관, 스토리, 캐릭터, 백그라운드 등을 설계합니다.

2. 프로토타이핑:
기본적인 게임 메커니즘을 구현한 프로토타입을 만듭니다.
플레이어의 움직임, 환경 상호작용, 기본 적과의 전투 등을 구현합니다.

3. 2D 아트 및 애니메이션 제작:
캐릭터, 배경, 아이템 등에 필요한 2D 그래픽을 디자인합니다.
필요한 애니메이션을 만들어 캐릭터 및 게임 요소에 적용합니다.

4. 레벨 디자인:
탐험 가능한 세계를 설계합니다.
던전, 지형, 비밀 통로 등을 배치하고 연출합니다.

5. 게임 로직 구현:
플레이어의 조작, 아이템 사용, 적과의 전투, 퀘스트 시스템 등의 게임 로직을 프로그래밍합니다.

6. 생성형 AI 구현:
생성형 AI를 사용하여 매번 새로운 지형, 던전, 아이템을 생성하는 시스템을 구현합니다.

7. 사운드 및 음악 추가:
게임 플레이에 필요한 효과음과 배경 음악을 추가합니다.

8. 테스트 및 디버깅:
게임의 오류를 찾고 수정하며, 균형을 맞추기 위해 게임을 반복해서 플레이합니다.

9. 최적화 및 마무리:
게임의 성능을 최적화하고 필요한 추가 기능을 구현합니다.
게임을 출시할 준비를 마치고 마무리 작업을 진행합니다.

10. 출시 및 마케팅:
게임을 적절한 플랫폼에 출시하고, 마케팅을 통해 게임을 홍보합니다.
플레이어들의 피드백을 수집하고 게임을 업데이트하여 지속적으로 향상시킵니다.

 

  • 이번 글은 이전 글에서 도출한 플레이 사이클 기반 프로토타이핑 제작 과정을 다룬다.

2. 모험씬 기능 도출

1)  개요

픽스한 사이클

  • 위 UML 차트는 이전 글에서 도출한 사이클 정보다.
  • 해당 내용을 확인하면 플레이어의 주된 행동은 대부분 [ 모험 씬 ]에서 이루어진다.
  • 위를 토대로 모험 씬에 필요한 기능들을 우선 산정한다.

2)  필요 기능 리스트 산정

2.1) 기능 도출

  • 모험 씬에서 필요한 기능 리스트를 요청한다. 그럴싸한 내용들이 나온다.
  • 하지만 Unity를 통해 개발을 할 것이고 코드 또한 작성할 것이기 때문에 아래와 같은 추가 질문을 한다.

2.1) 클래스별 기능 리스트 분류

  • 첫 질문에서 산정한 기능 리스트를 각 클래스마다 분류 해주었다.
  • 클래스 및 기능 목록은 아래 표와 같다.
클래스     기능 목록
AdventureScene
  • 던전 선택 기능
  • 던전 탐색 기능
  • 전투 시스템 관리
  • 아이템 사용 기능
  • 플레이어 상태 표시 기능
  • 던전 완료 조건 확인
  • 보상 제공 기능
  • 플레이어 사망 처리 기능
Dungeon
  • 던전 맵 생성
  • 던전 내부 환경 표시
  • 적 생성 및 배치
  • 보상 아이템 배치
Player
  • 공격 기능
  • 방어 기능
  • 아이템 사용 기능
  • 상태 관리 (체력, 마나, 경험치 등)
Enemy
  • 공격 기능
  • 플레이어 추적 및 공격
  • 상태 관리 (체력 등)
Item
  • 아이템 효과 적용
  • 아이템 사용 시 효과 적용
UIManager
  • 플레이어 상태 표시
  • 메시지 출력 (던전 탐색 중, 보상 획득 등)
GameManager
  • 게임 상태 관리 (던전 탐색 중, 전투 중, 보상 획득 중 등)
  • 던전 완료 여부 확인 및 처리
  • 보상 제공
  • 위 목록만 가지고는 헛소리 연발일 것이다. 각 클래스에 필요한 데이터, 기능, 참조 정보들을 정리하기 위해
    아래와 같은 과정을 거친다.

2.2) 데이터 및 참조 정보 정리

  • 위 내용은 역시 Draw.io를 통해 다이어그램화 한다.

  • 비전공자로써는 뭔소리를 하는지 알아보기 힘들다. 설명해 달라 한다.

  • 위 내용(UML) 정보는 별도 파일로 저장한다.

  • 저장하는 이유는 해당 내용과 이전 정보들을 통해 별도의 채팅방에서 기능 개발이 가능하도록 하기 위함이다.
  • 그렇기 때문에 플레이 사이클 정보가 담긴 UML, 게임의 핵심 정보들은 별도 파일로 계속 보관해 나간다.

3. 개발 환경 셋팅

1)  프로젝트 생성

유니티

  • 2D(URP) 신규 프로젝트를 생성한다.
  • 모바일 출시 예정이기도 해서 URP로 만들었다. (아는 개발자 분이 더 좋다 말씀해주심.)

2)  타채팅방 검증

  • 타 채팅방에서 최소한의 정보만을 사용하여 기능 개발이 가능한지 검증한다.
  • 이는 많은 채팅들로 인해 저장된 정보들이 손실 되었을 경우 다른 채팅방에서 이어서 작업 가능한지 여부를 판단하기 위함이다.

  • 이전 채팅방에서 제공한 정보들을 토대로 추가적인 학습 및 보완 과정을 실시한다.

  • GPT3.5 가 답변한 것은 클래스다이어그램이다. 무시한다.

  • 제공한 기능 목록을 통해 이전 채팅방에서 얻은 UML 정보를 수정 보완한다.

  • 이름만 변경 된 것들도 있어 보이지만 Player, Enemy의 경우는 상태 관리에 대한 것도 포함 되었다.
  • 주로 AdventureScene 클래스에 기능 추가가 되었다. 기획자는 항상

  • 왜를 달고 살아야 한다. 해당 내용에 대한 이유를 물어보고 이전 UML과 다시 비교한다.
  • 나름 타당해 보인다. 필요 기능 학습 및 UML 보완을 지시한 채팅방에서 코딩을 이어나간다.
728x90

댓글