Stochastic Billboard Clouds for Interactive Foliage Rendering
|
|
|
- Gilbert Hood
- 9 years ago
- Views:
Transcription
1 (a) (b) (c) (d) Figure 1: Spruce tree before and after transition. (a) Shaded base mesh (20610 triangles), 60 FPS. (b) Wireframe base mesh. (c) Shaded billboard cloud (78 billboards), 300 FPS. (d) Wireframe billboard cloud. Stochastic Billboard Clouds for Interactive Foliage Rendering J. Dylan Lacewell Dave Edwards Peter Shirley William B. Thompson School of Computing, University of Utah Abstract We render tree foliage levels of detail (LODs) using a new adaptation of billboard clouds. Our contributions are a simple and efficient billboard cloud creation algorithm designed specifically for tree foliage, and a method for smooth transitions between LODs. The cloud creation algorithm performs stochastic search to find a set of billboards that approximate the base mesh. Billboard clouds offer an alternative to traditional triangle reduction methods, which break down for foliage with its small, disconnected pieces of geometry. By projecting foliage geometry onto large precomputed textures, our method shifts the bulk of the runtime rendering to the fragment processing stage. This results in higher framerates for most viewing distances, with adjustable visual accuracy. We give results for foliage from two fully detailed tree models and discuss implementation issues. 1 Introduction It is challenging to render large amounts of vegetation interactively on current graphics hardware. Foliage in particular presents unique challenges: a mesh representing a mature tree may contain 10K to 30K small, unconnected leaves distributed in a volume. In an outdoor scene, tens or even thousands of trees might be visible per frame, producing 6 million to 1.8 billion or more triangles per second (TPS) at interactive rates. Throughput on the order of 100 million TPS is perhaps possible on high-end hardware, given careful tuning. However, most interactive applications such as games can afford to spend only a fraction of their rendering time budget on vegetation. Traditional triangle reduction methods fail when applied to foliage. Occlusion culling algorithms require large planar occluders, yet leaves are all small, and form complex spatial arrangements. Mesh simplification algorithms require connected meshes, yet leaves are mostly unconnected. We propose that foliage can be rendered efficiently using a new adaptation of billboard clouds [5]. A billboard is a quad with a fixed position and orientation, and a partly transparent texture mapped onto it. A billboard cloud is a set of billboards which approximates a base triangle mesh. Billboard planes are chosen to align with nearly co-planar 1
2 triangles in the base mesh. Triangles are projected and rendered onto the nearest billboard to create the billboard textures. Traditional billboard clouds have some nice properties: Adjustable Accuracy A billboard cloud can approximate the base mesh to a desired visual accuracy, depending on the number of billboards and the texture resolution. In practice, acceptable accuracy is possible with less than 100 billboards. Realistic depth cues: Billboard clouds are stationary, and occupy a volume of space. They provide correct motion parallax for unrestricted camera movements. Anti-aliasing: Billboards anti-alias small, adjacent triangles in the base mesh via mipmapping. This is very useful for our purposes, since foliage exhibits aliasing when rendered as discrete leaves unless super-sampling is performed. We adapt billboard clouds to foliage rendering with the following contributions: Stochastic creation algorithm: Instead of doing a principled optimization, we randomly search the space of billboards. In practice our algorithm produces visually acceptable foliage LODs after a few minutes of computation. Recursive Levels of Detail: Our billboard cloud creation algorithm may be given a billboard cloud as input, producing a second billboard cloud at a lower LOD. Recursive billboard clouds seem possible with earlier algorithms, but have not been discussed explicitly. Smooth transitions: We linearly interpolate vertices to transition between the base mesh and billboard clouds at lower LODs, without popping. Transitions were not addressed in previous work because triangles were projected onto multiple billboards. The algorithm acts on a base mesh which represents foliage as an unordered list of triangles (a triangle soup ). One or more triangles make up a leaf, which also has an optional texture map. Leaves are assumed to be unconnected. We do not deal with more connected plant parts such as trunks, stems, or branches, for which effective mesh simplification algorithms [8, 9] already exist. As an example, Figure 1 shows screenshots of a spruce tree rendered in shaded and wireframe modes, just before and just after a transition from base mesh to billboard cloud. The base mesh on the left contains about 20K triangles, is vertex bound, and renders at about 60 FPS. The corresponding billboard cloud on the right contains 78 billboards, is fill bound, and renders at about 300 FPS. Both shaded images are identically gamma-corrected, occupy the same screen area (about 421 by 512 pixels), and are nearly indistinguishable. 2 Background A great deal of research has been done on LOD rendering, including mesh simplification, image-based, and pointbased rendering. We give a brief, incomplete overview of methods targeted at vegetation. Many interactive games have represented entire trees with sprites, or single billboards which always face the camera. Sprites have incorrect depth cues and do not allow general camera motions (e.g., both flyovers and walkthroughs) unless textures are dynamic. A recent game engine [18] uses multiple sprites for clusters of leaves. This results in surprisingly convincing foliage, especially with wind effects, but correct motion parallax is still missing. Game artists have built trees using ad hoc collections of sprites or billboards [11]. Generalized billboard methods capture some of the depth complexity of the base mesh using sets of billboards. Layered depth images (e.g., [12, 16]) consist of parallel, alpha-mapped billboards arranged along the line of sight. These only give correct depth cues for limited, distant viewpoints. Smooth transitions seem possible, but are not addressed. Image-based rendering (IBR) approaches, which dynamically switch billboard textures to account for changes in viewpoint and lighting, have also been proposed (e.g., [14]). However, large amounts of stored texture are required to render nearby trees from general viewpoints. Billboard clouds [5] use static textures and exhibit correct motion parallax from general viewpoints. A discrete optimization algorithm was originally used to fit billboards to the base mesh. Steps were taken to minimize cracks and favor tangential planes, to approximate connected meshes. Subsequent papers proposed other optimization methods [1, 2
3 10, 13], and suggested mixing connected meshes for tree trunks and billboard clouds for tree leaves [2]. We recently learned of work which extends the original billboard cloud algorithm specifically for trees [7], and briefly mentions recursive LODs but does not describe smooth transitions between them. We also note that point- and line-based methods have been used for rendering foliage (e.g., [19, 6, 4]). Points are not well supported in current hardware, but these methods seem promising. 3 Algorithm We use a random search algorithm to fit billboards to triangles. Stochastic algorithms, including random search, simulated annealing and genetic algorithms, can find practical, approximate solutions to difficult optimization problems [17]. We could uniformly sample the space of planes that intersect the bounding sphere of the base mesh, but this is expensive. As triangles are matched by billboards and removed, the mesh becomes increasingly sparse. This decreases the likelihood that a sample plane provides a good fit for any triangles at all. Instead, we sample more efficiently by basing each plane on a seed triangle chosen at random. Pseudo-code is given in Algorithm 1. The inputs to the algorithm are N, the number of sample planes evaluated per seed triangle, and ɛ, the maximum perturbation of each seed triangle vertex in object space. Briefly, the steps of the algorithm are as follows: Select a random seed triangle T s from the base mesh Perturb the vertices of T s by independent random distances ( ɛ < d j consider the plane B supporting these three locations. < ɛ) along the triangle normal, and Evaluate plane B by iterating over the remaining triangles T in the mesh. If all vertices v j of T are contained in a slab of width 2ɛ about plane B, then project T onto the plane. Sum the total projected areas for all triangles. If this is higher than the current maximum area, then save B as B max, the best plane found so far. (Figure 2) Repeat the steps above N times and save the plane B max with the most projected area. Remove triangles matched by B max from the mesh. Repeat the steps above until all triangles are matched by some billboard. The total number of billboards is not a parameter; it is implicitly determined by ɛ and N. PSfrag replacements T s n Ts T 1 ɛ B r n B T ɛ n T Figure 2: Seed triangle T s, triangle T that is projected onto billboard plane B, and triangle T 1 that is not projected because some of its vertices do not lie within distance ɛ of B We create the texture for a billboard by first trimming the billboard to fit its projected triangles (e.g., using [3]), then rasterizing the triangles. We align the image plane with the billboard by placing the virtual camera at the billboard center, setting the viewport to match the billboard dimensions, and using orthogonal projection. The texture (viewport) dimensions are scaled relative to the texture of the largest board, so texture resolution per unit area remains constant over the billboard cloud. Ambient and diffuse lighting are baked into the textures. To correctly capture directional lighting, separate textures are created for the front and back sides of a billboard. The textures are read back from the frame buffer and packed onto one or more large textures which are stored on disk. 3
4 Algorithm 1 Random search for billboard planes Input: Mesh, N, ɛ Output: Set of billboard planes repeat for i 1 to N do maxarea 0 T s random seed triangle in Mesh n Ts normal of T s for all vertices v j in T s do {perturb triangle vertices} d random real number in ( ɛ, ɛ) p j v j + d n Ts end for B makebillboardplane( p) n B normal of B r B distance from origin to B in normal direction area 0 for all triangles T in Mesh do {project triangles onto B} if r B v n B < ɛ for all vertices v in T then area area + area(t ) n B n T {increment projected area} save reference to T with B end if end for if area > maxarea then B max B end if end for add billboard B max to the set of output billboard planes remove triangles referenced by B max from Mesh until Mesh is empty We can generate a LOD hierarchy by applying this algorithm recursively, using the billboard cloud at each level as input to produce a billboard cloud at the next level. To do so, we choose seed billboards at random, and use any three of their vertices as the seed triangle. The LOD parameter is ɛ; increasing it produces fewer and coarser billboards. The texture resolution also should be decreased for each new level. We found that increasing ɛ by at least a factor of two and halving the texture dimensions at each level produces good results. The very last LOD is a special case; we choose two perpendicular billboards orthogonal to the ground plane and cutting the center of the tree bounding sphere. Smooth transitions are achieved by linearly interpolating, or re-projecting, vertices. Refer to Figure 3, which shows the transition from a triangle to the parent billboard at the next lowest LOD. When the triangle reaches a distance threshold from the camera (a = 0), we begin sliding its vertices toward their orthogonal projections on the parent billboard. When the interpolation is finished (a = 1), the vertices all lie in the billboard plane, so the silhouette does not pop when we stop drawing the vertices and begin drawing the billboard. The transition is only noticeable if it occurs over too short a distance, or if the parent billboard has insufficient texture resolution. The distance computation and interpolation can be efficiently implemented in a vertex program. 4 Results We applied the billboard cloud algorithm to spruce (Figure 4) and maple (Figure 5) foliage from a commercial tree library [20]. Each model required about two minutes of preprocessing on a modern PC to create two billboard cloud LODs. We show triangle and texture statistics for the base model and the two billboard clouds, and give measured framerates (FPS) vs viewing distance. We also give values of N and ɛ for each LOD, with ɛ in units of R, the bounding sphere radius of the foliage. We found by trial-and-error that setting N to about 500 produced an acceptable billboard cloud in less than a minute. 4
5 a = 0 a = 0.5 a = 1 Figure 3: Transition from triangles to the parent billboard using linear interpolation. The x-axis of each performance plot measures Z, the distance from the virtual eyepoint to the center of the unitized mesh bounding box, plotted on a log scale. At distance Z = Z 0 = 1/(2 tan(θ)), where θ is the field of view, the tree exactly fits the height or width of the screen. We only consider distances Z Z 0, and assume that applications will use the base mesh for Z < Z 0. Data was collected from an OpenGL-based renderer and an NVidia GeForce 5900 graphics card, using a scenegraph library [15] to manage resources. We enabled 8:1 (DXT1) hardware texture compression. Frame rates were measured in software and averaged over half-second intervals. The viewing direction was fixed, and parallel to the ground plane. The advantage of using fill bound billboard cloud LODs is immediately clear from the performance plots. The base mesh is already vertex bound at distance Z 0, so the framerate remains constant at all further distances. However, the billboard cloud framerate increases according to a power law (Z p, 1 < p 2), until it becomes vertex bound at some distance (e.g. log(z/z 0 ) 0.55 for the spruce, and log(z/z 0 ) 0.35 for the maple). Applications can substantially increase framerate by switching from the base mesh to a billboard cloud. It is interesting to do a back-of-the-envelope memory footprint comparison for the base mesh and the billboard clouds. For example, the spruce base mesh has about 20K triangles. If we assume that a triangle requires 18 floats (1 face normal, plus 3 position coordinates and 2 texture coordinates per vertex), and each float is stored in a 2 byte compressed format, then the spruce triangles use about 720 KB. The footprint of a billboard cloud is dominated by the packed textures. The first-level billboard cloud uses 1.33MB of texture memory, assuming 8:1 fixed-ratio compression, and 33% extra space for mipmaps. The second-level cloud uses 166 KB of texture memory. So the first-level cloud is 85% larger than the base mesh, and the second-level cloud is only 23% as large as the base mesh. Current graphics cards have 256 MB of video memory, which is probably sufficient to keep billboard textures resident along with other application textures. 5 Discussion We encountered a number of practical implementation issues. First, when a large billboard is viewed at a grazing angle during camera motions, the planarity of the billboard is sometimes noticeable. Isotropic mipmapping further overemphasizes billboard edges. There are several ways to address this problem. Enabling anisotropic texture filtering helps, but at the expense of framerate. Another solution is to cull billboards when the dot product of the unit view vector, e, and the billboard normal, n B, is near 90 degrees ( 1 e n B 1). We could also resume drawing triangles in place of the culled billboard, perhaps interpolating the triangles toward their original positions in the base mesh. Slight modifications to Algorithm 1 can improve framerate and visual quality. Limiting the size of billboards often reduces the number of transparent fragments. This limit can be enforced by only projecting triangles that are within a given distance of the seed triangle for a billboard. Also, if a model will be viewed from a limited set of angles, visual quality is improved by favoring billboards which have a high probability of facing the camera. Texture packing is important for minimizing context switches. We used a simple binary-split packing heuristic, looped over random texture sequences, and achieved packing ratios of about 85%. Better hardware mipmapping and compression would be useful, e.g., the ability to mipmap non-power-of-two textures. Default hardware mipmapping produced dark fringes around small images on our billboard textures. Evidently some transparent pixels on the packed texture were blended with opaque pixels. We corrected this with custom 5
6 Base BC1 BC triangles 78 quads (156 triangles) 43 quads (86 triangles) texture Two 2K 2K textures 1K 1K texture N = 600, ɛ = 0.04 N = 300, ɛ = FPS Base BC1 BC2 PSfrag replacements log(z/z 0 ) Figure 4: Statistics and log-linear performance plot for spruce tree base mesh (Base) and billboard clouds (BC1, BC2). Z is the viewing distance, and Z 0 is the minimum distance at which the entire model is in the view frustum. The base mesh is vertex bound for Z > Z 0. The billboard clouds are fill bound up to a limiting distance, and thus achieve much higher framerates. 6
7 Base triangles texture BC1 132 quads (264 triangles) 2K 2K texture N = 500, = 0.04 BC2 43 quads (86 triangles) 1K 1K texture N = 500, = FPS 500 Base BC1 BC PSfrag replacements log(z/z0) Figure 5: Statistics and log-linear performance plot for maple tree base mesh (Base) and billboard clouds (BC1, BC2). 7
8 mipmap code which rounds alpha values to either 0 or 1. Since lighting is baked into billboards during preprocessing, we would like to experiment with advanced lighting models, e.g., ambient occlusion, or path-traced global illumination. The base mesh would still use a local lighting model, so smooth transitions to it would be a problem. Still, the first-level billboard cloud might provide enough detail for some applications. Specular highlights could be added to billboard textures to simulate glossy leaves, provided that we save a normal map with each billboard. We wish to reiterate that our billboard cloud algorithm was not designed for continuous meshes (e.g., the Utah teapot), for which effective triangle reduction methods already exist. Neighboring triangles in a continuous base mesh may project onto different billboards in the cloud, resulting in visible surface cracks. Steps could perhaps be added to the algorithm to reduce cracking, but we prefer to keep it simple. Cracks are not an issue for most foliage. Finally, we believe that billboard clouds would also improve performance in a ray tracing program. Intersecting rays with a billboard cloud should be substantially faster than intersecting with the base mesh, and billboard texture anti-aliasing should reduce the required number of rays per pixel. Acknowledgments This material is based upon work supported by the National Science Foundation under Grant No References [1] ANDÚJAR, C., BRUNET, P., CHICA, A., ROSSIGNAC, J., NAVAZO, I., AND VINACUA, A. Computing maximal tiles and application to impostor-based simplification. Comput. Graph. Forum 23, 3 (2004), [2] BROMBERG-MARTIN, E., ÁRNI MÁR JÓNSSON, MARAI, G. E., AND MCGUIRE, M. Hybrid billboard clouds for model simplication. In Proceedings of the 31st annual conference on Computer graphics and interactive techniques (2004). [3] CGAL library, [4] DACHSBACHER, C., VOGELGSANG, C., AND STAMMINGER, M. Sequential point trees. ACM Transactions on Graphics 22, 3 (July 2003), [5] DÉCORET, X., DURAND, F., SILLION, F., AND DORSEY, J. Billboard clouds for extreme model simplification. In Proceedings of the ACM Siggraph (2003), ACM Press. [6] DEUSSEN, O., HANRAHAN, P. M., LINTERMANN, B., MECH, R., PHARR, M., AND PRUSINKIEWICZ, P. Realistic modeling and rendering of plant ecosystems. In Proceedings of SIGGRAPH (1998), pp [7] FUHRMANN, A., UMLAUF, E., AND MANTLER, S. Extreme model simplification for forest rendering. In Natural Phenomena 2005: Eurographics Workshop on Natural Phenomena (2005), Eurographics Association, pp [8] GARLAND, M., AND HECKBERT, P. S. Surface simplification using quadric error metrics. In SIGGRAPH 97: Proceedings of the 24th annual conference on Computer graphics and interactive techniques (1997), ACM Press/Addison-Wesley Publishing Co., pp [9] HOPPE, H. Progressive meshes. In SIGGRAPH 96: Proceedings of the 23rd annual conference on Computer graphics and interactive techniques (1996), ACM Press, pp [10] HUANG, I.-T., NOVINS, K., AND WUENSCHE, B. Improved billboard clouds for extreme model simplification. In Proceedings of Image and Vision Computing (2004), pp [11] LUEBKE, D., REDDY, M., COHEN, J. D., VARSHNEY, A., WATSON, B., AND HUEBNER, R. Level of Detail for 3D Graphics. Morgan Kaufmann, [12] MAX, N. Hierarchical rendering of trees from precomputed multi-layer z-buffers. In Eurographics Rendering Workshop (June 1996), pp
9 [13] MESETH, J., AND KLEIN, R. Memory efficient billboard clouds for btf textured objects. In Vision, Modeling, and Visualization 2004 (November 2004), B. Girod, M. Magnor, and H.-P. Seidel, Eds., Akademische Verlagsgesellschaft Aka GmbH, Berlin, pp [14] MEYER, A., NEYRET, F., AND POULIN, P. Interactive rendering of trees with shading and shadows. In Proceedings of the Eurographics Workshop on Rendering (2001), pp [15] OpenSceneGraph software, [16] SHADE, J., GORTLER, S. J., HE, L. W., AND SZELISKI, R. Layered depth images. In Proceedings of SIG- GRAPH 98 (July 1998), Computer Graphics Proceedings, Annual Conference Series, pp [17] SPALL, J. Introduction to stochastic search and optimization : estimation, simulation, and control. Wiley- Interscience, [18] SpeedTreeRT software (Interactive Data Visualization, Inc.), [19] WEBER, J., AND PENN, J. Creation and rendering of realistic trees. In Proceedings of SIGGRAPH (Aug. 1995), pp [20] XFrogPlants model collection,
INTRODUCTION TO RENDERING TECHNIQUES
INTRODUCTION TO RENDERING TECHNIQUES 22 Mar. 212 Yanir Kleiman What is 3D Graphics? Why 3D? Draw one frame at a time Model only once X 24 frames per second Color / texture only once 15, frames for a feature
A Short Introduction to Computer Graphics
A Short Introduction to Computer Graphics Frédo Durand MIT Laboratory for Computer Science 1 Introduction Chapter I: Basics Although computer graphics is a vast field that encompasses almost any graphical
CUBE-MAP DATA STRUCTURE FOR INTERACTIVE GLOBAL ILLUMINATION COMPUTATION IN DYNAMIC DIFFUSE ENVIRONMENTS
ICCVG 2002 Zakopane, 25-29 Sept. 2002 Rafal Mantiuk (1,2), Sumanta Pattanaik (1), Karol Myszkowski (3) (1) University of Central Florida, USA, (2) Technical University of Szczecin, Poland, (3) Max- Planck-Institut
Using Photorealistic RenderMan for High-Quality Direct Volume Rendering
Using Photorealistic RenderMan for High-Quality Direct Volume Rendering Cyrus Jam [email protected] Mike Bailey [email protected] San Diego Supercomputer Center University of California San Diego Abstract With
Faculty of Computer Science Computer Graphics Group. Final Diploma Examination
Faculty of Computer Science Computer Graphics Group Final Diploma Examination Communication Mechanisms for Parallel, Adaptive Level-of-Detail in VR Simulations Author: Tino Schwarze Advisors: Prof. Dr.
Segmentation of building models from dense 3D point-clouds
Segmentation of building models from dense 3D point-clouds Joachim Bauer, Konrad Karner, Konrad Schindler, Andreas Klaus, Christopher Zach VRVis Research Center for Virtual Reality and Visualization, Institute
Dynamic Resolution Rendering
Dynamic Resolution Rendering Doug Binks Introduction The resolution selection screen has been one of the defining aspects of PC gaming since the birth of games. In this whitepaper and the accompanying
Scan-Line Fill. Scan-Line Algorithm. Sort by scan line Fill each span vertex order generated by vertex list
Scan-Line Fill Can also fill by maintaining a data structure of all intersections of polygons with scan lines Sort by scan line Fill each span vertex order generated by vertex list desired order Scan-Line
Introduction to Computer Graphics
Introduction to Computer Graphics Torsten Möller TASC 8021 778-782-2215 [email protected] www.cs.sfu.ca/~torsten Today What is computer graphics? Contents of this course Syllabus Overview of course topics
Shader Model 3.0. Ashu Rege. NVIDIA Developer Technology Group
Shader Model 3.0 Ashu Rege NVIDIA Developer Technology Group Talk Outline Quick Intro GeForce 6 Series (NV4X family) New Vertex Shader Features Vertex Texture Fetch Longer Programs and Dynamic Flow Control
A NEW METHOD OF STORAGE AND VISUALIZATION FOR MASSIVE POINT CLOUD DATASET
22nd CIPA Symposium, October 11-15, 2009, Kyoto, Japan A NEW METHOD OF STORAGE AND VISUALIZATION FOR MASSIVE POINT CLOUD DATASET Zhiqiang Du*, Qiaoxiong Li State Key Laboratory of Information Engineering
Recent Advances and Future Trends in Graphics Hardware. Michael Doggett Architect November 23, 2005
Recent Advances and Future Trends in Graphics Hardware Michael Doggett Architect November 23, 2005 Overview XBOX360 GPU : Xenos Rendering performance GPU architecture Unified shader Memory Export Texture/Vertex
Advanced Rendering for Engineering & Styling
Advanced Rendering for Engineering & Styling Prof. B.Brüderlin Brüderlin,, M Heyer 3Dinteractive GmbH & TU-Ilmenau, Germany SGI VizDays 2005, Rüsselsheim Demands in Engineering & Styling Engineering: :
Image Processing and Computer Graphics. Rendering Pipeline. Matthias Teschner. Computer Science Department University of Freiburg
Image Processing and Computer Graphics Rendering Pipeline Matthias Teschner Computer Science Department University of Freiburg Outline introduction rendering pipeline vertex processing primitive processing
OpenGL Performance Tuning
OpenGL Performance Tuning Evan Hart ATI Pipeline slides courtesy John Spitzer - NVIDIA Overview What to look for in tuning How it relates to the graphics pipeline Modern areas of interest Vertex Buffer
Workstation Applications for Windows. NVIDIA MAXtreme User s Guide
Workstation Applications for Windows NVIDIA MAXtreme User s Guide Software Version: 6.00.xx NVIDIA Corporation February 2004 NVIDIA MAXtreme Published by NVIDIA Corporation 2701 San Tomas Expressway Santa
Rendering Microgeometry with Volumetric Precomputed Radiance Transfer
Rendering Microgeometry with Volumetric Precomputed Radiance Transfer John Kloetzli February 14, 2006 Although computer graphics hardware has made tremendous advances over the last few years, there are
Monash University Clayton s School of Information Technology CSE3313 Computer Graphics Sample Exam Questions 2007
Monash University Clayton s School of Information Technology CSE3313 Computer Graphics Questions 2007 INSTRUCTIONS: Answer all questions. Spend approximately 1 minute per mark. Question 1 30 Marks Total
Course Overview. CSCI 480 Computer Graphics Lecture 1. Administrative Issues Modeling Animation Rendering OpenGL Programming [Angel Ch.
CSCI 480 Computer Graphics Lecture 1 Course Overview January 14, 2013 Jernej Barbic University of Southern California http://www-bcf.usc.edu/~jbarbic/cs480-s13/ Administrative Issues Modeling Animation
Modern Graphics Engine Design. Sim Dietrich NVIDIA Corporation [email protected]
Modern Graphics Engine Design Sim Dietrich NVIDIA Corporation [email protected] Overview Modern Engine Features Modern Engine Challenges Scene Management Culling & Batching Geometry Management Collision
Efficient Storage, Compression and Transmission
Efficient Storage, Compression and Transmission of Complex 3D Models context & problem definition general framework & classification our new algorithm applications for digital documents Mesh Decimation
Reflection and Refraction
Equipment Reflection and Refraction Acrylic block set, plane-concave-convex universal mirror, cork board, cork board stand, pins, flashlight, protractor, ruler, mirror worksheet, rectangular block worksheet,
Optimizing Unity Games for Mobile Platforms. Angelo Theodorou Software Engineer Unite 2013, 28 th -30 th August
Optimizing Unity Games for Mobile Platforms Angelo Theodorou Software Engineer Unite 2013, 28 th -30 th August Agenda Introduction The author and ARM Preliminary knowledge Unity Pro, OpenGL ES 3.0 Identify
Image Synthesis. Transparency. computer graphics & visualization
Image Synthesis Transparency Inter-Object realism Covers different kinds of interactions between objects Increasing realism in the scene Relationships between objects easier to understand Shadows, Reflections,
GPU(Graphics Processing Unit) with a Focus on Nvidia GeForce 6 Series. By: Binesh Tuladhar Clay Smith
GPU(Graphics Processing Unit) with a Focus on Nvidia GeForce 6 Series By: Binesh Tuladhar Clay Smith Overview History of GPU s GPU Definition Classical Graphics Pipeline Geforce 6 Series Architecture Vertex
Lezione 4: Grafica 3D*(II)
Lezione 4: Grafica 3D*(II) Informatica Multimediale Docente: Umberto Castellani *I lucidi sono tratti da una lezione di Maura Melotti ([email protected]) RENDERING Rendering What is rendering? Rendering
Computer Applications in Textile Engineering. Computer Applications in Textile Engineering
3. Computer Graphics Sungmin Kim http://latam.jnu.ac.kr Computer Graphics Definition Introduction Research field related to the activities that includes graphics as input and output Importance Interactive
Software Virtual Textures
Software Virtual Textures J.M.P. van Waveren February 25th, 2012 2012, Id Software LLC, a Zenimax Media company. Abstract Modern simulations increasingly require the display of very large, uniquely textured
NVIDIA IndeX Enabling Interactive and Scalable Visualization for Large Data Marc Nienhaus, NVIDIA IndeX Engineering Manager and Chief Architect
SIGGRAPH 2013 Shaping the Future of Visual Computing NVIDIA IndeX Enabling Interactive and Scalable Visualization for Large Data Marc Nienhaus, NVIDIA IndeX Engineering Manager and Chief Architect NVIDIA
REAL-TIME IMAGE BASED LIGHTING FOR OUTDOOR AUGMENTED REALITY UNDER DYNAMICALLY CHANGING ILLUMINATION CONDITIONS
REAL-TIME IMAGE BASED LIGHTING FOR OUTDOOR AUGMENTED REALITY UNDER DYNAMICALLY CHANGING ILLUMINATION CONDITIONS Tommy Jensen, Mikkel S. Andersen, Claus B. Madsen Laboratory for Computer Vision and Media
How To Create A Surface From Points On A Computer With A Marching Cube
Surface Reconstruction from a Point Cloud with Normals Landon Boyd and Massih Khorvash Department of Computer Science University of British Columbia,2366 Main Mall Vancouver, BC, V6T1Z4, Canada {blandon,khorvash}@cs.ubc.ca
Advanced Visual Effects with Direct3D
Advanced Visual Effects with Direct3D Presenters: Mike Burrows, Sim Dietrich, David Gosselin, Kev Gee, Jeff Grills, Shawn Hargreaves, Richard Huddy, Gary McTaggart, Jason Mitchell, Ashutosh Rege and Matthias
The Rocket Steam Locomotive - Animation
Course: 3D Design Title: Rocket Steam Locomotive - Animation Blender: Version 2.6X Level: Beginning Author; Neal Hirsig ([email protected]) (May 2012) The Rocket Steam Locomotive - Animation In this tutorial
GPU Shading and Rendering: Introduction & Graphics Hardware
GPU Shading and Rendering: Introduction & Graphics Hardware Marc Olano Computer Science and Electrical Engineering University of Maryland, Baltimore County SIGGRAPH 2005 Schedule Shading Technolgy 8:30
Overview Motivation and applications Challenges. Dynamic Volume Computation and Visualization on the GPU. GPU feature requests Conclusions
Module 4: Beyond Static Scalar Fields Dynamic Volume Computation and Visualization on the GPU Visualization and Computer Graphics Group University of California, Davis Overview Motivation and applications
Consolidated Visualization of Enormous 3D Scan Point Clouds with Scanopy
Consolidated Visualization of Enormous 3D Scan Point Clouds with Scanopy Claus SCHEIBLAUER 1 / Michael PREGESBAUER 2 1 Institute of Computer Graphics and Algorithms, Vienna University of Technology, Austria
Graphic Design. Background: The part of an artwork that appears to be farthest from the viewer, or in the distance of the scene.
Graphic Design Active Layer- When you create multi layers for your images the active layer, or the only one that will be affected by your actions, is the one with a blue background in your layers palette.
Blender Notes. Introduction to Digital Modelling and Animation in Design Blender Tutorial - week 9 The Game Engine
Blender Notes Introduction to Digital Modelling and Animation in Design Blender Tutorial - week 9 The Game Engine The Blender Game Engine This week we will have an introduction to the Game Engine build
COMP175: Computer Graphics. Lecture 1 Introduction and Display Technologies
COMP175: Computer Graphics Lecture 1 Introduction and Display Technologies Course mechanics Number: COMP 175-01, Fall 2009 Meetings: TR 1:30-2:45pm Instructor: Sara Su ([email protected]) TA: Matt Menke
Computer Graphics Hardware An Overview
Computer Graphics Hardware An Overview Graphics System Monitor Input devices CPU/Memory GPU Raster Graphics System Raster: An array of picture elements Based on raster-scan TV technology The screen (and
Computer Graphics. Introduction. Computer graphics. What is computer graphics? Yung-Yu Chuang
Introduction Computer Graphics Instructor: Yung-Yu Chuang ( 莊 永 裕 ) E-mail: [email protected] Office: CSIE 527 Grading: a MatchMove project Computer Science ce & Information o Technolog og Yung-Yu Chuang
Computational Geometry. Lecture 1: Introduction and Convex Hulls
Lecture 1: Introduction and convex hulls 1 Geometry: points, lines,... Plane (two-dimensional), R 2 Space (three-dimensional), R 3 Space (higher-dimensional), R d A point in the plane, 3-dimensional space,
Silhouette Extraction Bruce Gooch, University of Utah
Lecture #2, Component #1 INTERPRETING FORM Silhouette Extraction Bruce Gooch, University of Utah Abstract In computer graphics, silhouette finding and rendering has a central role in a growing number of
Image Based Rendering With Stable Frame Rates
huamin Department Image Based Rendering With Stable Frame Rates Huamin Qu Ming Wan Jiafa Qin Arie Kaufman Center for Visual Computing (CVC) and Department of Computer Science State University of New York
The Evolution of Computer Graphics. SVP, Content & Technology, NVIDIA
The Evolution of Computer Graphics Tony Tamasi SVP, Content & Technology, NVIDIA Graphics Make great images intricate shapes complex optical effects seamless motion Make them fast invent clever techniques
Making natural looking Volumetric Clouds In Blender 2.48a
I think that everyone using Blender has made some trials about making volumetric clouds. The truth is that a kind of volumetric clouds is already available in Blender for a long time, thanks to the 3D
VRayPattern also allows to curve geometry on any surface
Introduction VrayPattern is a plug-in for 3dsmax and V-Ray VRayPattern allows to multiply geometry periodically without extra memory consumption. As a sample you can use any tiled geometry (or those with
Multiresolution 3D Rendering on Mobile Devices
Multiresolution 3D Rendering on Mobile Devices Javier Lluch, Rafa Gaitán, Miguel Escrivá, and Emilio Camahort Computer Graphics Section Departament of Computer Science Polytechnic University of Valencia
Volume visualization I Elvins
Volume visualization I Elvins 1 surface fitting algorithms marching cubes dividing cubes direct volume rendering algorithms ray casting, integration methods voxel projection, projected tetrahedra, splatting
Cork Education and Training Board. Programme Module for. 3 Dimensional Computer Graphics. Leading to. Level 5 FETAC
Cork Education and Training Board Programme Module for 3 Dimensional Computer Graphics Leading to Level 5 FETAC 3 Dimensional Computer Graphics 5N5029 3 Dimensional Computer Graphics 5N5029 1 Version 3
Space Perception and Binocular Vision
Space Perception and Binocular Vision Space Perception Monocular Cues to Three-Dimensional Space Binocular Vision and Stereopsis Combining Depth Cues 9/30/2008 1 Introduction to Space Perception Realism:
NVPRO-PIPELINE A RESEARCH RENDERING PIPELINE MARKUS TAVENRATH [email protected] SENIOR DEVELOPER TECHNOLOGY ENGINEER, NVIDIA
NVPRO-PIPELINE A RESEARCH RENDERING PIPELINE MARKUS TAVENRATH [email protected] SENIOR DEVELOPER TECHNOLOGY ENGINEER, NVIDIA GFLOPS 3500 3000 NVPRO-PIPELINE Peak Double Precision FLOPS GPU perf improved
Intersection of a Line and a Convex. Hull of Points Cloud
Applied Mathematical Sciences, Vol. 7, 213, no. 13, 5139-5149 HIKARI Ltd, www.m-hikari.com http://dx.doi.org/1.12988/ams.213.37372 Intersection of a Line and a Convex Hull of Points Cloud R. P. Koptelov
Bernice E. Rogowitz and Holly E. Rushmeier IBM TJ Watson Research Center, P.O. Box 704, Yorktown Heights, NY USA
Are Image Quality Metrics Adequate to Evaluate the Quality of Geometric Objects? Bernice E. Rogowitz and Holly E. Rushmeier IBM TJ Watson Research Center, P.O. Box 704, Yorktown Heights, NY USA ABSTRACT
Distributed Area of Interest Management for Large-Scale Immersive Video Conferencing
2012 IEEE International Conference on Multimedia and Expo Workshops Distributed Area of Interest Management for Large-Scale Immersive Video Conferencing Pedram Pourashraf ICT Research Institute University
SkillsUSA 2014 Contest Projects 3-D Visualization and Animation
SkillsUSA Contest Projects 3-D Visualization and Animation Click the Print this Section button above to automatically print the specifications for this contest. Make sure your printer is turned on before
Chapter 23. The Reflection of Light: Mirrors
Chapter 23 The Reflection of Light: Mirrors Wave Fronts and Rays Defining wave fronts and rays. Consider a sound wave since it is easier to visualize. Shown is a hemispherical view of a sound wave emitted
B2.53-R3: COMPUTER GRAPHICS. NOTE: 1. There are TWO PARTS in this Module/Paper. PART ONE contains FOUR questions and PART TWO contains FIVE questions.
B2.53-R3: COMPUTER GRAPHICS NOTE: 1. There are TWO PARTS in this Module/Paper. PART ONE contains FOUR questions and PART TWO contains FIVE questions. 2. PART ONE is to be answered in the TEAR-OFF ANSWER
GPU Architecture. Michael Doggett ATI
GPU Architecture Michael Doggett ATI GPU Architecture RADEON X1800/X1900 Microsoft s XBOX360 Xenos GPU GPU research areas ATI - Driving the Visual Experience Everywhere Products from cell phones to super
Animation. Persistence of vision: Visual closure:
Animation Persistence of vision: The visual system smoothes in time. This means that images presented to the eye are perceived by the visual system for a short time after they are presented. In turn, this
Visualization and Feature Extraction, FLOW Spring School 2016 Prof. Dr. Tino Weinkauf. Flow Visualization. Image-Based Methods (integration-based)
Visualization and Feature Extraction, FLOW Spring School 2016 Prof. Dr. Tino Weinkauf Flow Visualization Image-Based Methods (integration-based) Spot Noise (Jarke van Wijk, Siggraph 1991) Flow Visualization:
IT 386: 3D Modeling and Animation. Review Sheet. Notes from Professor Nersesian s IT 386: 3D Modeling and Animation course
IT 386: 3D Modeling and Animation Review Sheet Sources: Notes from Professor Nersesian s IT 386: 3D Modeling and Animation course Notes from CannedMushrooms on YouTube Notes from Digital Tutors tutorial
A Prototype For Eye-Gaze Corrected
A Prototype For Eye-Gaze Corrected Video Chat on Graphics Hardware Maarten Dumont, Steven Maesen, Sammy Rogmans and Philippe Bekaert Introduction Traditional webcam video chat: No eye contact. No extensive
Parallel Ray Tracing using MPI: A Dynamic Load-balancing Approach
Parallel Ray Tracing using MPI: A Dynamic Load-balancing Approach S. M. Ashraful Kadir 1 and Tazrian Khan 2 1 Scientific Computing, Royal Institute of Technology (KTH), Stockholm, Sweden [email protected],
3D Interactive Information Visualization: Guidelines from experience and analysis of applications
3D Interactive Information Visualization: Guidelines from experience and analysis of applications Richard Brath Visible Decisions Inc., 200 Front St. W. #2203, Toronto, Canada, [email protected] 1. EXPERT
Efficient View-Dependent Image-Based Rendering with Projective Texture-Mapping
Efficient View-Dependent Image-Based Rendering with Projective Texture-Mapping Paul Debevec, Yizhou Yu, and George Borshukov Univeristy of California at Berkeley [email protected] Abstract. This
Deferred Shading & Screen Space Effects
Deferred Shading & Screen Space Effects State of the Art Rendering Techniques used in the 3D Games Industry Sebastian Lehmann 11. Februar 2014 FREESTYLE PROJECT GRAPHICS PROGRAMMING LAB CHAIR OF COMPUTER
6 Space Perception and Binocular Vision
Space Perception and Binocular Vision Space Perception and Binocular Vision space perception monocular cues to 3D space binocular vision and stereopsis combining depth cues monocular/pictorial cues cues
How To Fuse A Point Cloud With A Laser And Image Data From A Pointcloud
REAL TIME 3D FUSION OF IMAGERY AND MOBILE LIDAR Paul Mrstik, Vice President Technology Kresimir Kusevic, R&D Engineer Terrapoint Inc. 140-1 Antares Dr. Ottawa, Ontario K2E 8C4 Canada [email protected]
GPU Christmas Tree Rendering. Evan Hart [email protected]
GPU Christmas Tree Rendering Evan Hart [email protected] February 2007 Document Change History Version Date Responsible Reason for Change 0.9 2/20/2007 Ehart Betarelease February 2007 ii Beta Release This
Advanced Computer Graphics. Rendering Equation. Matthias Teschner. Computer Science Department University of Freiburg
Advanced Computer Graphics Rendering Equation Matthias Teschner Computer Science Department University of Freiburg Outline rendering equation Monte Carlo integration sampling of random variables University
Enhanced LIC Pencil Filter
Enhanced LIC Pencil Filter Shigefumi Yamamoto, Xiaoyang Mao, Kenji Tanii, Atsumi Imamiya University of Yamanashi {[email protected], [email protected], [email protected]}
So, you want to make a photo-realistic rendering of the Earth from orbit, eh? And you want it to look just like what astronauts see from the shuttle
So, you want to make a photo-realistic rendering of the Earth from orbit, eh? And you want it to look just like what astronauts see from the shuttle or ISS (International Space Station). No problem. Just
Outline. srgb DX9, DX10, XBox 360. Tone Mapping. Motion Blur
Outline srgb DX9, DX10, XBox 360 Tone Mapping Motion Blur srgb Outline srgb & gamma review Alpha Blending: DX9 vs. DX10 & XBox 360 srgb curve: PC vs. XBox 360 srgb Review Terminology: Color textures are
1. INTRODUCTION Graphics 2
1. INTRODUCTION Graphics 2 06-02408 Level 3 10 credits in Semester 2 Professor Aleš Leonardis Slides by Professor Ela Claridge What is computer graphics? The art of 3D graphics is the art of fooling the
Water Flow in. Alex Vlachos, Valve July 28, 2010
Water Flow in Alex Vlachos, Valve July 28, 2010 Outline Goals & Technical Constraints How Artists Create Flow Maps Flowing Normal Maps in Left 4 Dead 2 Flowing Color Maps in Portal 2 Left 4 Dead 2 Goals
Bachelor of Games and Virtual Worlds (Programming) Subject and Course Summaries
First Semester Development 1A On completion of this subject students will be able to apply basic programming and problem solving skills in a 3 rd generation object-oriented programming language (such as
Fast and Robust Normal Estimation for Point Clouds with Sharp Features
1/37 Fast and Robust Normal Estimation for Point Clouds with Sharp Features Alexandre Boulch & Renaud Marlet University Paris-Est, LIGM (UMR CNRS), Ecole des Ponts ParisTech Symposium on Geometry Processing
Interactive Level-Set Deformation On the GPU
Interactive Level-Set Deformation On the GPU Institute for Data Analysis and Visualization University of California, Davis Problem Statement Goal Interactive system for deformable surface manipulation
Specular reflection. Dielectrics and Distribution in Ray Tracing. Snell s Law. Ray tracing dielectrics
Specular reflection Dielectrics and Distribution in Ray Tracing CS 465 Lecture 22 Smooth surfaces of pure materials have ideal specular reflection (said this before) Metals (conductors) and dielectrics
Introduction to Computer Graphics. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012
CSE 167: Introduction to Computer Graphics Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012 Today Course organization Course overview 2 Course Staff Instructor Jürgen Schulze,
Image Synthesis. Fur Rendering. computer graphics & visualization
Image Synthesis Fur Rendering Motivation Hair & Fur Human hair ~ 100.000 strands Animal fur ~ 6.000.000 strands Real-Time CG Needs Fuzzy Objects Name your favorite things almost all of them are fuzzy!
A technical overview of the Fuel3D system.
A technical overview of the Fuel3D system. Contents Introduction 3 How does Fuel3D actually work? 4 Photometric imaging for high-resolution surface detail 4 Optical localization to track movement during
The Car Tutorial Part 1 Creating a Racing Game for Unity
The Car Tutorial Part 1 Creating a Racing Game for Unity Introduction 3 We will show 3 Prerequisites 3 We will not show 4 Part 1: Assembling the Car 5 Adding Collision 6 Shadow settings for the car model
Environmental Remote Sensing GEOG 2021
Environmental Remote Sensing GEOG 2021 Lecture 4 Image classification 2 Purpose categorising data data abstraction / simplification data interpretation mapping for land cover mapping use land cover class
VISUALIZATION OF MOBILE MAPPING DATA VIA PARALLAX SCROLLING
The International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, Volume XL-3, 014 ISPRS Technical Commission III Symposium, 5 7 September 014, Zurich, Switzerland VISUALIZATION
How To Understand The Power Of Unity 3D (Pro) And The Power Behind It (Pro/Pro)
Optimizing Unity Games for Mobile Platforms Angelo Theodorou Software Engineer Brains Eden, 28 th June 2013 Agenda Introduction The author ARM Ltd. What do you need to have What do you need to know Identify
Materials in NX Render
Materials in NX Render Overview Where materials are stored in NX Render Internal material definition and the NX interface Material types and their characteristics Material components Colour Pattern Reflectance
Analysis of Micromouse Maze Solving Algorithms
1 Analysis of Micromouse Maze Solving Algorithms David M. Willardson ECE 557: Learning from Data, Spring 2001 Abstract This project involves a simulation of a mouse that is to find its way through a maze.
Multivariate data visualization using shadow
Proceedings of the IIEEJ Ima and Visual Computing Wor Kuching, Malaysia, Novembe Multivariate data visualization using shadow Zhongxiang ZHENG Suguru SAITO Tokyo Institute of Technology ABSTRACT When visualizing
How To Run A Factory I/O On A Microsoft Gpu 2.5 (Sdk) On A Computer Or Microsoft Powerbook 2.3 (Powerpoint) On An Android Computer Or Macbook 2 (Powerstation) On
User Guide November 19, 2014 Contents 3 Welcome 3 What Is FACTORY I/O 3 How Does It Work 4 I/O Drivers: Connecting To External Technologies 5 System Requirements 6 Run Mode And Edit Mode 7 Controls 8 Cameras
Customer Training Material. Lecture 4. Meshing in Mechanical. Mechanical. ANSYS, Inc. Proprietary 2010 ANSYS, Inc. All rights reserved.
Lecture 4 Meshing in Mechanical Introduction to ANSYS Mechanical L4-1 Chapter Overview In this chapter controlling meshing operations is described. Topics: A. Global Meshing Controls B. Local Meshing Controls
