UNITY GAME / PERSONAL PORTFOLIO

WORM
KNIGHT

게임의 핵심 규칙을 구현하고,
팀의 기능을 하나의 플레이로.

집중 개발 · 17일3D 디펜스Unity 6 · C#
전찬우팀장 · 코어 설계 · 통합
개인 담당과 핵심 사례 보기
영상 준비0:00
실제 후반 전투 · WAVE 35
2026.06.17 — 07.07 / TEAM PROJECT

길어질수록 강해지고, 길어질수록 위험해진다.

01 / 어떤 게임인가

알을 지키며 몸을 늘리는,
지렁이형 3D 디펜스.

영상 준비0:00
실제 후반 전투 · 넥서스 방어와 세그먼트 공격

몸통 하나가 무기 하나.
길이가 곧 화력이 됩니다.

넥서스 주변을 계속 전진하며 방향을 조종합니다. 세그먼트를 붙여 무기를 조합하고, 잘린 몸통은 필드에서 다시 회수합니다.

  1. 01조향 · 넥서스를 중심으로 전진
  2. 02성장 · 무기 세그먼트와 강화 선택
  3. 03회수 · 잘린 몸통에 다시 연결
02 / 내가 맡은 역할

컨보이의 움직임부터,
팀이 합류하는 코어까지.

전찬우 Team Lead · Core · Integration

컨보이 이동·제어 / 자기 충돌·절단·재결합 / 공용 API·넥서스·씬 / 타이틀·메타 진행 통합

개인 기여 범위몬스터 구현을 제외한 주요 시스템과 콘텐츠를 직접 설계·구현했습니다. 코어·컨보이·레벨·세그먼트·공용 계약과 전체 통합을 담당했습니다.
03 / 전체 구조 설계

서로의 내부 구현 대신,
공용 데이터로 만납니다.

MONSTER / REWARD

RewardData

경험치 · 골드 · 다이아

LEVEL / CARD

GrowthStatData

성장 · 세그먼트 · 강화

공용 계약으로 제출
CORE ENTRYRewardGateway · ApplyGrowth
RUNTIME STATECoreStatProvider · CurrentStats
StatsChanged / 능력치 적용
GAMEPLAY

Convoy · Segments

이동 · 공격 · 재결합

PRESENTATION

HUD · Result

표시 · 런 결과

주요 데이터 흐름 · 개별 시스템의 내부 호출은 생략

04 / 핵심 게임 규칙

성장할수록 강해지지만,
안전한 움직임은 어려워집니다.

01 / BUILD

몸통이 빌드다.

세그먼트마다 무기가 작동합니다. 몸통을 늘리는 선택은 공격 조합을 늘리는 선택입니다.

여러 무기 세그먼트의 공격
02 / CONTROL

길이를 관리한다.

긴 체인일수록 궤도와 회전 공간이 필요합니다. 화력과 조작 리스크가 함께 커집니다.

넥서스 주변을 도는 컨보이
03 / RECOVER

잘려도 다시 잇는다.

자기 몸과 충돌하면 전력이 분리됩니다. 필드에 남은 몸통을 회수해 전력을 되찾습니다.

절단된 몸통의 재결합
성장화력 증가조작 리스크절단 · 회수
05 / 컨보이 이동과 자동 궤도

머리는 입력을 따르고,
몸통은 지나온 길을 따릅니다.

영상 준비0:00
자동 궤도 모드 · 긴 컨보이의 전투 중 이동
CASE 01 / MOVEMENT

체인이 길어져도,
간격과 조작 응답을 유지.

  1. 01거리 기반 샘플로 프레임 변화에 대응
  2. 02Front / Rear 소켓으로 몸통 정렬
  3. 03직선 샘플로 비정상 경로 점프 복원
  4. 04수동 입력 시 자동 궤도 제어 해제
궤도 반경의 기준

실제 체인 길이와 넥서스 Collider 반경에 여유 거리를 더해 계산합니다.

06 / 절단과 재결합

잘린 몸통을,
회수 가능한 전력으로 남깁니다.

영상 준비0:00
절단된 세그먼트 · 접근 후 재결합
CASE 02 / STATE TRANSITION

붙어 있을 때는 경로,
떨어진 순간에는 물리.

ATTACHED거리·소켓 기반 경로 추종
DETACHEDRigidbody + ConfigurableJoint
SETTLED선형·각속도로 안착 판정
REJOIN접속점 접근 → 체인 복구

스타터 구간을 보호하고, 충돌한 세그먼트 이후를 분리합니다. 회수는 안착 후에만 허용합니다.

07 / 데이터 기반 세그먼트

