oops, sorry !!i understand!
i have 0 knowledge in those fields:p
In such situation it’s hard to tell how to do it in the most performant way.
I think nice would be doing something like room zones, raycasting would be computed only for objects in the room when also player camera is inside.
Closing closet optimization could be solved by detecting how much closet is open and using only that for computing, but when some object leave closet it should be excluded from calculations.
This mechanics are more project-type-specific.
It’s nice suggestion, I will think about making tools to optimize such things.
that could be so easily done with a couple of line of code and a trigger collider. it would be much more performant than raycast technique and checking for camera angle or distance all the time for something that really happen when being at a close distance
Nothing is so easy when you have to make it for thousands of objects.
just have a gameobject array and turn them off with a “for” loop on a “ontriggerenter” function. cannot be more straight foward than that…
Of course. And this whole Optimizers asset is as easy to do as enabling and disabling objects by distance or raycast.
Just do it yourself and spare 30 bucks! It’s easy!
hi,
does it work with Vegetation Studio Pro?
VS Pro has its own culling for trees/plants, but I haven’t seen any issues with using them together.
Enabling with array and trigger is ok solution if objects are just staying inside closet.
(but be aware of deactivating whole game objects, disabling components is more often more performant)
For this you can also use optimizers and with newest version you can put any count of optimizers on level and performance will not be affected (visibility in camera frustum and distance is calculated with culling groups api, it’s much much more performant than calculating visibility and distance every frame + with optimizers you have more features)
but if objects have rigidbodies and can leave closet and move for example to different room you need to apply different logics.
As I remember vegetation studio is doing culling with customized cells-based mechanics and there is no need to use optimizers with it.
Thank you
thank you
Updated to Version 1.0.3
● Important Change: Now “Deactivate Object” is not toggled by default, deactivating and activating whole game objects in many cases was causing performance peaks during culling object if it wasn’t in camera view
(if you rotated camera with ‘cull if not see’)
● Added “Auto” and “Set Far” button next to “Max Distance” it will help you define max distance for object, basing on camera’s far plane settings, and size of detection sphere
● Automatic detection shapes dimensions now will fit better to scaled objects (when you’re adding optimizer to object)
● Dynamic optimization method’s detection shape (box) now scales with object
● Warning and explanation of “Deactivate Object” toggle in “Culled” LOD
● Warning message when you copy not prefabed objects or without shared settings with optimizers to another scene (LOD Sets will be lost - because they’re managed by unity as scene assets, not gameObject serialized data)
i get these kind of console error
“Culling group was not disposed. You have to call Dispose explicitly from the main thread. This will likely result in a crash.UnityEngine.CullingGroup:Finalize()”
the optimizer does a lot more than what you are asking and it automate a lot of thing. You buy asset because you want to save time. Why spend countless of hours for something that is already done. sometimes you do sometimes you dont. That said, i’m giving you hint to what you can do for your situation and what you are asking look very simple to do by yourself and you could get more help on unity answer to avoid overflooding the forum here. what you ask take 10 lines of code max, be friendly and ask for help and people will give you help.
be rude and youll end up buying a lot of asset
I can’t reproduce it unfortunately.
This message is logged when not calling .Dispose() on culling group before leaving playmode and all of that is done in OnDestroys() in code right now.
I am not sure when and by what it could be interrupted.
You do something specific when this error appear?
after reading the patch note i have a question. If i have a prefab that i need to use in multiple scene. I have put the optimizer right on the prefab in the project browser (and not the scene object) Can i use that prefab in multiple scene ? (because the patch note mention something about not using the same object in multiple scene).
The scene I got the error was producing other console log so it may be only a conflict. i have to test more and comeback with result. good support so far and thanks for the update. all improvement are welcome
“Warning message when you copy not prefabed objects”
If you have prefab you can freely use it anywhere (LOD Set is saved inside prefab)
same when you use shared settings (LOD Set from project directory)
If it is not prefab (without shared settings) and you copy object between scenes, LOD Settings reference for optimizer will be lost, then you will have to select object on new scene and hit button “retry” in LOD settings view (settings will be resetted) but it’s rather rare case.
Hi there, have been playing around with this … seems promising so far. I did have one nasty issue on getting started with it. I’m making a 2D tilemap game, by default the auto-created Optimizers Manager component somehow causes massive CPU overhead - I was getting 100’s of ms from ‘Others’ in the profiler, reduced FPS to single digits. Selecting Dynamic Optimizing Setup/Advanced checkbox, setting the distance ranges much smaller then using the scene tools sync buttons solved this … but I have no real idea what those did.
Would be good to have this included in the setup doc / explained. Cheers!
Strange, I am sure game-mode code is not causing this, “Others” are things more for inside Unity Editor stuff.
Maybe there was some exception error which was stacking itself or something else was causing this lag by coincidance.
Hitting “Advanced” toggle is just showing more options in editor.
I will analyze editor drawing methods to see if there can be something wrong.
Yup, really strange … it was reproducible by removing/re-adding Optimizers … even without any active optimizers on any game objects the manager was somehow causing massive lag.
Unrelated but also something to improve, maybe - the Sub-Assets Cleaner helper does work (by adding it after removing the optimizer) but not quite in the way I expected it to. If you add it while the optimizer is still on the game object it does nothing (which is fine), if you then remove the optimizer nothing happens (maybe it should? Then log a message, remove itself?) and then if you click ‘check for leftovers’ nothing happens (I’d expect this to remove the leftovers). Or maybe this should all just happen automatically on removing the Optimizer!