HackerTrans
TopNewTrendsCommentsPastAskShowJobs

Gustaph

no profile record

comments

Gustaph
·2 lata temu·discuss
You might find that Nebula lacks a bunch of tools.

We have ImGUI integrated so it's easy to use, but considering there are plenty of systems to interface with, it might be hard to deal with content without some content tools.

We mostly work on the core engine side of things. I am still not happy with a bunch of things rendering wise and want to make the engine capable of current gen rendering with GI, raytracing and whatnot.

But it's an open source project, so anyone could build tooling around the engine if they want ;)
Gustaph
·2 lata temu·discuss
Thanks Andre!

Should also give some cred to Fredrik who's been working on the entity-component setup on the game side.
Gustaph
·2 lata temu·discuss
Should probably update the screenshot, it's ancient and doesn't really show the current state when it comes to the performance. The job system used to push work to threads, but has been completely rewritten to better utilize many-core CPUs.

Also, if you look closely at the profiler, you'll see that we spend 2.2ms in the frame just waiting for the previous frame to finish. That was a major performance hog at the time.

This frame also basically shows no game logic whatever. So we just spend time waiting on other threads to finish while doing nothing else, which is also not indicative of a real-game scenario.
Gustaph
·2 lata temu·discuss
Hello!

The asset pipeline handles FBX and GLTF with regards to models. We read GLTF materials and support the baseline metallic-roughness natively. For FBX:s though, you need to edit the materials manually.

The biggest hole in Nebula is that there are almost no tools, so editing materials is painstakingly done in XML. We basically haven't had time to implement the plethora of UI required to interface with the engine in any meaningful way.

Long term, we plan to do all of this obviously. We used to have a pretty good toolset back before we did a total rewrite of the engine internals to get rid of all the smart pointers and move towards cache coherency and a data driven design.

We support a wide range of image formats as well. They end up getting compressed (or not) to DDS in the end. The import settings is also something we need to implement a bunch of UI for, but currently we look at the file name to reason about compression schemes and whatnot.