Generate Lightmap UV's (Not Working For Smallest Polys)

Hey guys

I’ve been generating some lightmap uv’s recently and I’ve noticed that there must be some algorithm working behind the scenes that decides if a poly is big enough to warrant lightmap uv’s. I’ve done some tests and explained the issue below but does anyone know how to edit this algorithm or turn it off completely as they’re are a lot of cases where you wouldn’t want this to happen.

1: This is a 100cm box with 1cm boxes on top (Normalised UV’s)
Notice how nearly all the faces of the small boxes are solid blue, meaning uv’s for these faces have not been included in the generated lightmap uv’s

2: This is a 100cm box with 2cm boxes on top (Normalised UV’s)
Notice how all the faces of the small boxes are now included in the generated lightmap uvs, 2cm must have gone above the algorithms threshold

3: This is a 100cm box with 0.8cm boxes on top (Normalised UV’s)
Notice how nearly all the faces of the small boxes are not included in the generated lightmap uv’s however a couple of faces have slipped through despite being under 1cm

4: This is a 1000cm box with 10cm boxes on top (Normalised UV’s)
This was to test if the algorithm was based on world size, as you can see, despite it being the same ratio as test 1, lightmap uvs have been generated correctly, therefore world size must be taken into account, however please see test 5

5: Finally this is a 1cm box on its own (Normalised UV’s)
As you can see the algorithm isn’t purely world size based as this isolated 1cm cube has been generated correctly

I’m not sure you fully understand lightmaps. Lightmap UV’s are simply coordinates for an image that gets mapped to the 3D object, it doesn’t matter how big the object is. The UV’s are usually created for a mesh in your 3D application before exporting to UE4, you can’t create UV’s within UE4. The lightmap resolution of a static mesh is independent of the size of the mesh. For BSP the resolution is a multiplier of how many units per pixel for the lightmap.

Color of lightmap view means texel / area(in world units) density.

The way the UVs are normalised for lgihtmaps in UE4 is this: It takes in the UV Coordinates as they were made in your 3D editing software, then smooshes the edges of those polygons so that the edges lie on the edge of a texel and there are 3 texels between each island. The size of the UVs as they are imported to UE4 are important for this: you’ll need to make sure that the smaller boxes on top of your larger boxes have UV coordinates that are large enough to cover a few texels in your UV Map, else the algorithm that UE4 uses to make the lightmap channels will discard or shrink them down so as to make it look like your examples above.
The lightmap UV generation doesn’t care about world size at all, nor does it really care about object-relative size - all it cares about is the size of the UV Islands in comparison to all the other islands of that object.

Bump… I also have this problem and would like a solid answer

Answer above is pretty solid.