real-time-rendering: an overview for artists [wayback-archive]
- overview of
- pbr
- render pipeline
- draw calls
- culling
- optimizations
Design Patterns for Low-Level Real-Time Rendering [wayback-archive]
- overview
- GPU/CPU memory systems
- command lists
- GCN resource descriptors
- ring buffer
- both GPU and CPU
- returning CPU pointer for upload
- GPU for binding memory
- gpu work scheduling
Physical Cameras in Stingray [wayback-archive]
- controlled by the same parameters a real world camera
- camera body
- sensor size
- iso sensitivity
- shutter speed
- lens
- focal length
- focus range
- aperture diameters
- allows override with artistic choices
- real world validation setup
Compact Cube Meshes, and Compact Cube Meshes in Unity [wayback-archive]
- storing data in per-face data structures instead of vertices
- calculate face index in vertex shader and reconstruct vertex data
Debug Draw with Cached Meshes & Vertex Shaders in Unity [wayback-archive]
- how to implement debug drawing using only Debug.DrawLine
- using cached meshes, with vertex shader modifications if possible
- dynamic batching breaks object space vertex shaders
Microfacet-based Normal Mapping for Robust Monte Carlo Path Tracing [wayback-archive]
- solution for energy loss, backfacing normals
- model is symmetric, while classical normal maps are not
- adds some extra computational complexity compared to “classical” normal mapping
Triangle Reordering for Efficient Rendering in Complex Scenes [wayback-archive]
- reduce overdraw and optimize vertex cache reuse
- uses keyframe animated model, breaking down into clusters and multiple index buffers
- optimize for different view directions
- select “best-fit” index buffer based on the view at runtime
Half Tile Offset Streaming World Grids [wayback-archive]
- proposes offsetting grid tiles by half a tile to reduce memory required in a streaming world
Half-edge data structure considered harmful [wayback-archive]
- list possible problems with a half-edge data structure
- and a possible alternative (‘connected triangle’)