Skip to content

Releases: bmwcarit/ramses-composer

v1.10.4

05 Jul 13:41
Compare
Choose a tag to compare

[1.10.4] Support for new Blender glTF exporter

Added

  • Added support for the new attribute naming convention of color attributes in the Blender glTF exporter. The _COLOR_N attributes are now imported as color attributes if no attribute using the COLOR_N form is present in the glTF file.
  • Added support for import of Vec3 color attributes in the glTF importer. The alpha channel will be set to 1.0 in this case.

v2.2.0

04 Jul 12:40
Compare
Choose a tag to compare

[2.2.0] Ramses 28.2 update

  • File version number has changed. Files saved with RaCo 2.2.0 cannot be opened by previous versions.
  • Export now supports Ramses feature levels up to 2. Scenes exported with feature level 2 can't be opened with Ramses before v2.2.0.

Changes

  • Updated Ramses from v28.0.0 to v28.2.0.
  • Scenes exported with feature level 2 can be merged in Ramses. The ramses-viewer is now able to load and merge several exported files.
  • Starting at feature level 2 uniform buffers objects with predefined semantics are supported as specified in the documentation.

v2.1.0

18 Jun 12:34
Compare
Choose a tag to compare

[2.1.0] Render View, Python Console, Performance Table, Misc Improvements and Bugfixes

  • File version number has changed. Files saved with RaCo 2.1.0 cannot be opened by previous versions.

Added

  • Added render view widget containing a hierarchical view of the render setup of the scene and the rendered parts of the scene graph.
  • Added python script editor and interactive python console.
  • Added possibility to run python scripts on save. A project-specific script to execute before saving can be configured via the ProjectSettings object while an additional global script can be configured via the preferences dialog.
  • Added performance table widget allowing to record runtime statistics of LogicEngine scripts and objects.
  • Added support for the new attribute naming convention of color attributes in the Blender glTF exporter. The _COLOR_N attributes are now imported as color attributes if no attribute using the COLOR_N form is present in the glTF file.
  • Added support for import of Vec3 color attributes in the glTF importer. The alpha channel will be set to 1.0 in this case.
  • Made width, height, and sampleCount properties of RenderBuffer and RenderBufferMS objects linkable. Note that outside RamsesComposer modifying these properties via link is only allowed before the Ramses renderer is initialized.

Changes

  • Increased the size limit of RenderBuffer and RenderBufferMS objects, and the preview size to 8192x8192 pixels. The viewport properties of cameras and the region properties of BlitPasses have also been changed accordingly.
  • Allow exporting with Ramses warnings by default in the headless application. This behaviour can be changed with the new -w command line option which switches to handling Ramses warnings as errors when exporting.

Fixes

  • Added fallback texture which prevents empty texture slots causing the rendered object to become invisible.
  • Do not clear the framebuffer when zooming into the preview. The preview will continue to show the current framebuffer state when zooming even if all RenderPasses rendering into the framebuffer are disabled.
  • Prevent long lists of RenderPasses or RenderLayers shown in the "Rendered By:" and "Added To:" sections below the tag property in the property browser forcing a very wide property browser.
  • Set all target MeshNodes in the Skin object when importing skin objects with multiple target nodes from gltf files.
  • If the preview setup fails the preview will now enter an error state indicated by an ERROR status displayed at the bottom. The project can still be modified, saved, or exported in this state.

v1.10.3

11 Apr 14:32
Compare
Choose a tag to compare

[1.10.3] Skinning Import Bugfix

Fixes

  • Set all target MeshNodes in the Skin object when importing skin objects with multiple target nodes from gltf files.

v1.10.2

21 Mar 15:27
Compare
Choose a tag to compare

[1.10.2] Ramses Logic Update

Changes

  • Update ramses-logic from 1.4.2 to 1.4.5.
  • Update ramses from 27.0.130 to 27.0.139.
  • Since the LogicEngine now fixed the export of Skin objects the workaround in RamsesComposer has been removed.

v1.10.1

29 Feb 15:18
Compare
Choose a tag to compare

[1.10.1] Skinning Export Bugfix

Fixes

  • Include workaround fixing the export of Skin objects.

v2.0.0

20 Feb 13:16
Compare
Choose a tag to compare

