What is the best landscape size?

I am working on a huge map which is cut down into streaming levels of 1*1Km. when I build the light, I get of course the message that the foliage instance lightmap is too large.
I did an experiment where I cut one level into 4 and had them all 4 loaded, but then I ran into problems that the streaming texture pool was too small.

I wonder why it is that apparently textures are loaded multiple times when they are used in different instanced foliage meshes? Is there a way to avoid this? Is there a way to have multiple instanced foliage actors in a level? What is the best way to handle such a situation?

I may add that now lighting build doesn’t work at all. The build process terminates but I get the message that there are still unbild objects. and when I ask for the build stats I get the following result:

Primitives with unbuilt interactions: 4
    Primitive FoliageInstancedStaticMeshComponent /Game/Client/Maps/SS1/SubLevels/Col_13/Row_13/SS1-13-13-Day.SS1-13-13-Day:PersistentLevel.InstancedFoliageActor_0.FoliageInstancedStaticMeshComponent_10
    Primitive FoliageInstancedStaticMeshComponent /Game/Client/Maps/SS1/SubLevels/Col_13/Row_13/SS1-13-13-Day.SS1-13-13-Day:PersistentLevel.InstancedFoliageActor_0.FoliageInstancedStaticMeshComponent_11
    Primitive FoliageInstancedStaticMeshComponent /Game/Client/Maps/SS1/SubLevels/Col_13/Row_13/SS1-13-13-Day.SS1-13-13-Day:PersistentLevel.InstancedFoliageActor_0.FoliageInstancedStaticMeshComponent_12
    Primitive FoliageInstancedStaticMeshComponent /Game/Client/Maps/SS1/SubLevels/Col_13/Row_13/SS1-13-13-Day.SS1-13-13-Day:PersistentLevel.InstancedFoliageActor_0.FoliageInstancedStaticMeshComponent_13

Thanks

The best way to handle large open world world is not to bake any lighting for foliage at all, and rely on dynamic lighting here.

Well thanks for answering, but I don’t think that is so. First, direct lighting looks bad in landscapes and second, when I have an unbaked foliage actor, the framerate goes down 20-30. Even using cascaded shadow reduces the framerate noticeably.

I read the same advice in various location but I never understood why people say that.

People do say that static lighting solutions for large worlds is quite meh based on three and only three reasons:

  • -Available memory is insufficient to store lightmaps,that would cover
    everything at decent resolution.
  • -Light bake times are so high, that it makes iterating on a game level
    impossible. Without decent render farm
    at your back, of course.
  • -Foliage always has some degree of motion. While it completely depends
    on type of lightmap UVs you are
    giving for your foliage actor and
    actual amplitude of vertex animation
    effects, it can be a contributing
    factor.

Secondly, direct lighting only will look bad on landscapes. Thats understandable, unless you are making an extraterrestial world. What stops you from setting up skylight properly? It is probably your lighting/ambience setup is off.

Thirdly, Cascaded shadow maps should be tuned to give a ballance of quality and performance. This feature is not responsible for low fps. Its incorrect usage is, coupled with not optimized meshes, materials and scene is.

So what is your refusal not to think that it is so based on ?

Optimal size of the landscape tile is a balance between number of levels to deal with and performance. Probably something between 505 and 1009 is the best compromise for large setup with world composition.

I already got a detailed explanation of the theory here in case others are interested in it, it’s quite extensive, but theory doesn’t measure up to reality I’m afraid. It’s quite difficult to get a good light in a forest because you see the trees from below, not from above, which is where direct light has an effect. Inside a forest, indirect light is the most critical, and static light just looks better in this case.
My observations are simply that. I see the FPS rate with direct and indirect light and I see a huge difference, in which case I don’t care much for theory, the results speak for themselves.

My problem with the size is mostly a problem wit foliage. I always get the warning that the “foliage llightmap is too large, take out plants…” but this is in my eyes flawed. My real map has relatively thinly spread plants, but lots of different ones and I get this message. I did an experiment with an equally sized landscape that I plastered with tens of thousands of plants of the sam kind and I did not get that message. So the total number of plants isn’t what causes this.

it is my understanding that 100 plants are grouped together to create one draw batch. I would assume that these are plants of the same sort, because how else would you reduce drawcalls if you have to switch materials in a batch? But it looks to me as if that is not the case. Differnt plants may be put into the same batch somehow. I don’t know how the internals of the foliage painter work, but why else would I get the warning when I have few plants but many different types, and not get it when I have tons of plants but all of the same type?

What is it you are trying to deal with: a warning or a problems, that the warning points to? I have the feeling that it is the first one. In this case, just ignore the warning.

Otherwise, In your foliage painter, you can reduce lightmap size of for each foliage type. You are more than welcome to return to this discussion, when you finally realize that you are hitting dead end.