SlideShare une entreprise Scribd logo
1  sur  26
INTRODUCTION TO 3D
Michael Heron
INTRODUCTION
 For the next three weeks we will be talking about
3D graphics.
 Specifically, 3D graphics using the open source blender
package.
 Module will concentrate on technical content.
 I have absolutely no artistic skill in the slightest.
 Seriously.
 Content time broken up into:
 Two lectures
 One tutorial
 One lab prep
 Four hour lab slot
GRAPHICS
 Graphical images on a computer monitor are made
up of 2D arrays of pixels.
 The number of pixels in that array is dependant on the
system’s resolution.
 Pixels represent a single element of an image.
 Represented by a colour code.
 Pixels have a depth.
 Represents the expressive palette of colours.
 8 bit depth represents 256 colours
 24 bit represents 16.8 million colours
COLOUR REPRESENTATION
 Colours are usually represented by an RGB value.
 An array of three digits corresponding to the blend of
colours.
 An RGB value of {0,0,0} represents white.
 An RGB value of {255,255,255} represents black.
 Other colours made up of points in-between.
4-BIT COLOUR
8-BIT COLOUR PALETTE
© Lucasarts, 1990
24-BIT COLOUR PALETTE
© Lucasarts, 2009
DISPLAYING GRAPHICAL INFORMATION
 Graphics are displayed on a computer monitor
using rasters.
 Lines of pixels.
 CRT monitors make use of electron guns to display
images on the screen.
 Three guns (red, green, blue)
 Guns fire beams at the phosphor coating on the inside
of the monitor.
 This occurs many times per second.
 Governed by the monitor’s refresh rate.
DISPLAYING GRAPHICAL INFORMATION
 An LCD works somewhat differently.
 A backlight is used to create light
 This light passes through two substrates of polarised
glass.
 While this is happening, an electrical current causes the
crystals within the substrates to align.
 The combination of these substrates allows for the desired
colours to appear at the appropriate point.
 There are other ways too
 Not important at this time.
REPRESENTING GRAPHICS (2D)
 Two main way of representing graphics in a
computer.
 Rasters, comprised of arrays of pixels.
 Vectors, comprised of collections of objects expressed
as mathematical formulae.
 Rasters used to represent photographs and other
such bitmaps.
 Vectors used to represent more asbtract models.
REPRESENTING GRAPHICS (3D)
 In three dimensions, vectors are used almost
exclusively for representing shapes.
 Images built up of collections of vertices, points, and
polygons.
DIFFERENCES IN REPRESENTATION
 2D Images
 Raster
 Permits great amounts of detail but no representation of
relationship between objects.
 Substantial file size
 Vector
 Permits relationship of objects.
 Minimal details permitted
 Difficult to represent details using basic shapes
 Several trade offs
 Processing Power
 Realism
 Modifiability
 Expressive Potential.
3D GRAPHICS
 Complex 3D scenes can be created as 2D images.
 Often done using ray-tracing or other technologies.
 Not real-time
 Goal of 3D graphics is to permit photorealistic
representations of complex spatial topographies.
 Difficult task
 Requires much investment in building environments and
objects within them
 Many applications require real-time rendering.
 Games
PHOTOREALISM
 3D Graphics seeks to achieve photrealism by:
 Vector representation of 3D Objects
 Texturing of 3D objects in materials
 Interaction of light on objects
 Shadows
 Reflections
 Colour
 Glare
 Photorealism is important for many contexts.
 Simulation, entertainment, research, medical teaching
3D ON A COMPUTER
 Not possible to show 3D images on a computer.
 Monitor is an inherently 2D device.
 Techniques are used to simulate the appearance
of three dimensions.
 Use of perspective, layering, projection of a plane onto
a fixed view.
 Many different interacting parts.
3D MODELLING
 3D Modelling is a multi-stage process.
 Representation
 Build a model of 3D Objects
 Shapes
 Surface textures
 Sometimes using bitmaps.
 Rendering
 Geometric translations
 Projection to 2D
 Light representation
