'Weltenbume' by JoeMan
This week, Zun started working on an option to change the texture quality settings. All blocks in Colony Survival have relatively high-resolution textures of 256 by 256 pixel textures, and each surface uses multiple textures: albedo maps, normal maps, height maps, specularity maps, etcetera. Players currently don't have a way to downscale these textures, making the game quite difficult to run on very low-end hardware.
Zuns solution not only supports textures with lower resolutions, but also textures with higher resolutions than we currently have. Of course, I wanted to test this immediately. I added some 2048x2048 pixel textures. We were torn by the results.
Very, very low texture settings
Of course, the high-res textures look very fancy, detailed and realistic. But simultaneously, they do lead to problems. The world of Colony Survival is fundamentally not detailed and realistic - it consists of blocks the size of a cubic meter. Our lighting isnt realistic either. Is superrealistic textures where you can see every grain of sand combined with unrealistic big blocks and primitive lighting really the look we want?
To quote Jurassic Park: [they] were so preoccupied with whether or not they could, they didnt stop to think if they should. We dont want to be like that, so we stopped and thought if we really should upgrade to the highest possible resolution textures. It makes it harder to add new textures. Not all players have hardware that can run them properly. Superrealistic textures downscaled from 2048x2048px to 256x256px look worse than textures designed specifically for that resolution. And last but not least, superrealism is probably not the best style for Colony Survival.
One problem with realistic textures is that they highlight how unrealistic the lighting system is. It basically consists out of two values:
-Direct lighting, for the surfaces of the game that are hit by the sun
-Ambient lighting, a darker shade for other surfaces (shadows)
Its a pretty sensible system, but it ignores a lot of real life complexities. IRL, there is no magical ambient lighting that equally lights all surfaces in the shadow. Particles of light bounce across surfaces and the atmosphere, ultimately providing nearly all surfaces with a variable degree of light.
When youre outside in an open field on a sunny day, most of what youll see is hit directly by bright sunlight, and shadows all appear to have roughly the same darkness. This is something that Colony Survival can simulate relatively well, and thats where the game looks best.
But currently, IRL, Im not in a sunny open field. Im sitting indoors on an overcast day. The sunlight is scattered by the clouds, and a diffuse light hits my window. Shadows are vague. Items closer to the window are brighter than objects deeper into the room. This is way, way harder to simulate in real time. For those of us who dont have IRL lighting available nearby, I made a render with some realistic lighting on very primitive shapes:
As you can see, there is no clean divide between brightly lit surface and deep dark shadow. Both lit surfaces and shadows are a lot brighter on the right than on the left. The entire scene looks pretty realistic, despite the complete lack of textures and the very primitive shapes.
Now, compare this to two screenshots from Colony Survival.
This is a sand dune with pretty big height differences. In real life, the lower parts of the dune would get less sunlight than the highest parts, making them a bit darker and accentuating the height differences. None of that happens in Colony Survival. Everything gets an equal amount of sunlight, which makes this screenshot look flat, boring and unrealistic.
Here's another problem. Once the sun gets to a certain angle, a large part of the world is suddenly thrown into the shadows. Because there's only one value for ambient lighting, it's hard to fix this. If we make the ambient lighting brighter, shadows where you'd realistically expect them would be bright and boring. But if you make shadows properly dark, you'll also have to accept the effect in the screenshot.
Some of these problems are specific to voxel worlds. Luckily, the solution might also be possible solely because we're using a voxel world. Calculating more realistic lighting in a detailed, realistic world is very difficult, because the world is complex: you've got to keep track of millions of light particles bouncing through and around small holes, cracks and crevices. But because our voxel world mainly consists out of pretty large boxes, it's possible to write some clever algorithms that keep track of the surroundings when calculating how bright a surface should be. One of these methods is called floodfill lighting, and Zun is currently experimenting with that.
A complaint weve often received is the fact that deep, underground mines are so bright. Thats caused by the fact that weve got only one value for ambient lighting. Floodfill lighting should completely fix that issue.
The support for high resolution textures will be added in the next update, so modders will be able to experiment with them. For the 'official' version of the game, we believe better lighting is more important and practical than 2K/4K textures. We hope to be able to share the results of our experiments soon!
Bedankt voor het lezen :D
Reddit // Twitter // YouTube // Website // Discord
[ 2019-12-20 13:45:21 CET ] [ Original post ]
- Linux 32-bit [97.57 M]
- Linux 64-bit [96.17 M]
- Multiplayer support: play with friends and strangers!
- Advanced pathfinding: colonists and zombies will find their way in the world you've build. They will dynamically navigate stairs, bridges and tunnels.
- Explore a world with realistically placed biomes. A giant jungle in the center of the world, surrounded by savannas, deserts and temperate biomes. Two polar regions in the far north and south.
- Support for textures and language packs created by players
- Dynamic lighting and eye adaptation
- Voice your suggestions and be part of the development of Colony Survival!
- OS: Ubuntu 12.04+. SteamOS+; 64-bit
- Processor: Intel Pentium G620 (2.5 Ghz dual core) or equivalentMemory: 2 GB RAM
- Memory: 2 GB RAM
- Graphics: Intel HD Graphics 5000. 1280x720 display
- Storage: 300 MB available spaceAdditional Notes: Work in progress: new features may raise the bar. optimizations may lower the bar
- OS: Ubuntu 12.04+. SteamOS+; 64-bit
- Processor: Intel i5-2300 (2.8 GHz quad core) or equivalentMemory: 4 GB RAM
- Memory: 4 GB RAM
- Graphics: Nvidia GTX 750 or equivalent. 1920x1080 display. supporting openGL 4.2+Network: Broadband Internet connection
- Storage: 1 GB available spaceAdditional Notes: Work in progress: new features may raise the bar. optimizations may lower the bar
[ 6089 ]
[ 3241 ]