GraphicsProgramming / learnd3d11

Learn how to D3D11

Home Page:https://graphicsprogramming.github.io/learnd3d11/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Come up with a structure for the second section of the tutorial

deccer opened this issue · comments

All that tbd, we should VC like last time

Basics

  • Colors
  • Blending (BlendState)
  • Dear Imgui? (it might make sense to manipulate light position/color later why not introduce dear imgui here, we could manipulate the color of the 3 corners of the HelloTriangle to see it in action and also how interpolation by the PS affects the outcome
  • Gamma Correction
  • Blinn-Phong with hardcoded directional light
  • Blinn-Phong materials and lights
  • Normal Mapping
  • Lights from CPU
    • Point
    • Spot
    • Directional
    • Light Geometry (I think we should use them from the start, for point/spot lights)
    • Debug Lights
  • RenderTargets (aka Framebuffers, we need them for Shadows and Defered and whatnot)
    • We could also introduce Framebuffer scaling, like modern games provide a way too (render to 50% of screen res etc) (Quake Chanmpions, Path of Exile on top of my head)
  • Shadows
    • Implement basic shadow
    • Fixup with bias, front face culling, PCF
    • Point Light Cubes?
    • Cascade Shadow maps
    • Variance Shadow Maps?
  • Frustum Culling?
  • Forward+ ... (steal from 3dgep?)
  • Deferred Shading
    • Tightly Packed GBuffer?
    • Classical Deferred
    • Tiled/Clustered ... (we could steal from 3dgep? but implement it using our "framework")

PBR

  • Rendering equation and basic theory
  • Used BRDFs
  • Physically based lighting
  • IBL with SH

Techniques

  • Compute Shaders
  • Text Rendering
    • SDF Bitmap fonts? (using compute to generate the font bitmap)
  • Particles
  • Skeletal Animation
  • SSAO
  • SSR
  • Frustum Culling
  • Sky + Clouds
  • Reflection probes
  • GI
    • Voxel Cone Tracing (see 3dgep?)

Post-processing

  • HDR + Tonemapping
  • Better camera + Bloom
  • Depth of Field
  • TAA
  • Motion Blur
  • Lens flare