THE CARTESIAN PLANE
SIMPLE 3D OBJECT
(x1,y1,z1) (x2,y2,z2)
(x3,y3,z3)
(x4,y4,z4)
(x5,y5,z5) (x6,y6,z6)
(x7,y7,z7)(x8,y8,z8)
© Glenn Rowe
MORE COMPLEX REPRESENTATIONS
http://www.fallingpixel.com/3d-models/13227
3D REPRESENTATIONS
 Complex shapes represented by polygons
 Triangles and Rectangles mostly
 Number of polygons defines the accuracy of the
representation
http://www.nvnews.net/reviews/evolva_preview.shtml
TRANSFORMATIONS
 Transformations used in 3D to manipulate images.
 Three main transformations used in Blender.
 Grab (translate)
 Used to move shapes around fixed axis
 Rotate
 Used to rotate shapes around a fixed axis
 Scale
 Used to scale shapes up or down
 Underlying representation done using matrix
manipulation.
PROJECTION
 Projection is the process that transforms 3D objects
onto a 2D plane.
 Three co-ordinate models.
 Local, defines the shape’s vertexes
 World space, defines the shape in relation to other shapes.
 Viewing space, defines the location and size of the shape
when displayed on the monitor.
 Process turns {x,y,z} into just {x,y}
PROJECTION STYLES
 Parallel Projection
 Shows relationship between objects
 Not realistic
View plane
3D object
PROJECTION STYLES
 Perspective Projection
 Represents objects more realistically by converging
vertexes at a point.
 Foreshortening permits perspective.
View plane
3D object
Centre of projection
PROJECTION
 Both assume a camera location.
 The camera defines our view on the world.
 To change the view of an object, we can:
 Move the camera
 Move the object.
 Must get our heads around a viewport that has no
fixed representation in the world space.
SUMMARY
 Next three weeks about 3D graphics.
 Using Blender.
 3D Graphics consist of
 Representation of objects
 Representation of a world
 Representation of a view port
 Rendering
 Complex transforms applied to turn 3D
representation into 2D view.

Contenu connexe

Tendances

Raster scan systems with video controller and display processor
Raster scan systems with video controller and display processorRaster scan systems with video controller and display processor
Raster scan systems with video controller and display processorhemanth kumar
 
Line drawing algo.
Line drawing algo.Line drawing algo.
Line drawing algo.Mohd Arif
 
Introduction to computer graphics
Introduction to computer graphics Introduction to computer graphics
Introduction to computer graphics Priyodarshini Dhar
 
2D transformation (Computer Graphics)
2D transformation (Computer Graphics)2D transformation (Computer Graphics)
2D transformation (Computer Graphics)Timbal Mayank
 
Computer graphics
Computer graphicsComputer graphics
Computer graphicsMohsin Azam
 
Raster animation
Raster animationRaster animation
Raster animationabhijit754
 
Applications Of Computer Graphics
Applications Of Computer GraphicsApplications Of Computer Graphics
Applications Of Computer GraphicsMuhammad Amjad Rana
 
applications of computer graphics
applications of computer graphicsapplications of computer graphics
applications of computer graphicsAaina Katyal
 
Multimedia And Animation
Multimedia And AnimationMultimedia And Animation
Multimedia And AnimationRam Dutt Shukla
 
Scan line method
Scan line methodScan line method
Scan line methodPooja Dixit
 
Mid point circle algorithm
Mid point circle algorithmMid point circle algorithm
Mid point circle algorithmMani Kanth
 
Vector graphics
Vector graphicsVector graphics
Vector graphicslenance
 

Tendances (20)

Raster scan systems with video controller and display processor
Raster scan systems with video controller and display processorRaster scan systems with video controller and display processor
Raster scan systems with video controller and display processor
 
Computer Graphics
Computer GraphicsComputer Graphics
Computer Graphics
 
Introduction to 2D/3D Graphics
Introduction to 2D/3D GraphicsIntroduction to 2D/3D Graphics
Introduction to 2D/3D Graphics
 
