There is no way currently to bake disabled entities.
But additional problem with baking is that it uses a LOT of memory, as lightmaps generated at runtime are uncompressed.
I suggest to use real-time lights instead, the visual quality should be similar, without lock ups, and with more flexibility.
I love realtime lights-- I only included lightmapped entities because I thought it was cheaper, overall. Donāt lots of realtime dynamic lights bog things down?
BUT I will run a test with switching all the lights to dynamic and see what we get! Thanks for the idea.
If you use clustered lighting then the performance is really good.
So I made all lights dynamic (all but a few using one-time shadows) and configured clustered lighting andā¦ wow did that improve overall performance. Thanks! Iām bemused that the very thing I thought was best for performance-- using lightmapped shadows-- ended up being the hugest performance drag. live. And. Learn!
Latest and greatest: PlayCanvas 3D HTML5 Game Engine
Moving on! Thanks everybody, and feel free to keep the suggestions coming!
Hi @gnormanlippert - I had a quick look at Dreamscape: Revelation AllDynamic, as that seems to be the most up to date?
Few performance related observations:
-
It seems the whole world gets rendered twice, including shadows, post-effect and all. First for
ReclinedCam
camera, followed byPlayerCam
camera. Is this intentional, or should only one of those be enabled at any point. -
You have multiple skinned meshes (trees). By default, we evaluate bounding box of the mesh on the CPU using the bones to make it precise. But in most cases, itās a lot more performant to just have a fixed larger bounding box set up, instead of doing the expensive evaluation each frame for each instance. I see this is about a half the frame cost in your case. And so Iād suggest for your trees to set up the Custom AABB which is just larger than the tree, so that when it moves in the wind, it stays inside of the box so the culling works correctly. To do this, go to Render Component of your skinned meshes (or Model Component), tick āCustom AABBā and adjust the box appropriately.
- Dynamic shadows. Most of your lights do not have shadows enabled. Some do and often use āONCEā setting, which is fine. Some are rendered every frame. If this is needed, considering using spot light instead omni light if possible, as omni light generates 6 shadow maps (a cube), while spot only a single one.
Iāll check again in the future, but these are the main performance issues making the experience a lot slower than it could be.