How to Create Dynamic Game Play on Moving Platforms
If your studio wants to create dynamic game play on moving platforms, without using complex scripts temporary workarounds or resource heavy mesh regeneration, we've just released a new feature that makes it easy to develop this historically complex game play design.
Read on or watch the explainer video below to find out more.
Traditionally, NavMeshes have always been static, so if you move the platform, the Navmesh is left behind, and must constantly regenerate to keep up and stay functional.
You don’t have to look far to find forums and online communities filled with frustrated developers who have resorted to hacks or workarounds to try to solve this problem.
We're excited to release an out-of-the-box solution that’s accessible for developers and doesn’t use up expensive processing resources on regeneration.
Let’s dive into a behind-the-scenes look at our Kythera Cove showcase and see how the Kythera AI Moving NavMesh feature works.
Here and throughout, the pink area indicates the NavMesh being used by the NPCs aboard the ship. As you can see, the NavMesh moves with the ship without requiring any regeneration.
When it comes time for the ship to dock on land, NPCs can move back and forth between the ship and shore with no special handling, and without expensively regenerating large areas.
Watch as the gangplank is extended to the dock, connecting the stationary NavMesh (shown here in green) to the Moving Navmesh (shown in pink), only automatically regenerating the small area necessary to create a unified NavMesh.
Once your agents have boarded and it’s time to weigh anchor, the moving NavMesh unlinks, letting your agents continue on their journey.
One of the most exciting things about this feature is that it works in tandem with Kythera AI's existing capabilities including automatic cover markup, automatic navigation links for jumps and climbs, and even dynamic changes to the navmesh.
Watch as the moving navmesh dynamically responds to changes like the destruction of the mast as the ships engage each other. We've slowed the footage down so you can see the NavMesh regenerate in response to the fallen mast, indicated by the changing colours. The regenerated NavMesh now excluding the area blocked by the mast.
Designers can choose to have the regeneration scripted based on an event, or let Kythera AI detect physics changes and automatically regenerate the NavMesh for them.
Not only can Moving NavMesh be unified with static navigation mesh, but it can also regenerate while in motion!
Cover rails can be generated using Kythera AI Automatic Cover Markup generates cover rails on the moving NavMesh. By dynamically analyzing the geometry of your level at runtime, any setpieces within your game can instantly become a cover point for enemies to hide behind or an obstacle to vault over.
The NPCs select the most appropriate points on the cover rails to engage the enemy actors, using Kythera AI’s Spacial Query System to evaluate the available positions, which change and update dynamically as the battle unfolds.
Keep your eye on the NPC on the left in the video below. The debug draw shows the cover locations as cylindrical spotlights with different colors indicating the value of the various options available to the agents - red indicating a poor choice and green highlighting the best option for the active agent.
As the Spatial Query System evaluates and updates positioning in real-time, the NPC moves between the cover points identified for it, creating an engaging battle scene.
- Doesn’t require constant regeneration of the NavMesh
- Highly efficient performance
- Compatible with major engines
- Developer and Designer friendly
- Can be integrated at any development stage
Kythera AI Moving NavMesh untethers the navmesh and provides a transformative shift in how we approach movable platforms in game creation.
Unlike the typical approaches, with Moving NavMesh, it’s not necessary to constantly regenerate the navigation mesh, nor does it require tricks of perspective. Where other approaches significantly undercut performance, our feature boasts high efficiency. All that's required, is to keep the coordinate system in synch with the frame of reference of the actor it’s linked to - achieved by updating a 4x4 matrix once per frame.
The feature is easy to set up, compatible with major engines, developer and designer-friendly, and can be introduced into a game at any stage of development.
Game developers are no longer bound by the limitations of stationary navigation meshes, opening up new realms of creativity and innovation and widening the possibilities for advanced gameplay and navigation.
Studios can now explore game design options that were previously out of reach with this powerful generic solution to an industry-wide problem.