Line drawing algo.
Line drawing algo.Line drawing algo.
Line drawing algo.
 
Introduction to computer graphics
Introduction to computer graphics Introduction to computer graphics
Introduction to computer graphics
 
3D Modelling and Animation
3D Modelling and Animation3D Modelling and Animation
3D Modelling and Animation
 
Computer graphics
Computer graphicsComputer graphics
Computer graphics
 
ANIMATION SEQUENCE
ANIMATION SEQUENCEANIMATION SEQUENCE
ANIMATION SEQUENCE
 
Applications of computer graphics
Applications of computer graphicsApplications of computer graphics
Applications of computer graphics
 
2D transformation (Computer Graphics)
2D transformation (Computer Graphics)2D transformation (Computer Graphics)
2D transformation (Computer Graphics)
 
Computer graphics
Computer graphicsComputer graphics
Computer graphics
 
Raster animation
Raster animationRaster animation
Raster animation
 
Applications Of Computer Graphics
Applications Of Computer GraphicsApplications Of Computer Graphics
Applications Of Computer Graphics
 
Dda algorithm
Dda algorithmDda algorithm
Dda algorithm
 
Object representations
Object representationsObject representations
Object representations
 
applications of computer graphics
applications of computer graphicsapplications of computer graphics
applications of computer graphics
 
Multimedia And Animation
Multimedia And AnimationMultimedia And Animation
Multimedia And Animation
 
Scan line method
Scan line methodScan line method
Scan line method
 
Mid point circle algorithm
Mid point circle algorithmMid point circle algorithm
Mid point circle algorithm
 
Vector graphics
Vector graphicsVector graphics
Vector graphics
 

En vedette

Two dimensional geometric transformations
Two dimensional geometric transformationsTwo dimensional geometric transformations
Two dimensional geometric transformationsMohammad Sadiq
 
Projection In Computer Graphics
Projection In Computer GraphicsProjection In Computer Graphics
Projection In Computer GraphicsSanu Philip
 
3D transformation in computer graphics
3D transformation in computer graphics3D transformation in computer graphics
3D transformation in computer graphicsSHIVANI SONI
 
3D visualisation - Chris Friel
3D visualisation - Chris Friel3D visualisation - Chris Friel
3D visualisation - Chris Frielartless_images
 
WebGL: 3D Graphics for the Web
WebGL: 3D Graphics for the WebWebGL: 3D Graphics for the Web
WebGL: 3D Graphics for the WebShritesh Bhattarai
 
Geometric transformation cg
Geometric transformation cgGeometric transformation cg
Geometric transformation cgharinipriya1994
 
B.how to face_technological_tsunami_clustering_.pmi
B.how to face_technological_tsunami_clustering_.pmiB.how to face_technological_tsunami_clustering_.pmi
B.how to face_technological_tsunami_clustering_.pmigunseli
 
Lecture 1.1 - Terms & Concepts
Lecture 1.1 - Terms & ConceptsLecture 1.1 - Terms & Concepts
Lecture 1.1 - Terms & Conceptsmgordon320
 
Gamemaker lesson 1
Gamemaker lesson 1Gamemaker lesson 1
Gamemaker lesson 1iain bruce
 
Launch of 3D project
Launch of 3D projectLaunch of 3D project
Launch of 3D projectiain bruce
 
Intro to 3D modeling a human
Intro to 3D modeling a human Intro to 3D modeling a human
Intro to 3D modeling a human iain bruce
 
3D Graphics
3D Graphics3D Graphics
3D GraphicsViTAly
 
CG OpenGL 3D viewing-course 7
CG OpenGL 3D viewing-course 7CG OpenGL 3D viewing-course 7
CG OpenGL 3D viewing-course 7fungfung Chen
 
[Android] 2D Graphics
[Android] 2D Graphics[Android] 2D Graphics
[Android] 2D GraphicsNikmesoft Ltd
 
