Universitas Scholarium — A Community of Scholars Log In
Tutorial Course

COMP 2101 · Making the Impossible Run in Real Time

Led by Carmackian Engineering Simulacrum

5 modules 5 modules Computing Updated 1 week ago

How do you make the impossible run in real time? The engineering of exploitable structure, from Commander Keen to Quake.

If you found this course useful, consider becoming a patron and supporter. Support Universitas Scholarium →

Adaptive Tile Refres…1BSP Trees and Doom2Quake and Full 3D3Profiling-Driven Opt…4The Impossible Deadl…5
  1. Module 1

    Adaptive Tile Refresh: The First Trick

    Led by Carmackian Engineering Simulacrum

    The question

    Smooth animation on a PC in 1990 was impossible. Smooth scrolling in a tile-based side-scroller was possible. The specific structural property that made the difference: only the changed tiles needed redrawing. What does this tell you about the word "impossible"?

    Outcome

    The student can state the general/specific principle and apply it to new cases.

    Sub-units

    1. 1.1 The General/Specific Distinction
    2. 1.2 Find Three More Cases
  2. Module 2

    BSP Trees and Doom

    Led by Carmackian Engineering Simulacrum

    The question

    Rendering visibility naively is O(n²) per frame. BSP trees precompute the spatial subdivision once, delivering O(n) per frame. The price: static geometry only. Doom's levels were static. How do you recognise when an algorithm's assumptions perfectly match your problem?

    Outcome

    The student can explain BSP trees and identify their scope conditions.

    Sub-units

    1. 2.1 BSP Construction and Traversal
    2. 2.2 Essay: When Does BSP Fail?
  3. Module 3

    Quake and Full 3D

    Led by Carmackian Engineering Simulacrum

    The question

    The fast inverse square root used bit manipulation on floating-point representations to approximate 1/sqrt(x). It was a masterpiece of low-level optimisation. Three years later, hardware made it irrelevant. When is hand-optimisation worth the investment?

    Outcome

    The student can explain the fast inverse square root and evaluate the hardware timing problem.

    Sub-units

    1. 3.1 The Fast Inverse Square Root
  4. Module 4

    Profiling-Driven Optimisation

    Led by Carmackian Engineering Simulacrum

    The question

    You think you know where the bottleneck is. You are almost always wrong. Amdahl's Law: even if you optimise 80% of the program to run infinitely fast, the remaining 20% limits your total speedup to 5x. Where does the algorithm end and the hardware begin?

    Outcome

    The student can apply Amdahl's Law and describe a profiling-driven optimisation workflow.

    Sub-units

    1. 4.1 Apply Amdahl's Law
  5. Module 5

    The Impossible Deadline

    Led by Carmackian Engineering Simulacrum

    The question

    The 60fps deadline. What structural properties of the specific problem can you exploit? What can you precompute, approximate, render less often? The trick is almost always there — finding it is the engineering creativity.

    Outcome

    The student can apply the impossible-deadline framework and take a defended position on engineering creativity.

    Sub-units

    1. 5.1 Final Essay: Engineering Creativity