Spaces:
Running
Running
Update README.md
Browse files
README.md
CHANGED
@@ -1,5 +1,5 @@
|
|
1 |
---
|
2 |
-
title:
|
3 |
emoji: ๐
|
4 |
colorFrom: blue
|
5 |
colorTo: yellow
|
@@ -10,5 +10,233 @@ models:
|
|
10 |
license: cc-by-nc-4.0
|
11 |
short_description: One-minute creation by AI Coding Autonomous Agent MOUSE-I
|
12 |
---
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
13 |
|
14 |
-
Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
|
|
|
1 |
---
|
2 |
+
title: 3D Air Combat Simulator
|
3 |
emoji: ๐
|
4 |
colorFrom: blue
|
5 |
colorTo: yellow
|
|
|
10 |
license: cc-by-nc-4.0
|
11 |
short_description: One-minute creation by AI Coding Autonomous Agent MOUSE-I
|
12 |
---
|
13 |
+
# JET FIGHT SIMULATOR - 3D Fighter Jet Simulator
|
14 |
+
Developer: https://huggingface.co/spaces/cutechicken
|
15 |
+
|
16 |
+
## ๐ฎ Project Overview
|
17 |
+
A high-quality web-based 3D fighter jet simulator created with **VIBE CODING**. Built with Three.js, this is a full-scale aerial combat game that runs in your browser, featuring realistic physics engine and combat systems.
|
18 |
+
|
19 |
+
## โจ Key Features
|
20 |
+
|
21 |
+
### ๐ฉ๏ธ Realistic Flight Physics
|
22 |
+
- **Real Aircraft Dynamics Simulation**: Realistic flight considering lift, gravity, and drag
|
23 |
+
- **G-Force System**: Blackout effects during extreme maneuvers
|
24 |
+
- **Stall System**: Loss of control when speed drops below threshold
|
25 |
+
- **Altitude-based Performance**: G-Force increases with altitude
|
26 |
+
|
27 |
+
### ๐ฏ Combat System
|
28 |
+
- **20mm Cannon**: 940 rounds, continuous fire capability
|
29 |
+
- **AIM-9 Sidewinder Missiles**: 8 missiles with 3-stage lock-on system
|
30 |
+
- **Flare System**: Heat-seeking countermeasures (3 uses)
|
31 |
+
- **Enemy AI**: Smart AI capable of evasive maneuvers, missile launches, and flare deployment
|
32 |
+
|
33 |
+
### ๐จ Immersive HUD
|
34 |
+
- **Fighter HUD**: Speed, altitude, heading, pitch/roll indicators
|
35 |
+
- **RWR (Radar Warning Receiver)**: Enemy position and lock-on warnings
|
36 |
+
- **Pitch Ladder**: Aircraft attitude display
|
37 |
+
- **Target Markers**: Automatic enemy marking within crosshair
|
38 |
+
|
39 |
+
### ๐ Sound Design
|
40 |
+
- Engine sounds, cannon fire, missile launches
|
41 |
+
- Warning system (altitude, stall, Over-G, missile alerts)
|
42 |
+
- Voice guidance system
|
43 |
+
- Distance-based volume control
|
44 |
+
|
45 |
+
## ๐ฎ Controls
|
46 |
+
|
47 |
+
### Basic Controls
|
48 |
+
- **W/S**: Throttle increase/decrease
|
49 |
+
- **A/D**: Rudder (yaw) control
|
50 |
+
- **Mouse**: Pitch/roll control
|
51 |
+
- **Left Click**: Fire weapon
|
52 |
+
- **R**: Switch weapon (Cannon โ Missile)
|
53 |
+
- **F**: Deploy flares
|
54 |
+
- **G**: Escape stall (hold for 2 seconds)
|
55 |
+
|
56 |
+
### Combat Tips
|
57 |
+
1. **Missile Lock**: Keep enemy in crosshair for 3 seconds in AIM-9 mode
|
58 |
+
2. **Flare Usage**: Press F immediately when missile warning sounds
|
59 |
+
3. **Over-G Warning**: Level out when vision darkens during extreme maneuvers
|
60 |
+
4. **Stall Recovery**: Hold G for 2 seconds when speed drops below 300kt
|
61 |
+
|
62 |
+
## ๐ Installation & Setup
|
63 |
+
|
64 |
+
### Requirements
|
65 |
+
- Modern web browser (Chrome, Firefox, Edge recommended)
|
66 |
+
- WebGL support
|
67 |
+
- Mouse required
|
68 |
+
|
69 |
+
## ๐ Project Structure
|
70 |
+
```
|
71 |
+
jet-fight-simulator/
|
72 |
+
โโโ index.html # Main HTML (HUD and UI)
|
73 |
+
โโโ game.js # Game logic (physics, AI, combat systems)
|
74 |
+
โโโ models/ # 3D model files
|
75 |
+
โ โโโ f-15.glb # Player fighter
|
76 |
+
โ โโโ mig-29.glb # Enemy fighter
|
77 |
+
โโโ sounds/ # Sound files
|
78 |
+
โ โโโ main.ogg # BGM
|
79 |
+
โ โโโ normal.ogg # Engine sound
|
80 |
+
โ โโโ ... # Various sound effects
|
81 |
+
โโโ effects/ # Visual effects
|
82 |
+
โโโ symbol.png # RWR symbol
|
83 |
+
```
|
84 |
+
|
85 |
+
## ๐ ๏ธ Tech Stack
|
86 |
+
- **Three.js**: 3D graphics rendering
|
87 |
+
- **Vanilla JavaScript**: Game logic
|
88 |
+
- **Web Audio API**: Sound processing
|
89 |
+
- **Pointer Lock API**: Mouse control
|
90 |
+
|
91 |
+
## ๐ฏ Game Objectives
|
92 |
+
- **Mission**: Destroy all enemy aircraft (4) within 180 seconds
|
93 |
+
- **Victory Conditions**:
|
94 |
+
- Destroy all enemies
|
95 |
+
- Survive time limit + destroy all enemies
|
96 |
+
- **Defeat Conditions**:
|
97 |
+
- Health reaches 0 (hit/collision)
|
98 |
+
- Ground collision
|
99 |
+
- Time expires with enemies remaining
|
100 |
+
|
101 |
+
## ๐ Scoring System
|
102 |
+
- Cannon kill: 100 points
|
103 |
+
- Missile kill: 100 points
|
104 |
+
- Collision kill: 200 points
|
105 |
+
|
106 |
+
## ๐ก VIBE CODING Achievement
|
107 |
+
This project was created using the **VIBE CODING** methodology. Through rapid prototyping and immediate feedback, we achieved a high-quality 3D fighter jet simulator.
|
108 |
+
|
109 |
+
### Special Features
|
110 |
+
- Complete game engine in a single JavaScript file
|
111 |
+
- Real-time physics simulation
|
112 |
+
- Complex AI behavior patterns
|
113 |
+
- Professional HUD system
|
114 |
+
- Immersive sound design
|
115 |
+
|
116 |
+
## ๐ Known Issues
|
117 |
+
- BGM playback delay due to autoplay policies in some browsers
|
118 |
+
- Possible frame drops on high graphics settings
|
119 |
+
- Flares may occasionally fail to perfectly evade missiles
|
120 |
+
|
121 |
+
|
122 |
+
|
123 |
+
|
124 |
+
|
125 |
+
|
126 |
+
|
127 |
+
# JET FIGHT SIMULATOR - 3D ์ ํฌ๊ธฐ ์๋ฎฌ๋ ์ดํฐ
|
128 |
+
๊ฐ๋ฐ์: https://huggingface.co/spaces/cutechicken
|
129 |
+
|
130 |
+
## ๐ฎ ํ๋ก์ ํธ ์๊ฐ
|
131 |
+
|
132 |
+
**VIBE CODING**์ผ๋ก ์ ์๋ ์์ฑ๋ ๋์ ์น ๊ธฐ๋ฐ 3D ์ ํฌ๊ธฐ ์๋ฎฌ๋ ์ดํฐ์
๋๋ค. Three.js๋ฅผ ํ์ฉํ์ฌ ๋ธ๋ผ์ฐ์ ์์ ์คํ๋๋ ๋ณธ๊ฒฉ์ ์ธ ๊ณต์ค์ ๊ฒ์์ผ๋ก, ์ค์ ์ ํฌ๊ธฐ์ ๋ฌผ๋ฆฌ ์์ง๊ณผ ์ ํฌ ์์คํ
์ ๊ตฌํํ์ต๋๋ค.
|
133 |
+
|
134 |
+
|
135 |
+
## โจ ์ฃผ์ ํน์ง
|
136 |
+
|
137 |
+
### ๐ฉ๏ธ ๋ฆฌ์ผ๋ฆฌ์คํฑํ ๋นํ ๋ฌผ๋ฆฌ
|
138 |
+
- **์ค์ ํญ๊ณต๊ธฐ ์ญํ ์๋ฎฌ๋ ์ด์
**: ์๋ ฅ, ์ค๋ ฅ, ํญ๋ ฅ์ ๊ณ ๋ คํ ํ์ค์ ์ธ ๋นํ
|
139 |
+
- **G-Force ์์คํ
**: ๊ธ๊ธฐ๋ ์ ๋ธ๋์์ ํจ๊ณผ ๊ตฌํ
|
140 |
+
- **์คํจ(์ค์) ์์คํ
**: ์๋ ๋ถ์กฑ ์ ์กฐ์ข
๋ถ๋ฅ ์ํ ์ฌํ
|
141 |
+
- **๊ณ ๋๋ณ ์ฑ๋ฅ ๋ณํ**: ๊ณ ๋์ ๋ฐ๋ฅธ G-Force ๏ฟฝ๏ฟฝ๊ฐ
|
142 |
+
|
143 |
+
### ๐ฏ ์ ํฌ ์์คํ
|
144 |
+
- **20mm ๊ธฐ๊ดํฌ**: 940๋ฐ ํ์ฝ, ์ฐ์ฌ ๊ฐ๋ฅ
|
145 |
+
- **AIM-9 ์ฌ์ด๋์์ธ๋ ๋ฏธ์ฌ์ผ**: 8๋ฐ ์ฅ์ฐฉ, 3๋จ๊ณ ๋ฝ์จ ์์คํ
|
146 |
+
- **ํ๋ ์ด ์์คํ
**: ๋ฏธ์ฌ์ผ ํํผ์ฉ ์ด์ถ์ ๊ต๋ ์ฅ์น (3ํ ์ฌ์ฉ)
|
147 |
+
- **์ ๊ธฐ AI**: ํํผ ๊ธฐ๋, ๋ฏธ์ฌ์ผ ๋ฐ์ฌ, ํ๋ ์ด ์ฌ์ฉ ๊ฐ๋ฅํ ์ค๋งํธ AI
|
148 |
+
|
149 |
+
### ๐จ ๋ชฐ์
๊ฐ ์๋ HUD
|
150 |
+
- **์ ํฌ๊ธฐ HUD**: ์๋, ๊ณ ๋, ํค๋ฉ, ํผ์น/๋กค ํ์
|
151 |
+
- **RWR (๋ ์ด๋ ๊ฒฝ๋ณด ์์ ๊ธฐ)**: ์ ๊ธฐ ์์น ๋ฐ ๋ฝ์จ ๊ฒฝ๊ณ
|
152 |
+
- **ํผ์น ๋๋**: ํญ๊ณต๊ธฐ ์์ธ ํ์
|
153 |
+
- **ํ๊ฒ ๋ง์ปค**: ํฌ๋ก์คํค์ด ๋ด ์ ๊ธฐ ์๋ ํ์
|
154 |
+
|
155 |
+
### ๐ ์ฌ์ด๋ ๋์์ธ
|
156 |
+
- ์์ง์, ๊ธฐ๊ดํฌ, ๋ฏธ์ฌ์ผ ๋ฐ์ฌ์
|
157 |
+
- ๊ฒฝ๊ณ ์ ์์คํ
(๊ณ ๋, ์คํจ, Over-G, ๋ฏธ์ฌ์ผ ๊ฒฝ๊ณ )
|
158 |
+
- ์์ฑ ์๋ด ์์คํ
|
159 |
+
- ๊ฑฐ๋ฆฌ๋ณ ์๋ ์กฐ์
|
160 |
+
|
161 |
+
## ๐ฎ ์กฐ์๋ฒ
|
162 |
+
|
163 |
+
### ๊ธฐ๋ณธ ์กฐ์
|
164 |
+
- **W/S**: ์ค๋กํ ์ฆ๊ฐ/๊ฐ์
|
165 |
+
- **A/D**: ๋ฌ๋ (์) ์กฐ์
|
166 |
+
- **๋ง์ฐ์ค**: ํผ์น/๋กค ์กฐ์
|
167 |
+
- **์ขํด๋ฆญ**: ๋ฌด๊ธฐ ๋ฐ์ฌ
|
168 |
+
- **R**: ๋ฌด๊ธฐ ์ ํ (๊ธฐ๊ดํฌ โ ๋ฏธ์ฌ์ผ)
|
169 |
+
- **F**: ํ๋ ์ด ๋ฐ์ฌ
|
170 |
+
- **G**: ์คํจ ํ์ถ (2์ด๊ฐ ์ ์ง)
|
171 |
+
|
172 |
+
### ์ ํฌ ํ
|
173 |
+
1. **๋ฏธ์ฌ์ผ ๋ฝ์จ**: AIM-9 ๋ชจ๋์์ ์ ๊ธฐ๋ฅผ ํฌ๋ก์คํค์ด์ 3์ด๊ฐ ์ ์ง
|
174 |
+
2. **ํ๋ ์ด ์ฌ์ฉ**: ๋ฏธ์ฌ์ผ ๊ฒฝ๊ณ ์์ด ๋ค๋ฆฌ๋ฉด ์ฆ์ Fํค๋ก ํ๋ ์ด ๋ฐ์ฌ
|
175 |
+
3. **Over-G ์ฃผ์**: ๊ธ๊ธฐ๋ ์ ์์ผ๊ฐ ์ด๋์์ง๋ฉด ์ํ ๋นํ์ผ๋ก ํ๋ณต
|
176 |
+
4. **์คํจ ํ๋ณต**: ์๋ 300kt ์ดํ์์ Gํค๋ฅผ 2์ด๊ฐ ๋๋ฌ ํ๋ณต
|
177 |
+
|
178 |
+
## ๐ ์ค์น ๋ฐ ์คํ
|
179 |
+
|
180 |
+
### ์๊ตฌ์ฌํญ
|
181 |
+
- ์ต์ ์น ๋ธ๋ผ์ฐ์ (Chrome, Firefox, Edge ๊ถ์ฅ)
|
182 |
+
- WebGL ์ง์
|
183 |
+
- ๋ง์ฐ์ค ํ์
|
184 |
+
|
185 |
+
## ๐ ํ๋ก์ ํธ ๊ตฌ์กฐ
|
186 |
+
|
187 |
+
```
|
188 |
+
jet-fight-simulator/
|
189 |
+
โโโ index.html # ๋ฉ์ธ HTML (HUD ๋ฐ UI)
|
190 |
+
โโโ game.js # ๊ฒ์ ๋ก์ง (๋ฌผ๋ฆฌ, AI, ์ ํฌ ์์คํ
)
|
191 |
+
โโโ models/ # 3D ๋ชจ๋ธ ํ์ผ
|
192 |
+
โ โโโ f-15.glb # ํ๋ ์ด์ด ์ ํฌ๊ธฐ
|
193 |
+
โ โโโ mig-29.glb # ์ ์ ํฌ๊ธฐ
|
194 |
+
โโโ sounds/ # ์ฌ์ด๋ ํ์ผ
|
195 |
+
โ โโโ main.ogg # BGM
|
196 |
+
โ โโโ normal.ogg # ์์ง์
|
197 |
+
โ โโโ ... # ๊ฐ์ข
ํจ๊ณผ์
|
198 |
+
โโโ effects/ # ์๊ฐ ํจ๊ณผ
|
199 |
+
โโโ symbol.png # RWR ์ฌ๋ณผ
|
200 |
+
```
|
201 |
+
|
202 |
+
## ๐ ๏ธ ๊ธฐ์ ์คํ
|
203 |
+
|
204 |
+
- **Three.js**: 3D ๊ทธ๋ํฝ ๋ ๋๋ง
|
205 |
+
- **Vanilla JavaScript**: ๊ฒ์ ๋ก์ง
|
206 |
+
- **Web Audio API**: ์ฌ์ด๋ ์ฒ๋ฆฌ
|
207 |
+
- **Pointer Lock API**: ๋ง์ฐ์ค ์ปจํธ๋กค
|
208 |
+
|
209 |
+
## ๐ฏ ๊ฒ์ ๋ชฉํ
|
210 |
+
|
211 |
+
- **๋ฏธ์
**: 180์ด ๋ด์ ๋ชจ๋ ์ ๊ธฐ(4๋) ๊ฒฉ์ถ
|
212 |
+
- **์น๋ฆฌ ์กฐ๊ฑด**:
|
213 |
+
- ๋ชจ๋ ์ ๊ธฐ ํ๊ดด
|
214 |
+
- ์๊ฐ ๋ด ์์กด + ๋ชจ๋ ์ ๊ธฐ ํ๊ดด
|
215 |
+
- **ํจ๋ฐฐ ์กฐ๊ฑด**:
|
216 |
+
- ์ฒด๋ ฅ 0 (ํผ๊ฒฉ/์ถฉ๋)
|
217 |
+
- ์ง๋ฉด ์ถฉ๋
|
218 |
+
- ์๊ฐ ์ด๊ณผ ์ ์ ๊ธฐ ์์กด
|
219 |
+
|
220 |
+
## ๐ ์ ์ ์์คํ
|
221 |
+
|
222 |
+
- ๊ธฐ๊ดํฌ ๊ฒฉ์ถ: 100์
|
223 |
+
- ๋ฏธ์ฌ์ผ ๊ฒฉ์ถ: 100์
|
224 |
+
- ์ถฉ๋ ๊ฒฉ์ถ: 200์
|
225 |
+
|
226 |
+
## ๐ก VIBE CODING์ ๊ฒฐ๊ณผ๋ฌผ
|
227 |
+
|
228 |
+
์ด ํ๋ก์ ํธ๋ **VIBE CODING** ๋ฐฉ๋ฒ๋ก ์ผ๋ก ์ ์๋์์ต๋๋ค. ๋น ๋ฅธ ํ๋กํ ํ์ดํ๊ณผ ์ฆ๊ฐ์ ์ธ ํผ๋๋ฐฑ์ ํตํด ๋์ ์์ฑ๋์ 3D ์ ํฌ๊ธฐ ์๋ฎฌ๋ ์ดํฐ๋ฅผ ๊ตฌํํ์ต๋๋ค.
|
229 |
+
|
230 |
+
### ํน๋ณํ ์
|
231 |
+
- ๋จ์ผ JavaScript ํ์ผ๋ก ๊ตฌํ๋ ์์ ํ ๊ฒ์ ์์ง
|
232 |
+
- ์ค์๊ฐ ๋ฌผ๋ฆฌ ์๋ฎฌ๋ ์ด์
|
233 |
+
- ๋ณต์กํ AI ํ๋ ํจํด
|
234 |
+
- ์ ๋ฌธ์ ์ธ HUD ์์คํ
|
235 |
+
- ๋ชฐ์
๊ฐ ์๋ ์ฌ์ด๋ ๋์์ธ
|
236 |
+
|
237 |
+
## ๐ ์๋ ค์ง ์ด์
|
238 |
+
|
239 |
+
- ์ผ๋ถ ๋ธ๋ผ์ฐ์ ์์ ์๋ ์ฌ์ ์ ์ฑ
์ผ๋ก ์ธํ BGM ์ฌ์ ์ง์ฐ
|
240 |
+
- ๊ณ ์ฌ์ ๊ทธ๋ํฝ ์ค์ ์์ ํ๋ ์ ๋๋กญ ๊ฐ๋ฅ
|
241 |
+
- ํ๋ ์ด ํจ๊ณผ๊ฐ ๊ฐํน ๋ฏธ์ฌ์ผ์ ์๋ฒฝํ ํํผํ์ง ๋ชปํ ์ ์์
|
242 |
|
|