Castle Game Engine 5.1.2 release (fixes to TCastleControl, tutorial, more)

Posted on

"Dragon Spine" running in an Android emulator

Castle Game Engine version 5.1.2 was just released! This release brings a couple of fixes and improvements to the engine.

  1. New useful events are published on TCastleControl:
    OnOpen: TNotifyEvent
    OnClose: TNotifyEvent
    OnBeforeRender: TNotifyEvent
    OnRender: TNotifyEvent
    OnResize: TNotifyEvent
    OnPress: TControlInputPressReleaseEvent
    OnRelease: TControlInputPressReleaseEvent
    OnMotion: TControlInputMotionEvent
    OnUpdate: TNotifyEvent
    

    These should be used to watch open/close of context, to watch key/mouse events and to perform continuous updates. For detailed documentation of them, see TCastleControlCustom reference.

    Some previously published stuff on TCastleControl is deprecated now and will be removed in next release (sorry, we have to break compatibility — this old stuff really doesn’t make much sense, all new code should use new events). Also, the deprecated OnPaint was fixed — just in case you’re using it (but please switch to using OnRender soon!).

  2. The beginning of the tutorial was much streamlined. We fixed some wording, removed a lot of useless info, and made the beginning of the tutorial really smooth. Now, you really quickly get to the “I made a 3D game!” stage πŸ™‚

    Also, the tutorial chapter “Adding a simple moving object” was added.

  3. Also, as you probably see, the website got a total facelift, using HTML5 and Bootstrap style. Various pages and menus were rearranged to be more helpful. I hope you enjoy the new website — please leave a note in the comments πŸ™‚
  4. You can save almost 0.7 MB from exe size by undefining CASTLE_EMBED_ALL_3D_FONT_VARIATIONS in some cases, see src/base/castleconf.inc for comments.
  5. Various testsuite fixes and improvements.
  6. Improve CastleCurves API, and also mark most of it as deprecated.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.