GameDev/Cubidom 42

Cubidom - 게임 출시

이제 itch.io에 게임을 출시하는 일만 남았다. 먼저 게임의 썸네일이 될 이미지를 넣어준다. 해당 이미지는 게임 플레이 화면에서 약간의 설정을 건드리고, 캡쳐한뒤 Canva로 텍스트를 넣어 630x500 해상도로 만든 이미지이다. Title에는 사용할 게임 제목을 넣어주고, Short description or tagline에는 간단한 게임 문구나, 설명을 넣어준다. Classification는 Game으로 분류해준다. Kind of Project는 WebGl이기 때문에 HTML을 넣어주고 Release status에는 게임이 완성되었기 때문에 Released를 선택해준다.Pricing은 후원을 받거나, 유료게임이거나, 무료게임으로 선택할 수있다. 후원가능으로 할시 suggested donation에..

GameDev/Cubidom 2026.05.19

Cubidom - 프로젝트 빌드

이번엔 프로젝트를 빌드 할 것이다.빌드를 하기 앞서, 빌드에 관한 설정을 해준다. 스플래시 이미지 먼저 유니티의 스플래시 이미지를 사용하지 않을 것이기 때문에, 스플래시 화면표시를 체크해준다. 이름 및 아이콘회사이름과 제품이름, 아이콘을 넣어준다. 빌드 세팅사용하는 씬을 빌드세팅의 씬 목록에 넣어준다. 프로토타입이 사용한 씬이고, SampleScene은 제거되었기 때문에, 무시해도 된다. WebGL 사용Itch.io에 올릴예정이기 때문에, Web으로 만들어줘야한다.Web의 Switch PlatForm으로 전환시킨다. 빌드하기모든 수정이 끝나면 원하는 경로에 빌드해준다. 이런식으로 코드에 사용하지 않는 네임스페이스들을 지워줘야 할것으로 보인다.코드에서 찾아 모두 지워준뒤 다시 빌드를 해준다. Zip이후 ..

GameDev/Cubidom 2026.05.16

Cubidom - 최종 수정 및 해상도 설정

여러 버그나, 마음에 들지 않는 기능을 고칠 것이다. 이후 해상도 설정을 한다. Y 0 미만 설치 불가먼저 AI는 y가 0미만인 곳에는 생성이 불가능한데, 이를 플레이어 또한 똑같은 조건을 주기 위해, 플레이어도 y가 0미만이 곳에는 블럭을 생성할 수 없게 할 것이다.CubeCreator bool CheckWorld(Vector3 dir, Transform cube, Caster caster) // 생성할 공간이 지정된 월드 내에 존재하는지 확인 { Vector3 InsPos = cube.GetComponent().worldPosition + dir; if(Mathf.Abs(InsPos.x) > 50 || Mathf.Abs(InsPos.y) > 50 || Mathf...

GameDev/Cubidom 2026.05.13

Cubidom - AI의 제약 시스템

