Bright Engine is a Light-Weight C++ Rendering platform aimed towards, Real-time rendering for both Video Games and Cinematic Animations. It is still very early in its life-cycle, but has been designed with scalability in mind allowing for any form of project to be created. From a first person shooter to a Massively multi-player online game.

The mission is to create a robust development tool that acts as a viable alternative to other mainstream products by providing complete control and customisability, allowing the Engine to suit any project while still remaining simple and efficient to use. While the Editor does the heavy lifting, you can go into the heart of your project and edit the source code of the executable to achieve anything you want (including adding your own custom or other 3rd party libraries).






Bright Engine has undergone and still continues to be rigorously tested by a growing community of dedicated game developers who have ensured maximum stability with each new update.

If you are interested in Bright Engine and want to snag up a free copy you are welcome to join the Discord community to ask questions to existing testers, get real time development progress updates or even download the engine to try it out for yourself!


  • View media
  • View media
  • View media
  • View media
  • View media
  • View media
Post article RSS Articles

IconLogoWhite

Here we are at the final update of 015 update series, happy to present a significantly more stable engine! We bring this update series to a close with a significant boost in performance, drastic improvements to the tools & Editor Interface, and as promised, the biggest bug fixing update released to date!

If you are interested in Bright Engine and want to snag up a free copy you are welcome to join the Discord community Ask questions to existing testers, get real time development progress updates or even download the engine to try it out for yourself!

New Features

As the title might suggest, this update was not focused on adding new features so there is not much to discuss here. However we did add an object locking system!

1 3

Whenever an object becomes locked, it can no longer be transformed or selected using the mouse click (it can still be selected via the hierarchy panel). This is a small useful tool for preventing edits to objects that you are happy with it’s settings, for example, terrain. Locked objects when selected have a yellow bounding box as opposed to the normal green so if you try moving it and isn’t working, you won’t be tearing your hair out wondering why, plus if you decide you do want to edit the transformations of that object again in the future then it can simply be unlocked at anytime.

Changes & Improvements

The primary focus of this update was improving performance while fixing the large plethora of bugs that have accumulated over the past few updates. But before we dive down that rabbit hole, other improvements to the rendering pipeline and Editor were made.

2 5

Starting with models, the importing system got a bit of a makeover due to the large number of crashes that would occur if things were exported from a modeling tool incorrectly. Most of this was bug fixes which have been listed in the next section. However aside from this, the architecture of Bright Engine’s data handling within the RAM was completely reworked which saw enormous improvements to loading times!

LoadingTime

In addition, we fixed the LOD system which was causing strange rendering problems in regards to shadows, while also adding a new button to reload the selected models textures, if they have been edited outside of the Editor.

1 8
3 5

Animated Models have long been a problem within the engine so we made some strides forward here as well. FBX skeletal animated models are now fully supported with no more weird and random glitches. Sadly there are still some issues with the DAE format but its a relatively new addition to the engine, so we’re aiming to have these fixed up pronto!

4 4

Next we took a look at terrain and found a bountiful collection of ideas on how to improve it further. Sadly only two made it into this update, but more will be introduced in future. First is the introduction of Parallax Occlusion Mapping onto terrain objects, to create even more realistic environments!

4 2

Second was a minor update to Dynamic Foliage which now snaps itself to the terrain, preventing floating patches of grass on a sloped section.

3

Screen Space Ambient Occlusion has long since had some issues when it came to transparency. Much like Shadows in v0.1.5a, the SSAO effect uses geometry based calculations since it is significantly faster approach. But in v0.1.5b we introduced alpha consideration into the shadow rendering pipeline and in this update we actually just took the same concept and applied it for SSAO as well.

2 3

We also added a new setting to control the kernel size of the calculations for SSAO. While this is a quite advanced feature in terms of knowledge, the general principle is the greater the kernel size, the more accurate the effect at the cost of performance. Originally this was fixed at 64 but now you have complete control over it within each zone.

5 4

Last set of improvements before we talk about the performance related stuff is changes made to the Editor. We’ve moved a few things around for a more fluid workflow while adding in a few minor new features. There is now an FPS counter in the bottom left corner so you can see general performance without having to enter diagnostics mode, we’ve added a shortcut button within the animation settings of a model object to quickly open the animation manager, moved the view filters from the Render Panel to the Menu bar under View and adjusted a few default values of some settings to more sensible starting values.

