<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Games101 on Feynman's Blog</title><link>/en/tags/games101/</link><description>Recent content in Games101 on Feynman's Blog</description><generator>Hugo</generator><language>en-US</language><lastBuildDate>Wed, 09 Sep 2026 18:00:00 +0800</lastBuildDate><atom:link href="/en/tags/games101/index.xml" rel="self" type="application/rss+xml"/><item><title>06 | Geometry (Basic Representations &amp; Curves and Surfaces &amp; Mesh Processing) and Shadow Mapping</title><link>/en/posts/games101-geometry/</link><pubDate>Wed, 09 Sep 2026 18:00:00 +0800</pubDate><guid>/en/posts/games101-geometry/</guid><description>&lt;blockquote class="blockquote-regular"&gt;
 &lt;p&gt;Instructor: Lingqi Yan | UCSB
Bilibili: &lt;a href="https://www.bilibili.com/video/BV1X7411F744"&gt;https://www.bilibili.com/video/BV1X7411F744&lt;/a&gt;
Lectures covered: &lt;a href="https://sites.cs.ucsb.edu/~lingqi/teaching/resources/GAMES101_Lecture_10.pdf"&gt;Lecture 10&lt;/a&gt; (Geometry 1: Introduction), &lt;a href="https://sites.cs.ucsb.edu/~lingqi/teaching/resources/GAMES101_Lecture_11.pdf"&gt;Lecture 11&lt;/a&gt; (Geometry 2: Curves and Surfaces), &lt;a href="https://sites.cs.ucsb.edu/~lingqi/teaching/resources/GAMES101_Lecture_12.pdf"&gt;Lecture 12&lt;/a&gt; (Geometry 3)&lt;/p&gt;

&lt;/blockquote&gt;
&lt;p&gt;Geometry is an extremely important yet difficult topic in computer graphics. This post covers various ways to represent geometry (implicit and explicit), curves and surfaces (Bezier curves, B-splines, Bezier surfaces), mesh processing (subdivision, simplification, regularization) as well as the shadow mapping technique.&lt;/p&gt;
&lt;p&gt;&lt;img src="/images/2026-07-21_series_games101/06_geometry/chap6_01.png" alt="Various geometric examples (glass, car, engine internals, silk, water drops, outdoors, hair, microscopic world, trees)"&gt;&lt;/p&gt;</description></item><item><title>05 | Shading (Illumination Models and Texture Mapping)</title><link>/en/posts/games101-shading/</link><pubDate>Sun, 30 Aug 2026 18:00:00 +0800</pubDate><guid>/en/posts/games101-shading/</guid><description>&lt;blockquote class="blockquote-regular"&gt;
 &lt;p&gt;Instructor: Lingqi Yan | UCSB
Bilibili: &lt;a href="https://www.bilibili.com/video/BV1X7411F744"&gt;https://www.bilibili.com/video/BV1X7411F744&lt;/a&gt;
Lectures covered: &lt;a href="https://sites.cs.ucsb.edu/~lingqi/teaching/resources/GAMES101_Lecture_07.pdf"&gt;Lecture 7&lt;/a&gt; (Illumination, Shading and Graphics Pipeline), &lt;a href="https://sites.cs.ucsb.edu/~lingqi/teaching/resources/GAMES101_Lecture_08.pdf"&gt;Lecture 8&lt;/a&gt; (Shading, Pipeline and Texture Mapping), &lt;a href="https://sites.cs.ucsb.edu/~lingqi/teaching/resources/GAMES101_Lecture_09.pdf"&gt;Lecture 9&lt;/a&gt; (Texture Mapping cont.)&lt;/p&gt;
&lt;p&gt;Note: In the official condensed slides, texture applications (environment maps, bump/normal/displacement maps, 3D textures) appear in Lecture 10 and shadow mapping in Lecture 12; following the full Bilibili course structure, they are grouped under the shading topic here.&lt;/p&gt;

&lt;/blockquote&gt;
&lt;p&gt;Shading is the process of applying material properties to objects, which determines their color and appearance under different lighting conditions. This post covers the depth buffer (visibility/occlusion), the Blinn-Phong reflectance model, shading frequencies, the graphics pipeline, texture mapping and related techniques.&lt;/p&gt;</description></item><item><title>04 | Rasterization (Triangle Discretization and Anti-Aliasing)</title><link>/en/posts/games101-rasterization/</link><pubDate>Sun, 16 Aug 2026 12:00:00 +0800</pubDate><guid>/en/posts/games101-rasterization/</guid><description>&lt;blockquote class="blockquote-regular"&gt;
 &lt;p&gt;Instructor: Lingqi Yan | UCSB
