SlideShare ist ein Scribd-Unternehmen logo
1 von 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.

Weitere ähnliche Inhalte

Was ist angesagt?

Introduction to computer graphics
Introduction to computer graphicsIntroduction to computer graphics
Introduction to computer graphicsAmandeep Kaur
 
Introduction to Image Processing with MATLAB
Introduction to Image Processing with MATLABIntroduction to Image Processing with MATLAB
Introduction to Image Processing with MATLABSriram Emarose
 
Fundamentals steps in Digital Image processing
Fundamentals steps in Digital Image processingFundamentals steps in Digital Image processing
Fundamentals steps in Digital Image processingKarthicaMarasamy
 
computer graphics
computer graphicscomputer graphics
computer graphicsashpri156
 
Digital Image Processing
Digital Image ProcessingDigital Image Processing
Digital Image ProcessingReshma KC
 
COM2304: Intensity Transformation and Spatial Filtering – I (Intensity Transf...
COM2304: Intensity Transformation and Spatial Filtering – I (Intensity Transf...COM2304: Intensity Transformation and Spatial Filtering – I (Intensity Transf...
COM2304: Intensity Transformation and Spatial Filtering – I (Intensity Transf...Hemantha Kulathilake
 
Introduction to computer graphics
Introduction to computer graphics Introduction to computer graphics
Introduction to computer graphics Priyodarshini Dhar
 
Computer graphics
Computer graphicsComputer graphics
Computer graphicsMohsin Azam
 
Image processing fundamentals
Image processing fundamentalsImage processing fundamentals
Image processing fundamentalsA B Shinde
 
Image Processing Basics
Image Processing BasicsImage Processing Basics
Image Processing BasicsA B Shinde
 
05 histogram processing DIP
05 histogram processing DIP05 histogram processing DIP
05 histogram processing DIPbabak danyal
 
Chapter 3 Image Processing: Basic Transformation
Chapter 3 Image Processing:  Basic TransformationChapter 3 Image Processing:  Basic Transformation
Chapter 3 Image Processing: Basic TransformationVarun Ojha
 
Lecture5 graphics
Lecture5   graphicsLecture5   graphics
Lecture5 graphicsMr SMAK
 
Graphics software and standards
Graphics software and standardsGraphics software and standards
Graphics software and standardsMani Kanth
 
Digital image processing
Digital image processingDigital image processing
Digital image processingtushar05
 
Image Acquisition and Representation
Image Acquisition and RepresentationImage Acquisition and Representation
Image Acquisition and RepresentationAmnaakhaan
 

Was ist angesagt? (20)

Introduction to computer graphics
Introduction to computer graphicsIntroduction to computer graphics
Introduction to computer graphics
 
Introduction to Image Processing with MATLAB
Introduction to Image Processing with MATLABIntroduction to Image Processing with MATLAB
Introduction to Image Processing with MATLAB
 
Fundamentals steps in Digital Image processing
Fundamentals steps in Digital Image processingFundamentals steps in Digital Image processing
Fundamentals steps in Digital Image processing
 
ANIMATION SEQUENCE
ANIMATION SEQUENCEANIMATION SEQUENCE
ANIMATION SEQUENCE
 
computer graphics
computer graphicscomputer graphics
computer graphics
 
Digital Image Processing
Digital Image ProcessingDigital Image Processing
Digital Image Processing
 
COM2304: Intensity Transformation and Spatial Filtering – I (Intensity Transf...
COM2304: Intensity Transformation and Spatial Filtering – I (Intensity Transf...COM2304: Intensity Transformation and Spatial Filtering – I (Intensity Transf...
COM2304: Intensity Transformation and Spatial Filtering – I (Intensity Transf...
 
Z buffer
Z bufferZ buffer
Z buffer
 
Introduction to computer graphics
Introduction to computer graphics Introduction to computer graphics
Introduction to computer graphics
 
Computer graphics
Computer graphicsComputer graphics
Computer graphics
 
Image processing fundamentals
Image processing fundamentalsImage processing fundamentals
Image processing fundamentals
 
Image Processing Basics
Image Processing BasicsImage Processing Basics
Image Processing Basics
 
Image Processing Using MATLAB
Image Processing Using MATLABImage Processing Using MATLAB
Image Processing Using MATLAB
 
05 histogram processing DIP
05 histogram processing DIP05 histogram processing DIP
05 histogram processing DIP
 
Chapter 3 Image Processing: Basic Transformation
Chapter 3 Image Processing:  Basic TransformationChapter 3 Image Processing:  Basic Transformation
Chapter 3 Image Processing: Basic Transformation
 
Lecture5 graphics
Lecture5   graphicsLecture5   graphics
Lecture5 graphics
 
Introduction to 2D/3D Graphics
Introduction to 2D/3D GraphicsIntroduction to 2D/3D Graphics
Introduction to 2D/3D Graphics
 
Graphics software and standards
Graphics software and standardsGraphics software and standards
Graphics software and standards
 
Digital image processing
Digital image processingDigital image processing
Digital image processing
 
Image Acquisition and Representation
Image Acquisition and RepresentationImage Acquisition and Representation
Image Acquisition and Representation
 

Andere mochten auch

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
 

Andere mochten auch (20)

3 d
3 d3 d
3 d
 
3 D Graphics
3 D Graphics3 D Graphics
3 D Graphics
 
Object representations
Object representationsObject representations
Object representations
 
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
 

Ähnlich wie 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
 

Ähnlich wie 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
 

Mehr von 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
 

Mehr von 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
 

Kürzlich hochgeladen

From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
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
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 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
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
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
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 

Kürzlich hochgeladen (20)

From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
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...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 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
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
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...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

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.