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

1 2 Introduction

Uploaded by

Xty Ctyiu
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views

1 2 Introduction

Uploaded by

Xty Ctyiu
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 45

Computer Graphics

Introduction - 2
Graphics Systems
Input-Computation-Output

Input Computation Output


Input Devices
• Locator Devices
• Keyboard

• Scanner
– Images
– Laser
• Cameras
Locator Devices
When queried, locator devices return a
position and/or orientation.

• Mouse (2D and 3D)


• Trackball
• Joystick (2D and 3D)
Locator Devices
• Tablet

• Virtual Reality
Trackers
– Data Gloves
– Digitizers
Keyboard
• Text input
– List boxes, GUI
– CAD/CAM
– Modeling

• Hard coded
– Vertex locations are inserted into code
Scanners
• Image Scanners - Flatbed,
etc.
– What type of data is
returned? Bitmap

• Laser Scanners -
Deltasphere
– Emits a laser and does time
of flight. Returns 3D point
Many others
• Light Pens

• Voice Systems

• Touch Panels

• Camera/Vision Based
Computation Stage
Input Computation Output

• Now that we have a model of what we want


to draw, what goes on inside the computer
to generate the output?
Computation

Transformations Rasterization
Computation Stage
Computation

Model Output

Transformations Rasterization

Transformed
Model
How do we store this?

We would like to allocate memory to hold the


results of the computation stage.
Framebuffer

Framebuffer - A block of memory, dedicated


to graphics output, that holds the contents
of what will be displayed.

Pixel - one element of the framebuffer


Framebuffer
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0
0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0
0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0
0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0
0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Questions:

What
How is
How
the
How
much largest
bigmany
is the
memory image
pixels
framebuffer?
do you
we arecan
needthere?
todisplay?
allocate
for the framebuffer?
Framebuffer in Memory
• If we want a framebuffer of 640 pixels by
480 pixels, we should allocate:
framebuffer = 640*480 bits
• How many bit should we allocate?
Q: What do more bits get you?
A: More values to be stored at each pixel.
Why would you want to store something
other than a 1 or 0?
Framebuffer bit depth
• How many colors does 1 bit get you?
• How many colors do 8 bits get you?
– Monochrome systems use this (green/gray
scale)
• What bit depth would you want for your
framebuffer?

bit depth - number of bits allocated per pixel in a buffer


Framebuffer bit depths
• Remember, we are
asking “how much
memory do we
allocate to store the
color at each
pixel?”
• Common answers:
– 16 and 32 bits
Bit depths
• 16 bits per pixel (high color)
– 5 bits for red, 5/6 bits for green, 5 bits for blue
– potential of 32 reds, 32/64 green, 32 blues
– total colors: 65,536
• 32 bits per pixel (true color)
– 8 bits for red, green, blue, and alpha
– potential for 256 reds, greens, and blues
– total colors: 16,777,216 (more than the eye can
distinguish)
Data Type Refresher
• bit - a 0 or 1. Can represent 2 unique values
• byte - 8 bits. 256 values
• word - 32 bits. 4,294,967,296 values
• int - 32 bits.
• float - 32 bits
• double - 64 bits
• unsigned byte - 8 bits
Memory
unsigned byte framebuffer[640*480*3];

framebuffer =
[255 255 255 0 0 255 0 0 255 0 255 0 255 0 0
0 255 0 0 255 0 …]
Graphic Card Memory
• How much memory is on graphics card?
– 640 * 480 * 32 bits = 1,228,800 bytes
– 1024 * 768 * 32 bits = 3,145,728 bytes
– 1600 * 1200 * 32 bits = 7,680,000 bytes
Image formation in a frame buffer

Input devices Output


device
Image formed in frame buffer

21
Computation Stage
Computation

Model Output

Transformations Rasterization

Transformed
Model
Output
Input Computation Output

We have an image (framebuffer or model),


now we want to show it.
• Hardcopy
• Display
– Vector
– Raster Scan
• a phosphor coating
• luminescent properties
• short-wave ultraviolet
light causes it to glow