5

As the continued UI improvements, the World Panel and the Animation Manager have now had their UI updated to the new components resulting in a much nicer looking interface for both!

3 3

Now let's talk performance. This has been something that has steadily been declining with each update despite our best efforts, and we felt it time that we did something about it. After having the privilege of talking with some leading software engineers within the game development industry, we have begun our drastic improvements to the rendering pipeline starting with the rework of Occlusion Query. The introduction of Frustum Culling, next frame comparison and adding clip planes into the pipeline, saw a performance increase of over 170%!

Drawcalls
FPS

But it wasn’t all GPU upgrades, we moved our attention towards how the data was being extracted from RAM and then passed between the CPU and GPU. Sometimes it can be quite horrifying how badly something was originally created, but given we are in the business of constantly improving our code as we learn more it's always fun to see how far we’ve come. So we have optimised the data handling of:

  • Skeletal Animation
  • Instanced Model Rendering
  • Render Panel Settings
  • OpenGL Viewport Resizing
  • Real-time Shadows

Performance is still far from where we want it to be, though that’s always going to be the case as we aim for the best results with the best performance. For now however, our community can enjoy a good boost, improving their experience within Bright Engine.

Bug Fixes

  • Fixed bug where UV's out of the range of the 0 to 1 don't get drawn.
  • Fixed bug where objects moved with the Grab tool didn't save changes to .DAT files unless another setting was changed.
  • Fixed bug where starting the editor with Bloom or SSAO disabled in the project, caused a falsely triggered error message.
  • Fixed bug where editing the first addition of a model after it has been added to the scene caused a crash.
  • Fixed bug where duplicating the first addition of a model after it has been added to the scene caused a crash.
  • Fixed bug where selecting an object via the hierarchy would not show the 3D cursor.
  • Fixed bug where selecting a model after selecting a light caused the model settings to appear in the wrong order.
  • Fixed bug where 3D cursor modes for objects that can't use them could be selected and occasionally caused a crash.
  • Fixed bug where loading a zone after a room was added with weather settings and then deleted that room caused a crash.
  • Fixed bug where models with missing textures in their material would rendering using textures from previously drawn model instead of dummy textures.
  • Fixed bug where importing a model with no material caused a crash.
  • Fixed bug where importing a model with a material with no textures caused a crash.
  • Fixed bug where importing a model with a material with textures assigned in wrong order caused a crash.
  • Fixed bug where importing a model with a material with missing textures caused a crash.
  • Fixed bug where changing a texture in a material within the editor sometimes caused a crash.
  • Fixed bug where enabled/disabling animations on a model didn't start playing the animation unless another setting was changed.
  • Fixed bug where the animation manager was triggering update functions when it wasn't necessary.
  • Fixed bug where selecting a different Set then a different sequence sometimes caused a crash.
  • Fixed bug where removing an animation sequence within the animation manager would not remove the selected sequence but rather the one at the end of the list.
  • Fixed bug where changing to a different animation set with the first sequence selected would not update the UI correctly renaming the first sequence of the newly selected set incorrectly.
  • Fixed bug where adding a new Animation Set in the animation Manager after a new set was just created but wasn't renamed caused a duplication of data that led to crashes later.
  • Fixed bug where hitting the enter key in the Animation Manager caused the annoying Ding sound.
  • Fixed bug where the Terrain Vertex Normal debugger displayed incorrect values.
  • Fixed bug where Dynamic foliage did not translate to the same position of its parent terrain chunk.
  • Fixed bug where moving terrain with the 3D cursor did not update the position of its dynamic foliage.
  • Fixed bug where changing or removing a terrain texture, caused the old texture to linger in memory (memory leak).
  • Fixed bug where changing or removing a foliage texture, caused the old texture to linger in memory (memory leak).
  • Fixed bug where Spot Light Shadows were not rendering correctly.
  • Fixed bug where certain Vertex Array Properties were not being properly uploaded to the GPU during Instanced Rendering.
  • Fixed bug where if the core of an array of instanced models was no longer being rendered due to lod, SSAO would not be drawn for the rest of the instances.
  • Fixed bug where if the core of an array of instanced models was no longer being rendered due to lod, Directional Shadows would not be drawn for the rest of the instances.
  • Fixed bug where if the core of an array of instanced models was no longer being rendered due to lod, Omni Light Shadows would not be drawn for the rest of the instances.
  • Fixed bug where if the core of an array of instanced models was no longer being rendered due to lod, Spot Light Shadows would not be drawn for the rest of the instances.
  • Fixed bug where if the core of an array of instanced models had "No cast" enabled in its settings, all models within that instance would not cast Omni-light shadows.
  • Fixed bug where if the core of an array of instanced models had "No cast" enabled in its settings, all models within that instance would not cast Spotlight shadows.
  • Fixed bug where if the core of an array of instanced models was set to animated, all models within that instance would also then become animated in the SSAO Pass even if they were set to not.
  • Fixed bug where if the core of an array of instanced models was set to animated, all models within that instance would also then become animated in the Shadow Pass even if they were set to not.
  • Fixed bug where if a LOD level consisted of multiple meshes, only the first one would be rendered.
  • Fixed bug where wireframe display didn't work correctly.
  • Fixed bug where closing a project after a zone had been loaded caused a crash.
  • Fixed bug where animation manager was triggering unnecessary outputs after loading a project.
  • Fixed bug where loading a zone with a sun that has not got a texture assigned to it caused a crash.
  • Fixed bug where the Model Path of a model Object was no longer visible.
  • Fixed bug where disabling animations on a model Object would also disable the UI Button that allows you to turn them back on.
  • Fixed bug where approximately half the texture data was not being cleared correctly when switching between zones. (memory leak).
  • Fixed bug where switching between zones sometimes caused a crash.
  • Fixed bug where the object placement panel was sometimes still visible when an object was selected.
  • Fixed bug where the UI of the Terrain Painting Panel was enabled even when no layer was selected and using any of the settings would cause a crash.
  • Fixed bug where using the model brush would deselect the active terrain object causing a crash

