Home Technical Talk

LOD resources/information anyone?

polycounter lvl 8
Offline / Send Message
kyle.rau polycounter lvl 8
This may seem like a dumb question, but how exactly does one go about making the LOD's nowadays? I am assuming I could just reduce polys in a non-destructive-UV way....?

Any resources/links would be awesome!

-Kyle

Replies

  • Piflik
    Offline / Send Message
    Piflik polycounter lvl 12
    You can also use a new, automatic unwrap for the LODs, and bake a new texture from the original...unwrap and texture don't have to be too nice, since they won't ever be seen up close...being LODs and such ;)
  • kyle.rau
    Offline / Send Message
    kyle.rau polycounter lvl 8
    so i could just make a new mesh, and uv it, and then bake the diffuse from the LOD 0 ? I'm using maya btw....all manual here...no automatic hahah
  • CheeseOnToast
    Offline / Send Message
    CheeseOnToast greentooth
    A new texture per LOD is a really bad idea, unless you've got tons of memory to spare. Zipping round your mesh deleting loops and collapsing rings while avoiding UV borders is the easy way to do it.
  • kyle.rau
    Offline / Send Message
    kyle.rau polycounter lvl 8
    Yeah that makes sense. I agree. Using the same texture would be the best.

    Thanks for the input guys!
  • Piflik
    Offline / Send Message
    Piflik polycounter lvl 12
    A new texture per LOD is a really bad idea, unless you've got tons of memory to spare. Zipping round your mesh deleting loops and collapsing rings while avoiding UV borders is the easy way to do it.

    So you want to load the original 2k Map into memory for a LOD that takes up about 4px on screen?
  • CheeseOnToast
    Offline / Send Message
    CheeseOnToast greentooth
    So when are the mip maps used if not when the model is far away?
  • Piflik
    Offline / Send Message
    Piflik polycounter lvl 12
    Mipmaps reduce rendering time and Anti-Aliasing Artifacts, not Memory usage...they use more Memory, since all optimized versions of the texture are on one image file.
  • Neox
    Offline / Send Message
    Neox veteran polycounter
    the rebaking could work for a bunch of very small objects, i did this once in a production for the very last lod, which was like 100tris per character and planar projections from back and front (screenshots formt he actual character scaled down and then projected) on a very small textursheet for all characters, at this polycount it was just impossible to reuse the same texture as you are using with the highest assets. I doubt it really applies on a per lod level, especially not in a normalmapped pipeline, usually you can get away with a lot depending on how fast your lods pop in.
  • r_fletch_r
    Offline / Send Message
    r_fletch_r polycounter lvl 9
    Piflik wrote: »
    Mipmaps reduce rendering time and Anti-Aliasing Artifacts, not Memory usage...they use more Memory, since all optimized versions of the texture are on one image file.

    CheeseOnToast is right man. Loading a new texture would be slow and pretty pointless. What you suggest would quickly cause a massive waste of ram. Imagine you have 4 characters in 4 stages of LOD in your scene. You get the original texture + 3 others... now add Spec,Normal and gloss all represented 4 times in ram...

    You could perhaps save the new layouts as mips of the large texture.
  • Neox
    Offline / Send Message
    Neox veteran polycounter
    As said it depends on the case you use it in, in my case it was an rts, and we reduced the characters as much as possible with the same texture applied but in the case he talks about, a unit beeing only a few pixels high it totally makes sense, as you'd just load one very tiny texture for a massive amount of characters. In our case it was 1 512 sheet for every character in the game ( and its been like 80 chars + 80 beasts + weapons + props etcon that sheet) Though i'm not sure if it had to be reloaded all the time or not, it could easily even stay in ram all the time.
  • r_fletch_r
    Offline / Send Message
    r_fletch_r polycounter lvl 9
    So you were just using billboarding right? In that context it makes sense indeed.
    But in general wouldnt using the mips from the primary texture be better?
  • Eric Chadwick
    Depends. :smokin:

    If your game dynamically loads/unloads textures as they're used, and memory is the bottleneck (but not the throughput of getting things into that memory), then using smaller textures for lower LODs makes sense.

    Most games don't dynamically load though, they load it all up front.
  • Neox
    Offline / Send Message
    Neox veteran polycounter
    Billboards would take much more memory to look good, we used a very simplified rig together with very lowres meshes, but they could use the exact same animations as the other characters which was a big advantage, billboard tests ended up in beeing either too memory heavy (many animationframes from many different angles) or beeing too snappy (only a few frames captured).
    Using the lowest mipmap didn't work out either, so using a front/back screenshot mapped to the lowres meshes gave the best results and looked from far as it would be the right characters. As said that only was for the very very far Lods which have only been like 50-20px high, the normal lods where 1.5 - 3k for full character 75%lod1 50%lod2 25%lod3 and then the super low lod, depending on the size of the character or creature, some didn't use that method and only used ordinary lods, as they have been too huge to lod them that way, but for everything with the size of a ordinary character it worked out way better than most cases we tested before.
  • r_fletch_r
    Offline / Send Message
    r_fletch_r polycounter lvl 9
    got ya. didnt really grasp what you were saying before. Cheers :)
  • Eric Chadwick
    Started yet another wiki page.
    http://wiki.polycount.com/LevelOfDetail

    (hope to add more in there later)
  • Mark Dygert
    I have 3 methods.

    - For mechanical objects I'll normally block out the base shape and add detail in another modifier on top of the block out so I'm not stuck having to remove a bunch of stuff to get it back to a rough shape.

    - For organic non-deformable objects, like rocks or rubble, I'll normally ProOptimize it with preserve UV boarders on then clean it up a little.

    - In some cases I'll build a lower poly version around the higher and unwrap it to the existing texture sheet. I'll use draw poly, max retopo, and wrap it.
    There are times this is a lot faster than trying to remove mountains of detail.



    Personally I think its pointless to make a new LoD if its going to require a new texture sheet. Saving a few polys isn't worth it if it causes more textures to be loaded and swapped. I think it might actually be more of a drain?

    I've seen new material sheets used for some higher LoDs for in game cinematic models, but that hardly applies to this. Those aren't being swapped out during game play.

    Don't most engines step down the shaders too? At some point you can turn the normal bump off, probably the spec too and just go it alone with the diffuse.
  • kyle.rau
    Offline / Send Message
    kyle.rau polycounter lvl 8
    Interesting info here. I agree with Vig. Texture memory is way more important than saving some tri's, especially when these next-gen engines start pumping out the polycount they do on consoles over the next year.

    I'm working on the Game Art Workshop #4 and I am at the texturing/baking phase. A friend suggested I do a LOD for pickups/3rd person view since the gun's polycount is favoring a first person weapon mesh.

    Should I stick with the same texture map? Also, correct me if I'm wrong I have never looked much into this whole LOD thing, doesn't unreal size down your textures for LOD's? I think I might be crazy though...
  • Neox
    Offline / Send Message
    Neox veteran polycounter
    Interesting info here. I agree with Vig. Texture memory is way more important than saving some tri's, especially when these next-gen engines start pumping out the polycount they do on consoles over the next year.

    if it is about static tris for sure, but skinned meshes are something a bit more expensive
  • Rick Stirling
    Offline / Send Message
    Rick Stirling polycounter lvl 18
    You can LOD you shaders too, drop down to a pure diffuse at long range
  • Thegodzero
    Offline / Send Message
    Thegodzero polycounter lvl 18
    I tend to try and make sure there is a "as low as i'm going to go" version at the same time of the high LOD bake so that what cant be poly reduced down to what i want as a low can just be added to the UVs of the high LOD. That way i have both parts in the texture.
Sign In or Register to comment.