3D

Anyone that think 3D movies is the future need to return to 1983 and Jaws 3-D


This section it about how to render 3D graphics. When you finally understand part of it someone has found a better way and you need to learn it again. Enjoy.

Triangles Are Precious - Let's Treat Them With Care

3D Game Rendering 101

Applying for Entry Level Graphics Jobs in Games

Modelling

This is how the 3D data itself is represented. The most common way is to use polygons and many of the others end up using polygons to draw things in the end.

Pre Rendering

  • Culling - Choose what is visible so you do not have to send everything in the world to the graphics card.
    • LOD - If something is far away use less details to draw it.
  • Imposters - If something is Really far away use a image of it instead.
  • Billboard - Draw something that is always facing the camera. Used by particle system and imposters.
    • Animation - Make things move.
    • Blending - How will the things you send to the graphic card interact with the things that are already drawn.

Materials

    • Texture - Images that you can use on objects and many other strange things.
    • Shaders - How the strange things are done with textures.
    • Material - The combination of shaders, textures and all other parameters to draw an object.
    • Shadows - How to find out if a light hits a part of a surface...
    • Lighting - ... and if it do how much light get there from the light.

Rendering

    • Architecture - How to design and setup the rendering part of a engine.
    • Deferred Rendering - Pick the order to cull, light and texture your surfaces.
    • Z-Buffer - How the hardware keep track of the distance to the things you draw.
    • Anti-aliasing - Try to hide the fact that you use small pixels to show things on the screen.
    • Ray tracing - Rendering where you start at each pixel and look out into the world to see what is visible at it.

Post Rendering

    • Post Process - Tweak your completed rendered image so it looks like you want it.

Other

    • Characters - You are used to look at people, that's what makes them hard to render.
    • Effects - What cool effects can you do. Learn how the classic ones was made.
    • Compute - Using compute on the GPU for rendering.
    • Game Articles - Articles about specific games or engines.

Settings

Get More From Your Games: A Beginner's Guide to Graphics Settings - 2013

Terminology Rant - 2008

Reference

Checkerboard

Checkerboard rendering, rotated anti-aliasing and grid frequencies - 2018

4K Checkerboard in Battlefield 1 and Mass Effect Andromeda - 2017

Interior Mapping

Interior Mapping: rendering real rooms without geometry - 2018

Shader Showcase Saturday #9: Interior Mapping - 2018

How to make a fake interior effect with unity using reflection probes - 2018

Readings on the State of the Art in Rendering - 2018

Intro to GPU Scalarization – Part 1 and Part 2 - 2018

The Poor Man's 3D Camera - 2017

Console quality game rendering on mobile - 2017

Should we get rid of Vertex Buffers? - 2017

FrameGraph: Extensible Rendering Architecture in Frostbite - 2017

radeonsi: out-of-order rasterization on VI+ - 2017

Efficient GPU Rendering of Subdivision Surfaces - 2016

Easy GPU Buffer updating wrapper - 2016

Wrapping up the Graphics Device - 2016

GPU-Driven Rendering Pipelines - 2015

GPU-Based Scene Generation for Flight Simulation - 2015

Iñigo Quílez Articles - 2015

Creating Content to Drive Destiny’s Investment Game: One Solution to Rule Them All - 2014

How to make a rendering engine - 2014

The State of Rendering - 2013

What no one told you about the videocard: lagging 1 frame behind - 2011

Rendering Technology at Black Rock Studios - 2009

Building a Modern Engine for the Visual Simulation Industry - 2009

Animation and physics sitting in a tree - 2009

SceneTree's - 2009. The world is not a SceneTree , Characters are a special sort of tree but not a SceneTree , The world is... the world

GPU-driven rendering (SIGGRAPH 2015 follow up)

Programmable vertex fetching and index buffering

Promit's Ventspace

Depth Proxy Transparency Rendering - 2017

Revisiting the Vertex Cache: Understanding and Optimizing Vertex Processing on the modern GPU - 2018

On-the-fly Vertex Reuse for Parallel Software Geometry Processing - 2018

=== Mobile

Frostbite on Mobile - 2015

Mobile Graphics 101 - 2018

=== Optimize size

Making an animation 18 bytes at a time - 2018

SIGGRAPH 2020 Links - 2020

Happy New Year From Activision Research - 2020

Lima Oscar Delta! Scaling Content in Call of Duty: Modern Warfare - 2020

Performance speed limits - 2019

What has your microcode done for you lately? - 2019

Render Graph Optimization Scribbles - 2019

What's up with my branch on GPU? - 2019

Real-Time Continuous Level of Detail Rendering of Point Clouds - 2019

SampleZoo - Simple implementations of sampling patterns, with objective tests to compare them - 2019

Advances in Rendering, Graphics Research and Video Game Production - 2019

Halcyon: Rapid innovation using modern graphics – Reboot Develop 2019

3D Game Rendering 101 - 2019

Live Long and Render - 2019 - Part1, Part2, Part3, Part4, Part5, Part6 and Part7

Maximizing Rendering Efficiency - 2018

readings on the state of the art in rendering - 2018

Analyzing Modern Rendering - 2018

Real-World Measurements for Call of Duty: Advanced Warfare - 2018

HDR in Call of Duty - 2018

Turing Texture Space Shading - 2018

High-Performance Graphics 2018 - 2018

Shading Atlas Streaming - 2018

Automated Testing in Call of Duty - 2018

PIX Release 2008.26 – Our biggest update to GPU captures since - 2017

Rendering of Call of Duty: Infinite Warfare - 2017

Improved Culling for Tiled and Clustered Rendering in Call of Duty: Infinite Warfare - 2017

Emotion Challenge: Building a New Photoreal Facial Performance Pipeline for Games - 2017

Efficient GPU Rendering of Subdivision Surfaces - 2016

ATVI-TR-16-02: Practical Order Independent Transparency - 2016

Directed graph traversal, orderings and applications to data-flow analysis - 2015

Minimal setup screen space quads: No buffers/layouts required - 2012

Open Problems in Real-time Rendering - The Value of Pixel$ - 2012

Skeletal Animation Looping with Autocorrelation - 2012

Advances in Rendering, Graphics Research and Video Game Production

Mitsuba 2: A Retargetable Forward and Inverse Renderer

Using Nsight Systems for Fixing Stutters in Games

Getting started with Radeon Memory Visualizer (RMV)

Rendering to Texture

Color masks and occluders

Deferred improvements

Deferred(ish) Rendering

The Last of Us Part II, material blending, the SDF of a plane.

Rules for a Future-Proof 2D Render Order

The Center of the Pixel is (0.5,0.5)