Known limitations¶
Guerilla file format imply some parsing limitations.
int vs float¶
Lua version used in Guerilla (5.1) does not support int
types. Any numeric value is a float
so it’s the attribute that defines the type. This also mean a value of 2.0
will always be stored as a 2
in Guerilla files, without the comma.
When Guerilla parse the file back, it store value depending on the attribute type.
This means you can’t guess the type from the parsed file only. That’s why the parser returns numerical values as Python float
.
TODO¶
- object id and oid
- ‘{}’
- ‘create.Id’
- float to int so we only take float
- add delete command support (optional?).
- improve and expose set_plug_value().
- utest to execute inside Guerilla (Guerilla Docker image?).
Conversions¶
- Missing lua to python conversion ‘{}’.
- Missing lua to python conversion ‘types.color’.
- Missing lua to python conversion ‘types.float {min=1,max=10}’.
- Missing lua to python conversion ‘matrix.create{-1,0,0,0,0,1,0,0,0,0,-1,0,0,0,0,1}’.
- Missing lua to python conversion ‘transform.create{-1,0,0,0,0,1,0,0,0,0,-1,0,0,0,0,1}’.
- Curve unpacking is not supported.
Glayer connection to document¶
Some .glayer
/.grendergraph
documents have a connection or depend command to root document:
connect(“$1.AspectRatio”,”$0.ProjectAspectRatio”) depend(“$17.Out”,”$0|Preferences.ShutterClose”)
Such connections are skipped when those files are parsed because document structure doesn’t exists.