GPU-based Rendering of Sparse Low-degree IMplicit Surfaces
|
|
|
- Alice Boyd
- 10 years ago
- Views:
Transcription
1 GPU-based Rendering of Sparse Low-degree IMplicit Surfaces Takashi Kanai The University of Tokyo Yutaka Ohtake Hiroaki Kawata Kiwamu Kase RIKEN, VCAD Modeling Team Abstract Implicit surface is a well-known surface representation. Geometric details of an object can be represented using less surface primitives than other representations such as polygonal meshes. In this paper, we propose a fast and a direct rendering method of SLIM (Sparse Low-degree IMplicit) surfaces using recent programmable GPUs. Our approach establishes a direct rendering of implicit surfaces based on the ray casting approach. Geometric processes such as an intersection between a ray and an implicit surface and blending for PU (Partition of Unity) are performed in the fragment program on GPUs. For large models, a hierarchical structure of a SLIM surface can be used for LOD rendering or view frustum culling to speed up the rendering. We demonstrate that highly parallel processing using GPUs enables efficient rendering of implicit surfaces. CR Categories: I.3.5 [Computer Graphics]: Computational Geometry and Object Modeling Curve, Surface, Solid and Object Representations; I.3.7 [Computer Graphics]: Three-Dimensional Graphics and Realism Visible line/surface algorithms Keywords: Implicit surface, SLIM, Ray casting, GPU, Fragment program. 1 Introduction Implicit surfaces including blobby model [Muraki 1991], metaballs [Nishimura et al. 1985], soft objects [Wyvill et al. 1986], and RBF (Radial-Basis Functions) [Savchenko et al. 1995; Carr et al. 2001] are well-known surface representations. The combination of multiple implicit surfaces can define a solid model strictly. From points with normal vectors, a volumetric field of an object can be defined by a set of implicit surfaces. In this field inside or outside of an object can be defined and the zero-set of such a volumetric field represents an iso-surface which approximates points. In these representations, a detailed smooth geometry of an object can be represented using less number of primitives than a polygonal mesh widely used in 3DCG applications. MPU (Multi-level Partition of Unity) implicit surfaces [Ohtake et al. 2003] or SLIM (Sparse Low-degree IMplicit) surfaces [Ohtake et al. 2005] are recently-developed non-conforming implicit surface representations. In these surface representations, each node has a support sphere and a low-degree implicit polynomial function. A position or its derivative of a point on a surface is calculated by the weighted sum of a set of function values of several overlapped implicit surfaces. Since MPU or SLIM itself has a hierarchical tree structure, a set of implicit surfaces with arbitrary resolution can be quickly extracted. Figure 1: Left: the moai mesh (20K triangles) rendered by Phong shading. Right: A SLIM surface approximation of the mesh vertices (5K quadratic primitives) rendered by our GPU-based method. While almost the same geometrical details are approximated, the polygonal artifacts are eliminated. On the other hand, a point on such an implicit surface cannot be represented explicitly. This poses as an inconvenience in rendering. There are roughly two approaches for displaying implicit surfaces. One is to create an intermediate polygon of a zero-set contour by using an iso-surface extraction method such as Marching Cubes [Lorensen and Cline 1987]. In this approach, however, both an isosurface polygon and a uniform or an adaptively subdivided volume grid has to be created, which requires additional memory and time. It is a disadvantage when deformed or animated implicit surfaces have to be especially rendered. In this case, iso-surface polygons have to be re-created for updating rendered images per frame. The other approach is to render directly by ray tracing or ray casting. In this approach, a ray from an eye is defined for each pixel of an image and an intersection between such a ray and an iso-contour is computed. Since a per-pixel shading color is calculated by using an exact position and normal vector, a high quality image can be generated (see Figure 1). One disadvantage is that this type of method has a high per-pixel computational cost, which makes it difficult to achieve real-time rendering by using traditional computational resources such as CPUs. In this paper, a method to directly render SLIM surfaces using recent programmable GPUs (Graphics Processing Units) is proposed. Current GPUs have the ability as a processor for general-purpose scientific computation due to their high parallelism and flexibility. Our approach achieves fast and direct rendering of implicit surfaces by the per-pixel computation of positions and normal vectors in the programmable shader. In [Ohtake et al. 2005], they also propose a method to render SLIM surfaces directly by CPUs and orthogonal
2 projections in addition to the definition of SLIM surfaces. In contrast, our approach establishes fast rendering by using GPUs and can create more sophisticated rendering images by perspective projection. Rendering Billboards (or Point Sprite) 2 Related Work A number of ray-casting based rendering approaches for geometric models have been proposed in the past. This type of methods include the ray tracing for point-based models [Adamson and Alexa 2003; Wald and Seidel 2005; Adams et al. 2005; Tejada et al. 2006], the volume rendering [Engel et al. 2001; Westermann and Sevenich 2001; Kruger and Westermann 2003; Hadwiger et al. 2005], and the ray casting for implicit surfaces [Nishita and Nakamae 1994; de Groot and Wyvill 2005]. Specifically [Hadwiger et al. 2005] proposed a GPU-based ray casting algorithm for rendering volume data. However, this work is concerned with surfaces over a voxel grid, not surfaces described in implicit polynomials as like our method. There are several GPU-based approaches which are closely related to our approach. [Gumhold 2003] proposed a GPU-based ray casting method by computing ray-ellipsoid intersections for tensor field visualizations. More recently, [Sigg et al. 2006] extended his approach to handle perspective projections and applied to molecular rendering. [Loop and Blinn 2006] proposed a GPU-based algorithm for rendering up to fourth-order algebraic surfaces defined by trivariate Bézier tetrahedra. All three approaches adopt a ray casting method for rendering implicit surfaces to achieve high quality rendering. The most significant difference compared to their approaches is that our approach determines contour iso-surfaces defined by several overlapping implicit polynomials in the programmable shaders of GPUs. This includes the blending operation for PU (Partition of Unity) evaluation discussed in Section Direct Rendering of SLIM Surfaces on GPUs In this section we describe a direct rendering method of SLIM surfaces [Ohtake et al. 2005] by GPUs. A SLIM surface is defined as the hierarchical tree structure of nodes including support spheres. Here, we consider only the rendering for leaf nodes of such a tree structure. Let the radius and the center position of a support sphere in leaf nodes be r i, c i (i = 1,...,N, N is the number of leaf nodes). In the original definition of a SLIM surface [Ohtake et al. 2005], a node has more than one low-degree implicit polynomial up to cubic. For the convenience of explanation, each node has only a quadratic implicit polynomial f i (x) (x = (x,y,z)) consisting of ten coefficients: f i (x) = a 0 i x2 + a 1 i y2 + a 2 i z2 + a 3 i xy + a4 i yz + a 5 i zx + a6 i x + a7 i y + a8 i z + a9 i = 0. (1) Our approach can however be easily extended to the case of higher degrees. We also assume that each implicit polynomial is defined on the relative coordinate system by setting a center point of a support sphere as the origin. Figure 2 illustrates the procedure of our rendering method. Our method is strongly motivated by the ray-casting based point rendering algorithm proposed in [Botsch et al. 2004] and [Botsch et al. 2005]. The core process of our algorithm consists of the following three passes executed in the programmable shader: GPU 1st pass Calculate an intersection point between a ray and an implicit function Z culling Implicit function texture Points ( p) texture 2nd pass Calculate an intersection point between a ray and an implicit function Compute gradients Blend points and gradients 3rd pass Division of points and gradients by the weight sum Shading Points Gradients Ωp texture Ωp texture Ωn Display Figure 2: Overview of our algorithm on GPUs. 1 st pass: A ray from a viewpoint to a fragment is defined, and intersection points to an implicit polynomial f (x) = 0 are calculated. For such intersection points, the nearest point ˆp to a viewpoint is selected and is stored to a floating point texture Ωˆp. 2 nd pass: The same process of the first pass is performed to compute an intersection point p and its gradient f (p). They are blended and stored in the separate textures Ω p, Ω n. 3 rd pass: A position and a normal vector of a surface are computed using p and f (p) respectively. Shading colors are computed using such values. As noted above, the same process (calculation of intersection points between a ray and an implicit polynomial) is applied in both the first and second passes. This is because we select points to be blended in the second pass using a point calculated in the first pass for a fragment (see details in Section 3.3). In the following subsections, we describe the detail of the algorithm. Note. In the following subsections, we describe the functions and environment variables of OpenGL libraries in addition to the explanation of our algorithm for the convenience of the implementation. However, our algorithm can also be implemented using DirectX. 3.1 Drawing Supported Regions by Billboards In the first and second passes, an intersection point between a ray and implicit polynomial is computed in the fragment program. Basically, a fragment needed for this computation can be created by drawing a support sphere surrounding an implicit polynomial and then by applying the rasterization of such a sphere.
3 h w (0, 0) (3, 0) c0 r0 a 0 0 a 1 0 a 2 0 a 3 0 a 4 0 a 5 0 a0 6 a0 7 a0 8 a0 9 c1 r1 a 0 1 a 1 1 a 2 1 a 3 1 a 4 1 a 5 1 a1 6 a1 7 a1 8 a1 9 R G B A Figure 4: Storing implicit surface parameters to a two-dimensional floating point texture. Figure 3: Rendering rectangular polygons by billboards. Left: moai model (5K nodes). Right: david s head model (200K nodes). However, drawing spheres themselves has high computational costs. To display such a sphere, an approximated polygon is generally used. Although a more subdivided polygon can achieve higher accuracy, the number of polygons to be displayed is exponentially increased. Instead of using a sphere approximated by polygons, we display the same region on the screen by a regular rectangle whose size is a radius of a sphere. The computational cost is dramatically reduced since only a rectangle is drawn for generating the same number of fragments on the screen as that of a sphere. In this case, we have to ensure that the same size of region is drawn when we display such a rectangle. To do so, a rectangle should always turn in front for arbitrary viewpoints. Two approaches can be considered to create such an always-infront rectangle. One is to use a billboard and the other is to utilize a point sprite (GL ARB point sprite) which is one of the recent functionalities on GPUs. In the case of using billboards, the positions of four vertices of a rectangular polygon are computed to turn in front in advance and they are transferred to a GPU. On the other hand, in the case of using point sprites, only the center position of a rectangular polygon (in our case the center c i of a support sphere) needs to be transferred to a GPU. The sprite size on the screen can be computed in the vertex program. Hence in the view of transferring positions to a GPU, the point sprite method should be a better choice compared to the use of billboards. One critical disadvantage in the use of point sprites is that the maximum sprite size on the screen is limited depending on GPU hardware 1. When an object is magnified to a certain extent, large holes appear. Our first choice here is then to use billboards. Figure 3 shows the display results of objects by billboards. In the point-based rendering approaches, the bounding box computation on screen space for perspectively-accurate rendering is required because their rendering primitives are ellipses [Zwicker et al. 2004]. In contrast, such perspective corrections are not needed in our scheme since we use only spheres as rendering primitives. 1 This parameter can be investigated using an environment variable GL POINT SIZE MAX ARB. For example, a value measured on nvidia GeForce 7900 GTX is Preparing Implicit Surface Textures In order to access parameters of implicit surfaces from fragment programs on GPUs in the first and second passes, these parameters are stored as two-dimensional floating point textures in advance. Fourteen floating points, a center position c i and a radius r i of a support sphere, coefficients of an implicit polynomial (a 0 i, a1 i,..., a 9 i ), are stored for a node. Figure 4 illustrates our scheme for storing implicit surface parameters to a floating-point texture. Since four floating points can be stored in each RGBA pixel, four pixels are at least required to store fourteen floating points for each node of a SLIM surface. In our scheme, a center position c i and a radius of a support sphere r i are stored to the first pixel of the four. Coefficients of an implicit polynomial (a 0 i, a1 i,..., a9 i ) are then stored to the remaining three pixels. Note that other schemes to store such fourteen floating points to four pixels are also possible. Our scheme described here is only an example. To access a texture on the GPU, the first pixel coordinate (w i, h i ) of the corresponding four pixels is assigned to each node i. In billboard rendering, this pixel coordinate is set as a texture coordinate when setting four vertices of a rectangular polygon. A texture coordinate is inherited to a set of fragments via the rasterization, and is used to fetch a corresponding set of implicit surface parameters in the fragment program. Since the texture size for preparation is limited depending on GPU hardware 2, multiple textures have to be prepared when the number of nodes exceeds a limit size. 3.3 Computing Positions and Normal Vectors of Implicit Surfaces Computing intersection points. Figure 5 illustrates the procedure to compute intersection points between a set of nodes (implicit surfaces) and a ray. This computation is done in the local coordinate system whose origin is the center point of a support sphere. Prior to the computation, a view position and a fragment are converted to such a local coordinate system respectively. Let a screen coordinate (NDC, Normalized Device Coordinate) of a fragment be f s. A formula to convert f s to a fragment f in a local coordinate system is as follows: f = (PM) 1 f s c i, (2) 2 This parameter can be investigated using an environment variable GL MAX RECTANGLE TEXTURE SIZE EXT. Since a value measured on nvidia GeForce 7900 GTX is 4096, (4,096 4,096) / 4 = 4,194,304 nodes can be stored in a texture.
4 Implicit function p Blended point p ~ and normal vectorn ~ Viewpoint e Screen Fragmentf Intersection point Support sphere Figure 5: Illustration of computing intersection points between implicit surfaces and a ray. This point is selected. Implicit function Billboard Figure 6: Issue of Z culling for billboard rendering. A point of an outline circle is incorrectly selected. where P,M denote the projection matrix and the model view matrix respectively, and c i denotes a center position of a support sphere. Using a view position at a local coordinate system e, a ray x = f + t (f e) is defined. An intersection point between a ray and an implicit polynomial f i (x) at a node i: f i (f +t(f e)) = 0, (3) is a quadratic equation over a parameter t and can be solved analytically. In case two points are computed, the nearest one to a view position is selected. We only consider intersection points in a support sphere. To do so, the distance from an intersection point to a center point and a radius are compared to select an active intersection point. 1 st pass: Computing ˆp. Several intersection points may be computed for a fragment because billboards projected to screen space are overlapped. In the first pass, the closest point to a view position ˆp (one of black-filled circles in the left of Figure 5) is selected. This can be done by Z buffer culling. ˆp is used to remove points farther from it (e.g. an outline circle in Figure 5) in the second pass. A computed ˆp is once stored to a floating point texture Ωˆp as an output of a fragment program. A render-to-texture function by FBOs (Frame-Buffer Objects, GL EXT framebuffer object) is used here to reduce the bottleneck for the transmission of such outputs between a GPU and CPU. Z correction. In our approach, fragments are computed from billboards. A current Z value of a fragment then comes from the perspective projection of a billboard. However, a Z value of an intersection point between a ray and an implicit polynomial and that of a billboard is in general different. This leads to the failure of Z culling. Figure 6 illustrates this situation. In this case, an intersection point farther from a view point is selected due to its Z value. To resolve this issue, Z correction is performed by computing an exact Z value from the projection of an intersection point. A new Z Figure 7: Grayscale images of Z values. Left: Rendering result of billboards. Right: Result with applying Z corrections. value Z by transforming an intersection point p is then: Z = ps.z Z n Z f Z n, p s = PMp, (4) where Z n, Z f denotes Z values of near and far planes in the view frustum respectively. p s.z denotes a z-coordinate of a position p s in screen space after the transformation of p. Z is then replaced to Z in the fragment program of the first pass. Figure 7 shows the grayscale images of Z values for the comparison of with and without Z correction. White pixels show the small Z values. It can be seen in the left figure that jaggies appear due to the use of Z values for billboards. In contrast, smooth Z values are confirmed in the right figure by applying Z corrections. Computing positions and normal vectors. In the second and third passes, a position p and a normal vector ñ (a red-filled circle with an arrow in Figure 5) of an implicit surface are computed for each fragment. In our approach, a point on a SLIM surface is evaluated as a PU (Partition of Unity) of neighbor points p j ( j = 1... M, M is the number of neighbor points) to ˆp on a ray (called the ray-based PU [Ohtake et al. 2005]): p = M j ω j p j M j ω j, (5) where ω j denotes a weight defined as a Gaussian function. A normal vector is also evaluated as follows: ñ = n n, n = M j ω j f j (p j ) M j ω j, (6) where f j (p j ) denotes a gradient of an implicit surface f j at a point p j. An issue to be noted here is that division operations appearing in Equations (5) and (6) cannot be executed in a fragment program. Computations of positions and normal vectors are hence performed in the two separated passes as in [Botsch and Kobbelt 2003]. In the second pass, weighted sums of both numerators and denominators in Equations (5) and (6) are separately computed. Using such outputs, p and ñ are computed by only applying division operations in the third pass. 2 nd pass: Blending intersection points. In the second pass, the same process of the first pass is applied to compute an intersection point p. Additionally, ˆp is fetched from Ωˆp. A corresponding
5 pixel coordinate to obtain ˆp can be calculated from a screen coordinate of a fragment. ˆp is used to select the neighbor points from several overlapped intersection points p of a fragment. This is done by comparing the distance from ˆp to p with the radius of a support sphere r i. For the selected point p only, the gradient of an implicit polynomial f (p) is also computed. Both two weighted sums of those neighbor points and their gradients ( M j ω j p j, M j ω j ), ( M j ω j f j (p j ), M j ω j ) are next computed and stored to floating point textures Ω p, Ω n separately. These computations are done by blending which is one of the functionalities of GPUs. To use the blending functionality, the depth test by Z buffer is first disabled and the blending (GL BLEND) is then enabled. Moreover, the blend function is set to the weighted sum by an input alpha value 3. Finally, two outputs ( M j ω j p j, M j ω j ), ( M j ω j f j (p j ), M j ω j ) of a fragment program are set. These can be stored to textures separately by using multiple draw buffer (GL ARB draw buffers) which is one of the functionalities of recent GPUs. 3 rd pass: Computing p, ñ and shading. In the third pass, a rectangular polygon which has the same resolution as a frame buffer (or a floating point texture Ω p, Ω n ) is drawn. A pixel coordinate of a fragment can be then acquired by rasterization. Using this pixel coordinate, a pair of four pixel values ( M j ω j p j, M j ω j ), ( M j ω j f j (p j ), M j ω j ) are fetched from floating point textures Ω p, Ω n respectively. A position p and a normal vector ñ of an implicit surface are now computed by dividing the first three elements of pixel values by a fourth element. Finally, a shading color is computed using p, ñ to generate a final image. Figure 8: Control of nodes in LOD rendering of david model. Left: leaf nodes (932,720 nodes). Right: LOD nodes (126,466 nodes). 3.4 LOD Rendering and View Frustum Culling A SLIM surface has a hierarchical tree structure of nodes including implicit polynomials. Based on a tree structure, LOD (Level-Of- Detail) rendering and view frustum culling can be performed efficiently using support spheres of nodes. In LOD rendering, child tree nodes are traversed from a root node. For a node, if the radius of a support sphere in screen space is less than a threshold (a few pixels here), its parent node is rendered. In view frustum culling, the basic process is the same. The only difference is that the inside/outside test of a node to a view frustum is performed instead. Figure 8 shows the comparison of resulting images between the rendering of only leaf nodes (left) and LOD rendering (right) of a david model. It can be seen that almost no visual difference appears while the number of nodes in LOD rendering is approximately one-ninth of that in the rendering of leaf nodes. 4 Results and Discussion Figure 9 shows the rendering results of example models used in the measurement of computational time. In our approach, high quality rendering is achieved because fragment-based computations of positions and normal vectors are performed. Note that in our approach, the blending operation is executed on a 16-bit pixel buffer due to the limitation of GPU hardware. However, it can be said that such a limitation does not lead to any visual defects. 3 This is done by setting glblendfunc(gl SRC ALPHA, GL ONE). Table 1 shows the statistical summary of measured computation times for the models described in this paper. In this table, the computational times measured on CPUs are from the software implemented in [Ohtake et al. 2005]. Note that [Ohtake et al. 2005] proposes a rendering method applying orthogonal projection for simplifying computation compared to our approach. It can be seen from the table that the computation time in our approach on GPUs is roughly three to seven times faster than the rendering by CPUs. The rendering speed is more effective especially for models with a small number of nodes. This is due to the effect of parallelization by GPUs. Since our approach is based on a ray casting method, the large number of fragments filling the screen yields considerably more computation time. This can be verified by comparing the results of moai and dino. The rendering time of moai is twice faster than that of dino, while the number of nodes in moai is less than that of dino. This is because the filled fragments of moai are much larger than those of dino. On the other hand, the speed up of rendering is not so much of a focus in our approach for large models, especially for lucy and david. In these models, the obstacle lies in the process to transfer nodes (billboards) from a CPU to a GPU. In this case, it is much more effective to reduce the nodes themselves to be transferred. In fact, it have been confirmed that the rendering speed is twice to three times faster using the LOD technique. 5 Conclusions and Future Work In this paper, a fast rendering method for SLIM surfaces, which is a type of point-based implicit surface, has been proposed. Our
6 Figure 9: Rendering results of models used for the measurement of the computational time. From upper left: dino, armadillo, lucy. From bottom left: feline, xyzrgb dragon. A magnified view of lucy s head is shown in a frame of right figure. model #total nodes #leaf nodes CPU (fps) GPU (fps) GPU (LOD) (fps) #LOD nodes moai 6,948 5, dino 7,783 6, feline 20,891 16, armadillo 31,712 24, xyzrgb dragon 242, , lucy 915, , ,696 david 1,221, , ,466 Table 1: Statistical summary of computation times. From left to right: model name, number of all nodes, number of leaf nodes, computation time by CPUs (fps), computation time of leaf nodes by GPUs (fps), computation time of LOD nodes (fps), the number of LOD nodes. A window size is for all tests. These are measured on a PC with Pentium D 840 (3.2GHz) CPU and nvidia GeForce 7900 GTX GPU. approach achieves high quality rendering by computing the position and normal vector for a fragment by implementing a ray-based PU. We have demonstrated that computation time is roughly three to seven times faster compared to CPU-based rendering, and roughly twice to three times faster for large models. Two future directions are mainly considered. One is an extension of our approach to address sharp features such as creases and corners. In SLIM surfaces, sharp features are treated by special processes including Boolean operations. We should consider how to implement such Boolean operations on GPUs. The other is the direct rendering of other implicit surface representations such as metaballs and blobby models. However, we think that these representations can be rendered by using our rendering framework on GPUs. Acknowledgements The models used in this paper are courtesy of California Institute of Technology (feline), the Stanford 3D Scanning Repository (armadillo, xyzrgb dragon, lucy, david), Aizu University (moai), and Cyberware Inc. (dino). References ADAMS, B., KEISER, R., PAULY, M., GUIBAS, L. J., GROSS, M., AND DUTRÉ, P Efficient raytracing of deforming point-sampled surfaces. Computer Graphics Forum (Proc. Eurographics 2005) 24, 3, ADAMSON, A., AND ALEXA, M Ray tracing point set surfaces. In Proc. Shape Modeling International 2003, IEEE CS Press, Los Alamitos CA, BOTSCH, M., AND KOBBELT, L. P High-quality pointbased rendering on modern GPUs. In Proc. 11 th Pacific Conference on Computer Graphics and Applications, BOTSCH, M., SPERNAT, M., AND KOBBELT, L. P Phong splatting. In Proc. Symposium on Point-Based Graphics 2004, Eurographics Association,
7 BOTSCH, M., HORNUNG, A., ZWICKER, M., AND KOBBELT, L High-quality surface splatting on today s GPUs. In Proc. 2 nd Eurographics Symposium on Point-Based Graphics, Eurographics Association, Aire-la-Ville, Switzerland, CARR, J. C., BEATSON, R. K., CHERRIE, J. B., MITCHELL, T. J., FRIGHT, W. R., MCCALLUM, B. C., AND EVANS, T. R Reconstruction and representation of 3D objects with radial basis functions. In Computer Graphics (Proc. SIGGRAPH 2001), ACM Press, New York, DE GROOT, E., AND WYVILL, B Rayskip: Faster ray tracing of implicit surface animations. In Proc. 3 rd International Conference on Computer Graphics and Interactive Techniques in Australasia and South East Asia (GRAPHITE 05), ACM Press, New York, ENGEL, K., KRAUS, M., AND ERTL, T High-quality preintegrated volume rendering using hardware-accelerated pixel shading. In Proc. ACM SIGGRAPH / EUROGRAPHICS Workshop on Graphics Hardware, ACM Press, New York, GUMHOLD, S Splatting illuminated ellipsoids with depth correction. In Proc. Vision, Modeling, and Visualization Conference (VMV), HADWIGER, M., SIGG, C., SCHARSACH, H., BÜHLER, K., AND GROSS, M Real-time ray-casting and advanced shading of discrete isosurfaces. Computer Graphics Forum (Proc. Eurographics 2005) 24, 3, KRUGER, J., AND WESTERMANN, R Acceleration techniques for GPU-based volume rendering. In Proc. IEEE Visualization 2003, IEEE CS Press, Los Alamitos CA, LOOP, C., AND BLINN, J Real-time GPU rendering of piecewise algebraic surfaces. ACM Transactions on Graphics (Proc. SIGGRAPH 2006) 25, 3, LORENSEN, W. E., AND CLINE, H. E Marching cubes: A high resolution 3D surface construction algorithm. In Computer Graphics (Proc. SIGGRAPH 87), ACM Press, New York, MURAKI, S Volumetric shape description of range data using blobby model. In Computer Graphics (Proc. SIGGRAPH 91), ACM Press, New York, NISHIMURA, H., HIRAI, M., KAWAI, T., KAWATA, T., SHI- RAKAWA, I., AND OMURA, K Object modeling by distribution function and a method of image generation. Trans. IEICE J68-D, 4, (in Japanese). NISHITA, T., AND NAKAMAE, E A method for displaying metaballs by using bezier clipping. Computer Graphics Forum (Proc. Eurographics 94) 13, 3, OHTAKE, Y., BELYAEV, A. G., ALEXA, M., TURK, G., AND SEI- DEL, H.-P Multi-level partition of unity implicits. ACM Transactions on Graphics (Proc. SIGGRAPH 2003) 22, 3, OHTAKE, Y., BELYAEV, A. G., AND ALEXA, M Sparse low-degree implicits with applications to high quality rendering, feature extraction, and smoothing. In Proc. 3 rd Eurographics Symposium on Geometry Processing, Eurographics Association, Aire-la-Ville, Switzerland, SAVCHENKO, V. V., PASKO, A. A., OKUNEV, O. G., AND KU- NII, T. L Function representation of solids reconstructed from scattered surface points and contours. Computer Graphics Forum 14, 4, SIGG, C., WEYRICH, T., BOTSCH, M., AND GROSS, M GPU-based ray-casting of quadratic surfaces. In Proc. 3 rd Eurographics Symposium on Point-Based Graphics, Eurographics Association, Aire-la-Ville, Switzerland, TEJADA, E., GOIS, J. P., NONATO, L. G., CASTELO, A., AND ERTL, T Hardware-accelerated extraction and rendering of point set surfaces. In Proc. Eurographics / IEEE VGTC Symposium on Visualization, Eurographics Association, Aire-la- Ville, Switzerland, WALD, I., AND SEIDEL, H.-P Interactive ray tracing of point-based models. In Proc. 2 nd Eurographics Symposium on Point-Based Graphics, Eurographics Association, Aire-la-Ville, Switzerland, 1 8. WESTERMANN, R., AND SEVENICH, B Accelerated volume ray-casting using texture mapping. In Proc. IEEE Visualization 2001, IEEE CS Press, Los Alamitos CA, WYVILL, G., MCPHEETERS, C., AND WYVILL, B Data structure for soft objects. The Visual Computer 2, 4, ZWICKER, M., RASANEN, J., BOTSCH, M., DACHSBACHER, C., AND PAULY, M Perspective accurate splatting. In Proc. Graphics Interface 2004, Morgan Kaufmann Publishers, San Francisco, CA,
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
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
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
Computer Graphics CS 543 Lecture 12 (Part 1) Curves. Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)
Computer Graphics CS 54 Lecture 1 (Part 1) Curves Prof Emmanuel Agu Computer Science Dept. Worcester Polytechnic Institute (WPI) So Far Dealt with straight lines and flat surfaces Real world objects include
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
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
Dual Marching Cubes: Primal Contouring of Dual Grids
Dual Marching Cubes: Primal Contouring of Dual Grids Scott Schaefer and Joe Warren Rice University 6100 Main St. Houston, TX 77005 [email protected] and [email protected] Abstract We present a method for
Employing Complex GPU Data Structures for the Interactive Visualization of Adaptive Mesh Refinement Data
Volume Graphics (2006) T. Möller, R. Machiraju, T. Ertl, M. Chen (Editors) Employing Complex GPU Data Structures for the Interactive Visualization of Adaptive Mesh Refinement Data Joachim E. Vollrath Tobias
Lecture Notes, CEng 477
Computer Graphics Hardware and Software Lecture Notes, CEng 477 What is Computer Graphics? Different things in different contexts: pictures, scenes that are generated by a computer. tools used to make
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
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
Volume Rendering on Mobile Devices. Mika Pesonen
Volume Rendering on Mobile Devices Mika Pesonen University of Tampere School of Information Sciences Computer Science M.Sc. Thesis Supervisor: Martti Juhola June 2015 i University of Tampere School of
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
Curves and Surfaces. Goals. How do we draw surfaces? How do we specify a surface? How do we approximate a surface?
Curves and Surfaces Parametric Representations Cubic Polynomial Forms Hermite Curves Bezier Curves and Surfaces [Angel 10.1-10.6] Goals How do we draw surfaces? Approximate with polygons Draw polygons
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
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
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
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
Parallel Simplification of Large Meshes on PC Clusters
Parallel Simplification of Large Meshes on PC Clusters Hua Xiong, Xiaohong Jiang, Yaping Zhang, Jiaoying Shi State Key Lab of CAD&CG, College of Computer Science Zhejiang University Hangzhou, China April
We can display an object on a monitor screen in three different computer-model forms: Wireframe model Surface Model Solid model
CHAPTER 4 CURVES 4.1 Introduction In order to understand the significance of curves, we should look into the types of model representations that are used in geometric modeling. Curves play a very significant
Hardware design for ray tracing
Hardware design for ray tracing Jae-sung Yoon Introduction Realtime ray tracing performance has recently been achieved even on single CPU. [Wald et al. 2001, 2002, 2004] However, higher resolutions, complex
CSE 564: Visualization. GPU Programming (First Steps) GPU Generations. Klaus Mueller. Computer Science Department Stony Brook University
GPU Generations CSE 564: Visualization GPU Programming (First Steps) Klaus Mueller Computer Science Department Stony Brook University For the labs, 4th generation is desirable Graphics Hardware Pipeline
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
Silverlight for Windows Embedded Graphics and Rendering Pipeline 1
Silverlight for Windows Embedded Graphics and Rendering Pipeline 1 Silverlight for Windows Embedded Graphics and Rendering Pipeline Windows Embedded Compact 7 Technical Article Writers: David Franklin,
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
How To Make A Texture Map Work Better On A Computer Graphics Card (Or Mac)
Improved Alpha-Tested Magnification for Vector Textures and Special Effects Chris Green Valve (a) 64x64 texture, alpha-blended (b) 64x64 texture, alpha tested (c) 64x64 texture using our technique Figure
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 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
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
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
VALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur 603203.
VALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur 603203. DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Year & Semester : III Year, V Semester Section : CSE - 1 & 2 Subject Code : CS6504 Subject
Interactive 3D Medical Visualization: A Parallel Approach to Surface Rendering 3D Medical Data
Interactive 3D Medical Visualization: A Parallel Approach to Surface Rendering 3D Medical Data Terry S. Yoo and David T. Chen Department of Computer Science University of North Carolina Chapel Hill, NC
Data Visualization Using Hardware Accelerated Spline Interpolation
Data Visualization Using Hardware Accelerated Spline Interpolation Petr Kadlec [email protected] Marek Gayer [email protected] Czech Technical University Department of Computer Science and Engineering
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
Introduction to GPGPU. Tiziano Diamanti [email protected]
[email protected] Agenda From GPUs to GPGPUs GPGPU architecture CUDA programming model Perspective projection Vectors that connect the vanishing point to every point of the 3D model will intersecate
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
H.Calculating Normal Vectors
Appendix H H.Calculating Normal Vectors This appendix describes how to calculate normal vectors for surfaces. You need to define normals to use the OpenGL lighting facility, which is described in Chapter
Writing Applications for the GPU Using the RapidMind Development Platform
Writing Applications for the GPU Using the RapidMind Development Platform Contents Introduction... 1 Graphics Processing Units... 1 RapidMind Development Platform... 2 Writing RapidMind Enabled Applications...
Computer Graphics. Geometric Modeling. Page 1. Copyright Gotsman, Elber, Barequet, Karni, Sheffer Computer Science - Technion. An Example.
An Example 2 3 4 Outline Objective: Develop methods and algorithms to mathematically model shape of real world objects Categories: Wire-Frame Representation Object is represented as as a set of points
NVIDIA IndeX. Whitepaper. Document version 1.0 3 June 2013
NVIDIA IndeX Whitepaper Document version 1.0 3 June 2013 NVIDIA Advanced Rendering Center Fasanenstraße 81 10623 Berlin phone +49.30.315.99.70 fax +49.30.315.99.733 [email protected] Copyright Information
Vector storage and access; algorithms in GIS. This is lecture 6
Vector storage and access; algorithms in GIS This is lecture 6 Vector data storage and access Vectors are built from points, line and areas. (x,y) Surface: (x,y,z) Vector data access Access to vector
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
Triangle Scan Conversion using 2D Homogeneous Coordinates
Triangle Scan Conversion using 2D Homogeneous Coordinates Marc Olano 1 Trey Greer 2 University of North Carolina Hewlett-Packard ABSTRACT We present a new triangle scan conversion algorithm that works
Model Repair. Leif Kobbelt RWTH Aachen University )NPUT $ATA 2EMOVAL OF TOPOLOGICAL AND GEOMETRICAL ERRORS !NALYSIS OF SURFACE QUALITY
)NPUT $ATA 2ANGE 3CAN #!$ 4OMOGRAPHY 2EMOVAL OF TOPOLOGICAL AND GEOMETRICAL ERRORS!NALYSIS OF SURFACE QUALITY 3URFACE SMOOTHING FOR NOISE REMOVAL 0ARAMETERIZATION 3IMPLIFICATION FOR COMPLEXITY REDUCTION
HistoPyramid stream compaction and expansion
HistoPyramid stream compaction and expansion Christopher Dyken1 * and Gernot Ziegler2 Advanced Computer Graphics / Vision Seminar TU Graz 23/10-2007 1 2 University of Oslo Max-Planck-Institut fu r Informatik,
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
Comp 410/510. Computer Graphics Spring 2016. Introduction to Graphics Systems
Comp 410/510 Computer Graphics Spring 2016 Introduction to Graphics Systems Computer Graphics Computer graphics deals with all aspects of creating images with a computer Hardware (PC with graphics card)
Visualization of 2D Domains
Visualization of 2D Domains This part of the visualization package is intended to supply a simple graphical interface for 2- dimensional finite element data structures. Furthermore, it is used as the low
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,
The Future Of Animation Is Games
The Future Of Animation Is Games 王 銓 彰 Next Media Animation, Media Lab, Director [email protected] The Graphics Hardware Revolution ( 繪 圖 硬 體 革 命 ) : GPU-based Graphics Hardware Multi-core (20 Cores
Computer Graphics Global Illumination (2): Monte-Carlo Ray Tracing and Photon Mapping. Lecture 15 Taku Komura
Computer Graphics Global Illumination (2): Monte-Carlo Ray Tracing and Photon Mapping Lecture 15 Taku Komura In the previous lectures We did ray tracing and radiosity Ray tracing is good to render specular
3D Distance from a Point to a Triangle
3D Distance from a Point to a Triangle Mark W. Jones Technical Report CSR-5-95 Department of Computer Science, University of Wales Swansea February 1995 Abstract In this technical report, two different
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
MA 323 Geometric Modelling Course Notes: Day 02 Model Construction Problem
MA 323 Geometric Modelling Course Notes: Day 02 Model Construction Problem David L. Finn November 30th, 2004 In the next few days, we will introduce some of the basic problems in geometric modelling, and
Visibility Map for Global Illumination in Point Clouds
TIFR-CRCE 2008 Visibility Map for Global Illumination in Point Clouds http://www.cse.iitb.ac.in/ sharat Acknowledgments: Joint work with Rhushabh Goradia. Thanks to ViGIL, CSE dept, and IIT Bombay (Based
GPU Point List Generation through Histogram Pyramids
VMV 26, GPU Programming GPU Point List Generation through Histogram Pyramids Gernot Ziegler, Art Tevs, Christian Theobalt, Hans-Peter Seidel Agenda Overall task Problems Solution principle Algorithm: Discriminator
Practical Volume Rendering in mobile devices
Practical Volume Rendering in mobile devices Pere Pau Vázquez Alcocer 1 and Marcos Balsa Rodríguez 2 1 UPC, MOVING Graphics group, Spain www: http://moving.upc.edu/ e-mail: [email protected] 2 CRS4, Visual
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
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
Degree Reduction of Interval SB Curves
International Journal of Video&Image Processing and Network Security IJVIPNS-IJENS Vol:13 No:04 1 Degree Reduction of Interval SB Curves O. Ismail, Senior Member, IEEE Abstract Ball basis was introduced
GUI GRAPHICS AND USER INTERFACES. Welcome to GUI! Mechanics. Mihail Gaianu 26/02/2014 1
Welcome to GUI! Mechanics 26/02/2014 1 Requirements Info If you don t know C++, you CAN take this class additional time investment required early on GUI Java to C++ transition tutorial on course website
Computer Graphics. Anders Hast
Computer Graphics Anders Hast Who am I?! 5 years in Industry after graduation, 2 years as high school teacher.! 1996 Teacher, University of Gävle! 2004 PhD, Computerised Image Processing " Computer Graphics!
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
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
Automatic 3D Reconstruction via Object Detection and 3D Transformable Model Matching CS 269 Class Project Report
Automatic 3D Reconstruction via Object Detection and 3D Transformable Model Matching CS 69 Class Project Report Junhua Mao and Lunbo Xu University of California, Los Angeles [email protected] and lunbo
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
Introduction Week 1, Lecture 1
CS 430/536 Computer Graphics I Introduction Week 1, Lecture 1 David Breen, William Regli and Maxim Peysakhov Geometric and Intelligent Computing Laboratory Department of Computer Science Drexel University
Petascale Visualization: Approaches and Initial Results
Petascale Visualization: Approaches and Initial Results James Ahrens Li-Ta Lo, Boonthanome Nouanesengsy, John Patchett, Allen McPherson Los Alamos National Laboratory LA-UR- 08-07337 Operated by Los Alamos
Advanced Volume Rendering Techniques for Medical Applications
Advanced Volume Rendering Techniques for Medical Applications Verbesserte Darstellungsmethoden für Volumendaten in medizinischen Anwendungen J. Georgii 1, J. Schneider 1, J. Krüger 1, R. Westermann 1,
Geometric algebra rotors for skinned character animation blending
Geometric algebra rotors for skinned character animation blending briefs_0080* QLB: 320 FPS GA: 381 FPS QLB: 301 FPS GA: 341 FPS DQB: 290 FPS GA: 325 FPS Figure 1: Comparison between animation blending
Point Cloud Streaming for 3D Avatar Communication
16 Point Cloud Streaming for 3D Avatar Communication Masaharu Kajitani, Shinichiro Takahashi and Masahiro Okuda Faculty of Environmental Engineering, The University of Kitakyushu Japan Open Access Database
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
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
NEW MEXICO Grade 6 MATHEMATICS STANDARDS
PROCESS STANDARDS To help New Mexico students achieve the Content Standards enumerated below, teachers are encouraged to base instruction on the following Process Standards: Problem Solving Build new mathematical
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: :
Texture Screening Method for Fast Pencil Rendering
Journal for Geometry and Graphics Volume 9 (2005), No. 2, 191 200. Texture Screening Method for Fast Pencil Rendering Ruiko Yano, Yasushi Yamaguchi Dept. of Graphics and Computer Sciences, Graduate School
MODERN VOXEL BASED DATA AND GEOMETRY ANALYSIS SOFTWARE TOOLS FOR INDUSTRIAL CT
MODERN VOXEL BASED DATA AND GEOMETRY ANALYSIS SOFTWARE TOOLS FOR INDUSTRIAL CT C. Reinhart, C. Poliwoda, T. Guenther, W. Roemer, S. Maass, C. Gosch all Volume Graphics GmbH, Heidelberg, Germany Abstract:
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
Graphics Cards and Graphics Processing Units. Ben Johnstone Russ Martin November 15, 2011
Graphics Cards and Graphics Processing Units Ben Johnstone Russ Martin November 15, 2011 Contents Graphics Processing Units (GPUs) Graphics Pipeline Architectures 8800-GTX200 Fermi Cayman Performance Analysis
Summed-Area Tables for Texture Mapping
Computer Graphics Volume 18, Number 3 July 1984 Summed-Area Tables for Texture Mapping Franklin C. Crow Computer Sciences Laboratory Xerox Palo Alto Research Center Abstract Texture-map computations can
Part-Based Recognition
Part-Based Recognition Benedict Brown CS597D, Fall 2003 Princeton University CS 597D, Part-Based Recognition p. 1/32 Introduction Many objects are made up of parts It s presumably easier to identify simple
3D Computer Games History and Technology
3D Computer Games History and Technology VRVis Research Center http://www.vrvis.at Lecture Outline Overview of the last 10-15 15 years A look at seminal 3D computer games Most important techniques employed
Interactive Level-Set Segmentation on the GPU
Interactive Level-Set Segmentation on the GPU Problem Statement Goal Interactive system for deformable surface manipulation Level-sets Challenges Deformation is slow Deformation is hard to control Solution
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
A unified representation for interactive 3D modeling
A unified representation for interactive 3D modeling Dragan Tubić, Patrick Hébert, Jean-Daniel Deschênes and Denis Laurendeau Computer Vision and Systems Laboratory, University Laval, Québec, Canada [tdragan,hebert,laurendeau]@gel.ulaval.ca
CSE 167: Lecture 13: Bézier Curves. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011
CSE 167: Introduction to Computer Graphics Lecture 13: Bézier Curves Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011 Announcements Homework project #6 due Friday, Nov 18
Introduction GPU Hardware GPU Computing Today GPU Computing Example Outlook Summary. GPU Computing. Numerical Simulation - from Models to Software
GPU Computing Numerical Simulation - from Models to Software Andreas Barthels JASS 2009, Course 2, St. Petersburg, Russia Prof. Dr. Sergey Y. Slavyanov St. Petersburg State University Prof. Dr. Thomas
CAUSTICS are complex patterns of shimmering
SCHOOL OF ENGINEERING AND COMPUTER SCIENCE, UNIVERSITY OF CENTRAL FLORIDA, CS TR 50-07 1 Caustics Mapping: An Image-space Technique for Real-time Caustics Musawir Shah, Sumanta Pattanaik Abstract In this
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
Computer Animation: Art, Science and Criticism
Computer Animation: Art, Science and Criticism Tom Ellman Harry Roseman Lecture 12 Ambient Light Emits two types of light: Directional light, coming from a single point Contributes to diffuse shading.
ENG4BF3 Medical Image Processing. Image Visualization
ENG4BF3 Medical Image Processing Image Visualization Visualization Methods Visualization of medical images is for the determination of the quantitative information about the properties of anatomic tissues
Real-Time Dynamic Wrinkles of Face for Animated Skinned Mesh
Real-Time Dynamic Wrinkles of Face for Animated Skinned Mesh L. Dutreve and A. Meyer and S. Bouakaz Université de Lyon, CNRS Université Lyon 1, LIRIS, UMR5205, F-69622, France PlayAll Abstract. This paper
GAME ENGINE DESIGN. A Practical Approach to Real-Time Computer Graphics. ahhb. DAVID H. EBERLY Geometrie Tools, Inc.
3D GAME ENGINE DESIGN A Practical Approach to Real-Time Computer Graphics SECOND EDITION DAVID H. EBERLY Geometrie Tools, Inc. ahhb _ jfw H NEW YORK-OXFORD-PARIS-SAN DIEGO fl^^h ' 4M arfcrgsbjlilhg, SAN