Computer_Graphics_basic_definitions_summary
Computer_Graphics_basic_definitions_summaryComputer_Graphics_basic_definitions_summary
Computer_Graphics_basic_definitions_summaryDr. Mohamed Kazim
 

En vedette (20)

3 d
3 d3 d
3 d
 
3 D Graphics
3 D Graphics3 D Graphics
3 D Graphics
 
Two dimensional geometric transformations
Two dimensional geometric transformationsTwo dimensional geometric transformations
Two dimensional geometric transformations
 
Projection In Computer Graphics
Projection In Computer GraphicsProjection In Computer Graphics
Projection In Computer Graphics
 
3D transformation in computer graphics
3D transformation in computer graphics3D transformation in computer graphics
3D transformation in computer graphics
 
Ai3D_2016_
Ai3D_2016_Ai3D_2016_
Ai3D_2016_
 
3D visualisation - Chris Friel
3D visualisation - Chris Friel3D visualisation - Chris Friel
3D visualisation - Chris Friel
 
WebGL: 3D Graphics for the Web
WebGL: 3D Graphics for the WebWebGL: 3D Graphics for the Web
WebGL: 3D Graphics for the Web
 
Planning
PlanningPlanning
Planning
 
Cgmodule
CgmoduleCgmodule
Cgmodule
 
Geometric transformation cg
Geometric transformation cgGeometric transformation cg
Geometric transformation cg
 
B.how to face_technological_tsunami_clustering_.pmi
B.how to face_technological_tsunami_clustering_.pmiB.how to face_technological_tsunami_clustering_.pmi
B.how to face_technological_tsunami_clustering_.pmi
 
Lecture 1.1 - Terms & Concepts
Lecture 1.1 - Terms & ConceptsLecture 1.1 - Terms & Concepts
Lecture 1.1 - Terms & Concepts
 
Gamemaker lesson 1
Gamemaker lesson 1Gamemaker lesson 1
Gamemaker lesson 1
 
Launch of 3D project
Launch of 3D projectLaunch of 3D project
Launch of 3D project
 
Intro to 3D modeling a human
Intro to 3D modeling a human Intro to 3D modeling a human
Intro to 3D modeling a human
 
3D Graphics
3D Graphics3D Graphics
3D Graphics
 
CG OpenGL 3D viewing-course 7
CG OpenGL 3D viewing-course 7CG OpenGL 3D viewing-course 7
CG OpenGL 3D viewing-course 7
 
[Android] 2D Graphics
[Android] 2D Graphics[Android] 2D Graphics
[Android] 2D Graphics
 
Computer_Graphics_basic_definitions_summary
Computer_Graphics_basic_definitions_summaryComputer_Graphics_basic_definitions_summary
Computer_Graphics_basic_definitions_summary
 

Similaire à GRPHICS01 - Introduction to 3D Graphics

Multimedia digital images
 Multimedia  digital images Multimedia  digital images
Multimedia digital imagesMohammad Dwikat
 
Beginning direct3d gameprogramming01_thehistoryofdirect3dgraphics_20160407_ji...
Beginning direct3d gameprogramming01_thehistoryofdirect3dgraphics_20160407_ji...Beginning direct3d gameprogramming01_thehistoryofdirect3dgraphics_20160407_ji...
Beginning direct3d gameprogramming01_thehistoryofdirect3dgraphics_20160407_ji...JinTaek Seo
 
Digital Coding of Images.pptx
Digital Coding of Images.pptxDigital Coding of Images.pptx
Digital Coding of Images.pptxemsResulzade1
 
Computer Graphics Power Point using Open GL and C Programming
Computer Graphics Power Point using Open GL and C ProgrammingComputer Graphics Power Point using Open GL and C Programming
Computer Graphics Power Point using Open GL and C Programmingkemal678348
 
Game development terminologies
Game development terminologiesGame development terminologies
Game development terminologiesAhmed Badr
 
Image_Processing_LECTURE_c#_programming.ppt
Image_Processing_LECTURE_c#_programming.pptImage_Processing_LECTURE_c#_programming.ppt
Image_Processing_LECTURE_c#_programming.pptLOUISSEVERINOROMANO
 
