SOL DRIFT

February 16, 2024 · 4 min read
projectsItch.io logo Play
Engage in lightning-fast omnidirectional vehicle dogfights inside a colossal decaying mechanism. Secure rare blueprints, deploy active countermeasures, and extract your stash via cargo drones before the automated system adapts.
Windows (PC)
Blueprints FMOD Integration GPU Shaders
Unreal Engine 5 Niagara Particles Vehicle Physics

Contributions

  • Experimented with a Niagara GPU Projectile Pooling system, optimising bullet hell density and shapes with a 90% gain in performance.
  • Migrated movement into a custom weighty, momentum driven flight Pawn script, giving us full control over game feel.
  • Programmed spatial 3D obstacle detection systems and reactive countermeasure logic loop, all used in behaviour trees.
  • Developed the full meta progression loop featuring an integrated \"C.A.R.D. Upgrade Architecture\", localised stat scoreboard saves, and level selections.
  • Designed the structural logic for a comprehensive modular garage setup terminal to safely equip nose, wing, armor, and utility modules between runs, as well as store puzzles, cyphers and world interactions.

Honorable Mentions:

  • Native material code driving real time raymarched volumetrics.
  • Automated gimbal aiming and crosshair stabilisation parameters.
  • Automated countermeasure responses like Chaff, Mines, Drone Swarms.
  • FMOD links implementing paramterised dynamic jet thruster events.
  • Responsive curved UI shader effects wrapping around the primary player screen viewport.

Every system inside SOL DRIFT has been iteratively tuned against physical playtesting datasets across numerous live convention show floors, resulting in a hyper-focused movement pipeline.

Engineering the S.O.L Fighter: Weighty Physics Pawn & Omnidirectional Flight

To fulfill the vision of a vehicle that captures both mechanical weight and arcade agility, we abandoned standard engine character movement components in favor of a specialized physics-driven Flight Pawn blueprint. Shifting away from rigid directional vectors allowed the ship to dynamically interact with architectural boundaries using true momentum-preserving equations:

  • True 12-Axis Autonomy: Programmed fully un-blocked movement trees supporting simultaneous forward, horizontal, and vertical displacement.
  • Drift Rotation Mechanics: Developed custom dampening forces that slide the craft smoothly through corners during high-speed thruster maneuvers, providing a distinct feeling of drift inertia.
  • Kinetic Refinements: Eliminated mechanical springarm deadzones and added custom screen-space recoil shifts that physically jar the vehicle hull during heavy output bursts.
View Blueprint Architecture: Velocity Decay & Thruster Interpolation```json // Logic detailing physics impulse handling for momentum preservation loops

High-Density Combat: Niagara GPU Projectile Pooling

To support our bullet-hell design pillars without dragging down frame rates on standard hardware, standard actor-spawning loops were entirely replaced with a centralized Universal Projectile Pooling Engine. Spawning thousands of individual laser actors quickly bottlenecked the CPU thread due to heavy garbage collection polling and component initialization cycles.

Our optimized solution shifts calculation weights directly onto background calculation groups:

  • GPU-Bound Projectiles: Weapon arrays fire directly into a unified projectile pool that interfaces seamlessly with Niagara particles.
  • Per-Particle Life Cycles: Hit evaluation, environmental trace calculations, and damage events are linked right into Niagara scratchpad memory addresses, allowing for accurate spatial collision lookups.
  • Muzzle Optimization: Bullet structures are handled in a single execution queue, containing automated minigun loop parameters and weapon dispersion logic that scales based on active movement velocity values.

Adaptive AI: Voxel Obstacle Detection & Autonomous Drones

To ensure that enemies navigating open three-dimensional spaces felt smart, aggressive, and highly reactive, we built a custom behavior tree network from the ground up. Flying AI requires complex spatial lookups to prevent units from constantly colliding with internal superstructure geometry.

To solve this, we implemented a dedicated 3D Obstacle Detection System. Drone sensors continuously cast raycasts into a predictive movement arc, allowing the AI to automatically bank away from geometry or find tight access channels during active combat loops. This intelligence layer drives a highly specialized roster of drone archetypes modeled closely after chess rules—highlighted by defensive hunter-killer arrays, automated sentries, and tactical decoy drones that deploy countermeasures to redirect player fire parameters.

Atmospheric Rendering: Raymarched Lighting & Retro Shaders

To establish our visual direction of a grim, mechanical industrial wasteland, I built a custom post-processing post-rendering stack. Instead of basic skybox spheres, we developed a mathematical, Shader-Driven SkyAtmosphere System. This system utilizes real-time raymarched volumetric lighting calculations to scatter light realistically through heavy post-industrial dust and dense spatial nebulas.

To give the UI a tactile, industrial look, we implemented a screen-space pixel shader that creates a vintage Curved CRT Screen Distortion directly on the player’s viewport. This retro-futuristic styling was optimized alongside our gameplay indicators—including dynamic damage vignettes and a radial target locking reticle that stretches and tracks bounding targets instantly across the screen.

Josh McCamley
Authors
Technical Game Designer
Co-Director and Game Developer at Mad Moon Studios