Search Unity

[V1.4.1 Released] Advanced Merger Toolkit - Boost Performance | Easy & Powerful Workflow

Discussion in 'Assets and Asset Store' started by eskovas, Nov 2, 2018.

  1. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    2,042
    Thats nice to hear!
     
  2. MostHated

    MostHated

    Joined:
    Nov 29, 2015
    Posts:
    703
    Hey there,
    I have been using Mesh Combine Studio for a while and love how much it helps my game, but it seems it may have been abandoned as no one has been able to get a hold of the dev for quite some time. Is this asset something that could be easily used as an alternative? I prefer to use actively developed and supported assets whenever I can.

    Thanks,
    -MH
     
    Lars-Steenhoff likes this.
  3. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    2,042
    In my experience yes.
    Its very actively developed.
    and I also used mesh combine studio until it dropped support and stopped updating, this asset also works with grid cells of you want that.
     
  4. MostHated

    MostHated

    Joined:
    Nov 29, 2015
    Posts:
    703
    That's good news. I was working on a small system that when World Streamer async loads in scenes it would fire off an event and I was using that event to do a runtime combine of new items that were streamed in. Do you happen to know off hand if perhaps that would be something I could accomplish with this? If so, I will probably go ahead and pick this up.
     
  5. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    You can combine meshes (and materials) at run-time with this tool.
    Skinned meshes are not supported at the moment though. I'm still researching the best way to support skinned meshes in this tool.
    Substances are also not supported at run-time.

    Right now it also kind of requires you to at run-time 'simulate' the merger like you would do in the editor, by creating a gameObject, adding the Merger Component, calling initial setup, setting up the parameters you want for the merger and put all objects you want to merge together into the 'Raw Collection' gameObject inside that main object.
    Sounds like a lot but it's pretty simple and easy to do.

    In a future update i'll improve the way run-time works, by being able to do all of this through a single function or something similar.

    But regarding your question, yes it's possible to merge objects together with this tool at run-time
     
    Last edited: Feb 23, 2019
    MostHated likes this.
  6. mcmorry

    mcmorry

    Joined:
    Dec 2, 2012
    Posts:
    579
    We have an editor script that loads in the scene assets from assets bundles, but then we have too many batches and we need to bake the whole scene.
    Is it possible to bake mesh, materials, and textures loaded from asset bundles? There are no source files in the project.
    Thanks
     
  7. MostHated

    MostHated

    Joined:
    Nov 29, 2015
    Posts:
    703
    It says in the description "- Full source code." Maybe you have to download it separately?
     
  8. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    I haven't tested with asset bundles yet.

    If the assets are loaded and it's possible to access that information in Unity, then i would guess that it would probably work, but i can't say for sure, since if you are merging in the editor and not at run-time, the tool does access the project folder.

    If you would want to merge the assets at run-time, then most likely yes i think that would work since the meshes and materials would be loaded when performing the Merger operation and at run-time the tool doesn't access the project.

    I'll have to do some tests to verify that it works in the editor or if i need to change some things.
     
    mcmorry likes this.
  9. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    V1.3.2 of Advanced Merger Toolkit, with Amplify Impostors support, has been submitted!



    Here's the change list:
    V1.3.2:
    - Added support for Amplify Impostors and ability to automatically generate Impostors for
    specific LODs
    - Fixed bug where it would perform Material Merge when a LODType had it's Material
    Merge set to true, but the LOD type wasn't Default.
    - Fixed being able to use SpecificObject when Grid option was active.
    - Fixed Lightmap Data Name saving over LOD name.
    - Fixed bug when trying to generate an empty merged object.
    - Fixed bug when trying to generate merged objects with more than 65k triangles.

    Here's the manual section on how to setup and use Amplify Impostors in Advanced Merger Toolkit:
    1.JPG 2.JPG 3.JPG 4.JPG

    -----

    For the next updates i'll be adding a few small features that will improve the workflow even more! Here's a small list of what i'll be adding next:
    - Add ability to merge a specific LOD instead of always merging all lods.
    - Add LODs between LODs.
    - Remove specific LODs.
    - Add Fademode/AnimateCrossFading to LODs.
    - Simplify run-time merger.

    -----

    Also, be sure to leave a rating on the Asset Store, tell me what you think of the tool and if you have any feedback on what to improve or add!
     
    Last edited: Mar 3, 2019
    attaway likes this.
  10. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    New update is live on the asset store! http://u3d.as/1k1d
    Let me know if you encounter any issues with it.
     
  11. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    Just submitted an hotfix to fix an issue preventing from making a build.
    Should be live very soon. If you need the fix asap, you can PM me.
     
  12. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    Tested today using the Merger tool to bake assets from asset bundles (after being loaded to the scene), and it does seem to work very well, both in editor and at runtime.
    It merges meshes, materials and textures just fine.

    I tested using some basic examples from Unity, and tested in an empty project and loading the assets from somewhere else in my PC into the scene.

    Only issue i found is if you only merge meshes in editor. I found that even saving the scene and restarting Unity, the original materials will disappear (maybe i did something wrong and unloaded the assets), but regarding merging materials and meshes, it works great and saves them into a folder of your choosing.

    I'll be adding the option to save the original materials (for the mesh only merger) that are not in the project folder, so the materials won't disappear after reload. But other than that, it works :)

    If you have any issue with it, you can contact me with more details and i'll try to solve any issue you encounter.

    (I guess i can add Asset Bundles to the 'Supports List' of this tool :D )
     
    mcmorry likes this.
  13. mcmorry

    mcmorry

    Joined:
    Dec 2, 2012
    Posts:
    579
    Thank you for your great support and quick answer. I'll buy it asap and test it. It could be a lifesaver for us!
     
  14. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    Submitted a new small update V1.3.3.

    Here are the changes:

    upload_2019-3-19_19-17-45.png
    Each LOD now contains a couple new options:
    +: Add a new LOD above it.
    -: Remove the specific LOD.

    Before you would have to add and remove at the end. With this new update this should be much easier to work with.

    upload_2019-3-19_19-19-3.png

    Now at the end there's just a '+' Button to add a new LOD at the end.

    And another addition is to allow you to set the Fademode and Animate Crossfade variables inside the Merger Component, which are then applied to the LODGroup that is generated.
    upload_2019-3-19_19-20-39.png

    This is a very small update. I'll be working on update V1.4, which will add support for merging skinned meshes and improve how run-time merger is done.
     
  15. Javiermoreno15

    Javiermoreno15

    Joined:
    Dec 24, 2018
    Posts:
    1
  16. TheFallenOne222

    TheFallenOne222

    Joined:
    Feb 23, 2018
    Posts:
    15
    Loving this asset so far - did notice one issue, but it's not impacting our ability to work with it. When baking impostors (through Amplify Impostors, using your plugin), if you're using a multi-scene setup (additive scene loading) and the object you're baking for isn't in the currently active/main scene, the impostor will fail to bake.

    For now we've just been shifting objects around temporarily and changing the active scene when appropriate, but figured I'd mention it anyways.

    Thanks for such a helpful tool! :D
     
  17. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    I don't have the asset, so i can't say for sure, but it most likely won't merge the objects in a way that will preserve the Bakery lightmap. It should still work with everything else, but won't preserve lightmaps when merging.

    I'll see what i can do in a future update to be able to support Bakery

    Thank you very much! Glad you like it!
    Haven't come up with that issue, but i'll see what's causing it and i'll fix it asap.
    Always let me know if you encounter any problem, and i'll try to fix them :)
     
    Last edited: Mar 20, 2019
  18. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    I can't seem to replicate the issue. Can you give more information on the error and setup? thanks
     
  19. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    2,042
    Thanks for the new updates really nice features!
     
  20. WildStyle69

    WildStyle69

    Joined:
    Jul 20, 2016
    Posts:
    211
    This looks like a really cool asset @eskovas

    Any ETA on the feature to 'Support for UVs outside of [0,1] space;'? Once this is available, I'll be a customer for sure!

    // WildStyle
     
  21. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    No ETA yet. I've been working on the skinned mesh merger, which is a bit tricky to do, so it's been taking more time than expected.
    I'll also have a look at the out of bounds UVs support.

    Btw, out of bounds UVs only don't work for the material merger. Everything else in this tool does work with that (Mesh Merger, etc).
     
    WildStyle69 likes this.
  22. WildStyle69

    WildStyle69

    Joined:
    Jul 20, 2016
    Posts:
    211
    Ahh OK, good to know, thanks.. I didn't realize that.

    // WildStyle
     
  23. Jacob-Williams

    Jacob-Williams

    Joined:
    Jan 30, 2009
    Posts:
    267
    @eskovas - I just purchased your asset specifically for combining a few vehicles in my project. These models came from Turbosquid, so there's roughly 100 individual meshes. The process seems to work fine, but the resulting mesh is a bit of a mess. I'm using default settings for everything and not merging materials. Any idea what I'm doing wrong?

     
  24. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    That's strange. Is it possible for you to send me the model so that i can test it? Or check if a free model from Turbosquid also does the same.
     
  25. Jacob-Williams

    Jacob-Williams

    Joined:
    Jan 30, 2009
    Posts:
    267
    I don't mind sending it at all - just shoot me your email address and I'll have it to you shortly.
     
  26. sacb0y

    sacb0y

    Joined:
    May 9, 2016
    Posts:
    105
    I really need substance support, no need for real-time DX

    Meshbaker semi works, but the dev hasn't responded to the problems yet :|
     
  27. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    If anyone's having the same problem as Jacob, please let me know through PM and i'll send you the simple fix. I'm currently fixing some other things i found with the mesh merger, so an hotfix should be submitted soon.

    There's currently Substance support for Unity 2017. For Unity 2018 shouldn't be much different, just haven't got the time to add support for that. I'll see what i can do and if i can add the editor support for substances in 2018+ versions.
     
  28. sacb0y

    sacb0y

    Joined:
    May 9, 2016
    Posts:
    105
    It seems to work with mesh baker even though mesh baker doesn't explicitly support it.

    The problem is for some reason Normal maps and height maps won't bake with tiling. And I can't make sense of why.

    I have a VR game so every bit of performance I can manage would be great lol.
     
  29. mcmorry

    mcmorry

    Joined:
    Dec 2, 2012
    Posts:
    579
    I'm baking an asset composed by some objects with more than 64k vertices, but regardless the flag to limit or not the number of vertices I always get a broken mesh. See attachment.

    Also, in the code the check seems wrong, or at least the name "LimitVericesPerMeshes" makes me think that when checked it should limit all the meshes to 64k:
    Code (CSharp):
    1. #if UNITY_2017_3_OR_NEWER
    2.             if (totalVertexCount >= VERTICES_LIMIT || main.LimitVerticesPerMesh) {
    3.                 combinedMeshFilter.sharedMesh.indexFormat = UnityEngine.Rendering.IndexFormat.UInt32;
    4.             }
    5. #endif
    Thanks
     

    Attached Files:

  30. therewillbebrad

    therewillbebrad

    Joined:
    Mar 2, 2018
    Posts:
    123
    Can anyone whos worked with meshbaker give me a rundown of how these two compare. The auto lod with impostors could save me a lot of time by itself but would like to hear from someone who has used both. Thanks!
     
  31. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    Yeah that doesn't seem right, but it's probably not that that would be causing the issue. (you can remove the "|| main.LimitVerticesPerMesh" part)

    It's probably related to the same issue @Jacob-Williams had.
    I've fixed this issue and a few other problems i found with the mesh merger and will be submitting it very very soon, just making some final checks.

    I'll send you a PM with a quick fix for your issue that should make it ok until the official fix. Let me know if that fixes it.
     
  32. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    Submitted a new update to fix some issues with the mesh merger that some of you encountered.

    Here's the change list:
    1.3.4:
    - Fixed issues with mesh merging and improved its algorithm,
    - Fixed issues when merging objects with no vertex limit,
    - Added “Global Options” button in the Merger Component to easily access the global
    options.

    Hopefully Unity will approve this update still this week. Let me know if any of you encounter any other issue.
     
    mcmorry likes this.
  33. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    The update is live on the Asset Store.
    Please let me know if any of you still have any issue with the asset.
     
  34. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    Currently working on a couple of things in addition to supporting out of bounds UVs for the material merger.

    Already improved the texture packing results when combining textures by maximizing the texture rects to cover the whole texture (This tool uses Unity's texture packing function).
    Here's a before and after image:
    textureRectImprovement.jpg
    Texture quality when material merging will improve with this change.

    I'm also adding the ability to use the slider values in shaders when generating textures (e.g. using the metallic slider in the standard shader).
    I'll post an example on how it will work when it's ready.
    I'll also post more about the "Out of bounds UVs" when it's ready.
     
  35. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    Here's another sneak peak at a new feature.
    I added the ability to apply several properties to the generated textures.

    This feature should only be used for simple operations, like for Standard Shaders or simple float/color multiplication.

    For example, using this to generate the metallic texture in a Standard Shader, with a texture and a smoothness range property:
    1.JPG

    You can apply the smoothness property like this:
    2.JPG

    You will be able to add various properties you want to apply to the generated texture in the Target Properties section of each 'Material Texture Setting' scriptable object.

    Here are the options for each property:
    - Property Names: The list of property names you want to search for in each material.
    - Property Type: Float or Color.
    - Operation Type: Set or Multiply.
    - Color Channels: Enum Mask where you can choose any RGBA channel combination to apply the Float parameter

    The properties are all applied sequentially.

    i'm trying to make this as simple as possible. If you have any thoughts about this feature please let me know.
     
    Last edited: May 6, 2019
  36. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    Just to clarify, the properties are all applied to a single white Color variable behind the scenes that is then used to multiply with the main texture (Or the default texture color in case the main texture wasn't found).
    This feature will be very specific to this.
    Maybe in the future i can do more with this but for now it will only multiply the main texture by the result of these properties.

    I'll also add the operation type 'Multiply Normal Map', which is actually a Lerp to the default Normal value and not a normal multiply operation.

    Hope this clarifies this feature.
     
  37. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    Here are a few more examples.

    Using the Standard Shader as an example:
    mat.JPG
    i'll setup the Albedo/Metallic/Normal 'Material Texture Settings' scriptable objects to also account for the following parameters:

    Albedo Color Parameter:
    Albedo.JPG
    (Multiplies the texture by the Color)

    Metallic Smoothness Range Parameter:
    Metallic.JPG
    (Multiplies the Alpha channel of the texture by the Float)

    Normal Map Scale Parameter:
    Normal.JPG
    (Lerps from the default normal map to the texture normal map)

    Very simple to use.

    I decided to remove the 'Operation Type' i showed in previous post for now. All these 'Property Type' options will multiply an internal variable by their value, and then that value is used to multiply with the texture (or lerp in case of the normal map option).

    You can stack more of these properties, for example you could add another float parameter to the metallic setup that would do the same to another channel.

    I'll be working on the documentation for this feature and i'll submit this new version to the asset store today (will include this feature and the texture generation improvement i showed before).

    After this update i'll finish the support for out of bounds UVs for the material merger and submit it along with a few other small features and improvements.
     
    josephtamhk and attaway like this.
  38. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    New update V1.3.5 is live!

    Release notes:
    - Improved texture space when merging textures.
    - Added the ability to apply several types of properties to the material merger, like
    multiplying color/float parameters and normal map scale parameter.
    - Added option to use specific shaders in ‘Merger Material Settings’ in addition to using
    specific materials.

    The first two features were described in previous posts.
    I was also able to include another feature where you can also select the materials to be material merged by assigning specific shaders. This works in addition to the list of specific materials:
    upload_2019-5-10_19-59-16.png

    This way if you need to merge all materials that use some specific shaders, then you can just add that shader to "shaders to use" instead of having to add all materials that use that shader. Should simplify workflow significantly.
     
  39. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    New update has been submitted! V1.3.6

    This update adds support for meshes with UVs out of bounds (Outside the [0, 1] UV space) to be material merged!

    To enable this, there will be a new option in the Misc section of the Merger Component Settings:
    upload_2019-5-15_0-17-52.png
    If enabled, the Material Merger will do extra calculations to adjust the material textures and mesh UVs to account for the meshes with UVs outside of the [0, 1] UV area. This option makes the algorithm more expensive and slower to run, so only use this option if you’re sure there are meshes with UVs out of bounds.

    I also fixed a couple of issues i found.

    Here's the change list:
    V1.3.6:
    - Added support for meshes with UVs out of bounds ( [0, 1] UV space ).
    - Fixed Material Merger Pre-Bake breaking the material references it replaces.
    - Fixed issue when saving merged data with the same material name.
     
  40. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    New update is live!
    http://u3d.as/1k1d

    V1.3.6:
    - Added support for meshes with UVs out of bounds ( [0, 1] UV space ).
    - Fixed Material Merger Pre-Bake breaking the material references it replaces.
    - Fixed issue when saving merged data with the same material name.

    I'll be adding editor substance support for Unity 2018+ for the next update, along with a few other improvements.
     
  41. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    Well, tested substances in Unity 2018 and it does already support it. I just assumed i had to do something similar to make it work like in Unity 2017, but it now works just like any other texture, which is pretty great.
    Right now it only fails because of an invalid cast that is easily fixed.

    I'll submit that fix today along with another fix for an issue with the material merger that was caused by the texture space improvement in V1.3.5.
    The update should be live early next week. If anyone needs the fix for the substance send me a PM and i'll give you the easy fix.

    Forgot to mention you in the last post. Support for UVs outside of [0, 1] space has been fully added to the asset in version 1.3.6, which is already live.
     
    WildStyle69 likes this.
  42. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    V1.3.7 is live on the asset store!: http://u3d.as/1k1d

    Change List:
    - Fixed editor substance support for Unity 2018+,
    - Fixed texture issue when generating combined textures,
    - Fixed issue when generating objects that have and don't have baked lightmaps.
     
  43. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    A little preview on the development of the update 1.4!

    Finally happy that i'm getting good results, and i'll be able to add support for merging skinned meshes.

    upload_2019-5-27_22-58-12.png
    (Merged 6 skinned meshes in this image)

    upload_2019-5-27_23-9-24.png

    I'm still working on it and iterating on the workflow, since it's quite different from just merging normal meshes.

    I'm making it so it will create the merged skinned mesh and put it inside the same skeleton (no duplication) and just disable all other skinned renderers (or delete if you want if it's at run-time). You'll be able to exclude specific gameobjects from being merged or disabled.

    I think this is preferable to the alternative of generating a complete new skeleton with just the combined skinned mesh, but i'll probably still have that as an option just in case anyone needs it.

    If anyone has some requests or ideas to improve or add to the skinned mesh merger, please let me know.
     
  44. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    Happy to say that i'll try to submit the new V1.4 update for Advanced Merger Toolkit until the end of next week, featuring support for Skinned Meshes!

    I added this support in a way that minimizes the amount of work you need to do to merge these types of meshes.
    To enable Skinned Merger, go to the Setup tab of the Merger Component, and toggle "Merge Skinned Meshes":
    upload_2019-6-10_22-54-2.png

    Note that if this is enabled, it will only generate skinned meshes. Maybe in a future update i'll add support to merge both types separately.

    With this option enabled, it will merge both skinned and non skinned objects together.

    If you have "Duplicate Into Combined Collection" disabled, the Merger will combine all meshes together and place them inside the actual raw skeleton, and will disable all original mesh renderers and LODs no longer in use.
    Like with the default merger, you can go back and re-enable only the original objects, and can also completely cleanup the combined objects without affecting the original objects.
    upload_2019-6-10_23-5-43.png
    This is very important to keep the original objects safe, so in order to safely combine meshes and change renderers, the "Generated Meshes Prefix" string is added to every new GameObject generated (This string must be unique and can't be used anywhere else in the original raw collection). This way it's very easy to know which object is a combined object. (There were other ways of achieving this, like maintaining a list of those objects, but i feel this way is much safer.)


    If you have "Duplicate Into Combined Collection" enabled, then instead of adding the combined objects into the original skeleton, the whole Raw Collection is duplicated and added to the Combined Collection, along with the new combined objects. The renderers that were used to combined the meshes will be removed in the Combined Object.

    Both these options are available, but if you want to merge skinned meshes together and use them in the original main GameObject, which i believe it's the most common situation, then disabling "Duplicate Into Combined Collection" is the best option.

    Lastly, you'll need to set the "Target Skeleton Transform" you want to add the combined objects to. In my example above, it would be the Soldier_2, which contains the Animator.

    You can also set specific objects you want to exclude from the merger by adding them to the "Exclude GameObjects" list. These won't be included in the merger and won't be disabled/removed from the final object.
    You can also add the "Merger Object" Component to objects you don't want to be included and enable the option "Exclude GameObject From Merger".

    And just like the default merger, the Skinned Merger also supports both Mesh and Material Merger, also generates LODs, and so on.

    upload_2019-6-10_23-25-24.png
     
  45. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    Advanced Merger Toolkit V1.4 has been submitted to the Asset Store!

    Here's the change list:
    • Added Skinned Mesh Support,
    • Error message is now displayed at the end of the Merger Component when something is not valid
    For more information on how the Skinned Mesh support works, check my last post.
     
  46. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
  47. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    Just submitted an hotfix to fix an issue where if there was a renderer object in the raw collection that wasn't a mesh renderer or a skinned mesh renderer, like a particle system for example, would cause an error when trying to merge.
    This update should be live early next week.
     
  48. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    Just posted the first video of a tutorial series for the Advanced Merger Toolkit asset, where i will demonstrate every feature available.
    This is Part 1 where i show how to get started with the asset.

     
    Last edited: Jun 30, 2019
  49. eskovas

    eskovas

    Joined:
    Dec 2, 2009
    Posts:
    1,329
    Part 2 tutorial is live on Youtube, showing how to setup LODs in Advanced Merger Toolkit:
     
  50. josephtamhk

    josephtamhk

    Joined:
    Jul 24, 2017
    Posts:
    4
    https://codeincomplete.com/posts/bin-packing/
    Can you take a look to this growing algorithm for packing rectangles?
    It can create less empty space for the atlased texture than using Texture2D.PackTextures

    Besides, I would like to ask for a preview feature for texture atlasing before saving the merging result.
    It can also be good if it is possible to have a scale parameter for each material for generating the atlases, as it can help for minimizing the empty space in atlased textures.

    Thank you.
     
    Last edited: Jul 12, 2019 at 5:19 AM