Bulk in the Future, in UE5: Nanite, HLOD, Landscapes, and more
Arman Elgudzhyan
| 11 December 2024
|
Unreal Engine comes with an overwhelming amount of tools built in. Features such as HLOD and World Partition make our lives easier by helping us manage large worlds, Nanite challenges our existing workflows but boasts excellent scalability (despite the overhead), PCG gives us the power to accelerate our workflows and create bigger worlds and speed up iteration, and many more.
However, unfortunately, we also sometimes face a lack of documentation, critical information not being out in the public, widespread misinformation, and a general lack of understanding of how the engine works. I am not immune to these issues! There are sometimes shortfalls in the tools we are given, as well, in addition to the difficulty of determining how to achieve our goals.
UE5 documentation browser app/wrapper
Arman Elgudzhyan
| 6 August 2022
|
While navigating the painful experience of getting an IDE that works well with unreal engine, I found a neat UnrealVsCodeHelper extension that had a built in browser for the documentation. I’m still not entirely convinced on using VS Code for UE (yet?), but I did really enjoy this idea and would have liked it to have it in Visual Studio.
I decided to quickly built an electron app that is basically a cut-down glorified web browser that lets you browse the UE docs.
Multithreaded LOD in C++ for Godot
Arman Elgudzhyan
| 30 December 2020
|
Last modified on 2021-06-30
See here for the (mostly up to date) older post for the previous version of this system.
Godot 4.0 is coming, and we’ve already seen some examples of automatic LOD generation. However, in the meantime, I’ve updated my Godot 3.0 LOD plugin to be multithreaded, as well as a few other quality of life improvements.
The system is available on my godot-extras repo here. There is also an example project which contains the addon itself.
LOD system(s) in C++ for Godot
Arman Elgudzhyan
| 28 August 2020
|
(2020-12-27)
A newer version of this system has been released and some of this info may be out of date. Most of it still applies, though. See here for the newer post.
Currently, for Godot 3.x releases, LOD functionality is not implemented. I’ve seen some solutions online, but they were written in GDScript and I figure it may not be sustainable for a large number of objects. Luckily, Godot allows us to write C++ plugins through GDNative. This is a quick run-through of my LOD system, available on my godot-extras repo here, as well as some side tips on C++ in Godot. This system also goes further than just regular object switching and includes more specific distance-based optimizations, such as turning off shadows for far away lights.