[2.0.0] Switch to Ramses 28, Abstract Scene View, Misc UI Iprovements and Bugfixes

  • This is a major version upgrade for both RamsesComposer and Ramses/LogicEngine containing changes that can break existing scenes.
  • File version number has changed. Files saved with RaCo 2.0.0 cannot be opened by previous versions.
  • Update from Ramses-Logic 1.4.2 and Ramses 27.0.130 to Ramses 28.0.0. The LogicEngine has been merged into Ramses.
  • Scenes exported with RaCo 2.0.0 can't be loaded with Ramses versions prior to 28.0.0.
  • Export will only write a single file containing both Ramses and LogicEngine objects.
  • The feature level will start counting up from 1 in RaCo 2.0.0 and Ramses 28.0.0 again. The RaCo 2.0.0 feature level 1 does include all features from any feature level in RaCo <2.0.0 or Ramses 27.0.130 though. This implies that scenes of any feature level saved with RaCo <2.0.0 are automatically upgraded and all previously available features will be enabled upon loading.
  • RamsesComposer now requires Ubuntu 20.04 and gcc 9.4.0 instead of Ubuntu 18.04 and gcc 8.4.0 to build.

Breaking Changes

The following changes can break existing scenes upon loading

  • Bool uniforms are now represented by bool instead of int32 properties in Materials. Due to the change in the property type the property value will be lost. In addition links ending on bool uniform properties will break.
  • Module statements in LuaInterface objects are never ignored anymore. They were ignored at feature levels <5 in Raco <2.0.0. See also changes for v.1.6.0.

The following changes may break python scripts processing a scene but existing scenes will be migrated automatically when loading them

  • Conversion of the fixed number of layer properties in the RenderPass and buffer and bufferMS properties in the RenderTarget into array-type containers. Breaking python scripts due to the changes in the property names.
  • Conversion of the targets and joints properties in the Skin and animationChannels in the Animation to array-type properties. Breaking python scripts due to the changes in the property names.
  • The newly introduced array-type properties mentioned above have the indices starting at 1 as property names as for the LuaScript array-type properties.
  • Split the RenderTarget type into separate RenderTarget and RenderTargetMS types with only a single buffers array-type property which can contain only RenderBuffers or RenderBufferMSs.
  • Introduced generic meta data scheme.
    • The meta data is now stored in a new metadata property.
    • Each category of meta data has a named container property inside the metadata property and can be accessed from the Python API like any other property.
    • The gltfExtras meta data is now stored in the gltfExtras category inside the metadata container. The Python API metadata function has been removed.
  • Removed the userTags property from the ProjectSettings object.
  • The logic_path parameter was removed from the export function in the Python API.

Added

  • Added abstract scene view which shows a 3d representation of all objects in the scene in world space. This has a separate camera which can be moved around freely and also allows to manipulate the transformation proerties of objects using the mouse and/or the keyboard.
  • Added button in property browser to show objects referencing the current object.
  • Added prefab lookup button to the property browser.
  • Added texture preview in the property browser.
  • Added controls to allow the resizing of array-of-reference properties. This applies to the animationChannels property in Animation, the layer property in RenderPass, the buffers property in RenderTarget and RenderTargetMS, and the targets property in Skin objects.
  • Added resize property member function to the Python API to resize array-type properties.
  • Added composite commands to the Python API which generate only a single undo stack entry. See Python API reference for details.
  • Added shortcuts for the mostly used functions.
  • Added warning when an opened RCA file is changed externally.
  • Added dialog to copy the content of scalar read-only properties into the clipboard as plain text.

Changes

  • After starting a new instance of RaCo with "Load external project" via the context menu of an object, that object will be automatically selected in the new instance.
  • Object filtering in the tree views now can be done using complex boolean expressions. The search syntax is described in the User interface overview section of the Introduction chapter in the documentation.

Fixes

  • Prevent crash when opening invalid or broken project files and show an error dialog instead.
  • Fixed crash caused by a tabbed away Preview Window when closing RaCo.
  • Fixed crash when the folder of the currently loaded project is deleted.
  • Prevent directories from being added as external projects when calling the addExternalProject Python API function with a directory as argument.
  • Export of Nodes with enabled=false and visibilty=true is now correct.
  • Fixed generation of multiple undo stack entries when a property inside a Prefab is changed multiple times. The undo stack entries are now merged as for properties outside Prefabs.
  • Fixed update of partially linked array uniform properties to avoid discarding the non-linked property values during updates.
  • Prevent user from taking screenshots when multisampling factor is greater than zero.
  • Add manual update (refresh) button to the preview which will reset the preview itself and all offscreen buffers and rerender the scene.

