Revision Flashcards
Define pixel
Basic element on the screen, one piece of colour information
Define framebuffer
The memory used to hold the pixels that make up the display
Define video
The electronic signals generated to drive a monitor or a TV; contains colour and position information
Define raster scan
Back/forward
Define window
A hole on the screen letting you look into another world
Pixel-patch paradigms
Ray-tracing and real-time
Ray tracing concept
Ray leaves eye and is tracked as it bounces back to its source
Vector manipulations to know
Addition/subtraction
Scalar multiplication
Dot/cross products
3D transformations
Translate Scale Rotate Viewing Perspective
Plane equation
ax + by + cz + d = 0
(P - C) . N = 0
Define vectors
C: fixed point on plane (i, j, k)
N: normal to plane (a, b, c)
P: arbitrary point on plane (x, y, z)
(P - C) . N = 0
Define equations
(i-x, j-y, k-z) . (a, b, c) = 0
(ai, bj, ck) - (ax + by + cz) = 0
Define normal
Given to vectors lying on a plane V and W:
Given V not parallel to W, N = V x W
(cross product)
Define line
Intersection of two planes.
P = A + (B - A)t
where A and B are beginning and end of line,
0 <= 1 (P = A if t = 0 or B if t = 1)
Common raytracing vectors
C = camera position
S = screen
u, v = pixel unit vectors
Raytracing: equation for middle of pixel position in real world (screen)
(i, j) = P = S + ui + vj
Mathematical ray definition
C + t(S + ui + vj - C)
Behind camera if t < 0, in front if t > 1
Raytracing algorithm
For each pixel:
- Compute ray equation
- Project ray into world space
- If hits object, take on object colour. Else taken on background colour
Sphere equation
x^2 + y^2 + z^2 = 1
Vector: X . X = 1
Cylinder equation
x^2 + y^2 = 1
GLSL shader types
Vertex and fragment
Define gl_FragColor
The fragment shader output - the current pixel on the screen
“Position”, “Color” in vertex shader: purpose
Position receives the current vertex to be rendered
Color is used to pass the vertex colour to the fragment shader
Hidden surface problem algorithms
Painter’s algorithm
Raycasting
Z-buffer
Define RenderMan
Software and API for network distributed rendering of ray-traced 3D views
Define viewport
A region of the screen being drawn to
Basic drawing component
Vertex/point
Polylines
Strips or loops
Evaluate 3D performance with…
Industry standard triangle: 50 pixels
Immediate mode problems
Vertex information sent to screen asap - high overhead