
This article presents an algorithm for construction of a small circular arc on a sphere of unit quaternions. The small circular arc is defined by three points lying on the sphere. The algorithm can be used for animating rotation trajectories of rigid objects in computer graphics.
Many recent works attempt to generalize barycentric coordinates to arbitrary polygons. I construct a counterexample proving that no such generalization will produce purely bijective mappings in the plane provided the coordinates meet the Lagrange, reproduction, and partition of unity properties. The proof concerns generalized barycentric coordinates in a square, but trivially generalizes to arbitrary polygons with degree greater than three.
Many existing software tools and application programming interfaces (APIs) have the ability to manipulate 3D virtual objects. Prior mesh-based representations either allow meshes to split and merge or are fast. We aim for both. Such a model may be important for visualizing the simulation of deformable objects and could be used in scientific visualization, games, computer vision, and motion picture production. The Delaunay deformable mesh was invented by Pons and Boissonnant and supports splitting and merging. In this mesh representation, a relabeling step assigns material types to deformed meshes. The relabeling step consumes a majority of computation time. Tychonievitch and Jones later improved the relabeling step. However, relabeling still accounts for 70% of computation time in this improved model. We present a new approach to cell relabeling that is both faster and easier to implement than Tychonievitch and Jones’ approach.
In this article, a double-step circle drawing algorithm on a hexagonal grid is presented. It chooses the best approximate pixels to the circle by setting additional pixels in loop iterations with only integer arithmetic. The performance of the proposed algorithm is found to be better than those of the existing algorithms.
A new single-monitor-mirror stereoscopic display is presented. The stereoscopic display system is composed of one monitor and one acrylic first-surface mirror. The mirror reflects one image for one of the eyes. The geometrical transformations to compute correctly the stereo pair are derived and presented. System considerations such as mirror placement and implications are also discussed.In contrast to other similar solutions that use fixed configurations, we try to optimize the display area by controlling the mirror placement. Consequently, one of the images needs to be skewed. Advantages of the system include absence of ghosting and flickering.We also developed the rendering engine for direct volume rendering (DVR) of volumetric datasets mostly for medical imaging visualization and using OpenGL for polygonal datasets and stereoscopic digital photography. The skewing process in this case is integrated into the ray-casting of DVR. Using geometrical transformations, we can compute precisely the directions of the rays, producing accurate stereo pairs. A similar operation is also performed using OpenGL.
This article discusses the addition of an energy parameter to the shortest path execution process; namely, the energy expenditure by a character during execution of the path. Given a simple environment in which a character has the ability to perform actions related to locomotion, such as walking and stair stepping, current techniques execute the shortest path based on the length of the extracted root trajectory. However, actual humans acting in constrained environments do not plan only according to shortest path criterion, they conceptually measure the path that minimizes the amount of energy expenditure. On this basis, it seems that virtual characters should also execute their paths according to the minimization of actual energy expenditure as well. In this article, a simple method that uses a formula for computing vanadium dioxide ($VO_2$) levels, which is a proxy for the energy expenditure by humans during various activities, is presented. The presented solution could be beneficial in any situation requiring a sophisticated perspective of the path-execution process. Moreover, it can be implemented in almost every path-planning method that has the ability to measure stepping actions or other actions of a virtual character.
This work describes a computer system for authoring dance shows. The system can be used both as a mechanism to synthesize virtual group performances and as a tool for interactive design and visualization of real choreographies. To this end, we use motion capture of dance sequences that are synchronized with an underlying musical composition as input. We adapt motion synthesis methods for use in combination with a musical track. The authoring system provides methods for controlling group movement of dancers on stage, such as creating formations and following trajectories. Our integrated platform supports collaboration among artists, allowing the show to naturally evolve from iterative contributions from dancers, musicians, and choreographers.
An underestimated and time-consuming activity for researchers involved in image processing, computer graphics, display quality analysis, and perception testing is the preparation of a good set of images to be used in the experiments. These images not only need to fit specific technical requirements, but also need to be free from licensing and copyright issues. In order-to-provide easy-to-use solutions for a wide range of testing needs, we developed the TESTIMAGES archive, a huge and free collection of digital images designed for analysis and quality assessment of different kinds of displays (i.e., monitors of different sizes, projectors) and image processing techniques. The archive includes several million images originally acquired and divided into four different categories: SAMPLING and SAMPLING_PATTERNS (aimed at testing resampling algorithms), COLOR (aimed at testing color rendering on different displays), and PATTERNS (aimed at testing the rendering of standard geometrical patterns). The TESTIMAGES archive can be freely downloaded from http://files.testimages.org and used for practical tasks such as monitor calibration and shader testing, as well as for scientific research.
Position Based Dynamics (PBD) is a popular approach used for animating constrained particle systems representing soft bodies, rigid bodies, and fluids. In this article, we present a massively parallel implementation of PBD for fast, interactive animation of deformable bodies. We divide the set of constraints in independent partitions using a fast, greedy coloring graph algorithm. Then, during the animation, the constraints belonging to each partition are solved in parallel on the GPU. We employ an efficient simulation pipeline using a memory layout that favors both the memory access time for computation and batching for visualization. Our experiments show that the achieved performance speed-up is several orders of magnitude faster than its serial counterpart.
DRAW call cost is a major issue for game engine rendering performance and is most often caused by material and shader switching. This article describes a technique for building consolidated shaders that allows for a wide variety of different appearances and thereby can be used for most materials in a 3D world. The technique uses novel UV data packing and can decrease draw call cost. An actual shader is implemented using the technique and tests show a frame-rate increase of up to 14% in a typical scene.
Splat-based models are good representations because they do not rely on topological information, thereby making complex modeling operations easier, while keeping the same approximation ratio delivered by triangular meshes. However, splat-based models are problematic when dealing with edges and corners, because, near those sharp features, splats need to be properly clipped in order not to show noticeable artifacts. In this article, we present a robust method for clipping splats near sharp features even in situations when the splats’ sampling rates are different on both sides of the sharp feature. Our method clips the splats by a bidimensional rational Bézier curve. The simple and uniform data used to define the clipping curve makes our method suitable for GPU implementation. We designed and implemented an automatic computation of the clipping curves and a pipeline for sampling a generic surface with splats and rendering it. In addition, we implemented a nonplanar elliptical splat, as an imprint in a cylindrical surface, in order to better approximate curved ridge lines and minimize the gaps that are unavoidable when dealing with planar splats only. Our curved splat requires only one additional parameter for rendering on the GPU. We demonstrate that our method, with the addition of curved splats, improves the rendering quality near curved sharp features and delivers good rendering speed.
In this article, we present performance and quality enhancements for ray casting procedural distance bounds using sphere tracing: First, we propose a safe overrelaxation method for accelerating the tracing process and evaluate different variants of the algorithm. Second, we introduce a technique for preventing self-intersections, which enables controlling the precision and rendering performance. In addition, we show a method for significant acceleration of the intersection test when sphere tracing convex objects. We further present a screen-space metric for retrieval of intersection point candidates, in case sphere tracing does not converge. Thereby, we allow for an increase of the rendering quality without sacrificing performance. Further, we reduce common discontinuity artifacts in sphere tracing using a fixed-point iteration algorithm. The algorithms depicted in this article are universally applicable beyond rendering complex procedurally generated scenes in real time. We demonstrate this by integrating our methods into a global illumination path-tracer.
Minimum enclosing balls are used extensively to speed up multidimensional data processing in, e.g., machine learning, spatial databases, and computer graphics. We present a case study of several acceleration techniques that are applicable in enclosing ball algorithms based on repeated farthest-point queries. Two different distance filtering heuristics are proposed aiming at reducing the cost of the farthest-point queries as much as possible by exploiting lower and upper distance bounds. Furthermore, auto-tunable GPU solutions using CUDA are developed for both low- and high-dimensional cases. Empirical tests apply these techniques to two recent algorithms and demonstrate substantial speedups of the ball computations. Our results also indicate that a combination of the approaches has the potential to give further performance improvements.
In this article two novel approaches for physics simulation prediction are proposed with applications in graphics rendering and multimedia, aiming to reduce the computational cost of simulating physics in 3D environments. Firstly a novel use of machine learning techniques is combined with an innovative regression based prediction mechanism. Secondly dimensionality reduction is employed to redefine simulation data into a linear representation which is subsequently used in a classification method. Finally a prediction based framework is proposed utilising these methods which, based on trained models, produces visually similar effects without the need for frame by frame simulation. Extensive experimentation is carried out in both simple and complex simulation scenarios to evaluate the performance of the proposed prediction system. Results are presented indicating that in cases where precision is not essential, our system can be utilized providing visually similar kinematics whilst reducing computation time.
Abstract Mesh component selection is one of the most common tasks in the 3D modeling process. However, even the latest 3D software packages still lack high-level component selection schemes. This makes users suffer from frequent mouse actions with precise control. We present a tool to select a set of vertices or edges along a line in the given mesh with ease. Because it mimics the behavior of the boundary selection tool of a popular image editing software, users can intuitively understand how to use it. A few real-world application examples are also shown, with the user discussions.
We present a simple and efficient algorithm to compute cache-friendly layouts of unstructured geometric data. Coherent mesh layouts minimize cache misses and page faults by laying out vertices, triangles, or tetrahedra in a spatially structured manner. Recently, Yoon et al. have shown that it is possible to construct an optimal cache-oblivious mesh layout (COML) for surface and volume data. However, their approach is based on an NP-Hard optimization problem and is thus very computationally expensive. We present a mesh layout based on space-filling curves that has comparable performance to COML and is orders of magnitude faster to compute. We also discuss extending our algorithm to handle extremely large datasets through an out-of-core approach. Finally, we include an analysis that examines a number of different mesh layouts, highlighting their strengths and weaknesses. Our evaluation indicates that space-filling curve layouts can be an order of magnitude faster and less memory intensive to compute while, in every application, being able to maintain a performance within 5% of the best layout, including those that are specifically tuned for GPU hardware vertex caches [Lin and Yu 06 Lin, G. and Yu, T. P. 2006. An Improved Vertex Caching Scheme for 3D Mesh Rendering. IEEE Transactions on Visualization and Computer Graphics, 12: 640–648. [Lin and Yu 06] [Google Scholar], Sander et al. 07 Sander, P. V., Nehab, D. and Barczak, J. Fast Triangle Reordering for Vertex Locality and Reduced Overdraw. ACM Transactions on Graphics, 26:3 [Sander et al. 07] [Google Scholar]].
Abstract Precise depth calculation is of crucial importance in graphics rendering. Improving precision raises the quality of all downstream graphical techniques that rely on computed depth (e.g., depth buffers, soft and hard shadow maps, screen-space ambient occlusion, and 3D stereo projection). In addition, the domain of correctly renderable scenes is expanded by allowing larger far-to-near plane ratios and smaller depth separation between mesh elements. Depth precision is an ongoing problem because visible artifacts continue to plague applications from interactive games to scientific visualizations despite advances in graphics hardware. In this article we present and analyze two methods that greatly impact visual quality by automatically improving the precision of depth values calculated in a standard perspective-divide rendering system such as OpenGL or DirectX. The methods are easy to implement and compatible with 1/Z depth-value calculations. The analysis can be applied to any depth projection based on the method of homogeneous coordinates. Acknowledgments Acknowledgments. We would like to thank Stephen Kulczycki, Kevin Hussey, Patrick Mullen, Marc Pomerantz, and Steven Myint for their support. MD wishes to acknowledge the partial support of the NSF (CCF-1011944, CCF-0811373, and CMMI-0757106 grants), Disney & Pixar Animation Studios. This work was funded by JPL's Office of Communications and Education.
Most classical constructions of low-discrepancy point sets are based on generalizations of the one-dimensional binary van der Corput sequence, whose implementation requires nontrivial bit-operations. As an alternative, we introduce the quasi-regular golden ratio sequences, which are based on the fractional part of successive integer multiples of the golden ratio. By leveraging results from number theory, we show that point sets, which evenly cover the unit square or disc, can be computed by a simple incremental permutation of a generator golden ratio sequence. We compare ambient occlusion images generated with a Monte Carlo ray tracer based on random, Hammersley, blue noise, and golden ratio point sets. The source code of the ray tracer used for our experiments is available online at the address provided at the end of this article.
When precomputed lighting is generated for static scene elements, the incident illumination on dynamic objects must be computed in a manner that is efficient and that faithfully captures the near- and far-field variation of the environment's illumination. Depending on the relative size of dynamic objects, as well as the number of lights in the scene, previous approaches fail to adequately sample the incident lighting and/or fail to scale. We present a principled, error-driven approach for dynamically transitioning between near- and far-field lighting. A more accurate model for sampling near-field lighting for disk sources is introduced, as well as far-field sampling and interpolation schemes tailored to each dynamic object. Lastly, we apply a flexible reflectance model to the computed illumination.