Search Unity

  1. Calling all beginners! Join the FPS Beginners Mods Challenge until December 13.
    Dismiss Notice
  2. It's Cyber Week at the Asset Store!
    Dismiss Notice

SimpleLOD user support thread

Discussion in 'Assets and Asset Store' started by Orbcreation, Nov 25, 2014.

  1. Orbcreation

    Orbcreation

    Joined:
    May 4, 2010
    Posts:
    230
    @zletaris The error you post comes from the Unity import setting "Optimize Game Object" (see attached image). Whe you switch that on, Unity will do some magic stuff with the bones and hide them from the Editor and from your/my code. I find the latter is very annoying, because it causes this error. Just switch it off and you're ok.

    @duencil That is exactly how SimpleLOD works. You can't specify any target nr of vertices, only error tolerances.
     

    Attached Files:

    Mark_01 likes this.
  2. karmik

    karmik

    Joined:
    Oct 8, 2014
    Posts:
    124
    Hi i am planing to make a few high poly models in to low poly for use in mobile game. Just checking simple lod can do that for me. Convert from high poly to low
     
  3. Rajmahal

    Rajmahal

    Joined:
    Apr 20, 2011
    Posts:
    2,051
  4. Metatronic

    Metatronic

    Joined:
    Jan 25, 2015
    Posts:
    14
    Not in my setup, My characters are fully blendshaped. I have one base character that is blended into any character of my choosing, or to make them chubby or into anything I wish. So I actually do need blendshapes to work in the lod's
     
  5. VirtualisDev

    VirtualisDev

    Joined:
    Jul 21, 2015
    Posts:
    30
  6. Orbcreation

    Orbcreation

    Joined:
    May 4, 2010
    Posts:
    230
    SimpleLOD does not support blendshapes yet. Unity will crash when you try to merge a mesh that uses them. You need to switch the blendshapes off in your import settings.
    Also switch off the "Optimize Game Object" toggle.
     
  7. Rajmahal

    Rajmahal

    Joined:
    Apr 20, 2011
    Posts:
    2,051
    Cool ... Thanks Orb. I don't need them so I'll turn them off.
     
  8. Rajmahal

    Rajmahal

    Joined:
    Apr 20, 2011
    Posts:
    2,051
    Sorry ... Can anyone explain how I switch off blendshapes in import settings?
     
  9. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    4,961
    Isn't it just a matter of a checkbox in the inspector under Model when you have the model selected in the project window?
     
  10. Rajmahal

    Rajmahal

    Joined:
    Apr 20, 2011
    Posts:
    2,051
    Oh okay cool ... I thought it was something I had to do during the import of the asset.
     
  11. me4lmnts

    me4lmnts

    Joined:
    Aug 2, 2016
    Posts:
    8
    I wanted to use the LOD Switcher function "deactivate at distance". But no matter what value I use there, nothing seems to change, even when I look through the game camera. What am I supposed to do to use this similar to the culling of the LOD Group?
     
  12. Dinin

    Dinin

    Joined:
    Apr 1, 2015
    Posts:
    6
    Hi,

    Having problems with bake atlases when my materials are using UV1. It seems that the UV1 channel is not mapped correct after creating the atlases. Is there any way i can do this for UV1 correctly?

    Thanks and greetings
    Dinin

    UPDATE:

    I contacted Support per mail and here is the answer:
    Orbcreation:
    That's because UV1 is not used in the atlas bake utility. Only UV0. Sorry.

    There will be a major update early next year. I will make sure to add this to it. If only I had more time for SimpleLOD right now. There are so many things I want to improve/add to it, but my current project totally buries me in work.



     

    Attached Files:

    Last edited: Nov 22, 2016
  13. Mad_Mark

    Mad_Mark

    Joined:
    Oct 30, 2014
    Posts:
    390
    Same here. It seems as soon as I select the "Make Readable" button, my textures start to "swim" across the UVs. Revert doesn't return it to normal. Using Unity 5.4.1.f1 & SimpleLOD 1.6.
     
  14. asimov99

    asimov99

    Joined:
    Mar 13, 2015
    Posts:
    54
    Hi everybody

    if you want to use distance Camera to Object in LodSwitcher instead Screen Sizes, just modify LODSwitcher.cs like this :

    Code (CSharp):
    1. public float getDistance() {
    2.         Camera cam = customCamera;
    3.         if(cam == null) cam = Camera.main;
    4.         float distance = Vector3.Distance(cam.transform.position, transform.position + centerOffset);
    5.         if(deactivateAtDistance > 0f && distance > deactivateAtDistance) return -1f;
    6.         return distance;
    7.     }
    8.  
    9.     private void ComputeLODLevel() {
    10.         int newLodLevel = 0;
    11.         if(fixedLODLevel >= 0) {
    12.             newLodLevel = fixedLODLevel;
    13.         } else {
    14.             // Lod by distance
    15.             float distance = getDistance();        
    16.             if(distance >= 0f) {
    17.                 newLodLevel = lodScreenSizes.Length;
    18.                 for(int i = lodScreenSizes.Length-1; i >= 0; i--) {
    19.                     if(distance < lodScreenSizes[i] * QualitySettings.lodBias) newLodLevel--;
    20.                 }
    21.             } else newLodLevel = -1;          
    22.             /*
    23.             float screenPortion = ScreenPortion();
    24.             if(screenPortion >= 0f) {
    25.                 for(int i=0;i<lodScreenSizes.Length;i++) {
    26.                     if(screenPortion < lodScreenSizes[i]) newLodLevel++;
    27.                 }
    28.             } else newLodLevel = -1;
    29.             */
    30.         }
    31.         if(newLodLevel != lodLevel) SetLODLevel(newLodLevel);
    32.     }
    Put distance values in screen sizes settings instead screen size proportion. This code use distance and the lod bias in quality settings :) if you don't want use the lod bias, juste remove " * QualitySettings.lodBias ".
     
    Rajmahal and hopeful like this.
  15. Rajmahal

    Rajmahal

    Joined:
    Apr 20, 2011
    Posts:
    2,051
    That is awesome. Thanks so much.

    Orbcreation, any chance you could include this in the next version so it's easiet to stay in synch with patches?
     
    asimov99 likes this.
  16. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    3,676
    I see that you have a new version that has a fix for a crash when there are blend shapes. My question is whether or not it's now possible to do polygon reduction on a skinned mesh with blend shapes and retain the blend shape capability? In my case I simply want to reduce the polygon count on my player model, but I need the blend shapes to work for lip syncing.
     
  17. asimov99

    asimov99

    Joined:
    Mar 13, 2015
    Posts:
    54
    Hi @Orbcreation

    it's possible to have an option for create a very simple mesh (like low poly) for create a shadow mesh for example ?
    this would be a great option :D
     
  18. hakankaraduman

    hakankaraduman

    Joined:
    Aug 27, 2012
    Posts:
    336
    @Orbcreation Hi, I purchased this a while ago and haven't used yet. I tried but looks like documentation and the video guide is out of date. It mentions "atlas window" button but I can't see it in my editor.

    I will try to describe what I want to achieve and need help about it.

    I have 2 objects. One of them has 2 meshes and a material per mesh, other one has 1 mesh but 2 submaterial.

    Hierarchy is like this;

    ZombieA
    -Body (a material/texture)
    -Hair (a material/texture)
    Zombie B
    -Body (2 materials/textures)

    I want to have 1 atlas map (which has 4 textures) but want 2 different models, one mesh for ZombieA ( body and hair merged ) and 1 for ZombieB (no merge but a new mesh with new uvs to be able to use the atlas texture map)

    Can I achieve this with SimpleLOD? I was able to achieve this with Mesh Baker Free version but it doesn't save assets as mesh in the project and I really don't want to spend money while I already have SimpleLOD, hope it works. Thanks in advance.
     

    Attached Files:

  19. wgj0522

    wgj0522

    Joined:
    Oct 19, 2015
    Posts:
    4
    Hi.guys

    I bought the SimpleLOD1.6 from the store and using it for Unity5.3.5,but i have some trouble.

    1、I Merge the baked gameobjects with lightmap and have the same lightmap index,after the combine,the lightmap info is right for new Object,
    but,the lightmap info can't be keep forever.like reopen the scene,the new Object's Lightmap Info is Lost.strange

    2、about the Merge Atlas,I use the unity5's standard shader,we have texture in (Detail Albedo x),but when i combine the materials,this texture can't be merged.
    so,for these problems,have some ideas?
     
  20. novaVision

    novaVision

    Joined:
    Nov 9, 2014
    Posts:
    310
    My character got a lot of components and objects in his bones and when I combine child skinned meshed to a single, I wish to just set a new Skinned Mesh to original object, without setting up all those gameObejcts and components again.
    Unfortunately I can't do it, because new skinned mesh doesn't fix to existing bones.
    Before merging childs my structure looked like this (character gameObject didn't containe skinned mesh component at all)
    but after like this

    How to fix new skinned mesh the same bones?
     
  21. Hamesh81

    Hamesh81

    Joined:
    Mar 9, 2012
    Posts:
    405
    Hi @Orbcreation , I am considering to purchase this asset for its runtime functionality. I am wondering though, the function for removing hidden triangles, can this be used at runtime since I couldn't find it documented. I would basically like to combine the character and clothing/armor meshes at runtime, and then remove the parts of the character mesh not visible under the clothing/armor. Would this be possible?
     
  22. BonyYousuf

    BonyYousuf

    Joined:
    Aug 22, 2013
    Posts:
    110
    Hi @Orbcreation ,
    I was planning to buy your asset to use on my game. But I really need it to work with "Optimize Game Object". I have several character running. Turning "Optimization" off is not an option for me at all. If you could please fix this
    "System.ArgumentOutOfRangeException: Argument is out of range.
    Parameter name: index"
    error ASAP I would buy it right now and get the asset directly from you before it goes pending on the asset store review.

    Please let me know if this would be possible.
    Thanks
     
  23. Knightmore

    Knightmore

    Joined:
    May 11, 2012
    Posts:
    226
    Is this still up-to-date and working with Unity 5.5? Last thread message from @Orbcreation was Sep 14, 2016 and I just thought about to buy this and try it out with my Morph3D models.
     
  24. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    4,961
    Best to contact him via his support email. Most devs are busy working at their day jobs and do their plugins as a side job.
     
  25. KingLlama

    KingLlama

    Joined:
    Jul 18, 2015
    Posts:
    180
    I'm still very new to Simply lod and lods in general, how would I go about adding a cull to the lod itself through your system?
     
  26. Tarball

    Tarball

    Joined:
    Oct 16, 2016
    Posts:
    149
    I just bought this, and on my 5th set of meshes to merge, I get the following error:

    System.ArgumentNullException: Argument cannot be null.
    Parameter name: key

    Then, half of the mesh disappears, and I have to revert. What would throw this null exception?
     
  27. lod3

    lod3

    Joined:
    Mar 21, 2012
    Posts:
    621
    Wondering that myself. Installed SimpleLOD in a clean 5.5.0 project and got a litter of errors and other warnings. After I disabled importing the demo folder, though, it dropped down to 2 warnings:

    Assets/SimpleLOD/Editor/SimpleLOD_MaterialPopup.cs(792,10): warning CS0252: Possible unintended reference comparison. Consider casting the left side expression to type `UnityEngine.Material' to get value comparison

    Assets/SimpleLOD/Editor/SimpleLOD_MaterialPopup.cs(1087,71): warning CS0618: `UnityEditor.TextureImporter.normalmap' is obsolete: `normalmap Property deprecated. Check [[TextureImporterSettings.textureType]] instead. Getter will work as expected. Setter will set textureType to NormalMap if true, nothing otherwise.'


    Big improvement, but the "SimpleLOD_MaterialPopup.cs" warning has me worried about baking atlases. Nonetheless, going to try and set up some characters, and if there's any issues I'll check back here for whatever the last version of Unity worked with this asset (since I'm doing LODs in a clean project anyway).
     
    hopeful likes this.
  28. Rajmahal

    Rajmahal

    Joined:
    Apr 20, 2011
    Posts:
    2,051
    I'm using it in 5.6.0 and still seems to work fine. Haven't tried 5.6.1.
     
    hopeful likes this.
  29. lod3

    lod3

    Joined:
    Mar 21, 2012
    Posts:
    621
    Did you get any errors or warnings on install?
     
  30. Tarball

    Tarball

    Joined:
    Oct 16, 2016
    Posts:
    149
    I'm using 5.6.1f, and I got a handful of warnings. In practice, sometimes it works, and sometimes it doesn't. I just got it the other day, but I've used it enough to have a good feel for it. The mesh combiner works about 90% of the time, where the other 10%, I get the error I mention a few posts up. From the successful combined meshes, when I set up the LOD, I get the dynamic batching bug error about 10% of the time.
     
  31. Rajmahal

    Rajmahal

    Joined:
    Apr 20, 2011
    Posts:
    2,051
    Not really sure ... I had it installed in my project already and I then upgraded to unity 5.6.0
     
  32. YamiuchiProject

    YamiuchiProject

    Joined:
    Mar 14, 2015
    Posts:
    7
    Hi!
    Currently, I make topography by combining 1 * 1 blocks.
    We could combine the created terrain using Simple LOD, but Verts and Tris do not fluctuate at all
    Does Verts and Tris of the connected objects do not change?
     
  33. micuccio

    micuccio

    Joined:
    Jan 26, 2014
    Posts:
    120
    Good Morning,
    I am using SimpleLOD since some time (amazing software by the way) and I am encountering now an issue.
    I am tring to merge Skinned and "normal" meshes.
    As usual it works and I get one single Skinned mesh, But when the character is animated, the Non Skinned meshes (es: a cube attached to one hand of the character) are detached and does not follow the animation. I understand there is something going on with the skeleton and the mesh. Is there any way to fix it?

    Thanks in advance and Best regards,

    Dom
     
  34. lod3

    lod3

    Joined:
    Mar 21, 2012
    Posts:
    621
    @Orbcreation

    Is a resulting .asset file a snapshot of its source, or does it update based on changes made to its source afterwards?

    Thank you.
     
  35. SoloChristian

    SoloChristian

    Joined:
    Oct 9, 2012
    Posts:
    673
    So I select the top node which is an empty game object. It finds None of the child mesh objects at all...

    Also the "Make Readable" button when combining textures only shows up for the first texture. Making it impossible to combine textures.
     
    Last edited: Sep 9, 2017
  36. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,602
    anyone know if this is abandoned asset???? I really hope not but been awhile since we seen the developer or any updates. Great asset.
     
  37. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    4,961
    He's not been in the forums for a month or so, but he was on his Twitter account about 3 weeks back. You should try the website / email contact.

    Seems like he's working developing games.
     
    recon0303 likes this.
  38. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,602

    ya, that seems to happen, which is why i wont sell my assets I made hehe, something will suffer, asset or game, very hard to do both..... I just hope this don't get abandoned.
     
  39. JDrem1

    JDrem1

    Joined:
    Jun 24, 2017
    Posts:
    171
    Does anyone know if this is still being serviced / updated?

    I really like the look of it.
    But its last update is last year, and the dev hasn't been on for 2 months.

    I even tried emailing him/her with no reply.
     
  40. hoodoo

    hoodoo

    Joined:
    Oct 19, 2012
    Posts:
    139
    I emailed the developer 3 weeks ago and heard back from him. He said that he has been super busy with another project. When I responded back and asked if he will be making more updates and fixes to SimpleLOD, he said definitely, probably this winter. I did purchase it after hearing this from him.
     
    hopeful likes this.
  41. JDrem1

    JDrem1

    Joined:
    Jun 24, 2017
    Posts:
    171
    Hey Hoodoo, and thank you for this reply, and feedback.
    I am so pleased to hear this.

    Hmm I can totally understand how he could be super busy, (I am yet to receive an answer..)

    He really should consider popping a few lines on here, even if its just a quick update, on future updates. For both existing customers peace of mind, and to reassure possible buyers that its still "in the works."

    Thank you for the help Hoodoo.
    It is appreciated. :D
     
    trilobyteme and JBR-games like this.
  42. FiveFingerStudios

    FiveFingerStudios

    Joined:
    Apr 22, 2016
    Posts:
    369
    Is it possible to put an LOD on an character that has "Optimize Game Object" checked?

    I must have Optimize Game Object checked AND be able to create LODs as the characters have too many triangles.
     
  43. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    4,961
    Can you create the LODs first, and then check to optimize?
     
  44. FiveFingerStudios

    FiveFingerStudios

    Joined:
    Apr 22, 2016
    Posts:
    369
    Thanks for the reply. I ended up making the LOD's in Blender. That solved my problem.
     
  45. Morseliot

    Morseliot

    Joined:
    Jan 10, 2015
    Posts:
    46
    Hi there, thanks for great tool SimpleLOD! I have a question about objects format. After creating a combined mesh out of many object and making a single atlas it would be great to split these object as they supposed to be dynamic. At this moment experiencing obstacle with this... Is it possible to convert combined meshes from .asset to obj or fbx or any other accessible format for further import in 3D editor and split?
     
  46. MateAndor

    MateAndor

    Joined:
    Nov 5, 2014
    Posts:
    42
    Hello!

    Im purchased the Simple LOD and im love it, but i have little problem.
    I use UMA characters, so i use this code:
    Code (CSharp):
    1. using UnityEngine;
    2. using System.Collections;
    3. using System.Collections.Generic;
    4. using UMA;
    5. using OrbCreationExtensions;
    6. public class AutoBakeLODs : MonoBehaviour
    7. {
    8.   // points to switch between LOD's (computed as model size / screen size)
    9.   public float[] lodRelativeScreenSizes = new float[3] { 0.4f, 0.2f, 0.1f };
    10.   // compression levels to bake LOD 1, 2, 3
    11.   public float[] lodCompressionLevels = new float[3] { 0.3f, 0.9f, 3f };
    12.   // Switch off if you want the normals to stay untouched in the LOD meshes
    13.   public bool recalculateNormals = true;
    14.   private bool umaDataDelegateSet = false;
    15.   // If you have different access to the UMAData, it is best to use that, because using
    16.   // the Update function for this purpose is not the most wonderful solution
    17.   void Update() {
    18.     if(!umaDataDelegateSet) {
    19.       UMAData umaData = gameObject.GetComponent<UMAData>();
    20.       if(umaData != null) {
    21.         // Add delegate to perform actions after the UMA character has been updated
    22.         umaData.OnCharacterUpdated += new System.Action<UMAData>(CreateLodInBackground);
    23.         umaDataDelegateSet = true;
    24.       }
    25.     }
    26.   }
    27.   // Bake LOD meshes for the character and add a LODSwitcher component
    28.   // Is called after the UMA Character is created or updated, due to the
    29.   // delegate umaData.OnCharacterUpdated
    30.   void CreateLodInBackground(UMAData obj)
    31.   {
    32.     // Find the child object that holds the SkinnedMeshRenderer
    33.     SkinnedMeshRenderer skinnedMeshRenderer =
    34.       obj.gameObject.GetComponentInChildren<SkinnedMeshRenderer>();
    35.     // Bake LOD's in a separate background thread
    36.     StartCoroutine(skinnedMeshRenderer.gameObject.SetUpLODLevelsWithLODSwitcherInBackground(
    37.       lodRelativeScreenSizes,
    38.       lodCompressionLevels,
    39.       recalculateNormals));
    40.   }
    41.   // Use this function instead if you want to bake the LOD meshes in the main thread
    42.   // This will halt the screen for about 2 seconds (depending on mesh size and hardware)
    43.   void CreateLodInMainThread(UMAData obj)
    44.   {
    45.     // Find the child object that holds the SkinnedMeshRenderer
    46.     SkinnedMeshRenderer skinnedMeshRenderer =
    47.       obj.gameObject.GetComponentInChildren<SkinnedMeshRenderer>();
    48.     // Bake LOD's in main thread (will stall game execution)
    49.     skinnedMeshRenderer.gameObject.SetUpLODLevelsWithLODSwitcher(
    50.       lodRelativeScreenSizes,
    51.       lodCompressionLevels,
    52.       recalculateNormals);
    53.   }
    54. }
    Thats works great but when i change a shoe recipe in the character (or othe recipe), the character looks like in the picture. The script run in the background, so when im change the camera distance, the characters looks good again, but at the first time i change the shoe and not move the camera, the character looks "messy".

    What i need to change?
     

    Attached Files:

  47. Artur7

    Artur7

    Joined:
    Nov 30, 2015
    Posts:
    34
    I bought the asset - it looks great :) but for my game I need to switch to less-detailed LODs earlier (not on default settings). Is there a way I can do it globally? Because when I use LogGroups, I can modify it, but it is per model, and I want to do it globally for all objects
     
  48. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    4,961
    Maybe modify the default values in the script that sets them? That's what I would look for.
     
  49. Artur7

    Artur7

    Joined:
    Nov 30, 2015
    Posts:
    34
    I tried to find it, but the old level is computed based on some screen dimensions, so it is not that simple and easy to modify. Does anyone knows how to modify it to control the distance from LODs?
     
  50. henkjan

    henkjan

    Joined:
    Aug 1, 2013
    Posts:
    120
    Will this work with Unity 2017.3.1? Has anyone tried that?