CS 354 Texture Mapping
CS 354 Texture MappingCS 354 Texture Mapping
CS 354 Texture MappingMark Kilgard
 
Raster vs Vector
Raster vs VectorRaster vs Vector
Raster vs Vectorakn4fotos
 
Image segmentation ajal
Image segmentation ajalImage segmentation ajal
Image segmentation ajalAJAL A J
 
GIS Raster vs Vector for Forestry Class.pdf
GIS Raster vs Vector for Forestry Class.pdfGIS Raster vs Vector for Forestry Class.pdf
GIS Raster vs Vector for Forestry Class.pdfForestmensuration
 
study Diffusion Curves: A Vector Representation for Smooth-Shaded Images
study Diffusion Curves: A Vector Representation for Smooth-Shaded Imagesstudy Diffusion Curves: A Vector Representation for Smooth-Shaded Images
study Diffusion Curves: A Vector Representation for Smooth-Shaded ImagesChiamin Hsu
 
Fundamentals Image and Graphics
Fundamentals Image and GraphicsFundamentals Image and Graphics
Fundamentals Image and GraphicsShrawan Adhikari
 
Graphics pipelining
Graphics pipeliningGraphics pipelining
Graphics pipeliningAreena Javed
 
Steam presentation deux 3 d prints from photographs
Steam presentation deux  3 d prints from photographsSteam presentation deux  3 d prints from photographs
Steam presentation deux 3 d prints from photographsScott Eastellerson
 

Similaire à GRPHICS01 - Introduction to 3D Graphics (20)

Multimedia digital images
 Multimedia  digital images Multimedia  digital images
Multimedia digital images
 
Beginning direct3d gameprogramming01_thehistoryofdirect3dgraphics_20160407_ji...
Beginning direct3d gameprogramming01_thehistoryofdirect3dgraphics_20160407_ji...Beginning direct3d gameprogramming01_thehistoryofdirect3dgraphics_20160407_ji...
Beginning direct3d gameprogramming01_thehistoryofdirect3dgraphics_20160407_ji...
 
Graphics
GraphicsGraphics
Graphics
 
Computer graphics
Computer graphicsComputer graphics
Computer graphics
 
Digital Coding of Images.pptx
Digital Coding of Images.pptxDigital Coding of Images.pptx
Digital Coding of Images.pptx
 
Digital image
Digital imageDigital image
Digital image
 
A0280105
A0280105A0280105
A0280105
 
Computer Graphics Power Point using Open GL and C Programming
Computer Graphics Power Point using Open GL and C ProgrammingComputer Graphics Power Point using Open GL and C Programming
Computer Graphics Power Point using Open GL and C Programming
 
Game development terminologies
Game development terminologiesGame development terminologies
Game development terminologies
 
Image_Processing_LECTURE_c#_programming.ppt
Image_Processing_LECTURE_c#_programming.pptImage_Processing_LECTURE_c#_programming.ppt
Image_Processing_LECTURE_c#_programming.ppt
 
CS 354 Texture Mapping
CS 354 Texture MappingCS 354 Texture Mapping
CS 354 Texture Mapping
 
Raster vs Vector
Raster vs VectorRaster vs Vector
Raster vs Vector
 
Chap9 10
Chap9 10Chap9 10
Chap9 10
 
RastervsVector.ppt
RastervsVector.pptRastervsVector.ppt
RastervsVector.ppt
 
Image segmentation ajal
Image segmentation ajalImage segmentation ajal
Image segmentation ajal
 
GIS Raster vs Vector for Forestry Class.pdf
GIS Raster vs Vector for Forestry Class.pdfGIS Raster vs Vector for Forestry Class.pdf
GIS Raster vs Vector for Forestry Class.pdf
 
study Diffusion Curves: A Vector Representation for Smooth-Shaded Images
study Diffusion Curves: A Vector Representation for Smooth-Shaded Imagesstudy Diffusion Curves: A Vector Representation for Smooth-Shaded Images
study Diffusion Curves: A Vector Representation for Smooth-Shaded Images
 
