Skip to content

Features

tobspr edited this page Mar 3, 2016 · 48 revisions

This page lists the already implemented Features, the features to be implemented, and the TODO list:

Features

This is the stuff the pipeline already supports:

  • Full deferred rendering
    • Clustered deferred lighting
  • Physically based shading
  • Directional shadows with PSSM
    • PCF filtering
    • PCSS shadow filtering
  • Atmospheric scattering supporting different scattering models
    • Eric Bruneton
    • Hosek & Wilkie
  • Screen space ambient occlusion:
    • SSAO
    • SSVO
    • HBAO
    • AlchemyAO
    • UE4AO (Modified AlchemyAO as proposed in UE)
  • Bloom
  • Color correction:
    • Tonemapping with many operators:
      • Reinhard (Luminance and Color based)
      • Uncharted 2
      • Exponential
    • Dynamic Exposure
    • Film grain
    • Vignetting
    • Chromatic Aberration
    • Color LUT
  • SMAA / FXAA
  • Subsurface shading
    • Backface translucency
  • SSLR
    • Screen space local reflections (bit buggy right now)
  • Environment Probes
    • Up to 341 per scene
  • Volumetric Clouds
  • (experimental) Voxel cone tracing
  • and much more ...

To be implemented

This are the features I really want to get into the Pipeline at some point, ordered by their importance:

  • Forward shaded objects (in progress)
    • Particles
    • Transparent objects
  • Eventually DoF (I do not like this effect, so its on the end of my todo list, but I will implement it for completeness)

TODO List

This is my personal todo-list off stuff that I want to get done (not ordered):

  • Support for lights attached to node paths
  • Improve SSLR (Maybe not required with VCT)
  • Only update shadow sources in frustum
  • Improve clouds
    • Examine better rendering technology than voxels
  • VSM for terrain shadows
  • Only update scattering cubemap if the time of day changed
  • Reimplement settings loader
  • Move plugins out of rpcore to rpplugins/ (or similar name)
  • Better workflow for exporting lights and environment-probes (Update: Fix light export)
  • Rename rp_object to rpobject
  • Support for sky occlusion to properly lit closed rooms (and SkyAO)
  • Use low-precision depth (16bit) for everything
  • Instead of using no ambient for envprobes, use sky occlusion to determine ambient
  • Improve and fix Voxel Cone Tracing
  • Seperate per-object and camera motion blur
  • Only use relevant lights for forward shading (Quadtree maybe?)
  • Support for envprobes with depthmap, to avoid bleeding
  • Smooth frame delta for motion blur so we have no spikes