In computer graphics, accounting for level of detail involves decreasing the complexity of a 3D object representation as it moves away from the viewer or according other metrics such as object importance, eye-space speed or position. Level of detail techniques increases the efficiency of rendering by decreasing the workload on graphics pipeline stages, usually vertex transformations. The reduced visual quality of the model is often unnoticed because of the small effect on object appearance when distant or moving fast.
Although most of the time LOD is applied to geometry detail only, the basic concept can be generalized. Recently, LOD techniques included also shader management to keep control of pixel complexity. A form of level of detail management has been applied to textures for years, under the name of mipmapping, also providing higher rendering quality.
It is commonplace to say that "an object has been LODded" when the object is simplified by the underlying LODding algorithm.
在计算机图形学中,level of detail 技术产生的原因的为了减少某些复杂的3D模型的运算,比如根据物体的距离,物体的重要程度,视野内看见的速度或位置确定要描绘的细节。level of detail 技术通过在图形管道顶点变化方面减少工作量改善了生成画面的效果。而视觉上因为level of detail 技术而造成的模型质量的下降通常是难以查觉的,因为图形计算工作量减少的物体通常是距离较远的或者是告诉运动的。
虽然在平常的观念中,大部分的LOD是只运用于图形细节。最近,LOD技术也被阴影管理系统中的复杂像素控制。LOD技术已经在填充质材的领域应用了很多年,比如生成缩略地图和高质量的生成图像。
Historical reference
The origin[1] of all the LoD algorithms for 3D computer graphics, can be traced back to an article originally appeared in the October 1976 issue of Communications of the ACM by James H. Clark. At the time, computers were monolithic and rare, graphics was being driven by researchers. The hardware itself was completely different, both architecturally and performance-wise. As such, many differences could be observed with regard to today's algorithms but also many common points.
The original algorithm presented a much more generic approach to what will be discussed here. After introducing some available algorithms for geometry management, it is stated than most fruitful gains came from "...structuring the environments being rendered", allowing to exploit faster transformations and clipping (computer graphics) operations.
The same environment structuring is now proposed as a way to control varying detail thus avoiding unnecessary computations, yet delivering adequate visual quality:
历史起源:
LoD算法的起源,可以追溯到一篇发布与1976年十月的名叫ACM通讯的论文,它的作者是James H. Clark.在那个时候,电脑只是集成电路的阶段,而且极其稀有,计算图形学是在研究人员的带领下发展,硬件本身是完全不一样的,无论是架构上还是智能表现上。尽管如此,许多与被认为与今天截然不同的算法,我们还是可以找到许多相同点的。
我们会在这里讨论这个最初的算法所提出的更为通用的办法。在介绍完一些有用的几何管理算法之后,这个技术最丰硕的成果来自于“构建生成图形的环境”,它能让我们开发更快的图形传输和图形芯片设备。而这个环境架构现在被应用于控制不必要的运算,还有传送必要的高质量的图像。
For example, a dodecahedron looks like a sphere from a sufficiently large distance and thus can be used to model it so long as it is viewed from that or a greater distance. However, if it must ever be viewed more closely, it will look like a dodecahedron. One solution to this is simply to define it with the most detail that will ever be necessary. However, then it might have far more detail than is needed to represent it at large distances, and in a complex environment with many such objects, there would be too many polygons (or other geometric primitives) for the visible surface algorithms to efficiently handle.
比如,一个十二面体和一个球体在十分远的距离看起来很像,那在这种情况或更远的距离下,我们可以用球体模型来代替一个十二面体。虽然在现实中最简单一种解决方案是以最仔细的方式定义需要定义的图形,然而,在距离下这样复杂的物体根本没有必要,在复杂的物体环境中,它会使得表面算法有过多细节要处理。
The proposed algorithm envisions a tree data structure which encodes in its arcs both transformations and transitions to more detailed objects. In this way, each node encodes an object and according to a fast heuristic, the tree is descended to the leafs which provide each object with more detail. When a leaf is reached, other methods could be used when higher detail is needed, such as Catmull's recursive subdivision[2].
The significant point, however, is that in a complex environment, the amount of information presented about the various objects in the environment varies according to the fraction of the field of view occupied by those objects.
The paper then introduces clipping (not to be confused with culling (computer graphics), although often similar), various considerations on the graphical working set and its impact on performance, interactions between the proposed algorithm and others to improve rendering speed. Interested readers are encouraged in checking the references for further details on the topic.
这个算法的目的是设想一个编码它的弧线变化和转换树状的数据结构。每一个节点按照一种快速的启发算法,树形结构历遍分支时就能提供更多物体的细节,
当到达节点时,其他的方法就能提供更多的所需要的细节。重要的是,在复杂的环境中,大量的信息所代表的各种物体在环境中的变化是根据许多物体细微的视觉。这篇论文介绍了剪裁,各种图形设定的考虑,和它对平台的影响。还有该算法(LOD)跟加速图形生成的影响。有兴趣的读者可以查看更多详细的文章。
Well known approaches
Although the algorithm introduced above covers a whole range of level of detail management techniques, real world applications usually employ different methods according the information being rendered. Because of the appearance of the considered objects, two main algorithm families are used.
The first is based on subdividing the space in a finite amount of regions, each with a certain level of detail. The result is discrete amount of detail levels, from which the name Discrete LoD (DLOD). There's no way to support a smooth transition between LOD levels at this level, although alpha blending or morphing can be used to avoid visual popping.
The latter considers the polygon mesh being rendered as a function which must be evaluated requiring to avoid excessive errors which are a function of some heuristic (usually distance) themselves. The given "mesh" function is then continuously evaluated and an optimized version is produced according to a tradeoff between visual quality and performance. Those kind of algorithms are usually referred as Continuous LOD (CLOD).
一些著名的方法
这个算法被应用于整个level of detail 管理技术之上,拟真程序通常按照被生成的信息执行各种方法,因为该物体的外观使用了两个相似的算法。
首先是在一个有限的区域细分空间,每一个空间给它相应的程度的细节。这样做的结果是将大量的细节从名为Discrete LoD (DLOD)的层中(level)分离出来。
虽然可以用半透明或变形来避免视觉上的突兀,但细节的区域之间始终无法平滑的过渡。
后来考虑到多变形图形生成函数必须被重构以避免一些严重的错误,这些错误的函数一些是启发式算法(通常是计算距离)的。这些函数在被权衡图像质量和表现之后被重构和优化。这些算法被人们称做CLOD.

