3D Computer graphics

From derivatives to rendering: vectors, normals, surfaces, lighting and the integral that gives each pixel its colour.

0/14
  1. 01

    Functions

    A rule ff that assigns to each input xx of a set AA exactly one output f(x)f(x) in a set BB. Calculus studies how outputs change when inputs change; computing is, quite literally, evaluating functions.

    FundamentalFoundations
  2. 02

    Derivative

    f′(a)f'(a) is the instantaneous rate of change of ff at aa: the slope of the tangent line to the graph, defined as the limit of slopes of secant lines.

    FundamentalDerivatives
  3. 03

    Vectors

    Lists of numbers v=(v1,…,vn)∈ℝnv = (v_1, \dots, v_n) \in \R^n that can be added and scaled. Geometrically, arrows with a length and a direction; computationally, arrays.

    FundamentalLinear algebra (bridge)
  4. 04

    Dot product

    u⋅v=∑iuivi=∥u∥∥v∥cos⁡θu \cdot v = \sum_i u_i v_i = \norm u \norm v \cos\theta. It measures how much two vectors point the same way, and it is the single most executed operation in machine learning.

    FundamentalLinear algebra (bridge)
  5. 05

    Partial derivatives

    ∂f∂xi\frac{\partial f}{\partial x_i}: the derivative with respect to one variable, holding the others fixed. Each answers "how sensitive is the output to this input?" — for a neural network, to this weight.

    UniversityMultivariable calculus
  6. 06

    Gradient

    ∇f=(∂f∂x1,…,∂f∂xn)\nabla f = \left(\frac{\partial f}{\partial x_1}, \dots, \frac{\partial f}{\partial x_n}\right): the vector of all partial derivatives. It points in the direction of steepest ascent, its length is that steepest slope, and it is perpendicular to the level sets. Walk against it and you go downhill fastest.

    UniversityMultivariable calculus
  7. 07

    Surfaces and level sets

    Three ways to describe a surface: a graph z=f(x,y)z = f(x,y), a level set F(x,y,z)=cF(x,y,z) = c (implicit), or a parametrization r(u,v)r(u,v). Contour maps of loss functions and the isosurfaces of medical imaging are level sets.

    UniversityMultivariable calculus
  8. 08

    Surface normals

    The unit vector perpendicular to a surface at a point. For an implicit surface F=0F = 0 it is ∇F/∥∇F∥\nabla F/\norm{\nabla F}; for a parametric one r(u,v)r(u,v), the normalized cross product ru×rvr_u \times r_v. Every lighting computation starts from it.

    UniversityComputer graphics
  9. 09

    Lighting and shading

    Computing the colour of a surface point from the light, the normal and the viewer. Lambertian diffuse light is max⁡(0,n⋅l)\max(0, n\cdot l); specular highlights use (n⋅h)s(n\cdot h)^s. Values are interpolated across triangles.

    UniversityComputer graphics
  10. 10

    Bézier curves and splines

    Polynomial curves controlled by a few points, glued with continuity conditions on derivatives (C1C^1: same tangent, C2C^2: same curvature). Fonts, SVG paths, CAD surfaces and animation curves are built from them.

    UniversityComputer graphics
  11. 11

    Vector fields

    A vector attached to every point: the wind, the flow of water, a magnetic field, the force of gravity. Integral curves (streamlines) follow the arrows.

    UniversityVector calculus
  12. 12

    Multiple integrals and change of variables

    Integrals over regions of ℝn\R^n: volumes, masses, probabilities of random vectors. Computed as iterated integrals (Fubini) and transformed with the Jacobian determinant: dx=∣det⁡J∣ du\dd x = |\det J|\,\dd u.

    UniversityMultivariable calculus
  13. 13

    Ray tracing

    Follow rays of light from the camera into the scene: solve for intersections (roots of equations), reflect and refract using the normal, and recurse. Real-time ray tracing is now in consumer GPUs.

    AdvancedComputer graphics
  14. 14

    The rendering equation

    Kajiya (1986): the light leaving a point equals the light it emits plus the integral, over all incoming directions, of incoming light times the material's reflectance times a cosine. An integral equation solved by Monte Carlo path tracing — the method behind modern film rendering.

    SpecializationComputer graphics
↑ ↓ to navigate · ↵ · Esc