Results 1  10
of
43
Optimization of Mesh Locality for Transparent Vertex Caching
"... Bus traffic between the graphics subsystem and memory can become a bottleneck when rendering geometrically complex meshes. In this paper, we investigate the use of vertex caching to transparently reduce geometry bandwidth. Use of an indexed triangle strip representation permits application programs ..."
Abstract

Cited by 82 (0 self)
 Add to MetaCart
Bus traffic between the graphics subsystem and memory can become a bottleneck when rendering geometrically complex meshes. In this paper, we investigate the use of vertex caching to transparently reduce geometry bandwidth. Use of an indexed triangle strip representation permits application programs to animate the meshes at video rates, and provides backward compatibility on legacy hardware. The efficiency of vertex caching is maximized by reordering the faces in the mesh during a preprocess. We present two reordering techniques, a fast greedy stripgrowing algorithm and a local optimization algorithm. The stripgrowing algorithm performs lookahead simulations of the cache to adapt strip lengths to the cache capacity. The local optimization algorithm improves this initial result by exploring a set of perturbations to the face ordering. The resulting cache miss rates are comparable to the efficiency of the earlier mesh buffer scheme described by Deering and Chow, even though the vertex cache is not actively managed.
Universal Rendering Sequences for Transparent Vertex Caching of Progressive Meshes
 Computer Graphics Forum
, 2001
"... We present methods to generate rendering sequences for triangle meshes which preserve mesh locality as much as possible. This is useful for maximizing vertex reuse when rendering the mesh using a FIFO vertex buffer, such as those available in modern 3D graphics hardware. The sequences are universal ..."
Abstract

Cited by 45 (4 self)
 Add to MetaCart
(Show Context)
We present methods to generate rendering sequences for triangle meshes which preserve mesh locality as much as possible. This is useful for maximizing vertex reuse when rendering the mesh using a FIFO vertex buffer, such as those available in modern 3D graphics hardware. The sequences are universal in the sense that they perform well for all sizes of vertex buffers, and generalize to progressive meshes. This has been verified experimentally. 1 Universal Rendering Sequences for Transparent Vertex Caching of Progressive Meshes Abstract We present methods to generate rendering sequences for triangle meshes which preserve mesh locality as much as possible. This is useful for maximizing vertex reuse when rendering the mesh using a FIFO vertex buffer, such as those available in modern 3D graphics hardware. The sequences are universal in the sense that they perform well for all sizes of vertex buffers, and generalize to progressive meshes. This has been verified experimentally. 1. Introdu...
TextureEncoded Tetrahedral Strips
 In Proceedings of Symposium on Volume Visualization 2004
, 2004
"... Figure 1: Volume visualizations of tetrahedral meshes which have been encoded in a compact texture representation based on tetrahedral strips and are stored in the texture memory of the graphics adapter. The renderings have been computed with a ray casting algorithm for programmable graphics hardwar ..."
Abstract

Cited by 25 (0 self)
 Add to MetaCart
Figure 1: Volume visualizations of tetrahedral meshes which have been encoded in a compact texture representation based on tetrahedral strips and are stored in the texture memory of the graphics adapter. The renderings have been computed with a ray casting algorithm for programmable graphics hardware adapted for this mesh representation. The use of triangle strips is a common method to compactly store and efficiently render large polygonal meshes. The advantages of triangle stripification also apply to tetrahedral meshes; therefore, tetrahedral strips are an attractive data structure for storing and volume rendering tetrahedral meshes as noted in several publications. However, tetrahedral strips are still not supported by current graphics hardware. In this paper, we present the first system to take advantage of tetrahedral strips in offtheshelf graphics hardware. This is achieved by encoding tetrahedral strips in texture maps and rendering them with the help of a ray casting algorithm running solely on the graphics chip. Our data structure supports sequential and generalized tetrahedral strips by including a small amount of adjacency information, which allows us to access all face neighbors in constant time. Utilizing these textureencoded tetrahedral strips, our enhanced graphicshardwarebased volume ray casting algorithm for tetrahedral meshes is capable of handling large data sets. Additional improvements presented in this paper include support for multiple ray traversal steps in one rendering pass and the intrinsic support for nonconvex meshes using a rendering technique similar to depth peeling.
Tunneling for Triangle Strips in Continuous LevelofDetail Meshes
, 2001
"... This paper describes a method of building and maintaining a good set of triangle strips for both static and continuous levelofdetail (CLOD) meshes. For static meshes, the strips are better than those computed by the classic SGI and STRIPE algorithms. For CLOD meshes, the strips are maintained in ..."
Abstract

