Galaxy Ball/2. 싱글플레이 - 스토리모드 43

(42) 스토리 다듬기

최적화도 거의 완료되었고, 안 풀리던 대부분의 오류들도 모두 잡아주었고 이제 정말 완성까지 얼마 남지 않아보인다하지만 한가지 전부터 굉장히 오랫동안 마음에 걸리던게 있었다. 그건 바로 스토리! 예전에는 나름 괜찮다고 쓴건데 지금 다시 보니 난해한 부분들도 있고특히 프롤로그 2개의 경우는 이게 도대체 무슨 내용인지 내가 봐도 이해가 잘 안가는 부분들이 있다 나름 유치해보이기 싫어서 그런것 같은데 이젠 생각이 바뀌었다. 애초에 게임 자체가 전체이용가에단순한 게임인데 스토리까지 복잡하고 난해해버리면 게임의 정체성이 애매해지는 느낌이다그러니 조금 유치해보이더라도 조금 더 직관적이고 이해하기 쉽게 스토리와 대사를 수정해보려고 한다  우선 대사만 수정한다고 되는 일이 아니다. 특히 초반부는 대사와 그에 맞는 연출이..

(42) 마무리 오류 수정

이제 정말 끝이 보인다. 직전 글에서 마무리로 오류수정을 하고 게임을 전체적으로 플레이하겠다고 했는데오늘은 이것을 마지막으로 마무리 해보려고 한다. 우선 첫번째 오류부터 해결해보자. 1~6번 스테이지는 아직 아이템 생성이 되선 안된다하지만 지금은 1번 스테이지에서도 첫번째 아이템이 랜덤 생성되는것을 확인할 수 있다  private void SetMaxIndex() { float stageID = stageGameManager.StageClearID; if (stageID 랜덤 생성을 담당하는 코드를 보자. stageID가 6보다 작거나 같다면 CancelInvoke로 스폰을 중지하도록 하였다         if (stageID         {            Cance..

(41) 오류 수정 + 게임 전체 플레이

이제 정말 끝이 보인다. 직전 글에서 마무리로 오류수정을 하고 게임을 전체적으로 플레이하겠다고 했는데오늘은 이것을 마지막으로 마무리 해보려고 한다. 우선 첫번째 오류부터 해결해보자. 1~6번 스테이지는 아직 아이템 생성이 되선 안된다하지만 지금은 1번 스테이지에서도 첫번째 아이템이 랜덤 생성되는것을 확인할 수 있다  private void SetMaxIndex() { float stageID = stageGameManager.StageClearID; if (stageID 랜덤 생성을 담당하는 코드를 보자. stageID가 6보다 작거나 같다면 CancelInvoke로 스폰을 중지하도록 하였다         if (stageID         {            Cance..

(40) 포스터 + 최종 발표 ppt + 홍보 영상

드디어 게임이 어느정도 형태를 갖추고 끝이 보인다.  이번글에서는 어떻게보면 개발과 관련된것은 아니지만 게임 등록을 위해 필요한포스터, ppt, 홍보영상을 만들어보도록 하겠다  우선 게임의 포스터. 태양계의 중심인 태양이 아니라 지구가 가운데 위치한것이 핵심이다심지어 게임속에서 지구는 그렇게 비중이 크게 나오지도 않는다 사람들이 포스터를 보았을 때, 도대체 이게 무슨 게임이지..? 와 동시에 흥미유발이 되도록 유도해보았다   홍보 영상이다. 사실 이런 것들은 어렵거나 머리를 써야하는것은 아니지만, 시간이 정말 오래걸린다아마 이 짧은 영상 하나 만드는데 3시간은 쓴 것 같다 그리고 최종 발표용 ppt도 첨부하려고 했으나 최대 용량이 20MB가 한계라 아쉬운대로캡쳐본이라도 첨부해두겠다   여기까지는 게임 장..

(39) 스토리+연출 완성

스토리와 연출이 들어가는건 크게 4군데이다 1. 프롤로그2. 스테이지 5 클리어 후 메인 들어가기 전 + 메인 들어간 뒤3. 스테이지 64 클리어 후 최종보스 진입4. 엔딩 프롤로그는 간단한 스타워즈 기믹으로 전글에 적어두었고 2,3,4번 연출을 해줘야하는데 사실 이 글을 적고 있을땐 이미 연출 구현이 끝난지 오래기에최대한 간단히 결과에 대해서만 기재하겠다.   (34) 연출&대사 시스템 총정리오랜만에 글을 적어본다. 물론 글을 적고 있지 않을때에도 개발은 꾸준히 해왔으나도저히 개발에다 글까지 동시에 적을 시간이 없어서 여태 못하다가 이제 다시 성실하게 적어보려고 한다 우sangeun00.tistory.com 그리고 이미 위 글에서 시스템이 구현되는 방식은 이미 적어두었다  2. 스테이지 5 클리어 후 ..

(38) 오디오 제어 & 최종보스 제작

오늘은 환경설정으로 오디오가 제어되도록 해보겠다 사실 하면서 복잡하고 생각보다 잘 안풀리길래 그냥 환경설정 자체를 빼버릴까도 고민이 많았지만...그래도 한번 해보자!  예전에 만들어놓은 환경설정창이다. 하지만 아직 BGM, Sound Effent On/Off 기능이 구현되어 있지 않다using System;using UnityEngine;using UnityEngine.SceneManagement;using UnityEngine.UI;public class SettingButtonManager : MonoBehaviour{ public Button BGM_ON; public Button BGM_OFF; public Button Sound_Effect_ON; public Button ..

(37) 저장 / 불러오기 구현

이제 드디어 시작화면과 인게임을 연결하는 작업을 해보도록 하겠다사실 잠깐이지만 저장/불러오기 기능을 살짝 구현해본게 있다  (1) 챌린지 모드 제작챌린지 모드란, 적 유닛도, 상대방도 없는 빈 영역에서 끊임없이 구체가 발사되며, 플레이어는 본인의 구체를 날려 끊임없이 생성되는 적 구체를 제거해 나가야 한다 여기서 스코어 시스템이sangeun00.tistory.com 바로 챌린지 모드를 만들때 좌측 상단에 있는 신기록 스코어를 저장할때 저장 기능을 사용하긴 했었다 이번엔 단순히 스코어 저장을 넘어 스토리모드 진행상황을 저장하여 "이어하기"를 누르면진행중인곳부터 진행하도록 해보겠다   우선 시작화면에서 스토리 모드에 진입하기까지는 3가지 단계가 있다 정확히 말하면 3번째 사진에 보이는 창은 새 게임을 눌렀을..

(35) 새로운 적 유닛 정보창

최종적으로 게임에 쓰인 적 유닛의 종류는 총 34가지 이다. 스테이지가 65개인데 적 유닛만 34가지라니....나야 게임을 직접 개발하는 입장이니 종류가 많아도 다 알아보고 외울수 있다지만 다른 사람은 그게 아닐것이다물론 알아보기 쉽게 최대한 유닛 디자인을 간결하고 직관적으로 하긴 했으나 그래도 34가지는 전부 외우는데 한계가 있다 그래서 이번엔 새로운 적 유닛이 등장하면 이에 대한 간략한 설명과 스탯을 보여주는 정보창을 만들어보겠다  기본 구조이다. 총 6가지의 구성요소로 이루어져 있으며bg, top은 정말 배경이미지, OKButton은 하단에 달린 초록색 버튼. 누르면 창이 닫히고 게임이 시작된다EnemyImg는 좌측상단에 보이는 적 유닛의 샘플 이미지이다EnemyStat은 말그대로 우측 상단에 이미..

(34) 연출&대사 시스템 총정리

오랜만에 글을 적어본다. 물론 글을 적고 있지 않을때에도 개발은 꾸준히 해왔으나도저히 개발에다 글까지 동시에 적을 시간이 없어서 여태 못하다가 이제 다시 성실하게 적어보려고 한다 우선 최종적으로 완성한 연출과 대사 시스템을 총 정리해 보도록 하겠다  가장 먼저 대사 나올 LineBox. 라인 박스는 두가지의 구성요소로 이루어져 있는데하나는 백그라운드가 될 Panel, 나머지 하나는 실질적인 대사가 적힐 Line이다 그리고 LineBox에는 ShowText라는 스크립트가 부착되어 있다.   using Newtonsoft.Json;using System.Collections.Generic;using TMPro;using UnityEngine;using UnityEngine.Events;using System..

(33) 챕터1 스토리

0. 새 게임 시작1. 부팅영상2. 스타워즈 기믹3. 프롤로그-14. 이동방법 안내5. 스테이지 5 클리어6. 프롤로그-27. 스토리 전개8. 챕터2 전에도 적긴 했었지만 이게 새 게임 시작부터 챕터2로 넘어가기까지의 단계들이다현재 1,2,3,5번을 완료했고, 그 사이를 이어줄 4,6,7번을 구현해주면 챕터1이 완료될 예정이다 우선 3번에서 프롤로그-1 영상을 끝내고 Stage씬으로 돌아왔을때 4번인 이동안내부터 시작해보겠다  이미지는 최대한 간결하고 알아보기 쉽게 그려보았다. 실제로도 매우 간단하기 때문에 더 복잡한 설명은 필요없다 using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI..

반응형