What's Next?

It’s time Bright Engine, started becoming an Engine instead of a glorified world building tool. The 016 update series will be introducing Actors, Waypoints, Audio and Physics while also improving what is already in place even further. Plans for Shadow Baking, a new Particle Suite, further expansion to lighting and post processing effects as well as laying the groundwork to scripting. It’s going to be a busy series and we can’t wait to get started!

Bright Engine v0.1.5b Patch Notes! - Shadows & Effects Expanded

Bright Engine v0.1.5b Patch Notes! - Shadows & Effects Expanded

News 2 comments

After two months of vigorously sweeping through thousands of lines of code, ripping out old systems with new ones and altering the architecture of the...

Bright Engine v0.1.5a Patch Notes! - Performance & Optimisation

Bright Engine v0.1.5a Patch Notes! - Performance & Optimisation

News 3 comments

To kick start the first of many updates in 2019 we begin with the 0.1.5 series. As previously mentioned in the 0.1.4c patch notes, this series of updates...

Bright Engine v0.1.4c Patch Notes! - Semi-Procedural Environment Toolbox

Bright Engine v0.1.4c Patch Notes! - Semi-Procedural Environment Toolbox

News

This series of updates have had the goal of creating comprehensive tools for world building and so we are finishing it off with two new tools: Dynamic...

Bright Engine v0.1.4b Patch Notes! - Terrain Painting!

Bright Engine v0.1.4b Patch Notes! - Terrain Painting!

News

Last patch we brought about a comprehensive sculpting system that allowed for complex terrain structures via easy to use tools. Now we take one step closer...

Comments  (0 - 10 of 15)
Apollyon094
Apollyon094

Looks sick. Might use this.

Reply Good karma Bad karma+2 votes
Cysis145 Creator
Cysis145

Awesome! :D I see you have already joined the Discord Server, Welcome to the Community!

Reply Good karma+1 vote
CrikeyMate
CrikeyMate

Very promising, I love the concept. Keeping a tab on it.

Reply Good karma Bad karma+1 vote
Cysis145 Creator
Cysis145

Thanks! We'll continue to work hard and post plenty of updates as we do! :)

Reply Good karma+1 vote
SyazAmirin
SyazAmirin

HI! Everything looks really cool! Just wanna ask, what's unique about this engine than the others? Unity is easy to use and Unreal... well, beautiful graphic. Yours?