• Neon 19 inch LCD


• Neon element
• Neon glows when a high
electrical voltage is
passed through it
Hardcopy
• Printers (Resolution,
color depth)
– Dot Matrix - uses a
head with 7 to 24 pins
to strike a ribbon
(single or multiple
color)

– Ink Jet Printers (fires


small balls of colored
ink)
Hardcopy
• Printers (Resolution,
color depth)
– Laser Printers
(powder adheres to
positive charged
paper)

– Pen Plotters
(similar to vector
displays). “infinite”
resolution.
Framebuffer -> Monitor

The values in the framebuffer are converted from a


digital (1s and 0s representation, the bits) to an
analog signal that goes out to the monitor. A video
card’s RAMDAC performs this operation, once per
frame. This is done automatically (not controlled by
your code), and the conversion can be done while
writing to the framebuffer.
Image Quality Issues

• Screen resolution • Brightness


• Color • Contrast
• Blank space • Refresh rate
between the pixels • Sensitivity of
• Intentional image display to viewing
degradation angle
Pixels
• Pixel - The most basic addressable image
element in a screen
– CRT - Color triad (RGB phosphor dots)
– LCD - Single color element
• Screen Resolution - measure of number of
pixels on a screen (m by n)
– m - Horizontal screen resolution
– n - Vertical screen resolution
Raster Displays
• Cathode Ray Tubes (CRTs), most “tube”
monitors you see. was very common, but
big and bulky.

• Liquid Crystal Displays (LCDs), there are


two types transmissive (laptops, those
snazzy new flat panel monitors) and
reflective (wrist watches).
Cathode Ray Tubes (CRTs)
• Strong electrical fields and high voltage

• Very good resolution

• Heavy, not flat


Cathode Ray Tubes (CRTs)
Heating element on the yolk.
Phosphor coated screen
Electrons are boiled off the
filament and drawn to the
focusing system.
The electrons are focused into
a beam and “shot” down the
cylinder.
The deflection plates “aim”
the electrons to a specific
position on the screen.
CRTs
CRT

Can be used either as a line-drawing device (calligraphic) or to display


contents of frame buffer (raster mode)

37
CRT Phosphor Screen
• The screen is coated with
phosphor, 3 colors for a color
monitor, 1 for monochrome.
• For a color monitor, three
guns light up red, green, or
blue phosphors.
• Intensity is controlled by the
amount of time at a specific
phosphor location.
Beam Movement
Beam Movement
scan line - one row on the screen
interlace vs. non-interlace - Each frame is either
drawn entirely, or as two consecutively drawn
fields that alternate horizontal scan lines.
vertical sync (vertical retrace) - the motion of the
beam moving from the bottom of the image to
the top, after it has drawn a frame.
refresh rate - how many frames are drawn per
second. Eye can see 24 frames per second. TV
is 30 Hz, monitors are at least 60 Hz.
Vector Displays
• Unlike CRTs, vector
displays have a single gun
that is controlled to draw
lines. Think of having a
VERY FAST drawing pen.
• Pros: Diagrams/only draw
what you need
• Cons: No fill objects/Slows
with complexity
Liquid Crystal Displays (LCDs)
• Also divided into pixels, but without an
electron gun firing at a screen, LCDs have
cells that either allow light to flow through,
or block it.
Liquid Crystal Displays
• Liquid crystal displays use small flat chips
which change their transparency properties
when a voltage is applied.
• LCD elements are arranged in an n x m
array call the LCD matrix
• Level of voltage controls gray levels.
• LCDs elements do not emit light, use
backlights behind the LCD matrix
LCDs (cont.)
• Color is obtained by placing filters in front of
each LCD element
• Usually black space between pixels to separate
the filters.
• Because of the physical nature of the LCD
matrix, it is difficult to make the individual
LCD pixels very small.
• Image quality dependent on viewing angle.
Advantages of LCDs
• Flat

• Lightweight

• Low power consumption

You might also like