The Visual Engine

by Boxophobic

RememberVisualEngineManager is a Crystal Save “Remember” component that persists the runtime configuration of The Visual Engine’s TVEManager. When attached to a TVEManager, it captures a comprehensive snapshot of global lighting, atmosphere, and element-rendering settings so they can be restored later

Compilation Note: The component is included only when both MEMORYPACK and ARAWN_REMEMBERME scripting symbols are defined

Serialized Data

The nested TVEManagerData class (annotated with MemoryPackable) stores all relevant manager properties in a serializable form, covering:

  • Motion & season controls

  • Element visibility and ordering

  • Renderer texture sizes, radii, and blend factor

  • Global coat, paint, glow, atmosphere, and form parameters

Serialization Process

SerializeComponentData builds a TVEManagerData object from the active TVEManager, then serializes it via SaveDataSerializer. Any serialization errors are logged for debugging

Deserialization and Application

DeserializeComponentData reconstructs the TVEManagerData from bytes and delegates to ApplyData, which writes all saved values back to the manager. It refreshes render buffers to honor texture-size changes and triggers a one-time sort pass if needed

Usage Notes

  1. Add the component via the menu path Crystal Save → Remember Components → Remember TVE Manager.

  2. Ensure MEMORYPACK and ARAWN_REMEMBERME defines are enabled.

  3. During gameplay, the component automatically serializes/deserializes the manager’s state using Crystal Save’s persistence system.


Setup

  1. Add the Remember Component

    • Select the character GameObject that owns TVE Manager.

    • Add Remember Component (RememberComposite) via Add Component → Crystal Save/Remember Components/Remember Component.

    • In the Remember Component’s list, add Remember Visual Engine Manager.

  2. Behind the scenes

    • RememberComposite keeps a designer-controlled list of hidden SaveableComponent instances so their IDs persist across reloads

  3. Result

    • A hidden RememberVisualEngineManager component is created and registered with the Save system, automatically bound to TVE Manager thanks to [RequireComponent] and [RememberTarget] attributes.

  4. Demo Scene

    • Diorama Demo scene requires import of official The Visual Engine Demo Scene.


Configuration Options

Remember Visual Engine Manager has no configuration Options


Save/Load Flow

  1. Serialization – When a save occurs, the component builds a Visual Engine Manager Snapshot with the enabled data and hands it to the SaveManager.

  2. Deserialization – On load, the snapshot is restored, reapplying gear, location, camera view, input settings, and attributes.


Summary

  • Works with Boxophobic's The Visual Engine by default and requires TVE Manager.component.

  • Deployed via RememberComposite (aka Remember Component) to maintain stable save IDs.

  • There is no Remember Visual Engine manager-specific configuration.

Last updated