Is it sounds rude? If it is, SORRY!!

Reply Good karma Bad karma+1 vote
Cysis145 Creator
Cysis145

No need to apologise its a perfectly valid question!

Unity and Unreal are undoubtedly powerful tools but have become very unfocused by trying to attract every project possible (meaning that extra steps have been forced into the pipeline in order to account for everyone using it). Our goal is to try make the process of achieving desired effects and systems more streamlined and simple without forfeiting capability and power to the user. For example setting up a day and night cycle in Unity or Unreal requires messing around with scripting (or nodes) and can cause confusion as you try to make the system more complex. In Bright with a few clicks in the Editor you have Skybox blending, lighting transitions, fog, sun/moons & weather all ready and done for you. And if the Engine hasn't got a setting you want to adjust, there is nothing from stopping from using custom shaders to achieve the desired effect until its implemented into the engine by the dev team. So far we think we're on the right track and a few of our testers agree, though there is a lot of work left to go.

Aside from all that, we simply wanted to create a tool for our own projects in the future and share it with our growing community who have been helping from day one to improve the engine! :)

Reply Good karma+2 votes
SyazAmirin
SyazAmirin

Thanks for the detailed explanation! As I don't really like to develop games in 3D, I just keep looking at your engine. Sorry! Although, if you do start to focus on 2D, do tell us(The community...)!

Reply Good karma Bad karma+1 vote
Cysis145 Creator
Cysis145

Well technically speaking a 2D game is actually in 3D space with an orthographic camera system. We're currently focused on developing all the 3D side of things but once we introduce a comprehensive camera system for in Editor Game Testing, it really won't be difficult to add the 2D support with the way everything has bee set up so far! :)

Reply Good karma+1 vote
Guest
Guest

Hello,

i have one question!
can you use it for game maker studio 2?

Reply Good karma Bad karma-1 votes
Guest
Guest

i mean like particles?

Reply Good karma Bad karma-1 votes
Cysis145 Creator
Cysis145

I'm afraid not, the particle system has been created to work exclusively with Bright Engine. I'm not entirely familiar with Game Maker Studio 2 but I do believe that they have their own Particle System

Reply Good karma+1 vote
Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.

Follow Report Profile
Platforms
Windows
Company
Gajatix Studios
Contact
Send Message
Licence
Commercial
Release date
Engine watch
Follow
Share
Community Rating

Average

10

1 vote submitted.

You Say

-

Ratings closed.

Twitter

Latest tweets from @gajatixstudios

We've just released the latest update for our Engine! Come and see what we've been up to! :D… T.co

May 4 2019

We've just released the latest update for our engine! Come and see what we've been up to! :D… T.co

Mar 5 2019

The latest update for Bright Engine is out! :D Indiedb.com #indiedev #gamedesign #gamedevelopmentT.co

Jan 5 2019

The latest update is out! Come see what our Dev's have been up to! :D Indiedb.com #indiedevT.co

Dec 5 2018

RT @GajatixStudios: The latest update is out and its the biggest one yet! Come see what our Dev's have been up to! :D… T.co

Jun 16 2018

The latest update is out and its the biggest one yet! Come see what our Dev's have been up to! :D… T.co

Jun 15 2018

RT @GajatixStudios: Bright Engine v0.1.2a Patch Notes have been released! Come see what our Dev's have been up to! :D… T.co

Apr 7 2018

Bright Engine v0.1.2a Patch Notes have been released! Come see what our Dev's have been up to! :D… T.co

Apr 6 2018

RT @ZB_3D: The heart of the desert is contained within this shrine, it must be protected at all costs...… T.co

Mar 24 2018

Bright Engine v0.1.1 Patch Notes have been released! Come see what our Dev's have been up to! :D… T.co

Mar 22 2018

Embed Buttons
Link to Bright Engine by selecting a button and using the embed code provided more...
Bright Engine
Statistics
Rank
234 of 945
Last Update
Watchers
19 members
Articles
13
Reviews
1
You may also like
EDuke32
EDuke32 GPL
Game Pencil Engine
Game Pencil Engine Commercial
X-Ray Engine
X-Ray Engine Commercial
DarkPlaces engine
DarkPlaces engine GPL
GoldSource
GoldSource Commercial
Doom Engine
Doom Engine GPL