Skip to content

v1.0.0

Compare
Choose a tag to compare
@AchimStremplat AchimStremplat released this 12 May 10:31
· 24 commits to main since this release
86acb79

[1.0.0] ramses-logic 1.x, Python API, timer, new animations

  • File version number has changed. Files saved with RaCo 1.0.0 cannot be opened by previous versions.
    • rca files saved with this version will be much smaller than files saved with previous versions.
  • Export file format has changed. Scenes exported with RaCo 1.0.0 / ramses-logic 1.0.2 cannot be opened by ramses-logic versions 0.x.
  • Breaking Change: ramses-logic 1.0.2 uses a different lua syntax for the type definitions and the interface() and run() function definitions.
    • See the ramses-logic CHANGELOG.md for details.
    • A migration script provided by ramses-logic that converts the lua syntax is included as migrate_to_v1.0.py in the root folder of the RaCo package.
      • The migration script needs to be run twice - once for adding the IN,OUT parameter to the interface()/run() functions, and once to update the name of the types.
      • Example for running the migration script in your root project folder on Windows (adjust paths as required):
        • cd MyProjectFolder
        • python \RaCoInstallationFolder\migrate_to_v1.0.py inout .
        • python \RaCoInstallationFolder\migrate_to_v1.0.py types .
      • You might need to install the click Python module using pip install click to run the migration script.

Added

  • Added Python API and the ability to run python scripts using the RaCoHeadless application.
    • Added "-r" commandline option to RaCoHeadless application to run python scripts.
    • For a description of the Python API see the PythonAPI.md file.
  • Added new Resource type Timer as an interface to the ramses-logic timer.
  • Added support for more PNG image formats and Ramses texture formats.
    • Previously imported .pngs for Textures may need to be reconverted as the texture format detection has become more stringent.
    • Only supported PNG color types: R, RG, RGB, RGBA
      • Palette PNGs are loaded and converted for legacy reasons but will always cause a conversion warning.
    • 8-bit PNGs can only be used 8-bit for Ramses texture formats and vice versa with 16-bit PNGs.

Changes

  • Update from ramses-logic 0.15.0 to 1.0.2
  • Update from ramses 27.0.116 to 27.0.119
  • Nested arrays in LuaScripts are now supported. See the ramses-logic Changelog for details.
  • Ramses-logic objects created in RaCo scenes will share the same ramses-logic user ID as the respective RaCo object.
  • Animation objects have been simplified and now only have a 'progress' input property.
  • The Error View in the dock now also shows errors by external references, and is now consistent with the "Composer Errors" tab in the export dialog.
  • Redundant data has been removed from the rca file - if you are using many prefab instances or external references, expect your files to shrink significantly.

Fixes

  • Always perform a logic engine update when loading a file to avoid inconsistent states when exporting with the headless application.
  • Export with headless version will not write exported files anymore when the project can't be loaded.
  • The RaCoHeadless application will now return a non-zero exit code if loading a project fails, the export fails or a python script throws an exception.
  • Fixed RaCoHeadless crash when a scene extrefed by a loaded scene cannot be found.

Known Issues

  • It is currently not reliably possible to use venv/virtualenv with the RaCoHeadless Python API.