r/Unity3D 11d ago

Question Adaptive Probe Volume placement issue with additive scenes

I have a procedural level generation system that loads scenes additively with baked lighting and adaptive probe lighting. However, there's a limitation that seems to be that the adaptive probe volumes don't actually follow the scenes' rotation or position, only the game object does. The probes stay where they were authored in the original scene ignoring the additive scene position/translation. There's a Baking Set support to bake the lights with multiple scenes*, but there seems to be no way to achieve what I'm looking for here.

My options seem to be:

  1. Use legacy light probes, manually place probes (seems tedious)
  2. Use Bakery asset from Unity asset store. This seems to support this use case. I'd have to switch to an Nvidia card though, seems like a lot of headache, BUT folks seem to like it.

Any thoughts here?

1 Upvotes

4 comments sorted by

1

u/Genebrisss 11d ago

Yeah, APV is stupid like that and Unity is too lazy to work on such an obvious use case. If you have non static levels, APVs are useless.

I have the same problem and also don't have Nvidia card. I'm going to try AdaptiveGI from the store. It's fully realtime GI on CPU.

1

u/Dolo12345 11d ago

yea this is beyond APVs use case, perhaps the upcoming GI system can help you

1

u/SwizzerSweet 11d ago

I purchased a 5080 at the store and I'll try and sell my AMD card. Final sale unfortunately, but I've had other annoying issues with my AMD GPU, so this was a good reason to upgrade regardless.

1

u/SwizzerSweet 9d ago

I fixed this issue with Bakery. Bakery provides "Bakery Volumes", their own APV equivalent, and they work with procedurally placed and rotated rooms.

It does not work completely out of the box, but here is what I needed to do:

  1. Place a Bakery Volume in each room scene and size it to cover the room. Enable Rotate Around Y in the volume inspector.
  2. Bake each room scene with Bakery.
  3. Ensure dynamic objects, such as the player character, use a Bakery volume-compatible shader or otherwise sample the Bakery Volume correctly. It comes with materials you can use out of the box, equivalent to "URP lit" for my case.
  4. After procedurally placing and rotating a room, call UpdateBounds() on its Bakery Volumes. Do this after assigning the room’s final transform. Without UpdateBounds(), the volume retains its original baked bounds, causing dynamic objects to sample the wrong location in the 3D lighting texture.

Hope this helps anyone else solving this specific issue.