This Week in Fyrox #9
Fyrox is a Rust game engine with lots of out-of-box game-ready features and a full-featured editor. This week was mostly dedicated to adding small new features and fixes that improves the workflow and makes it less frustrating.
# Particle System Preview Mode
Particle Systems now does not update in the editor by default, only when selected. This saves CPU resources when editing large scenes and removes visual clutter. Also there's a new panel that allows you to control preview behavior of particle systems (play, pause or stop).
# Animation Signals
It is now possible to select animation signals on the time ruler and edit their properties such as name, id, location, state (enabled or disabled). The properties are edited via standard editor's Inspector.
# ABSM Editor
Animation Blending State Machine editor now allows you to delete animation layers. Previously it was possible only to add animation layers.
# Reflection
Reflect
trait is now based on Debug
trait (pub trait Reflect: Debug { .. }
), so it is now possible
printing any values that implement both traits by having just &dyn Reflect
. This functionality is
extensively used in the Inspector
widget to copy values of fields as their string representation.
# Copy Value as String
for Inspector
Inspector
widget now allows you to copy property value as string. It uses the changes in the reflection
system described in the section above. It is very useful for extracting data from fields that does not
have any editable fields. For example you can copy contents of an array use it somewhere. To use the
functionality, right-click on a property in the Inspector and click Copy Value as String
.
# Other
Fixed selection issues in ABSM and Animation editors, fixed crash when trying to add a new layer into an empty ABSM. Fixed crash when trying to add a signal in the animation player. Animation events now also contains animation the signal name, not just its id - this makes it easier to use animation events.
# What's next?
Fyrox 0.29 will be released at the end of the next week (8th of January) and the upcoming release requires a lot of testing of the new and old functionality, which is currently happening in Station Iapetus (opens new window) game. The new release will also add new chapters to the book (opens new window). The next TWiF will be release only on 15th of January, because 8th of January will be "occupied" by the release notes for Fyrox 0.29.
# Full List of Changes in Random Order
- Update only selected particle systems in the editor
- Added particle system preview control panel
- Fixed selection issues in ABSM and Animation editors
- Fixed crash when trying to add a new layer into an empty ABSM
- Ability to remove layers in ABSM editor
- Ability to edit animation signals in animation editor
- Added
UuidEditor
and respective property editor for Inspector - Fixed crash when trying to add a signal in the animation player
- Restrict
Reflect
trait onDebug
- Wrap clipboard into
RefCell
- Optional ability to
Copy Value as String
for properties inInspector
widget - Pass animation signal name to animation event - makes much easier to respond to multiple animation events with the same name)
- Ability to maximize UI windows.
- Rename
Animation::events
->Animation::take_events
- Fixed recent files list in the editor (now it correctly remembers saved scene)
# Support
If you want to support the development of the project, click one of the links below. Preferable way is to use Boosty (opens new window) - this way the money will be available for the development immediately. Alternatively you can can use Patreon (opens new window), but in this case the money will be on-hold for unknown period of time (details are here (opens new window)).
Also, you can help by fixing one of the "good first issues" (opens new window), adding a desired feature to the engine, or making a contribution to the book (opens new window)