플레이어의 큐브,생산자,대포만 변하는거 같아서 AI 적에게도 스테이지가 끝날 때 마다 제약을 걸어줄 것이다.AI는 선택하지 않고, 종류별로 있는 데이터들 중 무작위로 몇가지 골라서 효과를 받는다. 우선 계획은 ConstraintManager에서 AI 전용 효과를 몇가지 뽑고, ConstraintData와 StatManager에서 시전자라는 변칙을 주어 플레이어와 적이 다른 스탯을 가지도록 할 것이다. StatManagerusing UnityEngine;public class StatManager : MonoBehaviour{ public int startResource; // 초기 자원량 public int resourceYield; // 자원 생산량 public int canno..

GameDev/Cubidom 2026.05.09

Cubidom - 제약 시스템

원래는 AI 난이도 올리도 최종 수정해서 끝내려고 했는데, 제약 시스템이라는 아이디어가 너무 좋은거 같아서 이 기능까지 넣으려고한다.플레이어가 다음 스테이지로 향했을 때, 랜덤으로 나오는 선택지인 제약을 선택해야 한다.각 제약 선택지마다 버프와 너프가 동시에 존재한다. 제약 조건들기초 자원량 - 자원 생산량 -대포 공격력 - 대포 공격 쿨타임 큐브 체력 - 자원 생산 스피드 ConstraintManager가장 중요한 제약을 관리하는 스크립트를 만들어 준다.이 곳에서 버프와 너프를 나눠 두가지 선택지에 넣어주는 기능을 한다.using NUnit.Framework;using System.Collections;using UnityEngine;using UnityEngine.UI;using System.Coll..

GameDev/Cubidom 2026.05.07

Cubidom - AI 시스템 보완 (Utility AI)

적 AI 시스템을 수정할 것이다.기존 AI의 잘못된 설계와, 더 단단한 점수 체계를 만들어 줄 것이다. 새로운 AI설계 방향의 시작은 행동의 점수 기준으로, 기존과 같이 크게 안전성(defence),지속 가능성(Resoruce), 공격성(Attack)으로 구분하였다.먼저 기존의 문제점은 안전성이 높아도, 코어에 붙어있는 큐브의 개수가 적어서 코어를 막는 행동을 거의 하지 않는다는 것이였다.또한 공격성의 문제로는 대포가 코어쪽을 바라보지 않는 문제가 가장컸다. 새로운 추가 점수 기준은 코어 주변의 큐브가 적을 경우, 안전성을 우선시하고, 그 이후 지속가능성이나, 공격성의 점수를 부여한다.두번째로 대포를 설치했을 때, 공격할 대상이 존재하는가에 따른 점수를 부여한다.각 행동점수와 위치 점수의 최고점을 100..

GameDev/Cubidom 2026.05.03

Cubidom - 디테일 추가 및 버그 수정 2

추가로 여러 디테일을 추가하거나 버그를 수정할 것이다. 마우스 아래 버튼 크기 키우기생성 좌표 제한게임 플레이 경고 이벤트튜토리얼 ESC 상태설정생성 선택창 버그 수정선택 면 버그 수정ESC BGM Volume버그 마우스 아래 버튼 크기 키우기마우스 포인터를 버튼 위에 올려두었을 때, 해당 버튼의 텍스트 크기를 키우는 기능을 만들 것이다.Event Trigger와 버튼 스크립트로 구현하였다. ButtonUIusing UnityEngine;using UnityEngine.UI;public class ButtonUI : MonoBehaviour{ private int mySize; [SerializeField] Text myText; private void Awake() { ..

GameDev/Cubidom 2026.04.30

Cubidom - 디테일 추가 및 버그 수정 1

생각나는 여러 디테일을 추가할 것이다. 현재 생각나는 것들은 생성 블럭 사용 자원량적 코어 체력기본 자원량기본 화면 꾸미기카메라 제어음향 설정기본화면의 나가기, 옵션 버튼 생성 블럭 자원량 UI블럭을 생성할 때의 비용을 적어 표시한다. 적 코어 체력스테이지 별로 적의 코어 체력을 설정할 수 있게 한다. EnemyAIDatausing UnityEngine;[CreateAssetMenu(menuName = "Scriptable/EnemyAIData",fileName = "Enemy AI")]public class EnemyAIData : ScriptableObject{ public int id; // 각 데이터마다의 고유 식별번호 public float behaviourRandomness; /..

GameDev/Cubidom 2026.04.29

Cubidom - FTUE 3

블럭 생산 튜토리얼부터 튜토리얼 끝까지 만들어 볼 것이다. 블럭 생성 튜토리얼, 대포 생성 튜토리얼, 적 저치 튜토리얼, 튜토리얼 종료 블럭 생성 튜토리얼InputController [SerializeField] CanvasGroup blockGroup; // 블럭 생산 UI public void ResourceTutorial() // 자원 생산자 생성 튜토리얼 시작 { StartCoroutine(UIFade(resourceGroup,1, true)); PlaneSetting(new Vector3(0, 0.5f, -0.5001f), Quaternion.Euler(0,0,0)); } public void SeletePanel(boo..

GameDev/Cubidom 2026.04.28

Cubidom - FTUE 만들기 2

자원 생산 생성 튜토리얼을 만들것이다. 개발 순서는 튜토리얼 순서대로 만들었다.TutorialManager자원 생산 생성 튜토리얼 부터 큐브 생성 튜토리얼 시작까지 만들었다. using NUnit.Framework;using System.Collections;using UnityEngine;using UnityEngine.UI;public class TutorialManager : MonoBehaviour{ private static TutorialManager instance; public static TutorialManager Instance { get { return instance; } } public bool isTutorial { get; private..

GameDev/Cubidom 2026.04.27