Cited by 23 (0 self)
 Add to MetaCart
This paper describes a method of building and maintaining a good set of triangle strips for both static and continuous levelofdetail (CLOD) meshes. For static meshes, the strips are better than those computed by the classic SGI and STRIPE algorithms. For CLOD meshes, the strips are maintained incrementally as the mesh topology changes. The incremental changes are fast and the number of strips is kept very small. 1
DStrips: Dynamic Triangle Strips for RealTime Mesh Simplification and Rendering
, 2003
"... DStrips is a simple and efficient method to dynamically manage and generate triangle strips for realtime viewdependent multiresolution meshing and rendering. Progressive viewdependent triangle mesh simplification and rendering is an important concept for interactive visualization environments. To ..."
Abstract

Cited by 19 (3 self)
 Add to MetaCart
DStrips is a simple and efficient method to dynamically manage and generate triangle strips for realtime viewdependent multiresolution meshing and rendering. Progressive viewdependent triangle mesh simplification and rendering is an important concept for interactive visualization environments. To minimize the rendering cost, triangle meshes are simplified to the maximal tolerated perceptual error. A further savings can be gained by using hardware optimized rendering primitives such as triangle strips. However, triangle strips have been rarely used successfully in interactive multiresolution meshes due to the costs involved with maintaining the coherency of the strips in the changing mesh. This paper introduces a new dynamic triangle stripping data structure and algorithm, DStrips, that is practical for use with multiresolution meshes. DStrips is aimed at preserving precomputed triangle strips through changes in the mesh and generating reasonably good triangle strips in realtime. Furthermore, this data structure and algorithm can be easily adapted to any multiresolution mesh which has a facetoedge/edgetoface mapping. The presented approach is implemented on top of a realtime viewdependent meshing and rendering framework based on a halfedge data structure using progressive edge collapses and vertex splits. Direct comparisons are made to previous methods in triangle stripification of dynamic and static meshes.
SingleStrip Triangulation of Manifolds with Arbitrary Topology
, 2004
"... Triangle strips have been widely used for efficient rendering. It is NPcomplete to test whether a given triangulated model can be represented as a single triangle strip, so many heuristics have been proposed to partition models into few long strips. In this paper, we present a new algorithm for cre ..."
Abstract

Cited by 19 (5 self)
 Add to MetaCart
Triangle strips have been widely used for efficient rendering. It is NPcomplete to test whether a given triangulated model can be represented as a single triangle strip, so many heuristics have been proposed to partition models into few long strips. In this paper, we present a new algorithm for creating a single triangle loop or strip from a triangulated model. Our method applies a dual graph matching algorithm to partition the mesh into cycles, and then merges pairs of cycles by splitting adjacent triangles when necessary. New vertices are introduced at midpoints of edges and the new triangles thus formed are coplanar with their parent triangles, hence the visual fidelity of the geometry is not changed. We prove that the increase in the number of triangles due to this splitting is 50 % in the worst case, however for all models we tested the increase was less than 2%. We also prove tight bounds on the number of triangles needed for a singlestrip representation of a model with holes on its boundary. Our strips can be used not only for efficient rendering, but also for other applications including the generation of space filling curves on a manifold of any arbitrary topology.
Fast triangle reordering for vertex locality and reduced overdraw
 ACM SIGGRAPH
, 2007
"... Vertex cache efficiency and overdraw. Views of a 40k triangle Dragon model are shown, where red regions represent cache misses, and dark regions represent high overdraw rate. As a preprocessing stage, realtime rendering applications optimize the order triangles are issued to reduce the average post ..."
Abstract

Cited by 17 (1 self)
 Add to MetaCart
Vertex cache efficiency and overdraw. Views of a 40k triangle Dragon model are shown, where red regions represent cache misses, and dark regions represent high overdraw rate. As a preprocessing stage, realtime rendering applications optimize the order triangles are issued to reduce the average posttransform vertex cache miss ratio (ACMR) (ac). Recent algorithms also minimize the overdraw ratios (OVR) (de) with little cache degradation. We present novel algorithms that result in excellent vertex cache efficiency (c) as well as low overdraw (e). Our methods are significantly faster than previous approaches (compare timings), and are suitable for runtime execution. We present novel algorithms that optimize the order in which triangles are rendered, to improve posttransform vertex cache efficiency as well as for viewindependent overdraw reduction. The resulting triangle orders perform on par with previous methods, but are orders magnitude faster to compute. The improvements in processing speed allow us to perform the optimization right after a model is loaded, when more information on the host hardware is available. This allows our vertex cache optimization to often outperform other methods. In fact, our algorithms can even be executed interactively, allowing for reoptimization in case of changes to geometry or topology, which happen often in CAD/CAM applications. We believe that most realtime rendering applications will immediately benefit from these new results. 1
Optimal Decomposition of Polygonal Models into Triangle Strips
 In Proceedings of the eighteenth annual symposium on Computational geometry (2002), ACM