다른 무기를,
같은 생산 흐름으로 연결합니다.

영상 준비0:00
세그먼트 시연 · 무기별 공격 동작

정의와 실행을 나누고,
공통 능력치로 연결.

CATALOG세그먼트 정의와 등록
FACTORY프리팹 생성과 런타임 초기화
RUNTIME코어 능력치 · 개별 무기 동작
15등록 세그먼트
5스타터
36무기 강화 참조

2026.09.11 Catalog 확인 기록. 팀 전체 수치이며 개인 단독 제작량으로 주장하지 않습니다.

08 / 밸런스와 제작 도구

플레이에서 측정하고,
표에서 비교하며 조정합니다.

영상 준비0:00
무기 밸런스 테이블 · 실제 에디터 조정

수치를 한 화면에서 비교.

Segment / Card Balance Table에서 무기 능력치와 카드 증가량을 확인하고 조정합니다.

영상 준비0:00
자동 궤도 전투 · 런타임 DPS 미터

전투 결과를 다시 수치로.

전체·웨이브·세그먼트 DPS를 나누어 관찰하고 무기별 기여도를 비교합니다.

DPS 목표 구간 그래프플레이어와 몬스터 성장 지수

목표 구간과 성장 지수
플레이 계측과 설계 자료를 함께 비교합니다. 소수 보상은 나머지를 누적해 반복 지급 손실을 줄입니다.

09 / 절차적 초원 생성

길과 지형, 장식까지,
하나의 시드로 조립합니다.

영상 준비0:00
절차적 초원 · 경로와 지형이 배치된 실제 전장
  1. 01Trail · Catmull–Rom 경로 샘플
  2. 02Height · 시드 기반 fBM 높이 생성
  3. 03Surface · 길 경계 거리로 재질 혼합
  4. 04Decoration · 길·넥서스를 피해 군집 배치
생성 비용을 프레임에 분산

정점과 삼각형 작업을 나누어 로딩 진행률과 연결합니다.

StageScene의 MeadowTerrainRuntimeGenerator 직렬화 연결 확인 기록.

10 / 런과 메타 진행

한 번의 플레이를,
다음 선택으로 연결합니다.

영상 준비0:00
타이틀 · 지렁이 선택과 영구 강화
01

TITLE

지렁이 · 강화 · 맵 선택

02

LOADOUT

RunStartBonusData

03

STAGE

임시 재화 · 런타임 성장

04

RESULT

클리어 · 실패 정산

05

META

다이아 · 해금 · JSON 저장

RUN ECONOMY

이번 전투를 바꾸는 골드.

런 내부의 성장 선택과 임시 상태를 담당합니다.

META ECONOMY

다음 전투를 바꾸는 다이아.

해금과 영구 강화 상태를 저장해 다음 런에 전달합니다.

씬 사이의 전달 책임RunLoadoutContext로 시작 조건을, RunResultContext로 결과를 전달합니다.
11 / 설계 선택과 절충

선택한 이유와,
그 선택에 남은 책임.

01 / MOVEMENT

붙어 있는 몸통

조작 응답과 간격 안정성을 우선했습니다.

선택경로 추종 + 소켓 정렬남은 책임 · 경로 보간과 비정상 점프 복원
02 / CUT

떨어진 몸통

전력 손실이 필드 위의 사건으로 보이게 했습니다.

선택Rigidbody + Joint남은 책임 · 안착 판정과 재결합 정리
03 / TEAM

팀의 합류 지점

담당끼리 독립적으로 구현할 경계를 정했습니다.

선택작은 DTO + 단일 진입점남은 책임 · Gateway 연결과 계약 변경 관리
12 / 검증 범위와 마무리

구현의 근거를 남기고,
확인한 범위까지 설명합니다.

SOURCE

코드 · 씬 · 데이터

컨보이·코어·메타·초원 생성 코드와 StageScene, Catalog의 기존 교차 확인 기록을 바탕으로 구성했습니다.

PLAY FOOTAGE

실제 플레이 영상

유튜브 원본에서 주제별로 편집한 실행 영상을 사용합니다. 새로 수행한 런타임 테스트나 성능 측정 결과가 아닙니다.

BOUNDARY

검증의 한계

Unity PlayMode, 오류 주입, 실기기·성능 벤치마크는 이번 포트폴리오 제작에서 새로 실행하지 않았습니다.

17 DAYS / TEAM LEAD · CORE · INTEGRATION

규칙을 구현하고,
팀의 결과를 하나의 플레이로 연결했습니다.

전체 기술문서 읽기 ↗Markdown 다운로드 ↓
ENGINEERING / TECHNICAL NOTES