Details on Discrete LOD
An example of various DLOD ranges. Darker areas are meant to be rendered with higher detail. An additional culling operation is run, discarding all the information outside the frustum (colored areas).
The basic concept of discrete LOD (DLOD) is to provide various models to represent the same object. Obtaining those models requires an external algorithm which is often non-trivial and subject of many polygon reduction techniques. Successive LODding algorithms will simply assume those models are available.
DLOD algorithms are often used in performance-intensive applications with small data sets which can easily fit in memory. Although out of core algorithms could be used, the information granularity is not well suited to this kind of application. This kind of algorithm is usually easier to get working, providing both faster performance and lower CPU usage because of the few operations involved.
DLOD methods are often used for "stand-alone" moving objects, possibly including complex animation methods. A different approach is used for geomipmapping [3], a popular terrain rendering algorithm because this applies to terrain meshes which are both graphically and topologically different from "object" meshes. Instead of computing an error and simplify the mesh according to this, geomipmapping takes a fixed reduction method, evaluates the error introduced and computes a distance at which the error is acceptable. Although straightforward, the algorithm provides decent performance.
LOD分离的细节
这是一个DLOD分离区域的例子,黑色的代表生成最详细的图像,一个附加的筛选程序开始运行,将无用的信息在生成图形中丢弃.
LOD的基本观念是提供多种的模型来表示同一种物体, 得到这些模型需要一个额外的算法,这些算法通常涉及多方面的多边形减少技术。成功的LOD算法能简单的使这些模型变得可用。
DLOD算法通常用于以表现画面为主的程序,这些程序使用小型的数据从而能容易的填进内存。就算用于核心算法之外,信息的粗略度也不能很好的适应这种程序。这种算法由于减少了运算,从而更容易的使画面更流畅,CPU的使用率更低。
DLOD方法通常被用于单个的运动着的物体,这个物体可能包括复杂的动画。DLOD方法另一个不同的应用是用于几何绘图技术是描绘地形,它是一个受欢迎的地形生成算法,因为地形蒙皮的应用从绘图上和拓扑上都是完全不同与物体的蒙皮。描绘地形采用一种减量的方法,估计可能产生的错误和计算可以接收的错误的距离。虽然很直接,但这个算法的表现令人满意。

浙公网安备 33010602011771号