Session Recording and Playback

ExampleSessionPlayback
ExampleSessionPlayback

Purpose

Provides the ability to record a session and then play back that session recording.

How to Use

Session Recording

The ISessionEventRecorder exists as a Ride System and allows you to record a session, which the ISessionEventPlayer can then play back. Users can add a variety of predefined recorders (e.g. position recorder or rotation recorder) or add their own implemented recorders to agents to fine-tune what the session recorder tracks for each agent.

Session Playback

The session playback example complements the session recording example. The playback example provides a simple player UI in the debug menu to replay the recording made from the session recording example.

Scene Location & Name

Session Recording

Assets/Ride/Examples/Session/ExampleSessionRecording.unity

Session Playback

Assets/Ride/Examples/Session/ExampleSessionPlayback.unity

Setup Requirements 

Session Recording

Users will need to attach recorders to objects that they want to track. In the example, each agent has an attached Position Recorder to track the agents’ positions. Additionally, users will need to populate the Session Object ID field with a value that is unique to each object. Consider, for example, a human game object in a scene with a Position Recorder and a Rotation Recorder attached to its head and a local position recorder attached to its nose. The Position Recorder and Rotation Recorder can use Session Object ID value “humanA_face”, and the Local Position Recorder can use the Session Object ID value “humanA_nose.”

Session Playback

The tracked objects from the session recording scene must be in the session playback scene with a SessionObject component added to each object that had a recorder attached to it from the session recording scene. The Session Object IDs must match those from the session recording scene. The recorder components are not necessary in the playback scene.