Fundamentals Image and Graphics
Fundamentals Image and GraphicsFundamentals Image and Graphics
Fundamentals Image and Graphics
 
Graphics pipelining
Graphics pipeliningGraphics pipelining
Graphics pipelining
 
Steam presentation deux 3 d prints from photographs
Steam presentation deux  3 d prints from photographsSteam presentation deux  3 d prints from photographs
Steam presentation deux 3 d prints from photographs
 

Plus de Michael Heron

Meeple centred design - Board Game Accessibility
Meeple centred design - Board Game AccessibilityMeeple centred design - Board Game Accessibility
Meeple centred design - Board Game AccessibilityMichael Heron
 
Musings on misconduct
Musings on misconductMusings on misconduct
Musings on misconductMichael Heron
 
Accessibility Support with the ACCESS Framework
Accessibility Support with the ACCESS FrameworkAccessibility Support with the ACCESS Framework
Accessibility Support with the ACCESS FrameworkMichael Heron
 
ACCESS: A Technical Framework for Adaptive Accessibility Support
ACCESS:  A Technical Framework for Adaptive Accessibility SupportACCESS:  A Technical Framework for Adaptive Accessibility Support
ACCESS: A Technical Framework for Adaptive Accessibility SupportMichael Heron
 
Authorship and Autership
Authorship and AutershipAuthorship and Autership
Authorship and AutershipMichael Heron
 
Text parser based interaction
Text parser based interactionText parser based interaction
Text parser based interactionMichael Heron
 
GRPHICS08 - Raytracing and Radiosity
GRPHICS08 - Raytracing and RadiosityGRPHICS08 - Raytracing and Radiosity
GRPHICS08 - Raytracing and RadiosityMichael Heron
 
GRPHICS07 - Textures
GRPHICS07 - TexturesGRPHICS07 - Textures
GRPHICS07 - TexturesMichael Heron
 
GRPHICS05 - Rendering (2)
GRPHICS05 - Rendering (2)GRPHICS05 - Rendering (2)
GRPHICS05 - Rendering (2)Michael Heron
 
GRPHICS04 - Rendering (1)
GRPHICS04 - Rendering (1)GRPHICS04 - Rendering (1)
GRPHICS04 - Rendering (1)Michael Heron
 
GRPHICS03 - Graphical Representation
GRPHICS03 - Graphical RepresentationGRPHICS03 - Graphical Representation
GRPHICS03 - Graphical RepresentationMichael Heron
 
GRPHICS02 - Creating 3D Graphics
GRPHICS02 - Creating 3D GraphicsGRPHICS02 - Creating 3D Graphics
GRPHICS02 - Creating 3D GraphicsMichael Heron
 
GRPHICS09 - Art Appreciation
GRPHICS09 - Art AppreciationGRPHICS09 - Art Appreciation
GRPHICS09 - Art AppreciationMichael Heron
 
2CPP14 - Abstraction
2CPP14 - Abstraction2CPP14 - Abstraction
2CPP14 - AbstractionMichael Heron
 

Plus de Michael Heron (20)

Meeple centred design - Board Game Accessibility
Meeple centred design - Board Game AccessibilityMeeple centred design - Board Game Accessibility
Meeple centred design - Board Game Accessibility
 
Musings on misconduct
Musings on misconductMusings on misconduct
Musings on misconduct
 
Accessibility Support with the ACCESS Framework
Accessibility Support with the ACCESS FrameworkAccessibility Support with the ACCESS Framework
Accessibility Support with the ACCESS Framework
 
ACCESS: A Technical Framework for Adaptive Accessibility Support
ACCESS:  A Technical Framework for Adaptive Accessibility SupportACCESS:  A Technical Framework for Adaptive Accessibility Support
ACCESS: A Technical Framework for Adaptive Accessibility Support
 
Authorship and Autership
Authorship and AutershipAuthorship and Autership
Authorship and Autership
 
