Update log
Full Railborn update
The complete published notes, normalized for clean reading and source attribution.
Extracted changes
- Gameplay
- Performance
- Maps
Welcome back! It is that time I like to share a few interesting topics about what we’ve been diligently working on. I’ll admit, this post is more technical than some people probably want. I promise to have more gameplay topics soon enough!
Update 003 Topics
Custom Material
Streaming Tech
Target GPU
Custom Material 🌲
Optimization and performance are really important for us. We love the Unreal Engine – but it is too easy to develop games for the highest end computers. Therefor in order to provide players the experience they deserve we have lots of tricks up our sleeve. For example, we made a custom material for Ambient Occlusion when rendering our MANY foliage in the game. The who what?
Here is a screenshot of some sample woods that contains our low poly foliage – great performance, but lack luster looks.
Our custom material pre-generates an Ambient Occlusion layer for these trees with a snowy looking algorithm that takes into account how far the branch is from the trunk, and the type of leaves on the tree. You can see the gradient change the farther a branch is from the tree, and also the difference the leaves on the Aspen generate (bottom left).
Adding this is we now can achieve the look we want with the performance we need.
Streaming Tech 🚿
Railborn has some unique development challenges compared to other games. One of these is how quickly you can eventually travel through the world on your train. We therefor are required to load the world much quicker than if the player was simply moving on foot. (that’s right – most games only load in the part of the world the player is standing in). So how do we handle loading 1000’s of objects into the world without hitching?
Well – we created a SuperItemSystem that hydrates! All our objects are placed into giant chunks – so we don’t load a gazillion static meshes but instead dehydrated data nodes! (see pic - yellow outlined trees is a single chunk)
Every time a player travels near on foot or train we can now load 30000 objects in as a single node. As the player gets close enough to interact, we hydrate these data nodes with digital water so they can now be interacted with and be part of the world! The idea here is to prevent hitching as you explore Railborn.
Target GPU 🖥️
Every game should have a performance target! Our target for Railborn is a 1660 Ti for Medium settings at 60fps. Yes, we do have an army of 1660 Ti laptops that run the game every morning. 😊 We chose this target after consulting with the Steam hardware survey as a balance between accessibility for players and resources for us to make an awesome game. Of course, the resolution you’re playing at and other factors can make it easier to play on less powerful machines.
Fewf. A lot of technical stuff. If you made it this far – cool! And as a reminder, please shoot out our game link to some friends for a Wishlist or two 😊 Or even better, chat about us.
Smashlore & Taky
Source
