I'm currently working on my master's thesis about LOD and mesh simplification, and I've been reading many academic papers and articles about the subject. However, I can't find enough information about how LOD is being used in modern games. I know many games use some sort of dynamic LOD for terrain, but what about elsewhere?
Level of Detail for 3D Graphics for example points out that discrete LOD (where artists prepare several models in advance) is widely used because of the performance overhead of continuous LOD. That book was published in 2002 however, and I'm wondering if things are different now. There has been some research in performing dynamic LOD using the geometry shader (this paper for example, with its implementation in ShaderX6), would that be used in a modern game?
To summarize, my question is about the state of LOD in modern video games, what algorithms are used and why? In particular, is view dependent continuous simplification used or does the runtime overhead make using discrete models with proper blending and impostors a more attractive solution? If discrete models are used, is an algorithm used (e.g. vertex clustering) to generate them offline, do artists manually create the models, or perhaps a combination of both methods is used?
Answer
For now it seems that discrete LOD is still preferred, but it remains to be seen if this will change with the next generation of console hardware.
For what it's worth Tom Forsyth has written a lot about continuous LOD, which he calls "progressive meshing". Game Programming Gems 2 purports to have one of these articles, but it appears to be mirrored here.
I believe one of Tom's games shipped using progressive meshing on last-gen console hardware. I don't think it's the computation overhead people are worried about with continuous LOD. I think it's more that discrete LOD is easier. Continuous LOD does heavier lifting in the tools pipeline and does not have enough clear advantages.
As for generation of discrete LODs, we use a combination of automatic tools and artist creation. The DirectX SDK comes with some stuff to auto-reduce geometry and I believe we use that as a first pass, if the quality is not good enough then artists generate the discrete LODs by hand or using additional tools in Maya.
No comments:
Post a Comment