Bilibili: &lt;a href="https://www.bilibili.com/video/BV1X7411F744"&gt;https://www.bilibili.com/video/BV1X7411F744&lt;/a&gt;&lt;/p&gt;

&lt;/blockquote&gt;
&lt;p&gt;Rasterization is the process of converting vector graphics (geometric descriptions) into pixel images (raster images).&lt;/p&gt;
&lt;p&gt;Rasterization = drawing continuous geometry as discrete pixels. It is the foundational technique of real-time rendering.&lt;/p&gt;








&lt;blockquote class="blockquote-regular"&gt;
 &lt;p&gt;This chapter corresponds to lectures 5-6 (the depth buffer part corresponds to the start of lecture 7).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://sites.cs.ucsb.edu/~lingqi/teaching/resources/GAMES101_Lecture_05.pdf"&gt;Lecture 05 slides (PDF)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://sites.cs.ucsb.edu/~lingqi/teaching/resources/GAMES101_Lecture_06.pdf"&gt;Lecture 06 slides (PDF)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.bilibili.com/video/BV1X7411F744"&gt;Bilibili video&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;/blockquote&gt;
&lt;h2 id="1-perspective-projection-wrap-up-fovy-and-aspect-ratio"&gt;1 Perspective Projection Wrap-Up: fovY and Aspect Ratio&lt;/h2&gt;
&lt;p&gt;In the MVP transform, the perspective projection frustum is defined by $l, r, b, t$ (left, right, bottom, top bounds of the near clip plane), but in practice developers prefer &lt;strong&gt;vertical field of view (fovY)&lt;/strong&gt; and &lt;strong&gt;aspect ratio&lt;/strong&gt; (assuming symmetry, i.e. $l = -r$, $b = -t$):&lt;/p&gt;</description></item><item><title>03 | Transformations (2D and 3D)</title><link>/en/posts/games101-transformations/</link><pubDate>Sun, 09 Aug 2026 12:00:00 +0800</pubDate><guid>/en/posts/games101-transformations/</guid><description>&lt;blockquote class="blockquote-regular"&gt;
 &lt;p&gt;Instructor: Lingqi Yan | UCSB
Bilibili: &lt;a href="https://www.bilibili.com/video/BV1X7411F744"&gt;https://www.bilibili.com/video/BV1X7411F744&lt;/a&gt;&lt;/p&gt;

&lt;/blockquote&gt;
&lt;h2 id="1-why-study-transformations"&gt;1 Why Study Transformations&lt;/h2&gt;
&lt;p&gt;Transformations have two core applications in graphics:&lt;/p&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th style="text-align: center"&gt;Application&lt;/th&gt;
					&lt;th style="text-align: left"&gt;Description&lt;/th&gt;
					&lt;th style="text-align: left"&gt;Example&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td style="text-align: center"&gt;&lt;strong&gt;Modeling&lt;/strong&gt;&lt;/td&gt;
					&lt;td style="text-align: left"&gt;Place objects in a scene&lt;/td&gt;
					&lt;td style="text-align: left"&gt;Translate, rotate, scale objects&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td style="text-align: center"&gt;&lt;strong&gt;Viewing&lt;/strong&gt;&lt;/td&gt;
					&lt;td style="text-align: left"&gt;Project 3D scene onto a 2D image&lt;/td&gt;
					&lt;td style="text-align: left"&gt;Camera transform, projection transform&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;hr&gt;
&lt;h2 id="2-2d-transformations"&gt;2 2D Transformations&lt;/h2&gt;
&lt;h3 id="scale"&gt;Scale&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Uniform scale&lt;/strong&gt; (all directions scaled equally):&lt;/p&gt;
&lt;p&gt;&lt;img src="/images/2026-07-21_series_games101/03_transforms/chap3_01.png" alt="Uniform Scale"&gt;&lt;/p&gt;
&lt;p&gt;$x' = sx \qquad y' = sy$&lt;/p&gt;
$$
\begin{pmatrix} x' \\ y' \end{pmatrix} = \begin{pmatrix} s &amp; 0 \\ 0 &amp; s \end{pmatrix} \begin{pmatrix} x \\ y \end{pmatrix}
$$&lt;p&gt;For example: $x = 2, \; y = 2, \; s = 0.5$&lt;/p&gt;</description></item><item><title>02 | Vectors and Linear Algebra</title><link>/en/posts/games101-vectors-linear-algebra/</link><pubDate>Tue, 21 Jul 2026 12:00:00 +0800</pubDate><guid>/en/posts/games101-vectors-linear-algebra/</guid><description>&lt;blockquote class="blockquote-regular"&gt;
 &lt;p&gt;Instructor: Lingqi Yan | UCSB