Text parser based interaction
Text parser based interactionText parser based interaction
Text parser based interaction
 
SAD04 - Inheritance
SAD04 - InheritanceSAD04 - Inheritance
SAD04 - Inheritance
 
GRPHICS08 - Raytracing and Radiosity
GRPHICS08 - Raytracing and RadiosityGRPHICS08 - Raytracing and Radiosity
GRPHICS08 - Raytracing and Radiosity
 
GRPHICS07 - Textures
GRPHICS07 - TexturesGRPHICS07 - Textures
GRPHICS07 - Textures
 
GRPHICS06 - Shading
GRPHICS06 - ShadingGRPHICS06 - Shading
GRPHICS06 - Shading
 
GRPHICS05 - Rendering (2)
GRPHICS05 - Rendering (2)GRPHICS05 - Rendering (2)
GRPHICS05 - Rendering (2)
 
GRPHICS04 - Rendering (1)
GRPHICS04 - Rendering (1)GRPHICS04 - Rendering (1)
GRPHICS04 - Rendering (1)
 
GRPHICS03 - Graphical Representation
GRPHICS03 - Graphical RepresentationGRPHICS03 - Graphical Representation
GRPHICS03 - Graphical Representation
 
GRPHICS02 - Creating 3D Graphics
GRPHICS02 - Creating 3D GraphicsGRPHICS02 - Creating 3D Graphics
GRPHICS02 - Creating 3D Graphics
 
GRPHICS09 - Art Appreciation
GRPHICS09 - Art AppreciationGRPHICS09 - Art Appreciation
GRPHICS09 - Art Appreciation
 
2CPP18 - Modifiers
2CPP18 - Modifiers2CPP18 - Modifiers
2CPP18 - Modifiers
 
2CPP17 - File IO
2CPP17 - File IO2CPP17 - File IO
2CPP17 - File IO
 
2CPP16 - STL
2CPP16 - STL2CPP16 - STL
2CPP16 - STL
 
2CPP15 - Templates
2CPP15 - Templates2CPP15 - Templates
2CPP15 - Templates
 
2CPP14 - Abstraction
2CPP14 - Abstraction2CPP14 - Abstraction
2CPP14 - Abstraction
 

Dernier

Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...apidays
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024The Digital Insurer
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbuapidays
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 

Dernier (20)

Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 

