Model size and baked texture resolution

Hi all - a question from a relative newcomer to Blender (4+ months).

Does model size (physical dimensions in real-world terms) have an effect on baked texture resolution?

I am modelling virtual galleries into which 3D scans of artworks are to be placed for viewing online. To keep things simple I have built the galleries at 1:1 scale - real-world dimensions, to match the 3D scans. When I try to bake the wall and floor textures (for baked lighting), these appear pixalated even when the baked image texture is at 4096 x 4096 resolution.

Am I doing something wrong, or are my gallery models simply too big? Should I build the rooms at a smaller scale?

Hi Daniel,

The scale of your models has no effect on how texture maps are applied. Building to real world units is desirable for a variety of reasons, so there is no need to change that.

The problem you are encoutering is in the lack of detail in your texture map RELATIVE to the distance that the camera is from your surface as you view it.

A 4K texture might seem huge but . . . imagine that you had such a texture on a wall that was 4 meters wide. If you’re standing across the room from it ( say 5 meters away ) would seem fine. But if you stand right up to the wall and you can only see a 50cm square area, then the resolution of that particular area is about 500 pixels across = 10 pixels per centimeter = 1mm per pixel. This would be noticable in real life.

A solution is to break up the model into sections so that you can control which areas have the higher resolution. ( If you’re using this in a game engine like UE4 remember that you can employ a second UVMap channel with an entirely different layout/optimization for baking the lighting to).

Hope that’s of help.
Cheers,
Dj.

Thanks Damian,

So - if I break up my gallery into a series of room ‘objects’ and make a UV map for each of these rooms there will be less total wall area per map and therefore more pixels per wall? Or have I totally misunderstood? All this is simply so I can bake the effect of the lighting on the walls before exporting as .glb files - there is no displacement, transparency etc, just simple ‘painted’ walls.

Regards, Daniel

Question…Are you projection painting the scans to the wall surfaces?
If so you may not have enough geometry on the walls to map the textures… you might need to subdivide the wall mesh a couple of times to get a better image quality on the walls.

No, wrong choice of words on my part - the walls are only ‘painted’ in a real world sense. The walls are just solid basic bsdf materials. Here’s a eevee render image.

Ahhh good… but you say the Bake is coming out pixelated?

If the image you’ve posted below is using just one 4K texture map to store the entire lightmap then it is far below what you’d need to give a convincing soft shadow. However, if each of those ‘wall-islands’ are identical in the way they are lit, then I would make one of these, and bake a lightmap for just it, then you could simply duplicate that mesh/texture to where ever you want at no extra cost in texture maps. The floor and ceiling could then each have there own Lightmap, depending on the needed lighting resolution.

If the wall-islands are lit uniquely then I’d still have one Lightmap for each, but obviously that will substantially increase the overall number of maps you’ll need, which will require more resources - ie memory - to hold.

Bear in mind that it is not desirable to have adjacent co-planar faces ( like the floor ) seperated into individual meshes with their own lightmap as this can lead to render artifacts across the seams. But if you choose seams carefully you may be able to hide these in shadow areas.

I’m assuming in all this that the intention is to put this into some sort of interactive app that requires full mobility for the viewer to wander around in and not a series of still images that the viewer warps between.

Dj.

1 Like

Yep, the end product will be an online 3D gallery into which digital version of artworks will be placed - the developers are using threejs for this… Visitors to the 3D gallery will be able to move around freely within the space, therefore potentially coming close to wall sufaces. My thought was that the rooms could be ambiently lit in Blender, with this lighting being baked into the textures to speed things up. Soft shadows from ceiling lights onto matt surfaces would not change when moving around the space so a baked texture would be ok. The floor reflections do change dependent on camera posistion so this probably wouldn’t work as a baked texture. Afterwards individual spot lights could be added in threejs to give lighting and shadow effects for the objects placed in the rooms…

All this is a bit of a steep learning curve for me…but I really appreciate that folks like yourself take the time to share their knowledge.

1 Like