0% found this document useful (0 votes)
10 views

Lec3b Extra-Models

Uploaded by

Abeesha Shaikh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views

Lec3b Extra-Models

Uploaded by

Abeesha Shaikh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 18

Models and Architectures

Dr Muhammad Ali Nizamani,


Assistant Professor, Information Technology,
University of Sindh, Jamshoro

E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 1


Objectives

• Learn the basic design of a graphics


system
• Introduce pipeline architecture
• Examine software components for an
interactive graphics system

E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 2


Image Formation Revisited

• Can we mimic the synthetic camera model


to design graphics hardware software?
• Application Programmer Interface (API)
­ Need only specify
• Objects
• Materials
• Viewer
• Lights

• But how is the API implemented?

E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 3


Physical Approaches
• Ray tracing: follow rays of light from center of
projection until they either are absorbed by
objects or go off to infinity
­ Can handle global effects
• Multiple reflections
• Translucent objects
­ Slow
­ Must have whole data base
available at all times

• Radiosity: Energy based approach


­ Very slow

E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 4


Practical Approach

• Process objects one at a time in the order


they are generated by the application
­ Can consider only local lighting
• Pipeline architecture

application display
program
• All steps can be implemented in hardware
on the graphics card
E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 5
Vertex Processing

• Much of the work in the pipeline is in converting


object representations from one coordinate
system to another
­ Object coordinates
­ Camera (eye) coordinates
­ Screen coordinates
• Every change of coordinates is equivalent to a
matrix transformation
• Vertex processor also computes vertex colors

E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 6


Projection

• Projection is the process that combines


the 3D viewer with the 3D objects to
produce the 2D image
­ Perspective projections: all projectors meet at
the center of projection
­ Parallel projection: projectors are parallel,
center of projection is replaced by a direction of
projection

E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 7


Primitive Assembly

Vertices must be collected into geometric


objects before clipping and rasterization
can take place
­ Line segments
­ Polygons
­ Curves and surfaces

E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 8


Clipping

Just as a real camera cannot “see” the


whole world, the virtual camera can only
see part of the world or object space
­ Objects that are not within this volume are said
to be clipped out of the scene

E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 9


Rasterization

• If an object is not clipped out, the appropriate


pixels in the frame buffer must be assigned colors
• Rasterizer produces a set of fragments for each
object
• Fragments are “potential pixels”
­ Have a location in frame bufffer
­ Color and depth attributes
• Vertex attributes are interpolated over objects by
the rasterizer

E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 10


Fragment Processing

• Fragments are processed to determine


the color of the corresponding pixel in the
frame buffer
• Colors can be determined by texture
mapping or interpolation of vertex colors
• Fragments may be blocked by other
fragments closer to the camera
­ Hidden-surface removal

E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 11


The Programmer’s Interface

• Programmer sees the graphics system


through a software interface: the
Application Programmer Interface (API)

E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 12


API Contents

• Functions that specify what we need to


form an image
­ Objects
­ Viewer
­ Light Source(s)
­ Materials
• Other information
­ Input from devices such as mouse and keyboard
­ Capabilities of system

E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 13


Object Specification

• Most APIs support a limited set of


primitives including
­ Points (0D object)
­ Line segments (1D objects)
­ Polygons (2D objects)
­ Some curves and surfaces
• Quadrics
• Parametric polynomials
• All are defined through locations in space
or vertices
E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 14
Example (old style)

type of object
location of vertex
glBegin(GL_POLYGON)
glVertex3f(0.0, 0.0, 0.0);
glVertex3f(0.0, 1.0, 0.0);
glVertex3f(0.0, 0.0, 1.0);
glEnd( );

end of object definition

E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 15


Example (GPU based)

• Put geometric data in an array


vec3 points[3];
points[0] = vec3(0.0, 0.0, 0.0);
points[1] = vec3(0.0, 1.0, 0.0);
points[2] = vec3(0.0, 0.0, 1.0);

• Send array to GPU


• Tell GPU to render as triangle

E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 16


Camera Specification

• Six degrees of freedom


­ Position of center of lens
­ Orientation
• Lens
• Film size
• Orientation of film plane

E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 17


Lights and Materials

• Types of lights
­ Point sources vs distributed sources
­ Spot lights
­ Near and far sources
­ Color properties
• Material properties
­ Absorption: color properties
­ Scattering
• Diffuse
• Specular

E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 18

You might also like