C++ 20과 DirectX 12 기반의 프레임워크 및 렌더링 파이프라인을 설계·구축하여 개발된 3인칭 게임 프로젝트.
English
The third-person game project developed by designing and building a C++20 and DirectX 12–based framework and rendering pipeline.
- C++20과 DirectX 12를 활용해 렌더링 파이프라인 프레임워크를 직접 설계·구축하고, 이를 기반으로 플레이 가능한 3인칭 게임을 개발하기 위함
- 이 과정을 통해 그래픽스 및 코어 엔진 엔지니어링에 대한 이해를 심화하기 위함
- AI의 사용은 Web기반으로 사용하여 그래픽스 이론과 CS 지식 학습, 이론적 설명, Funnel 알고리즘을 도움받았습니다.
- 그 외의 직접적인 코드 작성에는 결과 복사/붙여넣기 나 에이전트 AI를 사용하지 않았습니다. 파이프라인 개발과 기능 및 컨텐츠 개발 전반의 실질적인 개발은 모두 수작업으로 작업되었습니다.
English
- To design and implement a rendering‑pipeline framework using C++20 and DirectX 12, and develop a playable third‑person game based on it
- To deepen my understanding of graphics and core‑engine engineering through this process
(AI was used through web-based resources to assist with learning graphics theory, computer science concepts, theoretical explanations, and Funnel algorithms. All other practical development was carried out by manually typing the code, without any direct code copying/pasting or development using AI agents.)
- 8개월 (2025.01.15 ~ 2025.07.28)
| 이름 | 역할 |
|---|---|
| 진현서 / Jin Hyeon Seo (Clrain) | 클라이언트 – 육지 파트 ( Client – Land Content ) |
| 김상혁 / Kim Sang Hyuk | 클라이언트 – 해상 파트 ( Client – Maritime Content ) |
(DirectX12의 기반 렌더링 및 로직 파이프라인 전반의 대부분을 공동으로 상의하며 함께 설계함.)
- 육지와 해상이 나뉘어진 공간에서 플레이
- 낮에는 식당을 경영하기 위하여 직접 해상에서 재료들을 수급하고, 밤에는 손님들에게 음식을 제공하여 돈을 버는 방식
- 성장형 경영 타이쿤 게임.
English
- Set in an environment split between land and sea
- During the day, you source ingredients directly from the sea to run your restaurant; at night, you serve food to customers to earn money
- A growth‑oriented management tycoon game
줄거리
- 망망대해 위에 어느 한 섬. 희귀한 광물 미스라이트가 풍부한 것으로 알려진 이 섬에는 무역상인들을 중심으로 한 모험가와 귀족상단이 주둔하여 광물을 채집하고 무역을 하고 있었다. 사람은 모여있고, 돈은 많고, 먹을 것은 부족한 이 섬에서 주인공은 식당을 개업하기로 하는데...
Youtube - Devlog
- [Devlog] DirectX12 - Post Processing
- [Devlog] DirectX12 - Character NPR Toon Shader
- [Devlog] DirectX12 - Cascade Shadow Mapping
- [Devlog] DirectX12 - Stylized Water Shader
- [Devlog] DirectX12 - Collision & PathFinding
- [Devlog] DirectX12 - Skinned Mesh Animation
조작법 / Control-Keys
| 키 / Key | 설명 (한국어) | Description (English) |
|---|---|---|
| 1 ~ 5 | 인벤토리 전환 | Switch inventory |
| Shift | 달리기 | Sprint |
| F | 상호작용 | Interact |
| F1 | Debug View로 전환 | Switch to Debug View |
| F2 | 캐릭터 View로 전환 | Switch to Character View |
| F5 | ImGUI 창 토글 | Toggle ImGUI window |
| F9 | 전체화면 토글 | Toggle fullscreen |
| ` (백틱) | 마우스 고정 토글 | Toggle mouse lock |
[ YouTube ] DirectX12 - Collision & PathFinding


Object Count (5000 objects, 30000 trees, 100,000 grass)
4‑Cascade LOD
[ YouTube ] DirectX12 - Cascade Shadow Mapping


[ YouTube ] DirectX12 - Post Processing


[ YouTube ] DirectX12 - Stylized Water Shader

[ YouTube ] DirectX12 - Character NPR Toon Shader
(+Rim Light, Simple GI)
The project’s functionality was modularized and released as an asset.
Click to visit the Asset Store
상세 개발 내용
- Overall DirectX 12 setup and development
- Render Pass Policy
- Vertex, Material, Shader, Pipeline Policy
- Mesh Rendering Flow
- Root Signature
- Light Logic
- Dynamic Instancing & Batching
- Frustum Culling
- Mesh‑based Pass System
- Scene System, Scene Manager
상세 개발 내용
Content
- 육지 컨텐츠 전담 개발
- 메인 메뉴, 팝업 메뉴, InGame GUI
Core Systems
- GameObject, Component, GUID‑based Object‑Control System
- Transform Hierarchy System
- Collider Raycasting System
- Unity based level Scene Loader
- Model Resource Loader
- NavMesh based ASter(+Funnel) PathFinding
- UI - Sprite Rect Transform based GUI System
- Debug - Gizmo
- Debug - Performance Profiler
- Finite state machine(FSM) based NPC System
- Shader Compiler, Profiler
- Terrain Static Instancing (tree, grass)
Rendering
- Geometry‑based Gizmo Rendering
- Forward (+Transparent) Rendering
- Resource Dynamic Matching&Linking System
- Pipeline State Object (PSO) Policy
- Skinned Mesh, Animation System
- Deferred Environment Visual Shading
- Character NPR based Shading
- SDF Face Shadow
- Sobel Filter based Outline, Specular
- Subsurface scattering (SSS)
- Rim
- Ramp Texture based shading
- Cascade Shadow Mapping (CSM)
- Stylized Water Shader
- Post Processing (Compute Shader)
- Depth of Field
- Bloom, Blur (Optimization)
- God Ray
- Time of Day
- Screen Space Ambient Occlusion (SSAO)
- Fast approximate Anti-Aliasing (FXAA)
- Color Grading
- Vignette
상세 개발 내용
Content
- 해상 컨텐츠 전담 개발
- All Particle Effects Contant (폭죽, 연기, 물안개, 불 등등)
- 육지 - Boat Controller
- 육지 - Sea Water Visual, Movement
Core Systems
- Spatial Hashing Collision Detection
- Path Trail Mover System
- UI - Text, Texture Rendering System
- Buffer Pool, Manager
- Resource Manager
- Debug - IMGUI System Link
- Sound System
- Texture Loader System
- Render Texture System
- Boids Algorithm based Swarm Control
Rendering
- DirectX Default Initialization
- Deferred Rendering
- Terrain Tessellation
- Compute Shader Pipeline
- Nested Frame Rendering
- Underwater Visual Shading & Effects
- Phong‑based Rendering
- Rim
- 육지 - Sea Water Shader, Wave Movement
- Geometry, Stream-Output based Particle System
- Post Processing (Compute Shader)
- Blur
- Bloom
- Fog Factor
- Depth Capture
- Under Water Post Effect
- Dissolve (Fade‑In/Out)
- Scattering
Middle Present Execute : https://drive.google.com/file/d/1GvVb6xl6p1NtAi3A1yd_0g4KXDfFq1Eu/view?usp=sharing Last Present Execute : https://drive.google.com/file/d/1mJVY8-xbjTHjggJgFJks5_SR9z3ktg3_/view?usp=sharing






























