1/73
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai |
|---|
No analytics yet
Send a link to your students to track their progress
Simplified game pipeline
scene setup, scene and model parameter setup, rendering, post
Meshes
vertices meshed together, game engines internally triangulate for optimizations and consistency
Atomic shapes
any mesh can be decomposed into these geometric primitives with simple, convex shapes
3D primitives
common shapes for meshes to have
Transform
location/position, rotation/orientation, scale
Global/world transform
relative to world origin
Local/relative transform
relative to a parent
Quaternion
composition of vectors (W, X, Y, Z) pointing forward and rotation around it, used more often in low
Euler
(pitch, yaw, roll) used in high
OpenGL
1992, standardized graphics APIs, used by Unity and usually for simpler graphics
DirectX
Direct3D (1995) was originally a competitor to OpenGL, now used by UE4 and higher
Vulkan
(2016) from AMD Mantle (2013) meant to balance CPU and GPU and much lower level
Apple Metal
(2015) poor attempt to disrupt the game engine industry
Directional light
used for sun
Planar light
used to approximate umbrellas like in modelling
Other parts of scene setup
volumetric fog, particle generators, decals, physics, destructibility
Renderer
outputs image, shows 3D model, how model interacts with scene
Materials
encode the model’s parameters e.g. textures, colors, smoothness
Textures
images used for rendering
Traditional 3D Graphics
materials were textures with elements and needed to be preprocessed and stored, UV maps used to apply textures to 3D models
Texture maps
mostly shadows and bumps originally, baked textures onto materials, can fake effects, assist physically
UV mapping
like wrapping a piece of paper with an image around a model
UV unwrapping
flattening the model and overlaying the texture like origami
UV/texture atlas
mapping of distinct texture/UVs of separate models onto single texture/UV map to merge textures in a scene
Mathematical mapping
topology, mapping between coordinate systems
Game maps
often small levels like multiplayer maps
Diffuse map
the surface details of the model without effect of light e.g. color, texture, patterns
Material Functions
used to transform textures
Albedo
base color in Unity
Specular map
how strong the surface will shine at a certain point
Displacement map
store height information and generate depth by adding geometry when rendered
Ambient occlusion map
approximates how bright light should be shining on any specific part of a surface
Normal map
RGB channels are used to control direction of each pixel’s normal
Vertex colors
give each vertex of the triangle a color and linearly interpolate along a polygon, major limitations but cheap and simple, used for dense vertex
Global illumination
model lighting of a scene
Shaders
info about getting everything to render and display
Phong reflection model
an empirical model of the local illumination of points on a surface
Blinn-Phong model
modification to the Phong model
Interpolating
make model appear smooth around edges without geometrically smoothing
Gouraud shading
(1971) lerps between vertices, allowed rendered models to have curves with few verts
Phong shading
(1973) allows for interpolation with specularity
Incident ray
light ray
Diffuse reflections
rays that get scattered, visible details of model
Specular reflections
rays that reflect the environment, shiny
Medium
passing through material e.g. water or glass
GLSL
OpenGL shader language similar to C, used if interfacing directly
HLSL
high level shading language
Shader graphs
make shading more accessible to high level developers
PBR and material functions
PBR enables materials to be parameterized functions with realtime light response
Lightmaps
dynamic vs static/baked lighting
Camera plane
reference plane used to create image
Camera frustum
camera’s range of vision
Rasterizing
use z-buffer to determine layer that each slice of 3D scene is on, fast and default
Ray-tracing
learns pixels by shooting rays from lights, slower than rasterizing
Denoising
makes ray-tracing more feasible by filling in blanks
2D image processing speed
very fast on modern GPUs
Post-processing pass
set of effects applied after image rendered from 3D scene
Ambient occlusion
draw shadows where there is a sudden change in topology given corners and blocking objects, gives exaggerated sense of depth
Antialiasing
smooths jagged edges from limited pixels by interpolating or filtering, per-frame or temporal
Motion blur
blurs objects moving faster than framerate can keep up with, can stylize action sequences and obscure low framerate, can cause sickness in VR
Tonemapping
maps current color range to another, can fake HDR and make colors more natural
Color grading
changing color and brightness parameters for a stylistic effect
Vignette
radial effect looks like paper degradation or tunnel vision
Depth of field
defocus things outside of focal range
Post processing volume
list of parameters, can apply differently to various scene areas in Unreal 4
Post processing stack
common features like anti-aliasing and bloom in Unity 2018
OpenXR
standardizes the HMD drivers
Principle of complexity
the more complex the individual objects in a scene are, the fewer we can have
Object complexity factors
size relative to camera, vertex count, shape, collision complexity, resolution of maps
Decimation
reduce vertices and recalculation of triangles
Maps for simplification
use when material functions are unnecessary, keep high enough resolution to save RAM
Simplifying shaders and material functions
avoid unnecessary computation, share values
Level of detail
farther objects should have less detail for optimization
Physically-based Rendering
model how meshes and materials interact with GI and approximate light paths