An Open World Exploration game where you play as a dog fighting pilot collecting bounties.
Unreal Engine
Blueprints
Flight Mechanics
Open World
Day/Night Cycle
Project Overview
Inspired by the classic Ghibli film Porco Rosso, I created an aerial combat flight game in Unity that captures the romanticism of 1920s Italian aviation. Players pilot a vintage seaplane through Mediterranean skies, engaging in dogfights with air pirates while completing escort and reconnaissance missions.
This was a passion project where I focused heavily on atmospheric aesthetics and fluid flight controls. I implemented a custom flight model that balances arcade accessibility with satisfying physics, complemented by cel-shaded graphics.
What Made This Project Successful
The game nails the aesthetic and feel of its inspiration. The flight controls strike a perfect balance between simulation and arcade—planes have realistic stall speeds and banking turns, but players aren't punished for aggressive maneuvers. I implemented a speed management system where going too slow causes altitude loss, but diving builds speed for climbing turns, creating a satisfying energy management gameplay loop.
The cel-shaded art style with hand-drawn cloud textures and watercolor skyboxes creates a distinctive visual identity. I wrote custom shaders for the toon outlines and implemented a dynamic time-of-day system that transitions between golden hour, midday, and sunset lighting.
The dogfight mechanics focus on positioning rather than twitch shooting. I implemented a lead indicator system that helps players understand bullet trajectory.
Key Takeaways
This project deepened my understanding of 3D mathematics and quaternion rotations. Implementing smooth, realistic-feeling flight controls required extensive work with Rigidbody.AddTorque and angular drag calculations. I learned the importance of input smoothing and dead zones to prevent twitchy aircraft behavior.
The cel-shader taught me about Unreal's shader graph and lighting systems. I had to understand normal vectors, light direction calculations, and how to create custom lit surfaces. The toon outline effect uses an inverted hull method with backface culling, which I learned requires careful normal adjustments to avoid gaps.
Performance optimization was critical—rendering vast draw distances with detailed clouds and ocean surfaces required LOD systems, fog culling, and billboarded cloud sprites for distant layers.
Technical Highlights
Technical implementations:
**Custom Flight Physics**: Rigidbody-based flight model with lift calculations based on wing surface area and angle of attack, drag simulation using quadratic velocity-dependent forces, and stall mechanics that reduce lift below critical speeds.
**Arcade Flight Controls**: Player input mapped to torque application with smoothing filters, automatic roll stabilization to prevent death spirals, and assisted aiming that accounts for target velocity.
**Cel-Shading Pipeline**: Custom Shader Graph shaders with stepped lighting (5 discrete brightness levels), Sobel edge detection for outlines, and Fresnel rim lighting for atmospheric depth.
Interested in This Project?
I'd love to discuss this project in more detail or explore how similar solutions
could benefit your team. Let's connect!