Repository navigation
EDI Gallery Export
Select EDI's Gallery root:
<EDI root>\Gallery
Do not select an individual workspace folder. Export writes every project workspace together.
Gallery/
|-- .edi-integration-studio-export.json
|-- Definitions.csv
|-- BundleDefinition.txt # only when bundles exist
|-- detailed/
| |-- attack.funscript
| |-- attack.twist.funscript
| `-- filler.funscript
`-- alternate/
|-- attack.funscript
`-- filler.funscript
Definitions.csv, bundle configuration, and ownership metadata are written once at the Gallery root. Every logical scene has one definition row, while each workspace rendition is written to its variant child folder.
The hidden manifest records the project ID and every managed file. On re-export, the Studio replaces the new managed set and removes files from the previous managed set that are now stale.
Consequences:
- Removing or renaming a workspace can remove its old managed scripts after an explicit warning.
- Unrelated files not listed by the old manifest are preserved.
- A file absent from the ownership manifest is never overwritten; a collision causes export to fail.
- A manifest belonging to another project prevents this project from taking over the same
Galleryroot.
When opening a schema-one project, the Studio may detect that its old interactive export used a different collection name than the persisted default variant. It offers to relabel those renditions before export instead of silently deleting the old collection.
Use one Studio project per managed Gallery root.
Unless the project already supplies a filler or reserves the filler name/file stem, export adds:
filler,filler,0,1200,filler,true,The script is written once per workspace with these points:
0 ms -> 0
600 ms -> 40
1200 ms -> 0
Generated Unity plugins request the action name exactly filler. If using a custom filler with generated plugins, currently use both scene name filler and file stem filler.
Definitions use this header:
Name,FileName,StartTime,EndTime,Type,Loop,DescriptionEvery row must contain all seven CSV fields. An empty description still requires the trailing comma.
Default-axis scripts use <FileName>.funscript. Additional axes use a suffix such as <FileName>.twist.funscript.
Funscript actions are exported as integer at and pos values. Export inserts a point at zero when needed and inserts or repairs the duration boundary. Looping scripts end at their starting position.
Bundles are represented by BundleDefinition.txt. The project/export model supports them, but the Studio does not yet provide a visual bundle editor.