ArturoNereu / ComputerGraphics

A repository documenting Computer Graphics for real time applications

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

A repository documenting Computer Graphics for real-time applications

In my opinion, one of the most beautiful applications of computing, programming, mathematics, physics, art and human knowledge is Computer Graphics. While I don't consider myself an expert, I will say that I've studied the topic for many years now and in this document I want to share some of the most useful and influential resources I've found through the years. I hope they are useful to you.

Please, if you have additional feedback or resources, feel free to reach out to me on twitter: @ArturoNereu or submit a GitHub issue and will gladly review and add them.

Is Computer Graphics programming for me? Or where to start.

Maybe you are thinking about pursuing a career in the computer graphics field or just wanting to learn more about the topic (which is basically my case). In any case, I would start by saying that while it may not be the most difficult area of programming it is also not extremely straightforward. Computer Graphics or CG are built on top of many other fields such as math, programming, physics, and more. In many cases you won't need to have a deep understanding of those areas but it can definitely help.

Index

  • [Internet Articles]
  • [Courses]
  • [Tools]
  • [Books]
  • [Community]

Blogs

Math

Tutorials

Color and Lighting

Slides and Presentations

Papers

  • Paperbug Easy-to-search site with a collection of graphics programming papers and resources by Jeremy Ong

Computer Graphics

Shader Development

Math

  • Math for Game Devs Freya Holmér (Shader Forge, Shapes) free videos teaching mathematics for game developers.

Game Engines

And this very interesting study on Custom Game Engines by raylib.

Shader Sandboxes

Put your skills to use, learn, try and more by using these online shader sandboxes:

Profiling

  • RenderDoc A must use tool to inspect, debug and analize your frames.
  • NVIDIA Nsight Graphics Tool by NVIDIA to analize your frames. Direct3D, Vulkan, OpenGL, etc.

Graphics APIs

Shading Languages

  • GLSL
  • HLSL The High Level Shading Language for DirectX
  • CG NVIDIA's deprecated programmable shading language.
  • Open Shading Language Small but rich language for programmable shading in advanced renderers and other applications.

Physically Based Render Engines

  • Filament Project by Google Real-time physically based rendering engine for Android, iOS, Windows, Linux, macOS and WASM/WebGL
  • Mitsuba 2 Renderer Mitsuba 2 is a research-oriented retargetable rendering system, written in portable C++17.
  • tiny renderer A tiny software rasterizer by Dmitry Sokolov.

Path/Ray Tracers


Shaders and Rendering

Math


People to follow on Twitter

  • CG List on Twitter I've found Twitter to be a great source of ideas, material and inspiration. Here's a list of people sharing their knowledge.

Communities

Preservation

About

A repository documenting Computer Graphics for real time applications