
Opis
Starship is a runtime C++ plugin (with full Blueprint support) for Unreal Engine 5 that adds a complete 6DOF spacecraft pawn - fly, hover, land, take off and pilot a ship on foot, in atmosphere or in space. The ship reads the engine's variable gravity, so it aligns to your world's gravity automatically and flies the same in normal gravity or zero-g. It is anti-gravity powered: gravity never drags it down, so releasing the controls leaves it hovering in place.
The ship has a four-state flight model driven by altitude above the ground: Landed, Hovering, Floating (space) and Flying. Walk up to the ship as an on-foot character, press a key to board, fly and land, then step back out - the whole pilot loop is built in.
Drop the included BP_Starship into your level, assign your own ship static mesh, and fly. A reusable engine component (mesh + Niagara exhaust + sound, driven by one Set Power) and HUD-ready Blueprint events are included.
──────────────────────────────
CORE FEATURES
──────────────────────────────
▸ 6DOF Anti-Gravity Flight - a powered spacecraft that flies in full six degrees of freedom. Gravity never pulls it down; it only sets which way is "up" and which way climb goes, so the ship holds altitude the moment you let go.
▸ Four-State, Altitude-Driven Flight Model - the ship auto-detects its state from elevation above the ground: Landed (rests on a surface), Hovering (holds altitude, stays level, moves but never tilts/rolls), Floating (drifts in space), and Flying (turns to fly where you look, with full tilt and bank). Each state has its own controls and feel.
▸ Footprint Ground Detection - a box sweep along gravity (sized to your hull and aligned to the ship's heading) measures true elevation above ground, so landing reads correctly on slopes and uneven terrain - not a single ray that misses.
▸ Hover, Land & Take-Off Sequences - hold descend at the hover floor to start a smooth, timed landing down to landing-gear height; hold ascend while landed for a spool-up delay then a clean lift-off. Ships placed below the hover floor auto-land on spawn.
▸ Limited Auto-Roll Banking - the ship banks into turns and strafe, proportional to how far it has to turn, eased and clamped to separate hover/fly limits. Subtle and controllable, never a runaway barrel roll.
▸ Gravity-Aligned Free-Orbit Camera - an independent third-person orbit camera (absolute rotation, decoupled from the ship) that stays level to gravity. Look anywhere; the ship turns to follow only while Flying.
▸ Reusable Engine Component - UStarshipEngineComponent bundles a static mesh + a Niagara exhaust + an optional looping sound, all driven by one Set Power(0..1). Subclass it in Blueprint to preset the mesh/FX/sound, add one per nozzle, and drive it from the ship's thrust.
▸ On-Foot Pilot Interaction - a movable interaction volume detects an on-foot player character; a "Press [key] to Pilot" prompt appears, the player boards (possess + attach), flies, lands, and a "Press [key] to Disembark" prompt lets them step back out. The interact binding is injected onto the character, so no changes to your character Blueprint are required.
▸ Gravity-Agnostic - reads gravity through a small abstraction with no compile-time dependency on any gravity plugin. Uses the engine's variable gravity by default; an optional reflection bridge lets it pick up directional (planet/ring) gravity from an external provider without linking against it.
▸ HUD-Ready Blueprint Events - overridable events fire on every meaningful moment: flight-state change, landing/take-off start, landing-gear and main-door open/close, and Show/Clear Prompt with the live key text. Wire them straight to UMG.
▸ Full Blueprint Support - thrust, speeds, elevations, banking, landing timings, camera and engine are all exposed; flight state, elevation and power are queryable at runtime.
──────────────────────────────
TECHNICAL HIGHLIGHTS
──────────────────────────────
▸ UPawnMovementComponent-based 6DOF flight with an auto-detected four-state machine (Landed / Hovering / Floating / Flying), elevation-gated by a footprint box-sweep along gravity
▸ Anti-grav model - gravity sets orientation + the climb axis only; per-state damping, state-based and lateral speed caps, and yaw-lag banking
▸ Smooth, duration-driven landing and take-off (with a take-off spool-up delay), bidirectional descent/ascent to a target elevation, and a soft hover-floor brake
▸ Gravity read through IStarshipGravitySource - a default world-gravity source, plus a reflection adapter that finds an external gravity provider by name (no compile-time dependency, graceful fallback)
▸ Gravity-aligned, absolute-rotation orbit camera (the ship turns to follow only while Flying)
▸ Reusable engine SceneComponent (static mesh + Niagara + optional audio) driven by Set Power; BlueprintNativeEvents you can override
▸ On-foot board/disembark via injected Enhanced Input - possess + attach the pilot (movement disabled while stowed), key-aware prompts
──────────────────────────────
INCLUDED
──────────────────────────────
▸ Full C++ source
▸ AStarshipPawn / BP_Starship - drop-in, ready-to-fly spacecraft pawn
▸ UStarshipEngineComponent / BP_Engine - reusable engine (mesh + Niagara + sound)
▸ A sample lander mesh with materials/textures (body, gear, doors, glass, engines, seat)
▸ Engine Niagara exhaust + looping sound
▸ Enhanced Input mapping context + thrust / strafe / climb / roll / look / stabilize / interact actions
▸ HUD widgets for the flight states + a prompt widget, wired to the Blueprint events
▸ Demo level with the ship ready to board and fly
──────────────────────────────
PERFECT FOR
──────────────────────────────
Space and sci-fi games, planetary exploration, landers and shuttles, open-world games with player-flyable vehicles, on-foot-plus-ship gameplay, and any project that needs a hover/land/fly spacecraft with a built-in pilot loop - without writing 6DOF flight, gravity-aware orientation, landing logic, or the board/disembark plumbing from scratch.
──────────────────────────────
NOTES
──────────────────────────────
▸ No ship mesh is shipped in the core scaffold by design - assign your own static mesh (a sample lander is included for the demo).
▸ Uses Enhanced Input and Niagara (both bundled with UE5).
▸ Reads the engine's built-in variable gravity; an optional reflection bridge connects to an external directional-gravity provider with no compile-time dependency.
▸ The on-foot pilot character is your own pawn (the included demo uses a standard character); boarding needs no changes to it.
▸ Built for single-player / local play; networked multiplayer is not supported in V1.0.
▸ Supports Unreal Engine 5.4, 5.5, 5.6, 5.7, and 5.8.

















