abrantesasf / 3d_graphics_programming

Repositório para o curso 3D Graphics Programming, do Pikuma (https://pikuma.com)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

3D Graphics Programming

Repositório para minhas atividades no curso "3D Graphics Programming", do Gustavo Pezzi, no Pikuma (https://pikuma.com).

O objetivo do curso é aprender a teoria e a matemática que suportam a criação de gráficos tridimensionais, através da criação prática de um software renderizador a partir do zero, usando apenas a linguagem C padrão e a biblioteca SDL (Simple DirectMedia). Maiores informações na página do curso: 3D Graphics Programming.

Progresso do curso:

  • Introduction
    • Introduction and Learning Outcomes
    • How to Take this Course
    • Words of Encouragement
  • Compiling our project
    • Project Dependencies
    • A Quick Note for Windows Users
    • Project Folder Structure
    • The Compilation Flow
    • Working with Makefiles
    • Configuring Visual Studio in Windows
    • Can I use WSL on Windows?
  • SDL Setup and Color Buffer
    • Creating an SDL Window
    • Rendering an SDL Window
    • Declaring a Color Buffer
    • Colorbuffer vs. Framebuffer
    • Allocation Memory and Freeing Resources
    • Checking for Errors in Memory Allocation
    • Quiz: Memory Allocation
    • The Operator sizeof
    • SDL Texture
    • Fullscreen Window
    • Exercise: Drawing a Background Grid
    • Drawing a Background Grid
    • Background Color Patterns
    • Exercise: Drawing Rectangles
    • Creating a Function to Draw Rectangles
    • Quiz: Color Buffer
  • Multiple Header Files
  • Vectors and Points
  • Projecting Points
  • Linear Transformations
  • Fixed Time Step
  • Triangles and Vertices
  • Line Drawing
  • Dynamic Arrays
  • OBJ Files
  • Vector Operations
  • Triangle Rasterization
  • Sorting Faces by Depth
  • Matrices
  • 3D Matrix Transformations
  • Projection Matrix
  • Light and Shading
  • Texture Mapping
  • Perspective Correct Textures
  • Decoing PNG Files
  • Textures OBJ Files
  • Z-Buffer
  • Camera
  • Clipping
  • Code Polishing & Refactoring
  • Multiple Meshes
  • CPU vs. GPU Rasterization
  • Conclusion and Next Steps

About

Repositório para o curso 3D Graphics Programming, do Pikuma (https://pikuma.com)


Languages

Language:C 98.8%Language:Makefile 1.2%