mirror of
https://github.com/kuhyx/praca_magisterska.git
synced 2026-07-06 17:03:02 +02:00
|
|
||
|---|---|---|
| .. | ||
| .markdownlint.json | ||
| .prettierrc | ||
| appendix-a-variables.md | ||
| appendix-b-troubleshooting.md | ||
| appendix-c-unity-conversion.md | ||
| appendix-d-cpp-reference.md | ||
| blueprint-vs-code-comparison.md | ||
| code-first-approach.md | ||
| lint-markdown.sh | ||
| part-1-project-setup.md | ||
| part-2-create-player.md | ||
| part-3-create-bullet.md | ||
| part-4-create-enemy.md | ||
| part-5-create-spawner.md | ||
| part-6-game-director.md | ||
| part-7-score-manager-ui.md | ||
| part-8-game-mode-level.md | ||
| part-9-final-setup.md | ||
| README.md | ||
Unreal Engine Bullet Hell Game - Complete Tutorial
This tutorial recreates the Unity "magisterka_1" bullet-hell shooter in Unreal Engine 5.
Game Features
- Player ship with movement and shooting
- Enemies that move downward with sinusoidal horizontal motion
- Enemy spawning that increases over time
- Radial bullet patterns from enemies
- Score, lives, and timer UI
- Special "bomb" ability to clear screen
- 5-minute game duration with victory/defeat conditions
🆕 Two Approaches Available
This tutorial offers two ways to implement the game:
1. Code-First Approach (RECOMMENDED) ⚡
→ Start the Code-First C++ Tutorial
- ✅ 90% faster - copy-paste variable blocks instead of clicking UI
- ✅ Version control friendly - readable Git diffs, not binary files
- ✅ Easier to replicate - copy entire class files between projects
- ✅ Better for teams - code review, refactoring tools, find/replace
- ✅ Type-safe - compiler catches errors at compile time
Best for: Anyone comfortable with C++ or wanting to learn modern game development workflows.
2. Blueprint-Heavy Approach 🎨
→ Start the Blueprint Tutorial (see below)
- ✅ Visual node editing - see logic flow graphically
- ✅ Instant iteration - no compile time for Blueprint changes
- ✅ Designer-friendly - non-programmers can modify behavior
Best for: Complete Unreal beginners, visual learners, or rapid prototyping.
Comparison
| Task | Code-First (C++) | Blueprint |
|---|---|---|
| Define 12+ variables | 2 minutes (copy-paste) | 15 minutes (clicking) |
| Version control | ✅ Readable diffs | ❌ Binary files |
| Refactoring | ✅ IDE tools | ❌ Manual |
| Full game time | ~2-3 hours | ~6-8 hours |
📖 Read Detailed Comparison: Blueprint vs Code - See specific examples of time savings
💡 Pro Tip: You can combine both! Use C++ for logic/variables, Blueprints for visual assets.
Table of Contents
Part 1: Project Setup
Part 2: Create the Player
- Step 2.1: Create Player Blueprint
- Step 2.2: Add Player Visual Components
- Step 2.3: Create Player Variables
- Step 2.4: Set Up Enhanced Input System
- Step 2.5: Create Player Firing Logic
- Step 2.6: Create Player Damage and Special Ability
Part 3: Create the Bullet
- Step 3.1: Create Bullet Blueprint
- Step 3.2: Bullet Movement Logic
- Step 3.3: Bullet Collision Logic
- Step 3.4: Complete Player Firing Logic
Part 4: Create the Enemy
- Step 4.1: Create Enemy Blueprint
- Step 4.2: Enemy Initialization
- Step 4.3: Enemy Movement Logic
- Step 4.4: Enemy Firing Logic
- Step 4.5: Enemy Damage and Death
- Step 4.6: Complete Special Ability in BP_Player
- Step 4.7: Complete Bullet Collision Logic
Part 5: Create Enemy Spawner
Part 6: Create Game Director
- Step 6.1: Create Game Director Blueprint
- Step 6.2: Game Director Initialization
- Step 6.3: Game Director Update Logic
Part 7: Create Score Manager / UI
- Step 7.1: Create UI Widget Blueprint
- Step 7.2: Design HUD Layout
- Step 7.3: Create Score Manager Blueprint
- Step 7.4: Score Manager Initialization
- Step 7.5: Score Manager Functions
Part 8: Create Game Mode and Level
- Step 8.1: Create Custom Game Mode
- Step 8.2: Configure Project to Use Game Mode
- Step 8.3: Create Game Level
- Step 8.4: Set Up Level Components
- Step 8.5: Set Default Level
Part 9: Final Setup and Testing
- Step 9.1: Assign Blueprint References
- Step 9.2: Create Final Visuals
- Step 9.3: Add Background
- Step 9.4: Test the Game
- Step 9.5: Build Standalone Game
Appendices
- Appendix A: Complete Variable Reference
- Appendix B: Troubleshooting
- Appendix C: Unity to Unreal Conversion Notes
- Appendix D: Complete C++ Reference ← NEW! Copy-paste ready code
Quick Start
For Code-First Approach (Recommended)
- Start with Code-First C++ Tutorial
- Copy-paste complete C++ classes from Appendix D
- Create minimal Blueprint children for visual assets only
- Complete the game in 2-3 hours instead of 6-8 hours!
For Blueprint Approach
- Start with Part 1: Project Setup
- Follow each part in order
- Test frequently using the "EXPECTED RESULT" sections
- Use the Troubleshooting appendix if you encounter issues
Navigation
Each page includes:
- ← Previous and Next → links at the top and bottom
- Links back to this index
- Cross-references to related sections
This tutorial is part of a master's thesis comparing Unity and Unreal Engine.