It’s been a trying time for everyone due to the Covid-19 pandemic, and unfortunately it has caused some disruptions to the development of Bright Engine. However, things are now getting back on track and we’ve managed to make excellent progress despite the ongoing situation. The scripting system is now approximately 40% functional with six of the core classes now fully implemented! We’ve also completely revamped the diagnostics suite and squashed a whole lot of bugs!
A Huge Thank you to our Patrons! Your contributions make Bright Engine Possible!
Cody Pryor • Massum Zaidi • Mark Makarainen
We’ve also begun building up a base math library to speed up the process of performing complex calculations starting with a Vector2D, Vector3D and Vector4D math classes, while also laying down the foundation for more advanced calculations such as complex numbers.
A new addition to the object library of Bright Engine is Trigger objects. Being able to execute scripts using a mouse and keyboard is important, but games need far more flexibility than that.
Changes & ImprovementsSince the main theme of this update is scripting, we’ve made several improvements to the user experience of the Script Editor itself.
The World Editor has also had some attention.
Data and performance tracking is now far more accurate, as well as faster. A big problem with the previous version was the sudden decrease in performance once the diagnostics suite was opened. This is no longer an issue and has subsequently allowed for more variables to be tracked over time.
The zone hierarchy has also had some under the hood improvements. It now performs an object validation when loading zones to ensure any entries of missing objects are not included in the list (this eliminates a lot of problems where on the rare occasion you could select an object that didn’t exist causing all sort of weird behaviour). We’ve also added a shortcut key to hide/unhide the entire selection of items within the hierarchy instead of having to do them individually.
We’ve also made some further improvements to the Material Editor.
Bug Fixes[World Editor]
- Fixed bug where removing an object would sometimes re-appear in the hierarchy next time the zone is loaded
- Fixed bug where selecting an object from the hierarchy sometimes caused a crash
- Fixed bug where manipulating an object's waypoint path offset with the 3D cursor incorrectly updated the UI and sometimes caused a crash
- Fixed bug where deltaTime was being calculated twice per frame
- Fixed bug where camera lens settings were not being copied when duplicating a camera object
- Fixed bug where audio effect settings were not being copied when duplicating an audio object
- Fixed bug where camera lens settings were not being correctly registered with the undo/redo system
- Fixed bug where the audio effect settings were not being correctly registered with the undo/redo system
- Fixed bug where the Waypoint Sleep Randomiser setting was missing
- Fixed bug where changing the Position offset values of an object assigned to a waypoint Path caused a crash
- Fixed bug where changing the Rotation offset values of an object assigned to a waypoint Path caused a crash
- Fixed bug where entering a hexadecimal color code without the hashtag symbol sometimes caused a crash
- Fixed bug where entering a double negative sign into a vector 2D or vector 3D field would cause a crash
- Fixed bug where the Ctrl key was defocusing UI preventing users to copy/cut/paste values
- Fixed bug where creating a new zone led to errors in the Post Processing Data file causing the engine to crash
- Fixed bug where the Editor camera speed was not being loaded correctly upon restarting the engine
- Fixed bug where the Editor Camera Range was not being loaded correctly upon restarting the engine
- Fixed bug where adjusting the camera range using the keyboard shortcuts allowed a value to be out of bounds causing a crash
- Fixed bug where adjusting the camera range using the keyboard shortcuts produced incorrect results
- Fixed bug where diagnostic textures were not being bound correctly
- Fixed bug where adding a camera to a scene with no lights caused a crash
- Fixed bug where adding a particle to a scene with no lights caused a crash
- Fixed bug where duplicating a light would crash if the color mode of a light had not been previously set
- Fixed bug where duplicating an object after deleting another object of the same kind resulted in an incorrect write to the data files corrupting the zone
- Fixed bug where importing corrupted model files caused the engine to crash
- Fixed bug where selecting a group of emitters when there are no lights in the zone caused a crash
- Fixed bug where Emitters could be placed without specifying an emitter file path
- Fixed bug where selecting an Emitter when there were no lights in the zone caused a crash
- Fixed bug where selecting an Emitter when there were no models in the zone caused a crash
- Fixed bug where removing an Emitter would sometimes cause a crash
- Fixed bug where Input keymaps were not updating until after the World Editor was restarted
- Fixed bug where changing the light type before removing the same light from the scene would cause a crash
- Fixed bug where changing the particle system of an emitter before removing the same emitter from the scene would cause a crash
- Fixed bug where changing the preview mode caused strange behavior when using keyboard shortcuts
- Fixed bug where the bloom effect was still being enabled when previewing the material outside of composite mode
- Fixed bug where duplicating a Color Node did not copy over the color value to the new node
- Fixed bug where duplicating an Image Texture Node caused a crash
- Fixed bug where moving a Comment Box after changing the zoom level sometimes did not move the nodes with it
- Fixed bug where the autocompleter did not ignore whitespaces when generating lists
Last update managed to excite a lot of new developers to join the alpha. This is awesome to see, but it did reveal a lot of hardware based problems with the engine. Therefore, the next update is going to be focused on fixing those bugs as well as some drastic improvements to performance! We’re also going to be continuing our efforts to expand the functionality of the scripting system to include more Classes as we slowly move closer towards implementing the first round of user interface systems! Stay safe and thanks for tuning in!