v1.10.0

01 Aug 11:24
Compare
Choose a tag to compare

[1.10.0] Multiedit, Shader Includes, Drag-and-drop Support, Misc Usability Improvements and Bugfixes

Added

  • Added support for the multiple edit functionality in the property browser.
  • Added support for #include directives in shader files. Include directives can be nested. The path of the included files must be relative and will be interpreted relative to the path of the shader file containing the include.
  • Added support for opening .rca files using drag-and-drop.
  • Added drag-and-drop support for resource files (.gltf, .glb, .ctm, .png, .vert, .frag, .geom, .def, .glsl). Dropping a resource file on a URI property will fill the property. Dropping a resource file in the treeviews will create a new resource object.
  • Added application preference to optionally enable the case-sensitive URI validation. The default is off.
  • Added functionality to save screenshots of the preview using the GUI application and exposed via the Python API.
  • Added resolveUriPropertyToAbsolutePath function to the Python API to obtain the absolute path from a uri property.
  • Added a feature level update python script and updated the python migration scripts in the python subdirectory.
    • Use the migrate_recursive_v1.0.1.py script to update projects from RaCo version <=1.0.1 to the current version. Keeps feature level.
    • Use the migrate_recursive.py script to update projects from RaCo version >=1.1.0 to the current version. Keeps feature level.
    • Use the upgrade_fl_recursive.py script to perform a feature level upgrade to a specified feature level. Also updates the projects to the current RaCo version.
    • All scripts will update the main project and all external projects used by it.
    • Detailed usage information is contained in the scripts and can be obtained by running the script with the Python interpreter directly.
  • Added section on feature levels to the Basics/Introduction chapter of the documentation.

Changes

  • Top-level objects in the scenegraph are now moveable.
  • The folding state of non-locked property browsers is preserved and saved in a cache per session for all expandable properties.
  • Added a new confirmation dialog to prevent accidental file version upgrade on Save. The appearance of this dialog is controlled via a new option in the preferences dialog.
  • Adjust the behaviour of the -f commandline option in the GUI application to ensure that projects specified on the commandline will load regardless of the feature level set in the preferences dialog. The behaviour is now as follows:
    • default feature level for new projects
      • set via the preferences dialog in the GUI application
      • set via the -f commdandline option in the headless application
    • initial project load feature level
      • set via the -f commdandline option in both gui and headless applications.
      • if specified the initial project given using the -p option will be upgraded to the given feature level.
      • if no initial project is specified the initial default project will be created with the given feature level.
      • if no -f option is used the initial project given the -p option will be loaded at the feature level of the project itself.

Fixes

  • Don't optimize away LuaInterfaces with invalid links ending on them when exporting a scene. Note that invalid links ending on non-existing properties will not have associated error items indicating an invalid link.

v1.9.1

27 Jun 10:42
Compare
Choose a tag to compare

[1.9.1] Bugfix Release

Fixes

  • Prevent stencil and scissor options in materials and meshnodes from being reset to their defaults by undo/redo operations.

v1.9.0

13 Jun 10:57
Compare
Choose a tag to compare

[1.9.0] Stencil & Scissor support, Linkable instance count, Texture optimization, Misc Bugfixes

  • File version number has changed. Files saved with RaCo 1.9.0 cannot be opened by previous versions.

Known Issues

  • Setting a MeshNode instanceCount property to a negative value via a link will lead to a runtime crash in Ramses.

Added

  • Added support for stencil testing via new stencil-related properties in the Material and MeshNode options.
  • Added support for scissor testing via new properties in the options container of the Material and MeshNode types.
  • Added color write mask suport in the Material and MeshNode options.

Changes

  • Added support for direct list/tuple assignment to properties of vector type in Python API.
  • Available at feature level 5: made the instanceCount property of MeshNodes linkable.
  • Optimize the texture format in Ramses for normal Texture objects. No duplicate color channels or channels with constant values are created anymore. This removes warnings about creating empty channels.
  • Do not display warnings for unlinked interfaces in Export dialog

Fixes

  • Don't allow to create links between Vec2f/etc properties and struct properties with the same child properties since they can't be created in the LogicEngine.
  • Fixed the potential loss of struct uniform values in MeshNodes when loading a file created with RamsesComposer V1.7.0 or earlier with V1.8.0.
  • Fix preview scaling to make the scale equal to the device pixel over scene size ratio where the scene size is given by the Display Size property in the ProjectSettings object.