GRPHICS01 - Introduction to 3D Graphics

  • 2. INTRODUCTION  For the next three weeks we will be talking about 3D graphics.  Specifically, 3D graphics using the open source blender package.  Module will concentrate on technical content.  I have absolutely no artistic skill in the slightest.  Seriously.  Content time broken up into:  Two lectures  One tutorial  One lab prep  Four hour lab slot
  • 3. GRAPHICS  Graphical images on a computer monitor are made up of 2D arrays of pixels.  The number of pixels in that array is dependant on the system’s resolution.  Pixels represent a single element of an image.  Represented by a colour code.  Pixels have a depth.  Represents the expressive palette of colours.  8 bit depth represents 256 colours  24 bit represents 16.8 million colours
  • 4. COLOUR REPRESENTATION  Colours are usually represented by an RGB value.  An array of three digits corresponding to the blend of colours.  An RGB value of {0,0,0} represents white.  An RGB value of {255,255,255} represents black.  Other colours made up of points in-between.
  • 6. 8-BIT COLOUR PALETTE © Lucasarts, 1990
  • 7. 24-BIT COLOUR PALETTE © Lucasarts, 2009
  • 8. DISPLAYING GRAPHICAL INFORMATION  Graphics are displayed on a computer monitor using rasters.  Lines of pixels.  CRT monitors make use of electron guns to display images on the screen.  Three guns (red, green, blue)  Guns fire beams at the phosphor coating on the inside of the monitor.  This occurs many times per second.  Governed by the monitor’s refresh rate.
  • 9. DISPLAYING GRAPHICAL INFORMATION  An LCD works somewhat differently.  A backlight is used to create light  This light passes through two substrates of polarised glass.  While this is happening, an electrical current causes the crystals within the substrates to align.  The combination of these substrates allows for the desired colours to appear at the appropriate point.  There are other ways too  Not important at this time.
  • 10. REPRESENTING GRAPHICS (2D)  Two main way of representing graphics in a computer.  Rasters, comprised of arrays of pixels.  Vectors, comprised of collections of objects expressed as mathematical formulae.  Rasters used to represent photographs and other such bitmaps.  Vectors used to represent more asbtract models.
  • 11. REPRESENTING GRAPHICS (3D)  In three dimensions, vectors are used almost exclusively for representing shapes.  Images built up of collections of vertices, points, and polygons.
  • 12. DIFFERENCES IN REPRESENTATION  2D Images  Raster  Permits great amounts of detail but no representation of relationship between objects.  Substantial file size  Vector  Permits relationship of objects.  Minimal details permitted  Difficult to represent details using basic shapes  Several trade offs  Processing Power  Realism  Modifiability  Expressive Potential.
  • 13. 3D GRAPHICS  Complex 3D scenes can be created as 2D images.  Often done using ray-tracing or other technologies.  Not real-time  Goal of 3D graphics is to permit photorealistic representations of complex spatial topographies.  Difficult task  Requires much investment in building environments and objects within them  Many applications require real-time rendering.  Games
  • 14. PHOTOREALISM  3D Graphics seeks to achieve photrealism by:  Vector representation of 3D Objects  Texturing of 3D objects in materials  Interaction of light on objects  Shadows  Reflections  Colour  Glare  Photorealism is important for many contexts.  Simulation, entertainment, research, medical teaching
  • 15. 3D ON A COMPUTER  Not possible to show 3D images on a computer.  Monitor is an inherently 2D device.  Techniques are used to simulate the appearance of three dimensions.  Use of perspective, layering, projection of a plane onto a fixed view.  Many different interacting parts.
  • 16. 3D MODELLING  3D Modelling is a multi-stage process.  Representation  Build a model of 3D Objects  Shapes  Surface textures  Sometimes using bitmaps.  Rendering  Geometric translations  Projection to 2D  Light representation
  • 18. SIMPLE 3D OBJECT (x1,y1,z1) (x2,y2,z2) (x3,y3,z3) (x4,y4,z4) (x5,y5,z5) (x6,y6,z6) (x7,y7,z7)(x8,y8,z8) © Glenn Rowe
  • 20. 3D REPRESENTATIONS  Complex shapes represented by polygons  Triangles and Rectangles mostly  Number of polygons defines the accuracy of the representation http://www.nvnews.net/reviews/evolva_preview.shtml
  • 21. TRANSFORMATIONS  Transformations used in 3D to manipulate images.  Three main transformations used in Blender.  Grab (translate)  Used to move shapes around fixed axis  Rotate  Used to rotate shapes around a fixed axis  Scale  Used to scale shapes up or down  Underlying representation done using matrix manipulation.
  • 22. PROJECTION  Projection is the process that transforms 3D objects onto a 2D plane.  Three co-ordinate models.  Local, defines the shape’s vertexes  World space, defines the shape in relation to other shapes.  Viewing space, defines the location and size of the shape when displayed on the monitor.  Process turns {x,y,z} into just {x,y}
  • 23. PROJECTION STYLES  Parallel Projection  Shows relationship between objects  Not realistic View plane 3D object
  • 24. PROJECTION STYLES  Perspective Projection  Represents objects more realistically by converging vertexes at a point.  Foreshortening permits perspective. View plane 3D object Centre of projection
  • 25. PROJECTION  Both assume a camera location.  The camera defines our view on the world.  To change the view of an object, we can:  Move the camera  Move the object.  Must get our heads around a viewport that has no fixed representation in the world space.
  • 26. SUMMARY  Next three weeks about 3D graphics.  Using Blender.  3D Graphics consist of  Representation of objects  Representation of a world  Representation of a view port  Rendering  Complex transforms applied to turn 3D representation into 2D view.