Bilibili: &lt;a href="https://www.bilibili.com/video/BV1X7411F744"&gt;https://www.bilibili.com/video/BV1X7411F744&lt;/a&gt;&lt;/p&gt;

&lt;/blockquote&gt;
&lt;h2 id="1-vector-basics"&gt;1 Vector Basics&lt;/h2&gt;
&lt;h3 id="definition-of-vectors"&gt;Definition of Vectors&lt;/h3&gt;
&lt;p&gt;&lt;img src="/images/2026-07-21_series_games101/02_vectors/chap2_01.png" alt="Vector Definition"&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Vectors have &lt;strong&gt;direction&lt;/strong&gt; and &lt;strong&gt;length&lt;/strong&gt;, but no absolute starting position&lt;/li&gt;
&lt;li&gt;Commonly denoted as $\vec{a}$ or bold &lt;strong&gt;a&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Represented by start and end points: $\overrightarrow{AB} = B - A$&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="vector-normalization"&gt;Vector Normalization&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Magnitude (length) of a vector: $||\vec{a}||$&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Unit vector&lt;/strong&gt;: A vector with magnitude 1, used to represent direction&lt;/li&gt;
&lt;li&gt;Normalization: $\hat{a} = \frac{\vec{a}}{||\vec{a}||}$&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="vector-addition"&gt;Vector Addition&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Geometric representation&lt;/strong&gt;: Parallelogram law &amp;amp; triangle law&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Algebraic calculation&lt;/strong&gt;: Add corresponding coordinates&lt;/li&gt;
&lt;/ul&gt;
$$
\vec{a} + \vec{b} = \begin{pmatrix} x_a + x_b \\ y_a + y_b \end{pmatrix}
$$&lt;p&gt;&lt;strong&gt;Geometric representation of vector addition&lt;/strong&gt;:&lt;/p&gt;</description></item><item><title>01 | Overview &amp; Rasterization</title><link>/en/posts/games101-overview-rasterization/</link><pubDate>Mon, 20 Jul 2026 12:00:00 +0800</pubDate><guid>/en/posts/games101-overview-rasterization/</guid><description>&lt;blockquote class="blockquote-regular"&gt;
 &lt;p&gt;Instructor: Lingqi Yan | UCSB
Course Link: &lt;a href="https://www.bilibili.com/video/BV1X7411F744"&gt;https://www.bilibili.com/video/BV1X7411F744&lt;/a&gt;&lt;/p&gt;

&lt;/blockquote&gt;
&lt;h2 id="1-what-is-computer-graphics"&gt;1 What is Computer Graphics&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Computer Graphics&lt;/strong&gt;: The use of computers to &lt;strong&gt;synthesize and manipulate&lt;/strong&gt; visual information.&lt;/p&gt;
&lt;p&gt;The core task of computer graphics is to &lt;strong&gt;represent, process, render, and display&lt;/strong&gt; graphics and images in computers.&lt;/p&gt;
&lt;h3 id="application-areas"&gt;Application Areas&lt;/h3&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th style="text-align: left"&gt;Area&lt;/th&gt;
					&lt;th style="text-align: left"&gt;Examples&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td style="text-align: left"&gt;Video Games&lt;/td&gt;
					&lt;td style="text-align: left"&gt;Real-time rendering, 3D scenes&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td style="text-align: left"&gt;Film VFX&lt;/td&gt;
					&lt;td style="text-align: left"&gt;Offline rendering, visual effects&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td style="text-align: left"&gt;Animation&lt;/td&gt;
					&lt;td style="text-align: left"&gt;CG animation like &lt;em&gt;Frozen&lt;/em&gt;, &lt;em&gt;Zootopia&lt;/em&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td style="text-align: left"&gt;Design &amp;amp; CAD&lt;/td&gt;
					&lt;td style="text-align: left"&gt;Industrial design, architectural visualization&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td style="text-align: left"&gt;Data Visualization&lt;/td&gt;
					&lt;td style="text-align: left"&gt;Scientific, engineering, medical data&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td style="text-align: left"&gt;Virtual Reality&lt;/td&gt;
					&lt;td style="text-align: left"&gt;Immersive virtual environments&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td style="text-align: left"&gt;Augmented Reality&lt;/td&gt;
					&lt;td style="text-align: left"&gt;Real-virtual fusion (AR navigation)&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td style="text-align: left"&gt;Simulation&lt;/td&gt;
					&lt;td style="text-align: left"&gt;Physics, weather, black hole visualization&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="2-four-core-topics"&gt;2 Four Core Topics&lt;/h2&gt;
&lt;p&gt;GAMES101 covers four core topics in modern computer graphics:&lt;/p&gt;</description></item></channel></rss>