1. Package Information
com.io7m.r2 0.3.0-SNAPSHOT Documentation
2.1. Conventions
Previous
Up
Next
2
Design And Implementation
2.1. Conventions
2.1.1. Overview
2.1.2. Mathematics
2.2. Concepts
2.2.1. Overview
2.2.2. Renderer
2.2.3. Render Target
2.2.4. Geometry Buffer
2.2.5. Light Buffer
2.2.6. Mesh
2.2.7. Transform
2.2.8. Instance
2.2.9. Light
2.2.10. Light Clip Group
2.2.11. Light Group
2.2.12. Shader
2.2.13. Material
2.3. Coordinate Systems
2.3.1. Conventions
2.3.2. Object Space
2.3.3. World Space
2.3.4. Eye Space
2.3.5. Clip Space
2.3.6. Normalized-Device Space
2.3.7. Screen Space
2.4. Meshes
2.4.1. Overview
2.4.2. Attributes
2.4.3. Types
2.5. Transforms
2.5.1. Overview
2.5.2. Types
2.6. Instances
2.6.1. Overview
2.6.2. Single
2.6.3. Batched
2.6.4. Billboarded
2.6.5. Types
2.7. Render Targets
2.7.1. Overview
2.7.2. Types
2.8. Shaders
2.8.1. Overview
2.8.2. Interface And Calling Protocol
2.8.3. Shader Modules
2.8.4. Types
2.9. Shaders: Instance
2.9.1. Overview
2.9.2. Materials
2.9.3. Provided Shaders
2.9.4. Types
2.10. Shaders: Light
2.10.1. Overview
2.10.2. Types
2.11. Stencils
2.11.1. Overview
2.11.2. Reserved Bits
2.11.3. Allow Bit
2.12. Lighting
2.12.1. Overview
2.12.2. Diffuse/Specular Terms
2.12.3. Diffuse-Only Lights
2.12.4. Attenuation
2.13. Lighting: Directional
2.13.1. Overview
2.13.2. Attenuation
2.13.3. Application
2.13.4. Types
2.14. Lighting: Spherical
2.14.1. Overview
2.14.2. Attenuation
2.14.3. Application
2.14.4. Types
2.15. Lighting: Projective
2.15.1. Overview
2.15.2. Algorithm
2.15.3. Back projection
2.15.4. Clamping
2.15.5. Attenuation
2.15.6. Application
2.16. Shadows
2.16.1. Overview
2.16.2. Shadow Geometry
2.17. Shadows: Variance Mapping
2.17.1. Overview
2.17.2. Algorithm
2.17.3. Advantages
2.17.4. Disadvantages
2.17.5. Types
2.18. Deferred Rendering
2.18.1. Overview
2.19. Deferred Rendering: Geometry
2.19.1. Overview
2.19.2. Groups
2.19.3. Geometry Buffer
2.19.4. Algorithm
2.19.5. Ordering/Batching
2.19.6. Normal Compression
2.20. Deferred Rendering: Lighting
2.20.1. Overview
2.20.2. Light Buffer
2.20.3. Light Clip Volumes
2.20.4. No L-Buffer
2.20.5. Types
2.21. Deferred Rendering: Position Reconstruction
2.21.1. Overview
2.21.2. Recovering Eye space Z
2.21.3. Recovering Eye space Z (Logarithmic depth encoding)
2.21.4. Recovering Eye space Z (Screen space depth encoding)
2.21.5. Recovering Eye space Position
2.21.6. Implementation
2.22. Forward rendering (Translucency)
2.22.1. Overview
2.22.2. Instances
2.22.3. Blending
2.22.4. Culling
2.22.5. Ordering
2.22.6. Types
2.22.7. Provided Shaders
2.23. Normal Mapping
2.23.1. Overview
2.23.2. Tangent Space
2.23.3. Tangent/Bitangent Generation
2.23.4. Normal Maps
2.23.5. Rendering With Normal Maps
2.24. Logarithmic Depth
2.24.1. Overview
2.24.2. OpenGL Depth Issues
2.24.3. Logarithmic Encoding
2.25. Environment Mapping
2.25.1. Overview
2.25.2. Cube Maps
2.25.3. Reflections
2.25.4. Handedness
2.26. Stippling
2.26.1. Overview
2.26.2. Algorithm
2.26.3. Types
2.27. Generic Refraction
2.27.1. Overview
2.27.2. Algorithm
2.27.3. Sources
2.27.4. Vectors
2.27.5. Colors
2.27.6. Masking
2.27.7. Types
2.28. Filter: Fog
2.28.1. Overview
2.28.2. Algorithm
2.28.3. Types
2.29. Filter: Screen Space Ambient Occlusion
2.29.1. Overview
2.29.2. Ambient Occlusion Buffer
2.29.3. Algorithm
2.29.4. Noise Texture
2.29.5. Sample Kernel
2.29.6. Halo Removal
2.29.7. Performance
2.29.8. Types
2.29.9. Shaders
2.30. Filter: Emission
2.30.1. Overview
2.30.2. Algorithm
2.30.3. Types
2.31. Filter: FXAA
2.31.1. Overview
2.31.2. Implementation
2.31.3. Types
Previous
Up
Next
1. Package Information
com.io7m.r2 0.3.0-SNAPSHOT Documentation
2.1. Conventions