dotted line


What's new in xaitMove² 2.6?


  • Improved new movement algorithms: xaitMove² 2.6 solves the problems of jittering and getting stuck in a 3D environment while the entity is moving to its goal position.

  • New ray-tracer for path-smoothing include: This lets the entities move in a more realistic way, cutting off the edges of path and respecting the constraints of the environment.

  • Improved static geometry avoidance: As entities now have an individual unit radius (see xaitMap 2.8), xaitMove guarantees 100% that the unit does not intersect with the static geometry
    anymore.
  • Support per type entity NavMesh: Each entity – smal or large units – can have their own parameterized NavMesh, so a small character is able to generate a different path than a large character based on the different NavMeshes.

  • Optimized for new xaitMap 2.8 features: Based on the feedback from our customers, the API and the way to integrate xaitMove 2.6 into a game engine have been re-worked and made much easier and faster.

  • xaitMove comes as an add-on to xaitMap

Top

dotted line


xaitMove² Features


  • 3D Movement. xaitMove² provides an easy-to-use 3D movement module for single units and groups of entities put together in formations.

  • Customizable movement behaviors composed of multiple sub-behaviors. Different sub-behaviors can be defined and configured for specific entity types to match your game’s needs. The library comes with predefined behaviors like GoTo, Follow, Intercept, Flee, Evade, Turn, Wait and Idle.

  • Static and dynamic obstacle avoidance. Once you have loaded the navigation mesh and registered your entities with the xaitMove² library, collision avoidance is done by the library.

  • Works perfectly together with xaitMap.

  • The extensibility of xaitMove² enables you to add more behaviors with ease, while the modules flexibility enables you to overwrite default behaviors or suspend entity movement.

  • Integrated Entity Management. If your game doesn’t have an entity manager yet, you can use xaitMove²’s Entity Manager out of the box.

Top

dotted line


xaitMove² Library features


  • Robust 3D movement module. Using xaitMap’s navigation meshes for pathfinding and obstacle avoidance, xaitMove² can handle any type of geometry.

  • Flexible command system. Commands can trigger different behaviors for different entities (or entity types). A new command sent to an entity can void or queue the current command. If a command is queued, you can choose to place it in front or at the end of the current command.

  • Works perfectly together with xaitMap
  • Supports multi-size character path searches, character group path searches and different path search spaces (see xaitMap ).
  • Keeps you updated about which type of NavMesh volume the entities are walking through, so you can react on groundType changes with different animations or ensuring that the entity is in crouching position when passing a special area.
  • Gives you the possibility to define custom cost functions for single entities, entity types and even for single groups of entities.

  • Move reports for active behaviors. All active movement behaviors send reports to the game, providing the possibility to adapt entity animations to the current movement situation.

  • Command-behavior mapping changes during runtime. Allowing you to adjust the Behaviors carried out given a certain command, e.g. change the normal Goto-Position behavior so that the entity for example tries to keep away from other entities while moving to a given target. This configuration is then used for all following GotoPosition commands. If you want the entity to behave normally again, you only need to call ResetEntityBehavior and the entity behaves again like defined in xaitMove Creator. This not only works for single entities but also for entityTypes.

  • The ability to alter command speeds. Having entities all move at the same speed can look very artificial. With xaitMove², you can alter the speed at which an entity carries out a command. It is even possible to have entities move faster than the command’s default maximum speed, e.g. to realistically simulate panic when a flee command is issued.

  • Minimal data exchange on parameters. All parameters that don’t change per command are preconfigured via the xaitMove² Creator and stored in configuration files, thus minimizing the data sent to the movement module.

  • Custom memory allocator. The library can be initialized to use any custom memory allocator. The library itself uses no direct calls to the C++ memory heap. You can provide your own memory allocation scheme or use one of your favorite game engines.

  • Data serialization from various data sources. The path data can be serialized directly from memory blocks or user provided streams. For faster startup implementations there is also a file based serialization stream.

  • Wide platform and compiler support
  • Win32/64 using VC2005,VC2008,VC2010 (static and dynamic library)
  • Linux32/64 using GCC4.1,GCC4.4 (static and dynamic library)
  • Recent Xbox360 SDK (static library)
  • Recent PS3 SDK, GCC and SN Compiler (static library)

  • Full Documentation. The SDK comes with documentation for the API and high level concepts or the library. There are also source code examples for using the library in different scenarios.

Top

dotted line


xaitMove² Creator features


  • Custom configuration properties. Define properties for behaviors and single entities, e.g. their size, movement and turning speed, acceleration and deceleration.

  • Reuse of defined behaviors. Once you have set up a behavior configuration for a certain entity type, you can reuse this configuration for other entities as well.

  • Move report activation. Enable/disable MoveReports for behaviors allowing you to adapt entity animations depending on running behaviors. Depending on your needs, you can activate MoveReports for each behavior separately.

  • Graphical custom formation designer
  • Allows composing formations with Drag‘n‘Drop.
  • Allows setting a ‚slot order‘. You can define in which order the formations are filled with assigned entities. For example, in a wedge formation you always want to fill the positions in the front first.
  • Allows reserving slots for distinct types of entities, e.g. foot soldiers and archers.
  • Group formations together. Positions inside of formations can be reserved for other formations.

Top

Evaluate xaitment AI

Evaluate - click here

Evaluate xaitment's libraries & graphical tools for NavMesh creation, pathfinding, movement, character behavior modeling, and game logic.

Meet us @ GDC 2012 (Mar 7- Mar 9, 2012)

Click here for a meeting

If you can't make the show, please contact us for a private demo or request a web-presentation.