Introduction to Mixed Realities Course 02 Content

Total Page:16

File Type:pdf, Size:1020Kb

Introduction to Mixed Realities Course 02 Content Introduction to mixed realities Course 02 Content ● Recapitulation Course 1 ○ AR/VR/MR/XR ● Computer Graphics in AR/VR ○ 3D Modeling ○ Blender ● Working in a game engine ○ Unity Interface ● Conclusions ● Bibliography 2 R - Definitions ● Augmented Reality ● Virtual Reality ● Mixed Reality ● Extended Reality 3 Virtual Environment Rendering In VR, rendering does not only correspond to the image synthesis process Must encompass as many senses as possible to induce and immersive experience Image synthesis Audio rendering (spatial) Tactile rendering and force feedback (both localized and full body) Smell simulation 4 3D Modeling Used for the development of virtual models for computer simulation, XR Application for artificial intelligence (AI), big data analytics, etc. 5 Major Software in 3D Modeling Tools: ZBrush, Blender, SketchUp, AutoCAD, SolidWorks, 3Ds Max, Maya, Rhino3D, CATIA, etc. Used file formats of 3D models are FBX, OBJ, STL, etc. 6 7 Computer-Aided Industrial Design (CAID) CAID tools provide 3D modeling features CAID is used in various industries like 3D printing, animation, gaming, architecture, and industrial design for digital production The CAID tools provide designers with improved freedom of creativity compared to typical CAD 8 Texture Painting Software Texture painting is an essential step to enhance the visual effects and increase the realism of virtual environments 9 Key 3D Modeling Terms - 3D Model The digital representation of a three-dimensional object that is created in dedicated 3D modeling software A 3D model can be turned and looked at from every different angle and can be scaled, rotated, or freely modified 10 3D Modeling - NURBS Modeling Non-Uniform Rational Basis Spline (NURBS) model is a mathematical modeling type commonly used to generate curves and surfaces The main advantages of this modeling technique are the great flexibility and precision you have in generating your shapes (use interpolation) In contrast to Polygon Modeling, the curve is drawn in a 3D space, and edited by moving a series of handles called CVs or control vertices along the x-, y-, or z-axis 11 3D Modeling - Polygon Modeling Polygon models (also known as meshes) are a collection of vertices, edges and faces that define the model, which allows for easy and precise editing of parts of your object By changing the coordinates of one or several vertices, you can change the shape of the model Used in: Animation and Film Games industry 12 Polygon Modeling - Vertices, Edges and Faces Faces: are the most basic parts of a 3D polygon. When three or more edges are connected together, the face is what fills in the empty space between the edges and makes up what is visible on the polygon mesh Edges: are defined by two vertices at their end points Vertices: are the smallest components of a polygon model. It is simply a point in a three-dimensional space 13 Polygon Modeling - Polygons Four-sided (quads) or three-sided (tris - used more commonly in game modeling) The number of polygons in a mesh is called the poly-count, while polygon density is called resolution 14 Subdivision Surfaces/NURMS Modeling Subdivision surfaces (NURMS - Non-Uniform Rational Mesh Smooth): it is a method used to smoothen out those pixelated meshes NURMS actually subdivide each polygonal face into smaller faces that better approximate the smooth surface 15 Polygon Modeling - Textures and Shaders Shaders: are a set of instructions applied to a 3D model that lets the computer know how it should be displayed. With tools from 3D software packages, we can control the way the surface of the model interacts with light, including opacity, reflectivity, specular highlight (glossiness), etc. Textures: are two-dimensional image files that are mapped onto the model's 3D surface (texture mapping). Textures can range in complexity from simple flat color textures up to completely photorealistic surface detail 16 Polygon Modeling - UV Mapping UV mapping is the process of projecting a 2D image texture onto a 3D object. Typically, such a texture is applied after a model, or body, is created UV mapping can be used while creating a new material. The material affects the object, while the UV mapping only affects the surface of the material 17 Polygon Modeling - Texture Maps Specular Map - is a texture type that dictates which parts are glossy/specular based on the grayscale values that it has Diffuse Map - it can add that bit of realism to your shader Normal Map - It works more like a workaround compared to what you would normally achieve when using dedicated normal maps, but the effects are relatively close and indistinguishable 18 3D Modeling - Rigging Rigging is a technique used in skeletal animation for representing a 3D character model using a series of interconnected digital bones This bone structure is used to manipulate the 3D model like a puppet for animation The result is a hierarchical structure where each bone is in a parent/child relationship with the bones it connects to. This simplifies the animation process as a whole 19 3D Modeling - Animations These bones can be transformed using digital animation software meaning their position, rotation, and scale can be changed By recording these aspects of the bones along a timeline (using a process called keyframing) animations can be recorded A basic setup may take a few hours or less while a complex rig for a movie could take days https://www.youtube.com/watch?v=XRVIuE2iIxA &feature=emb_logo 20 Blender https://www.blender.org Blender is the free and open source 3D creation suite It supports the entirety of the 3D pipeline—modeling, rigging, animation, simulation, rendering, compositing and motion tracking, video editing and 2D animation pipeline 21 22 23 24 25 26 Blender - Edit Mode Annotate Measure Extrude Region Inset Faces Bevel Loop Cut Knife Poly Build Spin Smooth Edge Slide Shrink/Fatten Shear Rip Region 27 Blender - Sculpt Mode 28 Blender - Grabbing, Scaling, and Rotating The three most basic ways of changing an object in a 3D scene are called transformations: ✓ Change location using location ✓ Change size using scale ✓ Change rotation using rotation 29 Blender - Differentiating Between Coordinate Systems All coordinate systems in Blender are based on a grid consisting of three axes: ✓ ‐ ‐ ‐ The X axis typically represents side to side movement. ✓ The Y‐axis represents front‐to‐back ✓ The Z‐axis goes from top to bottom 30 Blender - Transform Orientations ✓ Global: the primary orientation to which everything else relates ✓ Local: each 3D object in Blender has a local coordinate system ✓ Normal: a set of axes that’s perpendicular to some arbitrary plane ✓ Gimbal: When you rotate an object about its X, Y, and Z axes ✓ View: relative to how you’re looking at the 3D View 31 Blender - Move, Rotate, Scale 32 Blender - Hotkeys 33 Blender - Hotkeys on the Numerical Keypad 34 Modeling and Computer Graphics in VR Create 3D models in VR for real-time interaction - one approach is to perform optimization to reduce the complexity by minimizing the mesh size of the models => visual realism of the models may be affected Computer graphics techniques used to create 3D models in VR: Mesh Shading Flat-shading (left) Smooth-shading (right) 35 Techniques used to create 3D models in VR Auto smooth shading filter to quickly and easily changes the way the shading Mesh editing tools such as bevel, subdivision, loop cut, etc. may need to be applied at the edge to create better visual effects. Below, 3D models applied the bevel modifiers with 20 segments, 2 segments and 6 loop cuts (from left to right) 36 Blender - Render Engine Eevee The corresponding models are rendered using the real-time render engine Eevee in Blender Visual effects of the models represented by red, green and blue color (from left to right) 37 38 39 Free 3D Models Poly https://poly.google.com Turbosquid https://www.turbosquid.com Unity Asset Store https://assetstore.unity.com/ CGTrader https://www.cgtrader.com/free-3d-models 40 Unity Interface A - Toolbar B - The Hierarchy Window C - The Game View D - The Scene View E - The Inspector Window F - The Project Window 41 User Interface - Toolbar On the left it contains the basic tools for manipulating the Scene view and the GameObjects within it In the centre are the play, pause and step controls In the right you have access to Unity Collaborate, Unity Cloud Services and your Unity Account Finally there is a layer visibility menu and the Editor layout menu 42 User Interface - Hierarchy window It is a hierarchical text representation of every GameObject in the Scene. Each item in the Scene has an entry in the hierarchy, so the two windows are inherently linked. The hierarchy reveals the structure of how GameObjects attach to each other 43 User Interface - Game view Simulates what your final rendered game will look like through your Scene Cameras. When you click the Play button, the simulation begins. 44 User Interface - Scene view Allows you to visually navigate and edit your Scene. The Scene view can show a 3D or 2D perspective, depending on the type of Project you are working on 45 User Interface - Inspector Window Allows you to view and edit all the properties of the currently selected GameObject. Because different types of GameObjects have different sets of properties, the layout and contents of the Inspector window change each time you select a different GameObject 46 User Interface - Project window Displays your library of Assets that are available to use in your Project. When you import Assets into your Project, they appear here 47 Assets in Unity An asset is a representation of any item you can use in your project An asset might come from a file created outside of Unity, such as a 3D Model, an audio file, or an image You can create some asset types in Unity, such as a ProBuilder Mesh, an Animator Controller, an Audio Mixer, or a Render Texture 48 How Unity Imports Assets Unity automatically imports assets and manages additional data about them: 1.
Recommended publications
  • Studio Toolkit for Flexibles 14 User Guide
    Studio Toolkit for Flexibles 14 User Guide 06 - 2015 Studio Toolkit for Flexibles Contents 1. Copyright Notice.......................................................................................................................................................................... 4 2. Introduction.....................................................................................................................................................................................6 2.1 About Studio....................................................................................................................................................................... 6 2.2 Workflow and Concepts................................................................................................................................................. 7 2.3 Quick-Start Tutorial...........................................................................................................................................................8 3. Creating a New Bag.................................................................................................................................................................12 3.1 Pillow Bags........................................................................................................................................................................13 3.1.1 Panel Order and Fin vs. Lap Seals.............................................................................................................14 3.2 Gusseted Bags.................................................................................................................................................................15
    [Show full text]
  • Compression and Streaming of Polygon Meshes
    Compression and Streaming of Polygon Meshes by Martin Isenburg A dissertation submitted to the faculty of the University of North Carolina at Chapel Hill in partial fulfillment of the requirements for the degree of Doctor of Philosophy in the Department of Computer Science. Chapel Hill 2005 Approved by: Jack Snoeyink, Advisor Craig Gotsman, Reader Peter Lindstrom, Reader Dinesh Manocha, Committee Member Ming Lin, Committee Member ii iii ABSTRACT MARTIN ISENBURG: Compression and Streaming of Polygon Meshes (Under the direction of Jack Snoeyink) Polygon meshes provide a simple way to represent three-dimensional surfaces and are the de-facto standard for interactive visualization of geometric models. Storing large polygon meshes in standard indexed formats results in files of substantial size. Such formats allow listing vertices and polygons in any order so that not only the mesh is stored but also the particular ordering of its elements. Mesh compression rearranges vertices and polygons into an order that allows more compact coding of the incidence between vertices and predictive compression of their positions. Previous schemes were designed for triangle meshes and polygonal faces were triangulated prior to compression. I show that polygon models can be encoded more compactly by avoiding the initial triangulation step. I describe two compression schemes that achieve better compression by encoding meshes directly in their polygonal representation. I demonstrate that the same holds true for volume meshes by extending one scheme to hexahedral meshes. Nowadays scientists create polygonal meshes of incredible size. Ironically, com- pression schemes are not capable|at least not on common desktop PCs|to deal with giga-byte size meshes that need compression the most.
    [Show full text]
  • Meshes and More CMSC425.01 Fall 2019 Administrivia
    Meshes and More CMSC425.01 fall 2019 Administrivia • Google form distributed for grading issues Today’s question How to represent objects Polygonal meshes • Standard representation of 3D assets • Questions: • What data and how stored? • How generate them? • How color and render them? Data structure • Geometric information • Vertices as 3D points • Topology information • Relationships between vertices • Edges and faces Vertex and fragment shaders • Mapping triangle to screen • Map and color vertices • Vertex shaders in 3D • Assemble into fragments • Render fragments • Fragment shaders in 2D Normals and shading – shading equation • Light eQuation • k terms – color of object • L terms – color of light • Ambient term - ka La • Constant at all positions • Diffuse term - kd (n • l) • Related to light direction • Specular term - (v • r)Q • Related to light, viewer direction Phong exponent • Powers of cos (v • r)Q • v and r normalized • Tightness of specular highlights • Shininess of object Normals and shading • Face normal • One per face • Vertex normal • One per vertex. More accurate • Interpolation • Gouraud: Shade at vertices, interpolate • Phong: Interpolate normals, shade Texture mapping • Vary color across figure • ka, kd and ks terms • Interpolate position inside polygon to get color • Not trivial! • Mapping complex Bump mapping • “Texture” map of • Perturbed normals (on right) • Perturbed height (on left) Summary – full polygon mesh asset • Mesh can have vertices, faces, edges plus normals • Material shader can have • Color (albedo) •
    [Show full text]
  • Notes on Polygon Meshes 1 Basic Definitions
    CMSC 23700 Introduction to Computer Graphics Handout 2 Autumn 2015 November 12 Notes on polygon meshes 1 Basic definitions Definition 1 A polygon mesh (or polymesh) is a triple (V; E; F ), where V a set of vertices (points in space) E ⊂ (V × V ) a set of edges (line segments) F ⊂ E∗ a set of faces (convex polygons) with the following properties: 1. for any v 2 V , there exists (v1; v2) 2 E such that v = v1 or v = v2. 2. for and e 2 E, there exists a face f 2 F such that e is in f. 3. if two faces intersect in space, then the vertex or edge of intersection is in the mesh. If all of the faces of a polygon mesh are triangles, then we call it a triangle mesh (trimesh). Polygons can be tessellated to form triangle meshes. Definition 2 We classify edges in a mesh based on the number of faces they are part of: • A boundary edge is part of exactly one face. • An interior edge is part of two or more faces. • A manifold edge is part of exactly two faces. • A junction edge is part of three or more faces. Junction edges are to be avoided; they can cause cracks when rendering the mesh. Definition 3 A polymesh is connected if the undirected graph G = (VF ;EE), called the dual graph, is connected, where • VF is a set of graph vertices corresponding to the faces of the mesh and • EE is a set of graph edges connecting adjacent faces.
    [Show full text]
  • Creating Simplified 3D Models with High Quality Textures
    University of Wollongong Research Online Faculty of Engineering and Information Sciences - Faculty of Engineering and Information Sciences Papers: Part A 2015 Creating Simplified 3D oM dels with High Quality Textures Song Liu University of Wollongong, [email protected] Wanqing Li University of Wollongong, [email protected] Philip O. Ogunbona University of Wollongong, [email protected] Yang-Wai Chow University of Wollongong, [email protected] Publication Details Liu, S., Li, W., Ogunbona, P. & Chow, Y. (2015). Creating Simplified 3D Models with High Quality Textures. 2015 International Conference on Digital Image Computing: Techniques and Applications, DICTA 2015 (pp. 264-271). United States of America: The Institute of Electrical and Electronics Engineers, Inc.. Research Online is the open access institutional repository for the University of Wollongong. For further information contact the UOW Library: [email protected] Creating Simplified 3D oM dels with High Quality Textures Abstract This paper presents an extension to the KinectFusion algorithm which allows creating simplified 3D models with high quality RGB textures. This is achieved through (i) creating model textures using images from an HD RGB camera that is calibrated with Kinect depth camera, (ii) using a modified scheme to update model textures in an asymmetrical colour volume that contains a higher number of voxels than that of the geometry volume, (iii) simplifying dense polygon mesh model using quadric-based mesh decimation algorithm, and (iv) creating and mapping 2D textures to every polygon in the output 3D model. The proposed method is implemented in real-Time by means of GPU parallel processing. Visualization via ray casting of both geometry and colour volumes provides users with a real-Time feedback of the currently scanned 3D model.
    [Show full text]
  • Modeling: Polygonal Mesh, Simplification, Lod, Mesh
    The Modeling-Rendering Paradigm Modeler: Renderer: EECS 487: Interactive Modeling complex shapes Vertex data • no equation For a chair, Face, etc. Fixed function transForm and Vertex shader • instead, achieve complexity using lighting Computer Graphics simple pieces • polygons, parametric surfaces, or Clip, homogeneous divide and viewport Lecture 36: implicit surfaces scene graph Rasterize • Polygonal mesh simplification • with arbitrary precision, in principle Texture stages Fragment shader Fragment merging: stencil, depth 3D Geometry Representations 2D: Range Image Represent different kinds oF inFormation: Image with depth inFormation point data, surface data, volumetric data • acquired From range scanner, incl. MicrosoFt Kinect and Google Tango Points Solids • not a complete 3D description: does not include • 2D: range image • Constructive Solid Geometry part oF object occluded From viewpoint • 3D: point cloud • Voxels Surfaces Procedural • Polygonal mesh • Particle system • Parametric surfaces • Spring-mass system Cyberware • Subdivision surfaces • Fractals • Implicit surfaces Curless Range image Tessellation Range surface Funkhouser Funkhouser, Ramamoorthi 3D: Point Cloud Surfaces Unstructured set oF 3D Boundary representation (B-reps) point samples • sometimes we only care about the surface, e.g., when Acquired From range finder rendering opaque objects and performing geometric computations Disadvantage: no structural inFo • adjacency/connectivity have to use e.g., k-nearest neighbors to compute Increasingly hot topic in graphics/vision
    [Show full text]
  • Polygonal Meshes
    Polygonal Meshes COS 426 3D Object Representations Points Solids Range image Voxels Point cloud BSP tree CSG Sweep Surfaces Polygonal mesh Subdivision High-level structures Parametric Scene graph Implicit Application specific 3D Object Representations Points Solids Range image Voxels Point cloud BSP tree CSG Sweep Surfaces Polygonal mesh Subdivision High-level structures Parametric Scene graph Implicit Application specific 3D Polygonal Mesh Set of polygons representing a 2D surface embedded in 3D Isenberg 3D Polygonal Mesh Geometry & topology Face Edge Vertex (x,y,z) Zorin & Schroeder Geometry background Scene is usually approximated by 3D primitives Point Vector Line segment Ray Line Plane Polygon 3D Point Specifies a location Represented by three coordinates Infinitely small typedef struct { Coordinate x; Coordinate y; Coordinate z; } Point; (x,y,z) Origin 3D Vector Specifies a direction and a magnitude Represented by three coordinates Magnitude ||V|| = sqrt(dx dx + dy dy + dz dz) Has no location typedef struct { (dx,dy,dz) Coordinate dx; Coordinate dy; Coordinate dz; } Vector; 3D Vector Dot product of two 3D vectors V1·V2 = ||V1 || || V2 || cos(Θ) (dx1,dy1,dz1) Θ (dx2,dy2 ,dz2) 3D Vector Cross product of two 3D vectors V1·V2 = (dy1dx2 - dz1dy2, dz1dx2 - dx1dz2, dx1dy2 - dy1dx2) V1xV2 = vector perpendicular to both V1 and V2 ||V1xV2|| = ||V1 || || V2 || sin(Θ) (dx1,dy1,dz1) Θ (dx2,dy2 ,dz2) V1xV2 3D Line Segment Linear path between two points Parametric representation: » P = P1 + t (P2 - P1),
    [Show full text]
  • Part 2 – Chapter 4: Modelling and Rendering of 3D Objects
    Part 2 – Chapter 4: Modelling and Rendering of 3D Objects 4.1 3D Shape Representations 4.2 Example: Rendering 3D objects using OpenGL 4.3 Depth Buffer - Handling occlusion in 3D 4.4 Double Buffering - Rendering animated objects 4.5 Vertex colours & colour interpolation - Increasing realism 4.6 Backface culling – Increasing efficiency 4.7 Modelling and Animation Tools © 2017 Burkhard Wuensche Dept. of Computer Science, University of Auckland COMPSCI 373 Computer Graphics & Image Processing 2 Polygonmesh The most suitable shape representation Parametric Surface depends on the application => IMPORTANT DESIGN DECISION Subdivison Surface Implicit Surface Constructive Solid Geometry Point Cloud © 2017 Burkhard Wuensche Dept. of Computer Science, University of Auckland COMPSCI 373 Computer Graphics & Image Processing 3 Defined by a set of vertices and a set of faces Faces are (usually) quadrilaterals or triangles The illusion of a solid 3D object is achieved by representing the object’s boundary surface with a polygon mesh © 2017 Burkhard Wuensche Dept. of Computer Science, University of Auckland COMPSCI 373 Computer Graphics & Image Processing 4 Advantages Disadvantages • Easy to define - just • Impractical for everything but the define vertex positions most basic meshes and connectivity • Time-consuming • No control over shape properties (e.g. curvature, smoothness) 1’ 10’ 8’ 6 56’5’ 1 10 8 7 3 3’ 9 2 2’ 4’ 4 © 2017 Burkhard Wuensche Dept. of Computer Science, University of Auckland COMPSCI 373 Computer Graphics & Image Processing 5 Defined as function p(s,t)=(x(s,t), y(s,t), z(s,t)) Direct definition is difficult, but we can use spline surfaces where surfaces are defined using control points, e.g.
    [Show full text]
  • Visualizing with Microstation Course Guide
    Visualizing with MicroStation Course Guide TRN001370-1/0001 Trademarks AccuDraw, the “B” Bentley logo, MDL, MicroStation, MicroStationCSP, MicroStation Modeler, MicroStation PowerDraft, MicroStation Review, MicroStation Vault, QuickVision, SmartLine and TeamMate are registered trademarks of Bentley Systems, Incorporated. Bentley, MicroStation MasterPiece and PowerScope are trademarks of Bentley Systems, Incorporated. Bentley SELECT is a service mark of Bentley Systems, Incorporated. HMR and Image Manager are trademarks of HMR Inc. Adobe, the Adobe logo, Acrobat, the Acrobat logo, Distiller, Exchange, and PostScript are trademarks of Adobe Systems Incorporated. Windows is a registered trademark and Win32s is a trademark of Microsoft Corporation. Other brands and product names are the trademarks of their respective owners. Copyrights 1997 Bentley Systems, Incorporated. MicroStation® 95 1995 Bentley Systems, Incorporated. ©1997 HMR Inc. All rights reserved. MicroStation Image Manager ©1997 HMR Inc. ©1996 LCS/Telegraphics. Portions of QuickVision are ©1993-1995 Criterion Software Ltd. and its licensors. Portions of QuickVision were developed by the CAD Perfect Development Laboratory. Portions 1992-1997 Spotlight Graphics, Inc. Portions 1993-1995 Spyglass, Inc. IGDS file formats 1987-1994 Intergraph Corporation. Intergraph Raster File Formats 1994 Intergraph Corporation Used with permission. Portions 1992-1994 Summit Software Company. Unpublished – rights reserved under the copyright laws of the United States. Visualizing with MicroStation
    [Show full text]
  • Modifing Thingiverse Model in Blender
    Modifing Thingiverse Model In Blender Godard usually approbating proportionately or lixiviate cooingly when artier Wyn niello lastingly and forwardly. Euclidean Raoul still frivolling: antiphonic and indoor Ansell mildew quite fatly but redipped her exotoxin eligibly. Exhilarating and uncarted Manuel often discomforts some Roosevelt intimately or twaddles parabolically. Why not built into inventor using thingiverse blender sculpt the model window Logo simple metal, blender to thingiverse all your scene of the combined and. Your blender is in blender to empower the! This model then merging some models with blender also the thingiverse me who as! Cam can also fits a thingiverse in your model which are interchangeably used software? Stl files software is thingiverse blender resize designs directly from the toolbar from scratch to mark parts of the optics will be to! Another method for linux blender, in thingiverse and reusable components may. Svg export new geometrics works, after hours and drop or another one of hobbyist projects its huge user community gallery to the day? You blender model is thingiverse all models working choice for modeling meaning you can be. However in blender by using the product. Open in blender resize it original shape modeling software for a problem indeed delete this software for a copy. Stl file blender and thingiverse all the stl files using a screenshot? Another one modifing thingiverse model in blender is likely that. If we are in thingiverse object you to modeling are. Stl for not choose another source. The model in handy later. The correct dimensions then press esc to animation and exporting into many brands and exported file with the.
    [Show full text]
  • GPU Volume Voxelization Exploration of the Performance Characteristics of Different GPU-Based Implementations
    EXAMENSARBETE INOM TEKNIK, GRUNDNIVÅ, 15 HP STOCKHOLM, SVERIGE 2019 GPU Volume Voxelization Exploration of the performance characteristics of different GPU-based implementations GRIGORY GLUKHOV ALEKSANDRA SOLTAN KTH SKOLAN FÖR ELEKTROTEKNIK OCH DATAVETENSKAP GPU Volume Voxelization Exploration of the performance characteris- tics of different GPU-based implementations Aleksandra Soltan Grigory Glukhov Examiner Johan Montelius Supervisor Thomas Sjöland A thesis presented for the degree of Bachelor of Information and Communication Technology KTH Royal Institute of Technology School of Electrical Engineering and Computer Science SE-100 44 Stockholm, Sweden June 2019 page intentionally left blank 1 Abstract In recent years, voxel-based modelling has seen a reintroduction to computer game development through massive graphics hardware improvements. Never- theless, polygons continue to be the default building block of 3D objects, intro- ducing a need for the transformation of polygon meshes into voxel-based models; this process is known as voxelization. Efficient voxelization algorithms take ad- vantage of the flexibility and control offered by modern, programmable GPU pipelines. However, the variability in possible approaches poses the question of how different GPU-based implementations affect voxelization performance. This thesis explores the impact of GPU-based improvements by comparing four different implementations of a solid voxelization algorithm. The implemen- tations include a naive transition from the CPU to the GPU, a non-branching execution path approach, data pre-processing, and a combination of the two previous approaches. Benchmarking experiments run on four, standard polygo- nal models and three graphics cards (NVIDIA and AMD) provide runtime and memory usage data for each implementation. A comparative analysis is per- formed on the basis of this data to determine the performance impact of the GPU-based adjustments to the voxelization algorithm implementation.
    [Show full text]
  • Reading and Voxelization of 3D Models
    Available online www.jocpr.com Journal of Chemical and Pharmaceutical Research, 2013, 5(9):420-427 ISSN : 0975-7384 Research Article CODEN(USA) : JCPRC5 Reading and voxelization of 3D models Xu Haili, Wang Heng, Zhu Longbiao and Hua Guoran School of Mechanical Engineering, Nantong University, Nantong, Jiangsu, China __________________________________________________________________________________________ ABSTRACT 3D models have got widespread attention in graphics currently. Most 3D models are used for visual calculation, but they only contain geometric and appearance properties and the description of high-level semantic features suitable for automatically matching are very little. So, how to reasonably describe 3D models (feature extraction) is a difficult problem of the prime importance. Voxelization just can solve this problem. The voxel model is helpful for regularization of 3D models and is convenient to extract models’ characteristic signals. This paper proposed a voxelization method based on edclidean distance measurement to voxelize models’ vertices, edges and faces. Experiment results indicated that the method is efficient and effective for generating correct entity voxel models. Keywords: 3D models, voxelization, polygonal meshes, OpenGL __________________________________________________________________________________________ INTRODUCTION Following sound, images and video signal, 3D models have got widespread attention in graphics since 90's of 20th century. 3D models are widely used in image processing, animation simulation, entertainment and gaming and geometric modeling etc, which tend to replace 2D drawings in engineering design. Most 3D models are used for visual calculation. They only contain geometric and appearance properties, and the description of high-level semantic features suitable for automatically matching are very little. So, how to reasonably describe 3D models (feature extraction) is a difficult problem of the prime importance[1].
    [Show full text]