
3D计算机图形学编程指南 | 3D Computer Graphics Programming
来自 网络整理·免费领取学习资源
这份资料来自网络整理2026年的付费VIP课,内容以视频为主,对应《3D计算机图形学编程指南 | 3D Computer Graphics Programming》。官网需要单独购买,有集上可以免费领取。
资源介绍:
本课程是对计算机图形学基础的全面深入探索!您将了解到软件3D引擎内部的工作原理,并使用C编程语言从零开始编写一个完整的软件光栅化器;内容涵盖纹理、摄像机、裁剪以及加载复杂的OBJ文件处理。我们将一步步地,从每一个像素、每一个三角形、每一个网格出发进行构建
从零开始的3D编程 在从最基本的原则出发探讨所有概念的同时,我们还将复习所有构成三维计算机图形学之美的数学知识。此外,我们将编写一个全面的软件渲染器,无需任何图形API的帮助,就能在屏幕上展示复杂的3D对象。无需GPU、OpenGL或DirectX!仅需一个C编译器和一点点线性代数知识,我们就能创造出一个令人惊叹的最终项目!
课程目录
- 01 Introduction
- 1.01 Introduction and Learning Outcomes
- 1.01 Introduction and Learning Outcomes.srt
- 1.01 Introduction and Learning Outcomes.vtt
- 1.02 How to Take this Course
- 1.02 How to Take this Course.srt
- 1.02 How to Take this Course.vtt
- 1.03 Words of Encouragement
- 1.03 Words of Encouragement.srt
- 1.03 Words of Encouragement.vtt
- 02 Compiling our Project
- 2.01 Project Dependencies
- 2.01 Project Dependencies.srt
- 2.01 Project Dependencies.vtt
- 2.02 A Quick Note for Windows Users
- 2.02 A Quick Note for Windows Users.srt
- 2.02 A Quick Note for Windows Users.vtt
- 2.03 Project Folder Structure
- 2.03 Project Folder Structure.srt
- 2.03 Project Folder Structure.vtt
- 2.04 The Compilation Flow
- 2.04 The Compilation Flow.srt
- 2.04 The Compilation Flow.vtt
- 2.05 Working with Makefiles
- 2.05 Working with Makefiles.srt
- 2.05 Working with Makefiles.vtt
- 2.06 Configuring Visual Studio on Windows
- 2.06 Configuring Visual Studio on Windows.srt
- 2.06 Configuring Visual Studio on Windows.vtt
- 2.07 Can I use WSL on Windows.html
- 03 SDL Setup and Color Buffer
- attachments
- 3drenderer-200830-032529
- 3drenderer-200830-044105
- 3drenderer-200830-045144
- 3drenderer-200830-051721
- 3drenderer-200830-052021
- 3drenderer-200830-053022
- 05 Checking for Errors in Memory Allocation.html
- 06 1 Quiz Memory Allocation.txt
- 06 2 Quiz Memory Allocation.txt
- 07 The Operator Sizeof.html
- 15 1 Quiz Color Buffer.txt
- 15 2 Quiz Color Buffer.txt
- 3.01 Creating an SDL Window
- 3.01 Creating an SDL Window.srt
- 3.01 Creating an SDL Window.vtt
- 3.02 Rendering an SDL Window
- 3.02 Rendering an SDL Window.srt
- 3.02 Rendering an SDL Window.vtt
- 3.03 Declaring a Color Buffer
- 3.03 Declaring a Color Buffer.srt
- 3.03 Declaring a Color Buffer.vtt
- 3.04 Allocating Memory and Freeing Resources
- 3.04 Allocating Memory and Freeing Resources.srt
- 3.04 Allocating Memory and Freeing Resources.vtt
- 3.08 SDL Texture
- 3.08 SDL Texture.srt
- 3.08 SDL Texture.vtt
- 3.09 Fullscreen Window
- 3.09 Fullscreen Window.srt
- 3.09 Fullscreen Window.vtt
- 3.10 Exercise. Drawing a Background Grid
- 3.10 Exercise. Drawing a Background Grid.srt
- 3.10 Exercise. Drawing a Background Grid.vtt
- 3.11 Drawing a Background Grid
- 3.11 Drawing a Background Grid.srt
- 3.11 Drawing a Background Grid.vtt
- 3.12 Background Color Patterns.html
- 3.13 Exercise. Drawing Rectangles
- 3.13 Exercise. Drawing Rectangles.srt
- 3.13 Exercise. Drawing Rectangles.vtt
- 3.14 Creating a Function to Draw Rectangles
- 3.14 Creating a Function to Draw Rectangles.srt
- 3.14 Creating a Function to Draw Rectangles.vtt
- 04 Multiple Header Files
- attachments
- 3drenderer-200830-064203
- 4.01 Defining Header Files
- 4.01 Defining Header Files.srt
- 4.01 Defining Header Files.vtt
- 4.02 Coding New Header Files
- 4.02 Coding New Header Files.srt
- 4.02 Coding New Header Files.vtt
- 05 Vectors and Points
- 06 Constant Array Size Declaration.html
- 5.01 The Draw Pixel Function
- 5.01 The Draw Pixel Function.srt
- 5.01 The Draw Pixel Function.vtt
- 5.02 Vectors
- 5.02 Vectors.srt
- 5.02 Vectors.vtt
- 5.03 Declaring a Vector Type
- 5.03 Declaring a Vector Type.srt
- 5.03 Declaring a Vector Type.vtt
- 5.04 Review of C Structs
- 5.04 Review of C Structs.srt
- 5.04 Review of C Structs.vtt
- 5.05 Array of Points
- 5.05 Array of Points.srt
- 5.05 Array of Points.vtt
- 06 Projecting Points
- attachments
- 3drenderer-200830-070327
- 3drenderer-200830-071229
- 02 Isometric Projection.html
- 6.01 Orthographic Projection
- 6.01 Orthographic Projection.srt
- 6.01 Orthographic Projection.vtt
- 6.03 Perspective Projection
- 6.03 Perspective Projection.srt
- 6.03 Perspective Projection.vtt
- 6.04 Implementing the Perspective Divide
- 6.04 Implementing the Perspective Divide.srt
- 6.04 Implementing the Perspective Divide.vtt
- 6.05 Coordinate System Handedness
- 6.05 Coordinate System Handedness.srt
- 6.05 Coordinate System Handedness.vtt
- 07 Linear Transformations
- attachments
- 3drenderer-200830-073641
- 03 1 Trigonometric Functions Quiz.txt
- 03 2 Trigonometric Functions Quiz.txt
- 07 Exercise Proving the Angle Cosine Addition.html
- 7.01 Vector Transformations
- 7.01 Vector Transformations.srt
- 7.01 Vector Transformations.vtt
- 7.02 Review of Sine Cosine and Tangent
- 7.02 Review of Sine Cosine and Tangent.srt
- 7.02 Review of Sine Cosine and Tangent.vtt
- 7.04 Rotating Vectors
- 7.04 Rotating Vectors.srt
- 7.04 Rotating Vectors.vtt
- 7.05 Vector Rotation Function
- 7.05 Vector Rotation Function.srt
- 7.05 Vector Rotation Function.vtt
- 7.06 Proof of Angle Sine Addition
- 7.06 Proof of Angle Sine Addition.srt
- 7.06 Proof of Angle Sine Addition.vtt
- 7.08 Proof of Angle Cosine Addition
- 7.08 Proof of Angle Cosine Addition.srt
- 7.08 Proof of Angle Cosine Addition.vtt
- 08 Fixed Time Step
- attachments
- 3drenderer-200830-080812
- 3drenderer-200830-080851
- 03 Constant Timestep & Delta-time.html
- 8.01 Fixing our Game Loop Time Step
- 8.01 Fixing our Game Loop Time Step.srt
- 8.01 Fixing our Game Loop Time Step.vtt
- 8.02 Using a Delay Function
- 8.02 Using a Delay Function.srt
- 8.02 Using a Delay Function.vtt
- 09 Triangles and Vertices
- attachments
- 3drenderer-200830-081647
- 9.01 Triangles and Meshes
- 9.01 Triangles and Meshes.srt
- 9.01 Triangles and Meshes.vtt
- 9.02 Vertices and Triangle Faces
- 9.02 Vertices and Triangle Faces.srt
- 9.02 Vertices and Triangle Faces.vtt
- 9.03 Triangle Edges
- 9.03 Triangle Edges.srt
- 9.03 Triangle Edges.vtt
- 10 Line Drawing
- attachments
- 3drenderer-200830-084438
- 10.01 Line Equation
- 10.01 Line Equation.srt
- 10.01 Line Equation.vtt
- 10.02 DDA Line Drawing Algorithm
- 10.02 DDA Line Drawing Algorithm.srt
- 10.02 DDA Line Drawing Algorithm.vtt
- 10.03 Coding a Function to Draw Lines
- 10.03 Coding a Function to Draw Lines.srt
- 10.03 Coding a Function to Draw Lines.vtt
- 11 Dynamic Arrays
- attachments
- 3drenderer-200830-084947
- 3drenderer-200830-085209
- 02 Downloading array.h.html
- 04 Separation of Vertex and Faces.html
- 11.01 Dynamic Arrays
- 11.01 Dynamic Arrays.srt
- 11.01 Dynamic Arrays.vtt
- 11.03 Dynamic Mesh Vertices and Faces
- 11.03 Dynamic Mesh Vertices and Faces.srt
- 11.03 Dynamic Mesh Vertices and Faces.vtt
- 12 OBJ Files
- attachments
- 3drenderer-200830-090827
- 04 OBJ Files as Quads or Triangles.html
- 12.01 OBJ Files
- 12.01 OBJ Files.srt
- 12.01 OBJ Files.vtt
- 12.02 Exercise. Loading OBJ File Content
- 12.02 Exercise. Loading OBJ File Content.srt
- 12.02 Exercise. Loading OBJ File Content.vtt
- 12.03 Loading OBJ File Content
- 12.03 Loading OBJ File Content.srt
- 12.03 Loading OBJ File Content.vtt
- 13 Vector Operations
- attachments
- 3drenderer-200830-094243
- 3drenderer-200830-100015
- 3drenderer-200830-100843
- DotProductVisualizer-200426-195719
- 02 Back-face Culling in Games.html
- 09 Dot Product & Vector Length.html
- 12 Back-face Culling in OpenGL.html
- 13.01 Back-face Culling Motivation
- 13.01 Back-face Culling Motivation.srt
- 13.01 Back-face Culling Motivation.vtt
- 13.03 Vector Magnitude
- 13.03 Vector Magnitude.srt
- 13.03 Vector Magnitude.vtt
- 13.04 Vector Addition and Subtraction
- 13.04 Vector Addition and Subtraction.srt
- 13.04 Vector Addition and Subtraction.vtt
- 13.05 Vector Scalar Multiplication and Division
- 13.05 Vector Scalar Multiplication and Division.srt
- 13.05 Vector Scalar Multiplication and Division.vtt
- 13.06 Vector Cross Product
- 13.06 Vector Cross Product.srt
- 13.06 Vector Cross Product.vtt
- 13.07 Finding the Normal Vector
- 13.07 Finding the Normal Vector.srt
- 13.07 Finding the Normal Vector.vtt
- 13.08 Dot Product
- 13.08 Dot Product.srt
- 13.08 Dot Product.vtt
- 13.10 Back-face Culling Algorithm
- 13.10 Back-face Culling Algorithm.srt
- 13.10 Back-face Culling Algorithm.vtt
- 13.11 Back-face Culling Code
- 13.11 Back-face Culling Code.srt
- 13.11 Back-face Culling Code.vtt
- 13.13 Vector Normalization
- 13.13 Vector Normalization.srt
- 13.13 Vector Normalization.vtt
- 14 Normalization & Direction.html
- 14 Triangle Rasterization
- attachments
- 3drenderer-200426-200054
- 3drenderer-200830-232410
- 3drenderer-200830-232730
- 3drenderer-200830-233039
- 11 Exercise Selecting Different Rendering Modes.html
- 13 Compiler Error & Enum Declaration.html
- 14 Typedef for Color Values.html
- 14.01 Triangle Fill
- 14.01 Triangle Fill.srt
- 14.01 Triangle Fill.vtt
- 14.02 Flat-Bottom & Flat-Top Technique
- 14.02 Flat-Bottom & Flat-Top Technique.srt
- 14.02 Flat-Bottom & Flat-Top Technique.vtt
- 14.03 Activity. Find Triangle Midpoint
- 14.03 Activity. Find Triangle Midpoint.srt
- 14.03 Activity. Find Triangle Midpoint.vtt
- 14.04 Solution to the Triangle Midpoint
- 14.04 Solution to the Triangle Midpoint.srt
- 14.04 Solution to the Triangle Midpoint.vtt
- 14.05 Coding the Triangle Midpoint Computation
- 14.05 Coding the Triangle Midpoint Computation.srt
- 14.05 Coding the Triangle Midpoint Computation.vtt
- 14.06 Flat-Bottom Triangle Algorithm
- 14.06 Flat-Bottom Triangle Algorithm.srt
- 14.06 Flat-Bottom Triangle Algorithm.vtt
- 14.07 Flat-Bottom Triangle Code
- 14.07 Flat-Bottom Triangle Code.srt
- 14.07 Flat-Bottom Triangle Code.vtt
- 14.08 Flat-Top Triangle Algorithm
- 14.08 Flat-Top Triangle Algorithm.srt
- 14.08 Flat-Top Triangle Algorithm.vtt
- 14.09 Flat-Top Triangle Code
- 14.09 Flat-Top Triangle Code.srt
- 14.09 Flat-Top Triangle Code.vtt
- 14.10 Avoiding Division by Zero
- 14.10 Avoiding Division by Zero.srt
- 14.10 Avoiding Division by Zero.vtt
- 14.12 Different Rendering Options Solution
- 14.12 Different Rendering Options Solution.srt
- 14.12 Different Rendering Options Solution.vtt
- 14.15 Colored Triangle Faces
- 14.15 Colored Triangle Faces.srt
- 14.15 Colored Triangle Faces.vtt
- 16 Number of Triangles vs. Performance.html
- 15 Sorting Faces by Depth
- attachments
- 3drenderer-200831-004245
- 02 Exercise Sorting Faces.html
- 04 Triangles, Polygons, and More…html
- 15.01 Painter’s Algorithm
- 15.01 Painter’s Algorithm.srt
- 15.01 Painter’s Algorithm.vtt
- 15.03 Coding a Sorting Function
- 15.03 Coding a Sorting Function.srt
- 15.03 Coding a Sorting Function.vtt
- 16 Matrices
- attachments
- 05 Exercise Matrix Multiplication.html
- 16.01 Matrices Overview
- 16.01 Matrices Overview.srt
- 16.01 Matrices Overview.vtt
- 16.02 Matrix Operations
- 16.02 Matrix Operations.srt
- 16.02 Matrix Operations.vtt
- 16.03 Properties of Matrix Multiplication
- 16.03 Properties of Matrix Multiplication.srt
- 16.03 Properties of Matrix Multiplication.vtt
- 16.04 Examples of Matrix Multiplication
- 16.04 Examples of Matrix Multiplication.srt
- 16.04 Examples of Matrix Multiplication.vtt
- 16.06 2D Rotation Matrix
- 16.06 2D Rotation Matrix.srt
- 16.06 2D Rotation Matrix.vtt
- 17 3D Matrix Transformations
- attachments
- 3drenderer-200831-015838
- 3drenderer-200831-021616
- 3drenderer-200831-022642
- 3drenderer-200831-023103
- left-hand-rotation-matrices
- 09 3D Rotation Direction & Handedness.html
- 17.01 3D Matrix Transformations
- 17.01 3D Matrix Transformations.srt
- 17.01 3D Matrix Transformations.vtt
- 17.02 3D Scale Matrix
- 17.02 3D Scale Matrix.srt
- 17.02 3D Scale Matrix.vtt
- 17.03 Matrix Typedef
- 17.03 Matrix Typedef.srt
- 17.03 Matrix Typedef.vtt
- 17.04 Scale Matrix Code
- 17.04 Scale Matrix Code.srt
- 17.04 Scale Matrix Code.vtt
- 17.05 3D Translation Matrix
- 17.05 3D Translation Matrix.srt
- 17.05 3D Translation Matrix.vtt
- 17.06 Translation Matrix Code
- 17.06 Translation Matrix Code.srt
- 17.06 Translation Matrix Code.vtt
- 17.07 3D Rotation Matrices
- 17.07 3D Rotation Matrices.srt
- 17.07 3D Rotation Matrices.vtt
- 17.08 Rotation Matrix Code
- 17.08 Rotation Matrix Code.srt
- 17.08 Rotation Matrix Code.vtt
- 17.10 The World Matrix
- 17.10 The World Matrix.srt
- 17.10 The World Matrix.vtt
- 17.11 Order of Transformations
- 17.11 Order of Transformations.srt
- 17.11 Order of Transformations.vtt
- 17.12 Translation is Not a Linear Transformation
- 17.12 Translation is Not a Linear Transformation.srt
- 17.12 Translation is Not a Linear Transformation.vtt
- 18 Projection Matrix
- attachments
- 3drenderer-200831-164731
- 06 Projection in OpenGL & DirectX.html
- 08 Order of Transformations for Row-major and Column-major.html
- 18.01 Defining a Projection Matrix
- 18.01 Defining a Projection Matrix.srt
- 18.01 Defining a Projection Matrix.vtt
- 18.02 Populating our Perspective Projection Matrix
- 18.02 Populating our Perspective Projection Matrix.srt
- 18.02 Populating our Perspective Projection Matrix.vtt
- 18.03 Coding the Perspective Projection Matrix
- 18.03 Coding the Perspective Projection Matrix.srt
- 18.03 Coding the Perspective Projection Matrix.vtt
- 18.04 Exercise. Projecting Negative Values
- 18.04 Exercise. Projecting Negative Values.srt
- 18.04 Exercise. Projecting Negative Values.vtt
- 18.05 Projecting Negative Values
- 18.05 Projecting Negative Values.srt
- 18.05 Projecting Negative Values.vtt
- 18.07 Row-major and Column-major Orders
- 18.07 Row-major and Column-major Orders.srt
- 18.07 Row-major and Column-major Orders.vtt
- 19 Light and Shading
- attachments
- 3drenderer-200831-174429
- 3drenderer-200831-180712
- 03 A Note on Vector Normalization.html
- 05 Gouraud Shading in Games.html
- 19.01 Flat Shading
- 19.01 Flat Shading.srt
- 19.01 Flat Shading.vtt
- 19.02 Coding Flat Shading & Light
- 19.02 Coding Flat Shading & Light.srt
- 19.02 Coding Flat Shading & Light.vtt
- 19.04 Smooth Shading Techniques
- 19.04 Smooth Shading Techniques.srt
- 19.04 Smooth Shading Techniques.vtt
- 19.06 Inverted Vertical Screen Values
- 19.06 Inverted Vertical Screen Values.srt
- 19.06 Inverted Vertical Screen Values.vtt
- 20 Texture Mapping
- attachments
- 3drenderer-201219-201327
- 3drenderer-221113-015749
- BarycentricVisualizer-200410-190715
- 20.01 Texture Mapping
- 20.01 Texture Mapping.srt
- 20.01 Texture Mapping.vtt
- 20.02 Representing Textures in Memory
- 20.02 Representing Textures in Memory.srt
- 20.02 Representing Textures in Memory.vtt
- 20.03 Texture Typedef
- 20.03 Texture Typedef.srt
- 20.03 Texture Typedef.vtt
- 20.04 Textured Triangles
- 20.04 Textured Triangles.srt
- 20.04 Textured Triangles.vtt
- 20.05 Textured Flat-Bottom Triangle
- 20.05 Textured Flat-Bottom Triangle.srt
- 20.05 Textured Flat-Bottom Triangle.vtt
- 20.06 Textured Flat-Top Triangle
- 20.06 Textured Flat-Top Triangle.srt
- 20.06 Textured Flat-Top Triangle.vtt
- 20.07 Barycentric Coordinates
- 20.07 Barycentric Coordinates.srt
- 20.07 Barycentric Coordinates.vtt
- 20.08 Barycentric Weights (α, β, γ)
- 20.08 Barycentric Weights (α, β, γ).srt
- 20.08 Barycentric Weights (α, β, γ).vtt
- 20.09 Function to Compute (α, β, γ)
- 20.09 Function to Compute (α, β, γ).srt
- 20.09 Function to Compute (α, β, γ).vtt
- 20.10 Visualizing Textured Triangles
- 20.10 Visualizing Textured Triangles.srt
- 20.10 Visualizing Textured Triangles.vtt
- 21 Perspective Correct Textures
- attachments
- 3drenderer-221113-015948
- 3drenderer-221113-020405
- KokLimLow-PerspectiveCorrectInterpolation
- 04 What Does Affine Mean.html
- 05 A Deeper Look into Perspective Correct Theory.html
- 21.01 Perspective Correct Interpolation
- 21.01 Perspective Correct Interpolation.srt
- 21.01 Perspective Correct Interpolation.vtt
- 21.02 PS1 Games and Affine Texture Mapping
- 21.02 PS1 Games and Affine Texture Mapping.srt
- 21.02 PS1 Games and Affine Texture Mapping.vtt
- 21.03 Perspective Correct Interpolation Code
- 21.03 Perspective Correct Interpolation Code.srt
- 21.03 Perspective Correct Interpolation Code.vtt
- 21.06 Inverted Cube UV Coordinates
- 21.06 Inverted Cube UV Coordinates.srt
- 21.06 Inverted Cube UV Coordinates.vtt
- 22 Decoding PNG Files
- attachments
- 3drenderer-221113-020432
- 3drenderer-221113-020736
- 02 Downloading upng.h.html
- 22.01 Decoding PNG Files
- 22.01 Decoding PNG Files.srt
- 22.01 Decoding PNG Files.vtt
- 22.03 Loading PNG File Content
- 22.03 Loading PNG File Content.srt
- 22.03 Loading PNG File Content.vtt
- 22.04 Freeing PNG Textures
- 22.04 Freeing PNG Textures.srt
- 22.04 Freeing PNG Textures.vtt
- 23 Textured OBJ Files
- attachments
- 3drenderer-221113-020800
- 3drenderer-221113-020824
- 3drenderer-221113-020913
- 03 A Small Note on Rasterization Rules.html
- 05 Color Bytes (RGBA vs. ABGR).html
- 23.01 Loading OBJ Texture Attributes
- 23.01 Loading OBJ Texture Attributes.srt
- 23.01 Loading OBJ Texture Attributes.vtt
- 23.02 Preventing Texture Buffer Overflow
- 23.02 Preventing Texture Buffer Overflow.srt
- 23.02 Preventing Texture Buffer Overflow.vtt
- 23.04 Visualizing Textured OBJ Models
- 23.04 Visualizing Textured OBJ Models.srt
- 23.04 Visualizing Textured OBJ Models.vtt
- 24 Z-Buffer
- attachments
- 3drenderer-221113-020950
- 3drenderer-221113-021011
- 3drenderer-221113-021500
- 3drenderer-221113-021534
- 06 Revisiting the PS1 Look.html
- 24.01 Z-Buffer
- 24.01 Z-Buffer.srt
- 24.01 Z-Buffer.vtt
- 24.02 Z-Buffer Code
- 24.02 Z-Buffer Code.srt
- 24.02 Z-Buffer Code.vtt
- 24.03 Exercise. Z-Buffer for Filled Triangles
- 24.03 Exercise. Z-Buffer for Filled Triangles.srt
- 24.03 Exercise. Z-Buffer for Filled Triangles.vtt
- 24.04 Implementing a Z-Buffer for Filled Triangles
- 24.04 Implementing a Z-Buffer for Filled Triangles.srt
- 24.04 Implementing a Z-Buffer for Filled Triangles.vtt
- 24.05 A Discussion on Dynamic Memory Allocation
- 24.05 A Discussion on Dynamic Memory Allocation.srt
- 24.05 A Discussion on Dynamic Memory Allocation.vtt
- 25 Camera
- attachments
- 3drenderer-221113-021746
- 3drenderer-221113-021937
- 3drenderer-221113-021955
- 06 So, What Actually Gets Transformed.html
- 25.01 Camera Space
- 25.01 Camera Space.srt
- 25.01 Camera Space.vtt
- 25.02 Look At Camera Model
- 25.02 Look At Camera Model.srt
- 25.02 Look At Camera Model.vtt
- 25.03 Look At Transformations
- 25.03 Look At Transformations.srt
- 25.03 Look At Transformations.vtt
- 25.04 The LookAt Function
- 25.04 The LookAt Function.srt
- 25.04 The LookAt Function.vtt
- 25.05 Coding the LookAt Function
- 25.05 Coding the LookAt Function.srt
- 25.05 Coding the LookAt Function.vtt
- 25.07 Variable Delta-time
- 25.07 Variable Delta-time.srt
- 25.07 Variable Delta-time.vtt
- 25.08 A Simple FPS Camera Movement
- 25.08 A Simple FPS Camera Movement.srt
- 25.08 A Simple FPS Camera Movement.vtt
- 25.09 Coding a Simple FPS Camera Movement
- 25.09 Coding a Simple FPS Camera Movement.srt
- 25.09 Coding a Simple FPS Camera Movement.vtt
- 26 Clipping
- attachments
- 3drenderer-221113-022045
- 3drenderer-221113-022115
- 3drenderer-221113-022143
- 3drenderer-221113-022202
- 3drenderer-221113-022222
- 3drenderer-221113-022242
- JoyKennethClipping-200905-175314
- 17 Deciding What Not to Render.html
- 26.01 Frustum Clipping
- 26.01 Frustum Clipping.srt
- 26.01 Frustum Clipping.vtt
- 26.02 Planes
- 26.02 Planes.srt
- 26.02 Planes.vtt
- 26.03 Exercise. Right Frustum Plane Point & Normal
- 26.03 Exercise. Right Frustum Plane Point & Normal.srt
- 26.03 Exercise. Right Frustum Plane Point & Normal.vtt
- 26.04 Defining Frustum Planes Points & Normals
- 26.04 Defining Frustum Planes Points & Normals.srt
- 26.04 Defining Frustum Planes Points & Normals.vtt
- 26.05 Initializing an Array of Frustum Planes
- 26.05 Initializing an Array of Frustum Planes.srt
- 26.05 Initializing an Array of Frustum Planes.vtt
- 26.06 Defining Points Inside and Outside Planes
- 26.06 Defining Points Inside and Outside Planes.srt
- 26.06 Defining Points Inside and Outside Planes.vtt
- 26.07 Intersection Between Line & Plane
- 26.07 Intersection Between Line & Plane.srt
- 26.07 Intersection Between Line & Plane.vtt
- 26.08 Clipping a Polygon Against a Plane
- 26.08 Clipping a Polygon Against a Plane.srt
- 26.08 Clipping a Polygon Against a Plane.vtt
- 26.09 Polygon Typedef
- 26.09 Polygon Typedef.srt
- 26.09 Polygon Typedef.vtt
- 26.10 A Function to Clip Polygon Against Planes
- 26.10 A Function to Clip Polygon Against Planes.srt
- 26.10 A Function to Clip Polygon Against Planes.vtt
- 26.11 Coding the Function to Clip Polygons Against Planes
- 26.11 Coding the Function to Clip Polygons Against Planes.srt
- 26.11 Coding the Function to Clip Polygons Against Planes.vtt
- 26.12 Converting Polygons Back Into Triangles
- 26.12 Converting Polygons Back Into Triangles.srt
- 26.12 Converting Polygons Back Into Triangles.vtt
- 26.13 Visualizing Clipped Triangles
- 26.13 Visualizing Clipped Triangles.srt
- 26.13 Visualizing Clipped Triangles.vtt
- 26.14 Horizontal & Vertical FOV Angles
- 26.14 Horizontal & Vertical FOV Angles.srt
- 26.14 Horizontal & Vertical FOV Angles.vtt
- 26.15 Clipping Texture UV Coordinates
- 26.15 Clipping Texture UV Coordinates.srt
- 26.15 Clipping Texture UV Coordinates.vtt
- 26.16 Clipping Space
- 26.16 Clipping Space.srt
- 26.16 Clipping Space.vtt
- 27 Code Polishing & Refactoring
- attachments
- 3drenderer-221113-022438
- 3drenderer-221113-022502
- 3drenderer-221113-022522
- 3drenderer-221113-022543
- 27.01 Working with Static Variables
- 27.01 Working with Static Variables.srt
- 27.01 Working with Static Variables.vtt
- 27.02 Refactoring SDL Globals
- 27.02 Refactoring SDL Globals.srt
- 27.02 Refactoring SDL Globals.vtt
- 27.03 Simulating Low-Resolution Displays
- 27.03 Simulating Low-Resolution Displays.srt
- 27.03 Simulating Low-Resolution Displays.vtt
- 27.04 Refactoring Light Globals
- 27.04 Refactoring Light Globals.srt
- 27.04 Refactoring Light Globals.vtt
- 27.05 Exercise. Camera Pitch Rotation
- 27.05 Exercise. Camera Pitch Rotation.srt
- 27.05 Exercise. Camera Pitch Rotation.vtt
- 27.06 Implementing the Camera Pitch Rotation
- 27.06 Implementing the Camera Pitch Rotation.srt
- 27.06 Implementing the Camera Pitch Rotation.vtt
- 28 Multiple Meshes
- attachments
- 3drenderer-221113-022633
- 3drendererfinal-221113-022708
- 28.01 Declaring Multiple Meshes
- 28.01 Declaring Multiple Meshes.srt
- 28.01 Declaring Multiple Meshes.vtt
- 28.02 Implementing Multiple Meshes
- 28.02 Implementing Multiple Meshes.srt
- 28.02 Implementing Multiple Meshes.vtt
- 28.03 Implementing Multiple Textures
- 28.03 Implementing Multiple Textures.srt
- 28.03 Implementing Multiple Textures.vtt
- 28.04 Finishing our Implementation
- 28.04 Finishing our Implementation.srt
- 28.04 Finishing our Implementation.vtt
- 28.05 Handedness & Orientation
- 28.05 Handedness & Orientation.srt
- 28.05 Handedness & Orientation.vtt
- 29 CPU vs. GPU Rasterization
- attachments
- trianglerasterizer-230326-202115
- trianglerasterizer-230326-202147
- trianglerasterizer-230326-202219
- trianglerasterizer-230326-202640
- trianglerasterizer-230326-203744
- trianglerasterizer-230326-204609
- 09 A Fixed-Point Rasterizer.txt
- 29.01 Dedicated Graphics Cards
- 29.01 Dedicated Graphics Cards.srt
- 29.01 Dedicated Graphics Cards.vtt
- 29.02 Modern Graphics APIs & Shaders
- 29.02 Modern Graphics APIs & Shaders.srt
- 29.02 Modern Graphics APIs & Shaders.vtt
- 29.03 A Parallel Rasterization Algorithm
- 29.03 A Parallel Rasterization Algorithm.srt
- 29.03 A Parallel Rasterization Algorithm.vtt
- 29.04 Determining Point Inside Triangle
- 29.04 Determining Point Inside Triangle.srt
- 29.04 Determining Point Inside Triangle.vtt
- 29.05 Top-Left Rasterization Rule
- 29.05 Top-Left Rasterization Rule.srt
- 29.05 Top-Left Rasterization Rule.vtt
- 29.06 Edge Function & Barycentric Weights
- 29.06 Edge Function & Barycentric Weights.srt
- 29.06 Edge Function & Barycentric Weights.vtt
- 29.07 Edge Function & Constant Increments
- 29.07 Edge Function & Constant Increments.srt
- 29.07 Edge Function & Constant Increments.vtt
- 29.08 Subpixel Rasterization
- 29.08 Subpixel Rasterization.srt
- 29.08 Subpixel Rasterization.vtt
- 30 Conclusion and Next Steps
- 01 Modern Hardware 3D Techniques.html
- 02 Older Hardware 3D Techniques.html
- 30.03 Next Steps
- 30.03 Next Steps.srt
- 30.03 Next Steps.vtt
包含内容
- · 01 Introduction
- · 1.01 Introduction and Learning Outcomes
- · 1.01 Introduction and Learning Outcomes.srt
- · 1.01 Introduction and Learning Outcomes.vtt
- · 1.02 How to Take this Course
- · 1.02 How to Take this Course.srt
- · 1.02 How to Take this Course.vtt
- · 1.03 Words of Encouragement
学习社区
1 人正在学习
阅读与知识交流
交流各类书籍与综合资料,分享阅读问题、笔记和延伸线索。提问时请带上资料名称。