, 2002
"... Motivated by applications in computer graphics, we study the problem of computing an optimal encoding in "triangle strips" of a triangulation of a polygonal surface model. The goal is to facilitate the transmission and rendering of a polygonal model by decomposing its triangulation into a ..."
Abstract

Cited by 16 (0 self)
 Add to MetaCart
Motivated by applications in computer graphics, we study the problem of computing an optimal encoding in "triangle strips" of a triangulation of a polygonal surface model. The goal is to facilitate the transmission and rendering of a polygonal model by decomposing its triangulation into a minimum number of "tristrips," each of which has its connectivity stored implicitly in the ordering of the data points. While this optimization problem has been conjectured to be hard, its complexity status has been open. We prove that the tristrip decomposition problem is, in fact, NPcomplete. We also propose two methods for solving the problem to optimality, one based on an integer programming formulation, one based on a branchandbound scheme that relies on lower bounding techniques for its e#ciency. We perform an extensive set of experiments to test the e#ciencies of these methods and some of their variants. These methods have been integrated also with the practical system FTSG (Fast Triangle Strip Generator), in order to utilize optimization methods on small subproblems to improve the quality of the heuristic solutions obtained by FTSG. We use experimentation to judge the quality of the improvements.
Efficient Traversal of Mesh Edges using Adjacency Primitives
"... Figure 1: (a) Our goal is to enable efficient processing of edges in a triangle mesh using adjacency primitives. (b) We select a minimal subset of triangles (blue) that covers all mesh edges. (c) Each remaining triangle (white) is assigned to a cover triangle (indicated by red segments). (d) We enco ..."
Abstract

Cited by 11 (0 self)
 Add to MetaCart
Figure 1: (a) Our goal is to enable efficient processing of edges in a triangle mesh using adjacency primitives. (b) We select a minimal subset of triangles (blue) that covers all mesh edges. (c) Each remaining triangle (white) is assigned to a cover triangle (indicated by red segments). (d) We encode each triangle pair as a trianglewithadjacency primitive, and order these primitives for vertex cache locality (cache hits in green, misses in red). This new representation reduces storage, bandwidth, and GPU computation, resulting in substantial gains for a variety of edgeprocessing techniques. Processing of mesh edges lies at the core of many advanced realtime rendering techniques, ranging from shadow and silhouette computations, to motion blur and fur rendering. We present a scheme for efficient traversal of mesh edges that builds on the adjacency primitives and programmable geometry shaders introduced in recent graphics hardware. Our scheme aims to minimize the number of primitives while maximizing SIMD parallelism. These objectives reduce to a set of discrete optimization problems on the dual graph of the mesh, and we develop practical solutions to these graph problems. In addition, we extend two existing vertex cache optimization algorithms to produce cacheefficient traversal orderings for adjacency primitives. We demonstrate significant runtime speedups for several practical realtime rendering algorithms.
Constrained Strip Generation and Management for Efficient Interactive 3D Rendering
 In Proc. of Computer Graphics International Conference
, 2005
"... Representing a triangulated two manifold using a single triangle strip is an NPcomplete problem. By introducing a few Steiner vertices, recent works find such a singlestrip and hence a linear ordering of edgeconnected triangles of the entire triangulation. In this paper, we highlight and exploit ..."
Abstract

Cited by 9 (6 self)
 Add to MetaCart
(Show Context)
Representing a triangulated two manifold using a single triangle strip is an NPcomplete problem. By introducing a few Steiner vertices, recent works find such a singlestrip and hence a linear ordering of edgeconnected triangles of the entire triangulation. In this paper, we highlight and exploit this linear order in efficient trianglestrip management for highperformance rendering. We present new algorithms to generate weighted singlestrip representations that respect different constraintbased clustering of triangles. These functional constraints can be application dependent; for example, normalbased constraints for efficient visibility culling or spatial constraints for highly coherent vertexcaching. We also present a hierarchical singlestripmanagement strategy for highperformance interactive 3D rendering.