Changelog Release 1.2

Changelog of the 1.2 Drag[en]gine Game Engine and IGDE release.

Released: 2020-07-18

Drag[en]gine Release 1.2

Features Added

DragonScript Script Module

  • Modified BehaviorElement.enterFrame() to remember if attachToParent has been done already. Avoids re-attach exceptions if elements move between game worlds. Not a problem if stub.setAttachTo(null) is called.
  • Added support for Listener Factories. For use in situations where you do not want to write custom behaviors to add reusable small actions to BehaviorElement subclass (example class).
  • Added ImagePixels script class allowing to read pixels colors from loaded image resources.
  • Added EditableImage script class allowing to create editable in-memory image resources for example for dynamic height terrains or pixel-precise dynamic in-game images not using CanvasView.
  • Modified ImageBorderCanvasCreator to support attachments on sides.
  • Added PanelHud class providing typical 10-area HUD support (9 areas surrounding center area). BaseGameApp creates now such a PanelHud by default.
  • Added ForwardKeyPressListener to handle enter-accept-button situations and improved WindowDialog with support to set accept-widget used if enter key is pressed.
  • Added normalize() method to all matrix classes. Removes scaling from matrix ensuring getEulerAngles() and toQuaternion() returns the correct result when scaled matrices are used.
  • Added Rig.save(String) method allowing to save rigs build with RigBuilder to file. This allows creating dynamic rigs caching them for reuse during future runs of the game.

OpenGL Graphic Module

  • Added rim.* Texture Properties.

FBX Modules

  • Added FBX modules to load FBX files as model resource, rig resource and animator resource.

IGDE Project Editor

  • Improved button icons and grouping to improve clarity.
  • Added actions to browse project content, run-time config and run-time overlay directory as well as quick opening run-time log file.

Launchers + IGDE

  • Added Linux Man Pages

IGDE Shared Libraries

  • Full separation of ToolKit code. It is now possible to change ToolKit to use OS native ToolKits.

Bug Fixes

OpenAL Audio Module

  • Fixed potential segfault in doalSpeaker if no active microphone is set.

DragonScript Script Module

  • Fixed ECBehaviorPlayerInputMove not respecting setCanMove(false) correctly.
  • Fixed key-repeat-listener being started on widget without focus.
  • Fixed RigBuilder replacing addShapeProperty functions with setShapeProperties functions. Former is not possible with the game engine checking property count matches shape count.

OpenGL Graphic Module

  • Fixed spot light shadow rendering trying to use non-existing shadow-map due to a wrong check verifying cube-map presence instead of shadow-map presence.
  • Fixed problem in SSR shader not marking non-calculatable results 0 causing streaks to appear.

Animator Editor

  • Fixed exception/segfault potentially caused by AnimatorInstance.Apply() being called fast enough.
  • Fixed problems with loading sub animators and missing connections.
  • Fixed attach camera relative position value entered.
  • Fixed Rule Target Link List Remove Action incorrectly using ComboBox selection instead of ListBox selection.

World Editor

  • Fixed problems with decals vanishing on reloading game-definition. Decals now also properly recalculate if objects move, rotate or scale.

IGDE Shared Libraries / Editors

  • Fixed recent files of the current project spilling over to newly created project.
  • Fixed igdeTreeList::RemoveItem() behavior to select next possible action in a logical way instead of clearing the selection altogether

Conversation Editor

  • Fixed topic action tree handling to solve multiple problems with shifting action selection in responsive to various possible actions

Changelogs Previous Releases