Advertisement
Bisqwit

Outline of Portalrendering2 project

Jan 13th, 2019
448
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
YAML 2.16 KB | None | 0 0
  1. - Vector mathematics
  2.   - Quaternions
  3.   - Planes
  4.  
  5. - 2D polygon (TRIANGLE) rendering
  6.   - With texture mapping
  7.   - With perspective correction
  8.  
  9. - Multi-sided polygon rendering
  10.   - Tesselation
  11.  
  12. - Viewport
  13.   - Frustum, created from 2D edgepoints
  14.   - Pixel buffer (float vectors)
  15.   - Z buffer
  16.   - Prespective projection algorithms
  17.  
  18. - 3D polygon rendering
  19.   - Discard polygons that are facing opposite way
  20.   - Clip against view frustum (set of planes)
  21.   - Prespective projection
  22.  
  23. - Scene rendering, part 1
  24.   - Go through all polygons in the current sector
  25.      - Project and clip
  26.      - If the polygon is a portal, recurse using the 2D points as a frustum
  27.      - If the polygon is not a portal, add it to one of the four draw-lists
  28.   - Sort draw-lists: 0 = non-overlapping polygons (classic portal rendering), no sorting;
  29.                      1 = Z-buffer polygons, nearest first
  30.                      2 = Translucent polygons, farthest first
  31.                      3 = Overlay polygons, farthest first
  32.   - For each multi-sided polygon in the draw-list, render them.
  33.  
  34. - Scene rendering, part 2: Projection
  35.   - Compose the pixel map from carefully selected and cropped view plates
  36.   - Each view plate is rendered as in part 1
  37.  
  38. - Final step: HDR
  39.   - Calculate brightness value for each pixel using current GlobalBrightness
  40.   - Calculate an overall illumination value using a weighted average of the per-pixel brightness values
  41.   - Adjust the GlobalBrightness using this illumination value
  42.   - Calculate the average difference between brightness of previous and current frame
  43.   - Calculate an “aggressivity” value using that difference
  44.   - Calculate a per-pixel “ideal brightness” value, using current brightness, current overall illumination value and aggressiveness
  45.   - Create two blurred-down versions of the per-pixel “ideal brightness” maps
  46.   - Create a per-pixel brightness target map using a weighted average of previous frame brightness target map and the three “ideal brightness” maps
  47.   - Render the picture by multiplying original pixels with the per-pixel brightness map and the GlobalBrightness; clamping with saturation and rendering with dithering.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement