Sign up for the public beta here.
The beta subscription has been closed.
The Easy Combine system provides a very simplified workflow for combining mesh objects.
The intention behind this plugin was to give the artists/developers a two-click combine solution without the needs of manually building complex preparatory steps in the scene.
What would be the difference here?
Can you explain this a little more in detail?
If a model shares the same shader but a different material with another model - would they be able to be combined?
If a model shared the same texture - but had a different shader as another model - would they be able to be combined?
The material, as a semantic unit, is reffered here as shader instance.
At the current state of the plugin, this is just to control how the objects get grouped (into meshes/submeshes). However, the split options will become more important when the texture baking feature will be introduced.
Yes. Draw call reduction is only possible with the upcoming texture baking feature.
But some improvements may be achieved when it comes to GI.
These split mode permutations are possible.
None: One mesh with two submeshes. One submesh per material
Per Material: Two meshes with no submeshes.
Per Shader: One mesh with two submeshes. One submesh per material
Yes. But no draw call reduction possible here (even with the texture baking feature).
But some improvements may be achieved when it comes to GI.
These split mode permutations are possible.
None: One mesh with two submeshes. One submesh per shader/material
Can this bake lightmaps on individual objects? For example, right now Iām working on a procedurally generated world, but because it is random I canāt bake lighting which really bugs me.
Easy Combine does prepare all meshes for GI baking, but is actually not a replacement for Unityās Enlighten.
Is your world generated at runtime or at design time in the editor? Itās important to create/prepare the other UV channels that Unity need for lightmapping.
This makes it almost impossible to bake GI on those objects. The baked intensities/light bounces are location-dependent. A dynamic environment needs a dynamic GI volume or a presampled light probe grid. The amazing guy from @sonicether is in the process of developing exactly what you need.
If I select a bunch of objects and some of them are dynamic will Easy Combine ignore the dynamic objects? In any case it would be nice to have an option to tell it to ignore dynamic objects.
[EDIT]
Through experimentation it seems to ignore dynamic objects, which I think is good. However, It is having issues with static items that have dynamic children. If the parent is static then it mesh combines the parent, but then the entire hierarchy ends up getting deactivated once the combined meshes are enabled. The problem is that the child objects, in this case, are a particle system and a point light. So they end up not being available in the combined scene. I can see why itās doing this, but what it should do is to disable the mesh renderer on the static object instead of deactivating it. Thatās the way Mesh Baker does it and it works better in this case.
It combines meshes that currently have their mesh renderer disabled. This ends up enabling meshes that I may have been using for for collision purposes, but donāt want visible.
Despite what I thought about dynamic objects being ignored, I am seeing some dynamic objects being combined and then the original deactivated. So my item pickups are stuck to the floor and canāt be picked up.
The option to add a mesh collider might work for some things, but in my scene it causes meshes that are combined that didnāt originally have a collider to now have one. With mesh baker it uses the disable mesh renderers on the original objects and thus the original colliders for all objects are used as well. If I tell Easy Combine not to generate a mesh collider then I would currently be left with a scene devoid of collision and all my original objects deactivated and would have to go back one by one and activate them and disable their renderers.
When I bake lighting, there are lots of blotches all over the place.
Thank you for sharing your thoughts. These are very valuable for us!
We have plans to add an advanced settings panel to filter and exclude objects as a preprocessing step. But we also want to avoid a very cluttered UI with tons of settings and rules as this will deface the spirit of the plugin. The intention behind Easy Combine was to keep things as simple as possible.
Dynamic objects are not ignored by default. Everything (meshes) that is selected in the moment you press the combine button, gets combined. While this is maybe not optimal for a ācombine-the-whole-scene-at-onceā approach, this is suitable for spatial grouped scenes following best-pratice guidelines for hierarchical and functional grouping.
Totally aggreed. A ākeep-collidersā post-procession option is mandatory. Itās already on the to-do-list.
Thatās because the Unity UV mapper has its flaws with compound geometry (when working with shared UVs). When following the Enlighten guidlines on pages 9-10 the baking artifacts can be avoided.
We are currently designing a rule set to move non-mesh objects into new groups. This will help getting rid of wrongly disabled elements in prefabs.
Thanks for responding. I am already grouping things fairly well, but I agree I can do more with separating out pickups and other things like that. Itās a balancing act though because sometimes these separations are more complex to work with. For example, I can separate all lights and particle effects, but when you have objects like a torch that has a light and a particle effect it is obviously so much easier to prefab it and then just place the object all at once. Separation in these cases makes far more work than would be necessary. But Iāll definitely be thinking about more efficient ways to get the best of both worlds.
You are absolutely right. We are in the process of designing an lean (settings) workflow for composed prefabs. So any idea/input is highly appreciated.
Are there any updates to this? I havenāt seen anything new for a long time. Iām really interested in the atlasing and keep-colliders functionality. Can we expect a new version soon?
Yes. But everything is iterating somewhat slower because of the upcoming GDC. We are a small team and an event like this will delay the complete dev timetable.
Unfortunately not. At least not in the next few weeks. We have a functional freeze until after GDC to ensure quality updates. But we have reserved some time for hotfixes and critical issues.