I’m curious about what the ideal world scale is when building games with a non-standard-sized main character. In the past, it seems like the common wisdom has been to scale things such that the player character would be around 2m tall, as having a significantly different scale would cause various graphical issues (there are a number of things in the engine that are tuned assuming approximately-human-sized characters, e.g. ambient occlusion). However, scaling everything in the world has drawbacks, both in terms of how artists have to think about authoring content, and how programmers end up having to deal with math.
When starting out on a new project with a non-human-sized main character, would you recommend representing them with a 1:1 scale? Or would it be better to scale the world to keep them approximately human-sized? For example, on Keeper we made the lighthouse 180 units tall, even though it should have been closer to 10x that size. But I’m also aware that Fortnite had a player-controlled Godzilla, which was obviously quite large.
Hello! Ideally you’d be able to use an accurate 1:1 scale for your character and world. What were details on the rendering issues you were seeing before for Keeper when you tried 1:1 scale? Sorry if you already posted this, I wasn’t able to find any previous cases that described the issues you were seeing.
At some point, when rendering very large worlds there are known rendering issues. For example, LWC - “Really High” Precision Rotations, is an article about disabling compression for objects that are rotated far from the origin. Another example that comes to mind is an issues with an epsilon used when converting depth values that could cause issues with Lumen and [Custom [Content removed] at far off distances (mostly addressed by CL#48658680). Increasing the range of Lumen can cause performance issues, though you may be able to use the Far Field and HLODs to minimize that - this is what we did in the Witcher demo for the vista shots.
Large world rendering issue are most common for flight/space games, but for a player the size of a lighthouse or Godzilla in a world that isn’t earth sized I’d recommend re-testing your worst-case scenarios again before going back to scaling.
We made the call to adjust the world scale for Keeper years back, so my memory is a little fuzzy, but here’s what I can remember.
We ran into a number of render settings that didn’t play well at a larger scale (e.g. shadow bias values, cascade distances, SSAO, etc.). I believe we bumped into some issues with Lumen as well, things like bounce lighting not working well at far distances. Just a number of systems that sort of implicitly assume that your player / world will be approximately human-scale.
In my own research, I could also not find any suitable info on any graphical issues related to changing scale. I’d be keen to learn more about the specifics of this as well.
Edit: Aaron’s reply was not appearing for me when I first sent this message, apologies! I did see other users talk about problems with shadows and shading while adjusting scale, I’m doing further research on how others may have surpassed those issues.
I did want to add a resource I found that could help with making the decision of what scale to use:
This thread here where a discussion is had about various pitfalls to changing world scale, which references this thread (which I believe to be the link they posted, however the original link was unavailable) that talks about this article.
These may be issues that we’ve all already been aware of when deciding on scale in Unreal, but I figured they would be useful information to you if not, or at the very least a good guide for those who look in on this thread in the future!
Thanks for the info! Definitely let me know if you learn anything more about the graphical issues. If there’s just some values we’d need to tune / adjust, that doesn’t seem too scary. I’m just worried about there being some sort of issue that we don’t bump into until later in development that ends up being a larger problem.