CTS RENDERER ANIMATION PACKAGE

This folder contains geometry plus sampled object transformations. SketchUp
scene tabs by themselves do not transfer door/drawer animation to renderers.

CONVERT WITH BLENDER 4.x OR NEWER
1. Use a Blender build with OBJ import and the required FBX / Alembic exporter.
2. In Blender's Scripting workspace, open blender_bridge.py from THIS folder.
3. Run Script. This creates a new CTS Animation scene, imports geometry, bakes
   each part's movement per frame, and saves clip.blend in this folder.
4. A Lumion package produces animation.fbx. A D5 package produces animation.abc.
   Read CONVERSION_COMPLETE.txt. If conversion fails, read CONVERSION_ERROR.txt.
   clip.blend is retained if the final exporter fails, for manual export.
   Background alternative:
   blender --background --python blender_bridge.py -- "FULL_PATH_TO_THIS_FOLDER"

LUMION
Use a Lumion-target package at 25 FPS. Import animation.fbx with the Import
animations option enabled. Rigid move/rotate/scale animation is supported by
Lumion's documented animated-FBX import workflow. FBX renderer/version behaviour
still needs testing on the destination installation. Basic OBJ/MTL materials
are transferred; review complex/renderer-specific materials after import.

D5 RENDER
Import animation.abc through D5's Import control, not its welcome screen.
D5's documented Alembic workflow does not carry textured materials: reapply
materials/textures in D5. The exported mesh coordinates are in meters after
Blender conversion. Check orientation and scale on the destination version.

ENSCAPE
There is no general supported imported object-animation route for this plugin's
moving doors/drawers. Enscape video keyframes are primarily camera animation.
Do not treat the scene tabs, FBX or ABC in this workflow as Enscape support.
The separate PNG export is a SketchUp viewport sequence, not Enscape renders.

TIMING
animation.json records FPS, motion duration and an inclusive last endpoint.
N motion intervals have N+1 sampled poses. The image/renderer sequence includes
the final sample as one extra displayed frame. Each bi-fold pair is a single
assembly with its own axes; exported pairs can run together or sequentially.
More than two connected leaves in one accordion chain are not modeled by the
current two-leaf relationship. Set up independent two-leaf pairs where suitable.

MODEL / CAMERA
Static geometry and each animated body are exported separately in world-space
closed positions, with relative motion matrices. The source SKP is read without regrouping, hiding, moving or deleting it.
OBJ files are written from read-only face meshes with basic front materials,
textures and UVs; SketchUp's native model exporter is not invoked. Section cuts, renderer
proxies, procedural objects, lights, cameras and renderer-specific materials
are not guaranteed to transfer. Use normal mesh groups/components.
This is a fixed-camera object-animation package; add a camera path in the
renderer or Blender separately. No renderer is installed or controlled by it.

VALIDATION
Timeline, scene visibility baking, restoration, package matrices and script
structure have automated checks. Native SketchUp / Blender / D5 / Lumion
integration must still be verified on real installations; the conversion path
is provided as a bridge, not a certified renderer integration.

REFERENCE DOCUMENTATION
https://ruby.sketchup.com/Sketchup/Page.html
https://ruby.sketchup.com/file.exporter_options.html
https://docs.d5render.com/model/how-to-import-model-files-into-d5-render
https://support.lumion.com/hc/en-us/articles/360003455154
https://forums.chaos.com/t/object-animation/178684
