@article{14240, abstract = {This paper introduces a novel method for simulating large bodies of water as a height field. At the start of each time step, we partition the waves into a bulk flow (which approximately satisfies the assumptions of the shallow water equations) and surface waves (which approximately satisfy the assumptions of Airy wave theory). We then solve the two wave regimes separately using appropriate state-of-the-art techniques, and re-combine the resulting wave velocities at the end of each step. This strategy leads to the first heightfield wave model capable of simulating complex interactions between both deep and shallow water effects, like the waves from a boat wake sloshing up onto a beach, or a dam break producing wave interference patterns and eddies. We also analyze the numerical dispersion created by our method and derive an exact correction factor for waves at a constant water depth, giving us a numerically perfect re-creation of theoretical water wave dispersion patterns.}, author = {Jeschke, Stefan and Wojtan, Christopher J}, issn = {1557-7368}, journal = {ACM Transactions on Graphics}, number = {4}, publisher = {Association for Computing Machinery}, title = {{Generalizing shallow water simulations with dispersive surface waves}}, doi = {10.1145/3592098}, volume = {42}, year = {2023}, } @article{8766, abstract = {The “procedural” approach to animating ocean waves is the dominant algorithm for animating larger bodies of water in interactive applications as well as in off-line productions — it provides high visual quality with a low computational demand. In this paper, we widen the applicability of procedural water wave animation with an extension that guarantees the satisfaction of boundary conditions imposed by terrain while still approximating physical wave behavior. In combination with a particle system that models wave breaking, foam, and spray, this allows us to naturally model waves interacting with beaches and rocks. Our system is able to animate waves at large scales at interactive frame rates on a commodity PC.}, author = {Jeschke, Stefan and Hafner, Christian and Chentanez, Nuttapong and Macklin, Miles and Müller-Fischer, Matthias and Wojtan, Christopher J}, journal = {Computer Graphics forum}, location = {Online Symposium}, number = {8}, pages = {47--54}, publisher = {Wiley}, title = {{Making procedural water waves boundary-aware}}, doi = {10.1111/cgf.14100}, volume = {39}, year = {2020}, } @article{134, abstract = {The current state of the art in real-time two-dimensional water wave simulation requires developers to choose between efficient Fourier-based methods, which lack interactions with moving obstacles, and finite-difference or finite element methods, which handle environmental interactions but are significantly more expensive. This paper attempts to bridge this long-standing gap between complexity and performance, by proposing a new wave simulation method that can faithfully simulate wave interactions with moving obstacles in real time while simultaneously preserving minute details and accommodating very large simulation domains. Previous methods for simulating 2D water waves directly compute the change in height of the water surface, a strategy which imposes limitations based on the CFL condition (fast moving waves require small time steps) and Nyquist's limit (small wave details require closely-spaced simulation variables). This paper proposes a novel wavelet transformation that discretizes the liquid motion in terms of amplitude-like functions that vary over space, frequency, and direction, effectively generalizing Fourier-based methods to handle local interactions. Because these new variables change much more slowly over space than the original water height function, our change of variables drastically reduces the limitations of the CFL condition and Nyquist limit, allowing us to simulate highly detailed water waves at very large visual resolutions. Our discretization is amenable to fast summation and easy to parallelize. We also present basic extensions like pre-computed wave paths and two-way solid fluid coupling. Finally, we argue that our discretization provides a convenient set of variables for artistic manipulation, which we illustrate with a novel wave-painting interface.}, author = {Jeschke, Stefan and Skrivan, Tomas and Mueller Fischer, Matthias and Chentanez, Nuttapong and Macklin, Miles and Wojtan, Christopher J}, journal = {ACM Transactions on Graphics}, number = {4}, publisher = {ACM}, title = {{Water surface wavelets}}, doi = {10.1145/3197517.3201336}, volume = {37}, year = {2018}, } @article{470, abstract = {This paper presents a method for simulating water surface waves as a displacement field on a 2D domain. Our method relies on Lagrangian particles that carry packets of water wave energy; each packet carries information about an entire group of wave trains, as opposed to only a single wave crest. Our approach is unconditionally stable and can simulate high resolution geometric details. This approach also presents a straightforward interface for artistic control, because it is essentially a particle system with intuitive parameters like wavelength and amplitude. Our implementation parallelizes well and runs in real time for moderately challenging scenarios.}, author = {Jeschke, Stefan and Wojtan, Christopher J}, issn = {07300301}, journal = {ACM Transactions on Graphics}, number = {4}, publisher = {ACM}, title = {{Water wave packets}}, doi = {10.1145/3072959.3073678}, volume = {36}, year = {2017}, } @article{1413, abstract = {This paper generalizes the well-known Diffusion Curves Images (DCI), which are composed of a set of Bezier curves with colors specified on either side. These colors are diffused as Laplace functions over the image domain, which results in smooth color gradients interrupted by the Bezier curves. Our new formulation allows for more color control away from the boundary, providing a similar expressive power as recent Bilaplace image models without introducing associated issues and computational costs. The new model is based on a special Laplace function blending and a new edge blur formulation. We demonstrate that given some user-defined boundary curves over an input raster image, fitting colors and edge blur from the image to the new model and subsequent editing and animation is equally convenient as with DCIs. Numerous examples and comparisons to DCIs are presented.}, author = {Jeschke, Stefan}, journal = {Computer Graphics Forum}, number = {2}, pages = {71 -- 79}, publisher = {Wiley-Blackwell}, title = {{Generalized diffusion curves: An improved vector representation for smooth-shaded images}}, doi = {10.1111/cgf.12812}, volume = {35}, year = {2016}, } @inproceedings{1630, abstract = {We present a method to learn and propagate shape placements in 2D polygonal scenes from a few examples provided by a user. The placement of a shape is modeled as an oriented bounding box. Simple geometric relationships between this bounding box and nearby scene polygons define a feature set for the placement. The feature sets of all example placements are then used to learn a probabilistic model over all possible placements and scenes. With this model, we can generate a new set of placements with similar geometric relationships in any given scene. We introduce extensions that enable propagation and generation of shapes in 3D scenes, as well as the application of a learned modeling session to large scenes without additional user interaction. These concepts allow us to generate complex scenes with thousands of objects with relatively little user interaction.}, author = {Guerrero, Paul and Jeschke, Stefan and Wimmer, Michael and Wonka, Peter}, location = {Los Angeles, CA, United States}, number = {4}, publisher = {ACM}, title = {{Learning shape placements by example}}, doi = {10.1145/2766933}, volume = {34}, year = {2015}, } @article{1814, abstract = {We present an efficient wavefront tracking algorithm for animating bodies of water that interact with their environment. Our contributions include: a novel wavefront tracking technique that enables dispersion, refraction, reflection, and diffraction in the same simulation; a unique multivalued function interpolation method that enables our simulations to elegantly sidestep the Nyquist limit; a dispersion approximation for efficiently amplifying the number of simulated waves by several orders of magnitude; and additional extensions that allow for time-dependent effects and interactive artistic editing of the resulting animation. Our contributions combine to give us multitudes more wave details than similar algorithms, while maintaining high frame rates and allowing close camera zooms.}, author = {Jeschke, Stefan and Wojtan, Christopher J}, journal = {ACM Transactions on Graphics}, number = {3}, publisher = {ACM}, title = {{Water wave animation via wavefront parameter interpolation}}, doi = {10.1145/2714572}, volume = {34}, year = {2015}, } @article{1629, abstract = {We propose a method for propagating edit operations in 2D vector graphics, based on geometric relationship functions. These functions quantify the geometric relationship of a point to a polygon, such as the distance to the boundary or the direction to the closest corner vertex. The level sets of the relationship functions describe points with the same relationship to a polygon. For a given query point, we first determine a set of relationships to local features, construct all level sets for these relationships, and accumulate them. The maxima of the resulting distribution are points with similar geometric relationships. We show extensions to handle mirror symmetries, and discuss the use of relationship functions as local coordinate systems. Our method can be applied, for example, to interactive floorplan editing, and it is especially useful for large layouts, where individual edits would be cumbersome. We demonstrate populating 2D layouts with tens to hundreds of objects by propagating relatively few edit operations.}, author = {Guerrero, Paul and Jeschke, Stefan and Wimmer, Michael and Wonka, Peter}, journal = {ACM Transactions on Graphics}, number = {2}, publisher = {ACM}, title = {{Edit propagation using geometric relationship functions}}, doi = {10.1145/2591010}, volume = {33}, year = {2014}, } @article{1854, abstract = {In this paper, we present a method for non-rigid, partial shape matching in vector graphics. Given a user-specified query region in a 2D shape, similar regions are found, even if they are non-linearly distorted. Furthermore, a non-linear mapping is established between the query regions and these matches, which allows the automatic transfer of editing operations such as texturing. This is achieved by a two-step approach. First, pointwise correspondences between the query region and the whole shape are established. The transformation parameters of these correspondences are registered in an appropriate transformation space. For transformations between similar regions, these parameters form surfaces in transformation space, which are extracted in the second step of our method. The extracted regions may be related to the query region by a non-rigid transform, enabling non-rigid shape matching. In this paper, we present a method for non-rigid, partial shape matching in vector graphics. Given a user-specified query region in a 2D shape, similar regions are found, even if they are non-linearly distorted. Furthermore, a non-linear mapping is established between the query regions and these matches, which allows the automatic transfer of editing operations such as texturing. This is achieved by a two-step approach. First, pointwise correspondences between the query region and the whole shape are established. The transformation parameters of these correspondences are registered in an appropriate transformation space. For transformations between similar regions, these parameters form surfaces in transformation space, which are extracted in the second step of our method. The extracted regions may be related to the query region by a non-rigid transform, enabling non-rigid shape matching.}, author = {Guerrero, Paul and Auzinger, Thomas and Wimmer, Michael and Jeschke, Stefan}, journal = {Computer Graphics Forum}, number = {1}, pages = {239 -- 252}, publisher = {Wiley}, title = {{Partial shape matching using transformation parameter similarity}}, doi = {10.1111/cgf.12509}, volume = {34}, year = {2014}, } @article{1906, abstract = {In this paper, we introduce a novel scene representation for the visualization of large-scale point clouds accompanied by a set of high-resolution photographs. Many real-world applications deal with very densely sampled point-cloud data, which are augmented with photographs that often reveal lighting variations and inaccuracies in registration. Consequently, the high-quality representation of the captured data, i.e., both point clouds and photographs together, is a challenging and time-consuming task. We propose a two-phase approach, in which the first (preprocessing) phase generates multiple overlapping surface patches and handles the problem of seamless texture generation locally for each patch. The second phase stitches these patches at render-time to produce a high-quality visualization of the data. As a result of the proposed localization of the global texturing problem, our algorithm is more than an order of magnitude faster than equivalent mesh-based texturing techniques. Furthermore, since our preprocessing phase requires only a minor fraction of the whole data set at once, we provide maximum flexibility when dealing with growing data sets.}, author = {Arikan, Murat and Preiner, Reinhold and Scheiblauer, Claus and Jeschke, Stefan and Wimmer, Michael}, journal = {IEEE Transactions on Visualization and Computer Graphics}, number = {9}, pages = {1280 -- 1292}, publisher = {IEEE}, title = {{Large-scale point-cloud visualization through localized textured surface reconstruction}}, doi = {10.1109/TVCG.2014.2312011}, volume = {20}, year = {2014}, } @article{2269, abstract = {This paper presents a parallel, implementation-friendly analytic visibility method for triangular meshes. Together with an analytic filter convolution, it allows for a fully analytic solution to anti-aliased 3D mesh rendering on parallel hardware. Building on recent works in computational geometry, we present a new edge-triangle intersection algorithm and a novel method to complete the boundaries of all visible triangle regions after a hidden line elimination step. All stages of the method are embarrassingly parallel and easily implementable on parallel hardware. A GPU implementation is discussed and performance characteristics of the method are shown and compared to traditional sampling-based rendering methods.}, author = {Thomas Auzinger and Wimmer, Michael and Stefan Jeschke}, journal = {Computer Graphics Forum}, number = {124}, pages = {409 -- 418}, publisher = {Wiley-Blackwell}, title = {{Analytic Visibility on the GPU}}, doi = {DOI: 10.1111/cgf.12061}, volume = {32}, year = {2013}, } @inproceedings{2267, abstract = {Capturing real-world objects with laser-scanning technology has become an everyday task. Recently, the acquisition of dynamic scenes at interactive frame rates has become feasible. A high-quality visualization of the resulting point cloud stream would require a per-frame reconstruction of object surfaces. Unfortunately, reconstruction computations are still too time-consuming to be applied interactively. In this paper we present a local surface reconstruction and visualization technique that provides interactive feedback for reasonably sized point clouds, while achieving high image quality. Our method is performed entirely on the GPU and in screen pace, exploiting the efficiency of the common rasterization pipeline. The approach is very general, as no assumption is made about point connectivity or sampling density. This naturally allows combining the outputs of multiple scanners in a single visualization, which is useful for many virtual and augmented reality applications. }, author = {Preiner, Reinhold and Jeschke, Stefan and Wimmer, Michael}, location = {Calgari, Italy}, pages = {139 -- 148}, publisher = {Eurographics Association}, title = {{Auto splats: Dynamic point cloud visualization on the GPU}}, doi = {10.2312/EGPGV/EGPGV12/139-148}, year = {2012}, } @inproceedings{2268, abstract = {This paper presents an analytic formulation for anti-aliased sampling of 2D polygons and 3D polyhedra. Our framework allows the exact evaluation of the convolution integral with a linear function defined on the polytopes. The filter is a spherically symmetric polynomial of any order, supporting approximations to refined variants such as the Mitchell-Netravali filter family. This enables high-quality rasterization of triangles and tetrahedra with linearly interpolated vertex values to regular and non-regular grids. A closed form solution of the convolution is presented and an efficient implementation on the GPU using DirectX and CUDA C is described. }, author = {Thomas Auzinger and Guthe, Michael and Stefan Jeschke}, number = {121}, pages = {335 -- 344}, publisher = {Wiley-Blackwell}, title = {{Analytic anti-aliasing of linear functions on polytopes}}, doi = {http://dx.doi.org/10.1111/j.1467-8659.2012.03012.x}, volume = {31}, year = {2012}, }