Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

ProDrawcallOptimizer, reduce the number of drawcalls drastically on your project

Discussion in 'Assets and Asset Store' started by jmunozar, Mar 27, 2014.

  1. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    Hey ASHLOT,

    are you building for web?, if you are building for the web player, it doesnt support static batching unity itself.
    if you are building for something else than the web player could you please send me a package of the objects you are trying to optimize so I can analyze them? :).

    remember to set (when possible) your objects as static, it helps reducing the drawcalls even more!
     
  2. JesterMaster

    JesterMaster

    Joined:
    Oct 29, 2014
    Posts:
    34
    Hi

    I am now optimizing my polygon count using Simplygon. This program also merges my object textures to one png file. This also fixes the problem with different shaders in a same object.

    When I am finished this prosess I will merge these png textures to one atlas using ProDrawCall. I will let you know how did it worked :)
     
    Last edited: Dec 30, 2014
  3. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    Ah Excellent!, by the way, ProDrawCall is able to combine various materials on a game object if the game object has the same type of shader across the materials.

    Looking forward for it then ;)
     
  4. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    Hey Guys!,

    Just to keep you updated on whats comming on, I'm working on making the long waited Skinned mesh renderers now work. I have already finished the development on supporting the Standard shader (version 3.0) and now I can focus all my free time on making it work with SkinnedMeshRenderers! :D.

    if you guys want any other thing on the tool please let me know here or via email, im open and looking constantly forward to improve the tool even more! :)
     
  5. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    Hey ASHLOT,

    What the message says is what it is, in that specific game object that you just added, the material that that object has doesnt have a texture assigned, if you dont have a texture assigned the tool will use the color of that material, and if no color can be found then by default, white will be used.

    this is expected, now on the Example1 Landscape perhaps (I cant remember well..) some of them will be missing textures (this is normal).

    This is used when there are objects that are just plain "painted" with several materials (sometimes).

    Hope this answers your questions :)
     
  6. ASHLOT

    ASHLOT

    Joined:
    Dec 27, 2014
    Posts:
    4
    Thank you for the reply.
    At the beginning, I made a small scene, when I try ProDrawCallOptimizer,
    Value of DrawCalls was reduced. Thank you for the asset.

    However, as I have posted before, I have a question regarding sample scene.

    Value of DrawCalls of Statistics in the YouTube videos are down.


    Example1-Atlassed-Atlas.unity scene, I think already BakeAtlas has been executed.
    However, the value of DrawCalls is not down.
    The Example1-Atlassed-Atlas.unity I do not change, this time.

    Is this Will a correct situation?

    pic1.png
    pic2.png
    pic3.png
     
  7. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    Hey A
    Hey Ashlot,

    there are 2 scenes for each folder one the normal scene without any optimizations and the "-Atlassed" scene that is already optimized. so yes is correct.

    NOW. having 320 drawcalls on gameplay is strange, you should have like 20.

    In your case I guess you have UnityFree, still there should be drawcalls reduce. if you dont see reduce in drawcalls Try out installing Unity again, this is just plain weird.

    let me know if you solve the issue.
     
  8. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091

    Hey Ashlot, did you managed to solve the issue? ;)
     
  9. ASHLOT

    ASHLOT

    Joined:
    Dec 27, 2014
    Posts:
    4
    I don't have UnityPro, so I can't try.
    When I use the UnityPro someday, I'll try.:)
     
  10. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    ahh... you can still use it on Unity free, or dynamically combining objects at runtime, but most of the time static batching is waaay better (which is included in UnityPro).

    Being said that, try out the combine children on the optimized meshes http://forum.unity3d.com/threads/combine-children-extented-sources-to-share.37721/

    That should do the trick in that case ;)
     
  11. Rainking

    Rainking

    Joined:
    Jun 10, 2013
    Posts:
    41
    Hi,

    I found 2 issues while working with your asset:

    1. I got some 2k and 4k textures (approx. 10 objects) and the draw call optimizer crashes every time (with fatal error - could not allocate memory; System out of memory). Can you please give me a hint how I can work around this issue? Do I have to resize (smaller) the textures or is there another way? I got 24 GB of RAM in my system...

    2. If I choose to create prefabs, I see this Error for every prefab it wants to create:

    'Assets/SG_Scene_Ship-Atlas\Prefabs\Asteroid4_LOD1.ODCObj -1005908.prefab' is not a valid asset file name.
    UnityEditor.PrefabUtility:CreatePrefab(String, GameObject, ReplacePrefabOptions)
    ProDrawCall.OptimizableShader:OptimizeDrawCalls(Material&, Single, Single, List`1, Boolean, TextureReuseManager, Boolean) (at Assets/ProDrawCallOptimizer/Scripts/Editor/Core/OptimizableShader.cs:197)
    ProDrawCall.OptimizableShader:OptimizeShader(Boolean, Boolean) (at Assets/ProDrawCallOptimizer/Scripts/Editor/Core/OptimizableShader.cs:112)
    ProDrawCall.ProDrawCallOptimizerMenu:OnGUI() (at Assets/ProDrawCallOptimizer/Scripts/Editor/ProDrawCallOptimizerMenu.cs:99)
    UnityEditor.DockArea:OnGUI()


    Thanks in advance and kind regards,
    Tino
     
  12. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    Hey Tino,

    the issue is that prefab generation consumes a huge amount of memory (that's why its soo slow) :(.

    The quick solution there is to reduce your textures OR dont generate prefabs.

    unfortunately the Unity editor is 32 bits, that means the max amount of memory it can allocate is ~4gb of ram (correct me please if im wrong) and because of that, the amount of memory that your textures use being atlassed plus getting the prefabs generated is more than what the editor can handle, hence out of memory exception.

    Still. if you have 10 objects its kinda weird it will generate you and error, could you please send me your 10 objects on a package to my mail so I can atlas them here and see what's the issue and hopefully fix it for you? :)
     
  13. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    hey @Rainking,

    After giving some thoughts, another strategy you can use is to atlas per shader, I mean, gather all the objects and delete all shaders except one, bake it and then carry on with the other shaders several times, that should help.

    Still, let me know if you dont manage to make it work, I'll try to reply ASAP to help you solve the issue :)
     
  14. Rainking

    Rainking

    Joined:
    Jun 10, 2013
    Posts:
    41
    Thank you for the fast reply!
    Ok I'll try smaller textures first. This should be no problem,

    I think the second question / issue does not depend on memory or texture size, I see it everytime even with very small textures. It seems to be something with the generated filename as it says:
    Code (CSharp):
    1. 'Assets/SG_Scene_Ship-Atlas\Prefabs\Asteroid4_LOD1.ODCObj -1005908.prefab' is not a valid asset file name.
    May be it has problems with the whitespaces / slashes or the string length?

    Kind regards.
     
  15. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    AHHHH I see the issue!!!, I bet you are working on windows, arent you?, please mail me I'll send you a fix for that right away ! :D (It will take me a lil bit of time as I have to upload the whole ProDrawCall to dropbox
     
  16. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    Arkade likes this.
  17. Minoc

    Minoc

    Joined:
    Aug 28, 2014
    Posts:
    1
    Hi

    For anyone interested, here is how you can reduce the draw calls on game objects which are instantiated at run time.
    This is handy for multi-player when the server loads many (hundreds) of objects that are not always in the scene.
    It could also be used for object pools (like power-ups) or many other areas.

    The exact draw call reduction will depend on lighting, vertex counts, object grouping etc....so it can take a bit of fiddling to find the 'sweet spot'.
    In my test scene I got 50 draw calls reduced to 7 or 20 down to 3 (depending on the number of objects spawned).
    In the actual game scene I'm working on it reduced over 80 draw calls down to less than 30.

    Steps are:

    1) Create the prefabs and a shared material (atlas) with the ProDrawCallOptimizer :)
    The advanced 'Generate prefabs for objects' option helps out here.

    2) Adjust the prefabs as desired (such as adding your power-up scripts or colliders, etc....), and make sure the prefabs are marked static.

    3) Create a parent game object in the scene to allocate all the instantiated game objects to.
    The parent object can just be empty, and its handy when you are creating many (dozens or hundreds) game objects to have them organised on the hierarchy.

    4) Instantiate all the game objects via code, and allocate them to the parent.
    GameObject go = Instantiate(prefab, location, rotation);
    go.transform.parent = parent.transform;


    5) Execute StaticBatchingUtility.Combine on the parent object.
    StaticBatchingUtility.Combine(parent);


    And that is it.
    Not too many steps but they need to be in that order.

    Just for reference, here is a copy of the testing script I used:

    -------------------------------------------------------------------------------------------------------------
    using UnityEngine;
    using System.Collections;
    using System.Collections.Generic;

    public class Atlas_Testing : MonoBehaviour
    {
    // These are the 8 testing prefabs with atlas materials
    public GameObject object1;
    public GameObject object2;
    public GameObject object3;
    public GameObject object4;
    public GameObject object5;
    public GameObject object6;
    public GameObject object7;
    public GameObject object8;

    private List<GameObject> gos = new List<GameObject>();

    // Empty game object to parent all the instantiated game objects
    public GameObject parent;

    void Awake ()
    {
    // Add game objects to the list
    gos.Add(object1);
    gos.Add(object2);
    gos.Add(object3);
    gos.Add(object4);
    gos.Add(object5);
    gos.Add(object6);
    gos.Add(object7);
    gos.Add(object8);

    CreateObjects();
    }

    private void CreateObjects()
    {
    GameObject go;
    // Create X gameobjects (20)
    for(int i = 0; i < 20; i++)
    {
    // Random location to create the game object at (in front of test camera)
    Vector3 placer = new Vector3(Random.Range(-28.0f, 30.0f), Random.Range(-15.0f, 15.0f), Random.Range(10.0f, 50.0f));
    // Instantiate the game object at the random location with random rotation
    go = Instantiate(gos[Random.Range(0, gos.Count)], placer, Quaternion.Euler(Random.Range(0, 360), Random.Range(0, 360), Random.Range(0, 360))) as GameObject;
    // Allocate to parent object
    go.transform.parent = parent.transform;
    }

    // Process static batching
    StaticBatchingUtility.Combine(parent);
    }
    }

    -------------------------------------------------------------------------------------------------------------

    Thanks to the jmunozar for a great product.
    Really glad I found this one as its easy to use and has provided massive draw call savings.

    Cheers.
     
    Arkade likes this.
  18. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    Thanks a lot for sharing this @Minoc :)
     
  19. MikeHergaarden

    MikeHergaarden

    Joined:
    Mar 9, 2008
    Posts:
    1,027
    This package is currently not active in Verdun, but as we recently switched over to Unity5 I'm hoping to implement it again (we needed the 64bit editor as it used to crash because of OOM exceptions in U4).

    Since we easily have 10k+ objects that need to be batched, I constantly need to hack in a few optimizations. I think these would make sense for the main branch as well.

    Three most imporant optimizations:
    1) Default view; NOT opening any of the branches in the Objects view. (very easy, 1 min fix at 2 locations)
    2) Cache the estimated atlas size per object/shader (very easy, 1 min fix)
    3) Sorting of objects is only done in DrawGUI if a GUI.changed is detected, or if the objectsSize/atlasarray has changed, instead of EVERY gui frame

    I found these optimizations by using the profiler in the editor. Would be cool if you can check this out and make a proper fix.
     
    Arkade likes this.
  20. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    Hey Mike!,

    Definitely :); right now im on holidays but I'll definitely give it a look next week, I'm working on combining objects as well and trying to support malformed UVs on objects but those fixes seem to be easy.

    Thanks :)
     
  21. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    Hey Mike,
    I've sent you an email with the fixes, try them out and let me know, I'll be updating them soon :)

    if you find any issue just let me know :)
     
  22. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    Hey Guys,

    ProDrawCall 3.2 is on its way!, make sure to update to this version, it comes with performance improvements (thanks to Mike from M2H studios) and also when materials are just colored, UVs are centered to the middle of the texture, hence correcting malformed UVs :).

    if anyone has any issue just mail me ;)

    Cheers
     
  23. SteveXu

    SteveXu

    Joined:
    Jul 22, 2013
    Posts:
    15
    Hi jmunozar:
    Is this plugin can be used to merge draw calls of particle system ? I have 10 particle system,each has it‘s own material and shader. I try to merge them to a single texture with m x n tiles, so use "Texture Sheet Animation" to optimize, but this can only work for material with the same shader. I wonder weather your plugin can optimize this?
     
  24. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    Hey Steve Xu,

    particle systems don't have a mesh renderer / mesh filter and that's what pro draw call needs to atlas textures.

    So unfortunately nope.
     
  25. angel_m

    angel_m

    Joined:
    Nov 4, 2005
    Posts:
    1,160
    Is there any written documentation about the tool?
     
  26. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    Hey @angel_m when I wrote the tool I made it with the purpose to to be as easy to use as possible; so the documentation on how to use the tool is on the videos of the tool.

    Being said that, if you where talking about source code :) (Which is included in the tool), then the code is fully documented. but its purpose is more if you want to extend the app for your specific needs.

    Hope this answers the question tho :).
     
  27. angel_m

    angel_m

    Joined:
    Nov 4, 2005
    Posts:
    1,160
    I was talking about a pdf or so showing the "getting started" of the tool...
     
  28. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    hey @angel_m
    no, there is no docs on how to get started, did you check the video? :), its pretty straight forward, select your game objects and click combine.

    being said that, do you actually feel there is need for a pdf that shows how the tool works?
     
  29. Aspiring_Failure

    Aspiring_Failure

    Joined:
    Jan 21, 2013
    Posts:
    42
    Hello. I've been atlasing my textures the old-fashioned way for a while now and I'm very interested in your product, because it would save me a load of time and make working with artists a lot easier.

    I tried the free version and it works well enough, but I have a few worries. There's no way to ask your program not to create an atlas if it sacrifices resolution. Can you add this? Something like a "split atlas to preserve quality" option that would prefer to have 2 atlases or more so each texture could be full resolution rather than 1 atlas with a bunch of 64 x 64 images inside it.

    I'm also worried about padding. Any way at all you could get this into the product? Optional automatic padding on a per-atlas basis? Without padding, you can get some pretty ugly seams on mipmaps.

    Like I said, I'm very interested in your product. I just want to see if I can have some of my worries quelled before I plop down some cash for it. Thanks in advance for your reply. :)
     
  30. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    Hey There! :)

    Tor the time being I'm working on mesh combine utility and trying to solve some performance issues that happen when you are building on mobile platforms.

    Regarding the split atlasing. Yes; I planned to add this feature lets say to split atlases when the max supported texture (8k in Unity5, 4k unity4) was exceded but I stopped because I had to make it work on Unity5.

    The quick solution to this issue is to just bake one batch of textures and then the next batch. Textures are copied exactly in the same resolution as they are so if the generated atlas in Unity4 is less than 4k, the tool will automatically set the resolution for the atlas to 4098x4098 and you will not lose quality on your textures.

    Regarding padding. What the tool does right now is that it gets your texture and copies it pixel by pixel to a new atlas. so if you have your texture padded before hand it will appear padded in your atlas :). I dont touch the textures of your objects nor modify them, just copy them as they are :).

    Being said that. I would need to do some research before attempting anything. The tool doesn't know before hand what texture are you using, the background color, etc. As I wrote, the tool copies your textures to an atlas and remaps your UVs, it doesn't process your textures.

    Hope it answers your concerns :)
     
  31. Aspiring_Failure

    Aspiring_Failure

    Joined:
    Jan 21, 2013
    Posts:
    42
    Thank you very much. Your answers were very helpful and that you at least plan on an auto-split feature allows me to feel a lot more comfortable investing in your tool.

    I do have one last question: Is it possible (and I'm just missing it) to find (like how the program can find by tag) all objects with specific materials? Say I have four different materials, each with a 2K texture. Wood1, wood2, wood3, and wood4, Perfect for atlasing. Is it, or will it ever be, possible to automatically find every object with one of those four textures and create an atlas? (fishing and hunting for all of them can be tedious work.)

    Oh, and is the mesh combine utility going to be a part of Pro Draw Call Optimizer, or another thing altogether?

    Thanks again for taking the time to answer my questions. You've been very helpful and regardless of your answers to these last few questions, you can consider me a new customer. :)
     
  32. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    Hey @Aspiring_Failure :),

    Right now I dont have a release date on when I will finish these features as I'm working on other stuff as well and I dont like to release stuff that half works.. ;) BUT I do plan to work on them!.

    Right now is possible to search objects by tag and by layer but searching by texture type is not implemented in the tool and for the time being I dont plan to work on it, there's other stuff that is more important to have in the tool now ;)

    Regarding the mesh combine utility, it will come as an update in the tool, still you can just get any mesh combine utility (for the time being) and just bake the objects and later on just combine them :). I have had several customers that have done it.

    Checkout this page: http://grrava.blogspot.com/2014/08/combine-meshes-in-unity.html its a quick editor tool that will let you combine your objects. (i just did a quick search on google tho ;))
     
  33. flashframe

    flashframe

    Joined:
    Feb 10, 2015
    Posts:
    789
    Hi, we recently purchased the plugin. It seems quick and easy to use, but we have a concern that maybe you could clarify?

    We are making a game for mobile, so we need our textures to be Square POT, but at the moment when we atlas the textures, the plugin is giving us non square results, even though all of the textures fit into a square atlas (we've checked this).

    Instead of a 2048 square, we get a 2048 x 2024. Is there a way to force your plugin to make square textures?

    It would be nice to have some more options for the altlasing, similar to TexturePacker, to have some control over the resulting atlas.

    Cheers
     
  34. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    Hey @flashframe.

    mmm good point, unfortunately the plugin right now doesn't generate squared textures nor you can control the generated texture atlas.

    I'll write this down but I cant promise a feature to control generated atlas anytime soon; Right now I'm working on the ability to combine any type of meshes within the combined material and some other performance and crash issues.

    I wish I could offer you a way to modify the generated atlas but its not possible :/, maybe a quick editor script that goes through all your selected object meshes and moves the UVs mapped to your mesh to a certain offset to make the atlas squared is the easiest and fastest solution.

    the idea of having control like a texture packer is a really good option that I never thought about! but I dont know for the time being if I'll develop this due to my current workload.
     
  35. flashframe

    flashframe

    Joined:
    Feb 10, 2015
    Posts:
    789
    Thanks for clarifying Juan. Appreciate the quick response and support.
     
    jmunozar likes this.
  36. Aspiring_Failure

    Aspiring_Failure

    Joined:
    Jan 21, 2013
    Posts:
    42
    I've been using your tools and one of the features that I really like is the ability to go ahead and save the cloned objects as prefabs. That saves a lot of time, --Thank you! I've noticed, though, that the actual prefabs and atlases are saved in unique folders created the tool. Would it be possible for you to allow us to pick custom folder destinations in the settings menu to expedite the process of organization?

    Thanks!
     
  37. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    Hey man :)

    Thanks! :), yes I think this can be possible and easy to implement. I'll take a look to it over the next week ;)
     
  38. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    Hey guys! I am updating right now as I'm writing this post a new version of ProDrawCall 3.3, it includes combine game objects into a single mesh and also the ability to override the default path where the generated atlases are saved.

    Please be aware that if you combine meshes and they have already a lightmap you will have to re-bake your lightmaps.
    This is because CombineMeshes function doesnt seem to also combine UV2+ channels. I even tried the GenerateUV2Set function and didnt seem to work.

    It looks like I'll have to manually combine meshes to solve this simple bug.

    Anyways, here's a simple screenshot on how it looks:
    Screen Shot 2015-04-25 at 22.39.22.png
    Screen Shot 2015-04-22 at 12.14.55.png

    if you have any other suggestion GUI-wise or any other suggestion let me know ;)
     
  39. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    Hey Guys!,

    Pro Draw Call 3.3 is now live at the Asset store!, I have done some quick tests and you can now get just by mesh combining ~800% more frames per second in the 1rst example! Check the screenshot attached. OptimizedCombine.png

    Note that you might need to re-bake the scene with the light mapper if you combine your meshes in case it looks dark.
     
  40. dshankar

    dshankar

    Joined:
    Feb 28, 2015
    Posts:
    21
    Is there a way to use Pro Draw Call Optimizer to make several texture atlases?

    I've identified particular objects that end up crashing Unity + Pro Draw Call (out of memory); they're large multi-material higher poly objects. I only use one shader in my scene (mobile diffuse) but it would be nice if I could have "groups" - one texture atlas for the majority of low poly small texture objects, one texture atlas for the big objects, etc.
     
  41. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    Hey @dshankar.


    Yes definitely. Just bake your objects by batches.as simple as that :). If pro draw call is crashing is because you have several multiple material objects :(.

    Try to bake them by batches and you should be good to go ;)

    Cheers
     
  42. dshankar

    dshankar

    Joined:
    Feb 28, 2015
    Posts:
    21
    What do you mean by bake in batches?

    Here's my issue.

    I select all the small objects (same mobile/diffuse, but low poly environments), and bake them. Properly optimized.
    I deselect them.

    Then I select a few of my large objects (my characters, high poly, mobile/diffuse shader) and bake atlas again.

    But now, it deletes the originally baked objects (the environment atlas) and makes new optimized objects for just the characters.

    Why is it deleting the previous ones?

    How do I create separate batches?
     
  43. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    Ahh now l understand.

    There is a check box in the options menu that says "remove atlasses before baking". Just unselected them and your previously optimized game objects will not be removed :)

    Try it out and let me know if you find any issue ;)

    Cheers
     
  44. dshankar

    dshankar

    Joined:
    Feb 28, 2015
    Posts:
    21
    It won't let me unselect that check box alone.

    If I unselect "remove atlasses before baking" it automatically unselects "Reuse Textures" which then makes the atlas sizes enormous (there's a red error, "TOO BIG!!!")

    Suggestion?
     
  45. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    Oh wow

    That shouldn't happen. Let me take a look tomorrow and I will get back to you ASAP in less than 24hrs.

    Im in bed :(. Could you please mail me so when I fix the issue I send you an email right away? :)
     
  46. dshankar

    dshankar

    Joined:
    Feb 28, 2015
    Posts:
    21
    I'll email you. The VR Jam competition deadline is 9AM Pacific time. You would be my hero if we could resolve this before then ;-)

    In the meantime, I'll just use a single texture atlas for as much as I can and leave the rest unoptimized.

    Thanks!
     
  47. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    :) problem solved and sent for review the new version with the bug fixed :)
     
  48. dshankar

    dshankar

    Joined:
    Feb 28, 2015
    Posts:
    21
    I just wanted to say, Juan was incredibly helpful staying up when he was sick with the flu to help me get Pro Draw Call working. Pretty rare to get that kind of support!

    I blogged about performance optimization in Unity 5, and Pro Draw Call is one of my suggestions: http://dshankar.svbtle.com/performance-optimization-for-vr-apps
     
    idurvesh likes this.
  49. jmunozar

    jmunozar

    Joined:
    Jun 23, 2008
    Posts:
    1,091
    @dshankar oh nice!, thanks a lot for the kind words! :) I'm glad it helped you out man! :D !
     
    idurvesh likes this.
  50. EddieChristian

    EddieChristian

    Joined:
    Oct 9, 2012
    Posts:
    725
    I just tried your free version for an hour with a single object with multiple materials. Never could get it to work. And oddly it wrote in yellow that it only saw 1 texture. There were 10 5 Color and 5 Normal maps. It used the Legacy Bump Diffuse for the shaders. Using the latest free unity build.