RIDE - 0.6

Overview

Details new changes made since the previous release of the RIDE platform to external collaborators and developers.

Page Contents

Release Notes – 0.6 (April 2022)

Please read the below Release Notes and related changes for this version.

IMPORTANT

In order to access Terrain datasets, you must have a terrain key.  Please contact us directly in order to acquire a key.

A* Pathing

  • Added Round() to RideMath.cs.
  • Improvement to A* Movement System at high timescales in regards to agents overshooting destinations / over turning.
  • Cached calls to system access system in UnityAStarMovementSystem.

Battle Drills

  • BattleDrill_CoverAndConcealment; latest Battle Drill scene with new capabilities, including weapons, ambush types, agent behaviors, weather events, and terrain material identification.

Camera

  • UnityRealTimeStrategyCameraController; implements a RTS game type camera with movement controls.

Entities – LOD

  • DataMono military and civilian prefab entities now use LODs to drastically reduce Tris/Verts depending upon camera distance from character.

Level Select (Standalone or full-source distributions only)

  • Split Demo scenes listing into Featured, Multiplayer and Tutorials listings.
  • Esc key now backs out of scene listings and Options menu, returning to main menu instead of closing app.
  • User now receives Exit confirmation prompt.
  • Relabeled scenes for clarity and alphabetized accordingly.
  • Menus can now be navigated via keyboard controls: arrow keys to select, Enter key to confirm, Backspace key to back out.
  • Added various scenes not included previously.

Models – LOD

  • AK47 and M4 weapon model prefabs now use LODs to drastically reduce Tris/Verts depending upon camera distance from model.

Prefabs

  • Added 40mm grenade magazine type.
  • Added M203 and M67 items.

RIDE Systems

  • Removed ApiSystemMonoUpdater, functionality added to ApiSystemMono.
  • Removed ApiMono, functionality added to SystemAccessSystem.
  • Added m_StoppingSquaredVelocity to MovementSystem.cs to allow for more lenient considerations of reaching a destination.
  • Added Listener functions for AgentRevivedEvent in MovementSystem and UnityAStarMovementSystem.
  • Added agentRevived world state.
  • Added AgentRevivedEvent world event.
  • Added ReviveAgent() to IAgentSystem and AgentSystemMono. It dispatches an AgentRevivedEvent.
  • Added IWeatherSystem and UnityWeatherSystem.
  • Added ICoverSystem and UnityCoverSystem.
  • Added GetAgentRange() and SetAgentRange() to IAgentSystem and AgentSystemMono.
  • Added SetMaxSpeed function to IMovementSystem.
  • Added GetAnimationController function to AnimationSystem.
  • Added IsInputControllable function to MovementSystem.
  • Added GetEntityHitBoxMaxHealth function to AttackSystem.

Scenario Maps

  • RescueAtKorabela scene updated to demonstrate a mission objective built using Scenario Map authoring tools.
  • Modified ExampleMSELI to demonstrate how to use Scenario Map conditions and events.
  • Added ScenarioMapIdentifier.cs component that allows arbitrary game objects to be used in Scenario Map configurations.
  • Added Scenario Map Observation Condition, allowing scenario events to be triggered by arbitrary world events by pattern-matching against the event representations in the Interpretation System’s world event observer. Includes mechanism for specifying specific RIDE entities in pattern before their RideID is known.
  • Removed unused/outdated components UnityGroup, UnityInterpreter, UnityNarrator – use ScenarioMapGroup, ScenarioMapInterpreter, ScenarioMapNarrator instead. Updated RegionSystem to remove reference to UnityGroup.
  • Removed unused and outdated Unity-editor specific AI behaviour components. Use ScenarioMapAgentBehaviour and ScenarioMapGroupBehaviour instead. Deprecated WanderMono.cs
  • Removed unused and outdated Unity-editor versions of Scenario Conditions and Scenario Events. Use ScenarioMapCondition and ScenarioMapEvent instead.

Terrain

  • Added feature marking system for tracking terrain elements of interest (doors, windows); note, annotation process currently manual.

Unity

  • Upgraded project to support Unity 2021.2.17f1.
  • Updated various packages, including Barracuda, ML Agents and Timeline.
  • ProjectSettings – Editor – Asset Pipeline – Turned on ‘Parallel Import’.
  • runUnity.bat – fix for macOS when using Hub 3.x.
  • runUnity.bat – removed the optional modules from the initial installation; now more convenient to install the additional modules via the GUI, if/when needed.
  • Note, recommend clearing your local checkout \Library directories under \RideUnity and \NewProjectTemplate Unity projects prior to updating.

Examples

Added several Example scenes that highlight new RIDE capabilities, such as:

  • BarracudaAPI; demonstrates how to examine and run unit tests on various Machine Learning models residing within/outside RIDE backed with Unity Barracuda framework.
  • ExampleCustomAgentAnimations; add custom animations to agent avatars in RIDE, including a simple debug selection menu.
  • DefenseOfCatalinaIsland; simple authored scenario to demonstrate features of the Scenario Map toolset.
  • SimpleNetworkExample; demonstrates how to set up a network environment with controllable characters using the RIDE API and Photon asset package.
  • TimelineConditionCheck; features Timeline’s method of creating non-linear events by checking for conditions before advancing through the track.
  • TimelineCompilation; features Timeline’s general functionalities, such as spawning, commanding entities, and controlling cameras.

Fixed Issues

This release contains numerous bug fixes, including code refactoring and optimizations. Selected items of interest listed below.

Examples

  • BattleDrill_ReactToAmbush_DataMono; re-enabled first-person view of a selected agent via O key press.
  • ExampleWaypointVisualizer and ExampleWaypointVisualizer_Korabela scenes, errors upon instancing of SoldierBlueWaypoint and adding of waypoints.
  • ExamplePhoton and ExamplePhotonWithSpeechRecognition, DebugConsole (Missing Prefab).
  • ExampleSessionRecording, use of Exit command fails to populate exampleRecording.session file.
  • Singleplayer_YumaDriving_InputVehicles and Singleplayer_YumaDriving_InputVehicles_CTR, repeating audio listeners message and camera remains static after terrain streaming complete.
  • Standalone builds, ExampleParticleSystem: NullReferenceException: Object reference not set to an instance of an object.
  • Standalone builds, ExampleSessionRecording, sequence fails to initialize.
  • Standalone builds, ExamplePhotonWithSpeechRecognition, after loading and exiting from scene, standalone app then becomes unresponsive upon app Exit selection at main menu.
  • ExampleBehaviourComparison, ML Agent movement behavior improved.

RIDE Systems

  • Fix for AgentSystemMono.ReviveAgent() passing incorrect parameter to event dispatch.
  • Fixed SetAgentHealthFull function to apply to all IAgents (not just AgentMonos).

Known Issues

New defects or regressions of interest to be addressed in a future release.

Examples

  • BD_Ambush, IndexOutofRangeException error at runtime.
  • PlayerInputControllerDataMono, inconsistencies with PlayerInputController scene.