Difference between revisions of "Samples"
Gongminmin (Talk | contribs) m (→Ocean) |
Gongminmin (Talk | contribs) |
||
(12 intermediate revisions by one user not shown) | |||
Line 1: | Line 1: | ||
− | ' | + | Before running these samples for the first time, it's recommended to run [[KGEConfig/en|KGEConfig]], to complete the configuration first. |
− | + | ||
− | + | ||
− | + | ||
− | + | = Area Lighting = | |
+ | [[File:AreaLighting.jpg|200px|thumb|right|Area Lighting]] | ||
+ | Real-time sphere and tube area lighting. | ||
+ | |||
+ | '''Techniques''' | ||
+ | #Area Lighting | ||
+ | |||
+ | '''Requirements''' | ||
+ | *Geforce 6600+ or Radeon 9500+. | ||
+ | |||
+ | '''Rendering plugin supported''' | ||
+ | *D3D11/OpenGL/OpenGLES. | ||
+ | |||
+ | = Atmospheric Scattering = | ||
+ | [[File:AtmosphericScattering.jpg|200px|thumb|right|Atmospheric Scattering]] | ||
+ | Physically-based atmospheric scattering. It can simulate atmospheric in different density and absorption. | ||
+ | |||
+ | '''Techniques''' | ||
+ | #Atmospheric scattering | ||
+ | |||
+ | '''Requirements''' | ||
+ | *Geforce 6600+ or Radeon 9500+. | ||
+ | |||
+ | '''Rendering plugin supported''' | ||
+ | *D3D11/OpenGL/OpenGLES. | ||
+ | |||
+ | = Cascaded Shadow Map = | ||
+ | [[File:CascadedShadowMap.jpg|200px|thumb|right|Cascaded Shadow Map]] | ||
+ | Two kinds of high quality large-scale shadow rendering. | ||
+ | |||
+ | '''Techniques''' | ||
+ | #PSSM | ||
+ | #SDSM | ||
+ | |||
+ | '''Requirements''' | ||
+ | *Geforce 6600+ or Radeon 9500+. | ||
+ | |||
+ | '''Rendering plugin supported''' | ||
+ | *D3D11/OpenGL/OpenGLES. | ||
= Caustics Map = | = Caustics Map = | ||
Line 19: | Line 54: | ||
'''Rendering plugin supported''' | '''Rendering plugin supported''' | ||
− | *D3D11/OpenGL. | + | *D3D11/OpenGL/OpenGLES. |
= Deferred Rendering = | = Deferred Rendering = | ||
Line 29: | Line 64: | ||
#[[Global illumination|GI]] | #[[Global illumination|GI]] | ||
#SSVO | #SSVO | ||
− | #[[FXAA]] | + | #[[FXAA/en|FXAA]] |
#Arbitrary light source | #Arbitrary light source | ||
#Soft shadow | #Soft shadow | ||
Line 38: | Line 73: | ||
'''Rendering plugin supported''' | '''Rendering plugin supported''' | ||
− | *D3D11/OpenGL/ | + | *D3D11/OpenGL/OpenGLES. |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
= Detailed surface = | = Detailed surface = | ||
Line 64: | Line 84: | ||
#Parallax occlusion mapping | #Parallax occlusion mapping | ||
#Displacement mapping | #Displacement mapping | ||
− | #Normal map compression (since [[KlayGE]] 3.4.0) | + | #Normal map compression (since [[KlayGE/en|KlayGE]] 3.4.0) |
'''Requirements''' | '''Requirements''' | ||
Line 70: | Line 90: | ||
'''Rendering plugin supported''' | '''Rendering plugin supported''' | ||
− | *D3D11/OpenGL/ | + | *D3D11/OpenGL/OpenGLES. |
'''Known issues''' | '''Known issues''' | ||
*The texture is not right in OpenGL plugin on ATI's card. | *The texture is not right in OpenGL plugin on ATI's card. | ||
− | = | + | = Env Lighting = |
− | [[File: | + | [[File:EnvLighting.jpg|200px|thumb|right|Env Lighting]] |
− | + | Real-time physically based environment lighting. | |
'''Techniques''' | '''Techniques''' | ||
− | # | + | #Environment Lighting |
− | + | ||
− | + | ||
'''Requirements''' | '''Requirements''' | ||
− | *Geforce | + | *Geforce 6600+ or Radeon 9500+. |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
'''Rendering plugin supported''' | '''Rendering plugin supported''' | ||
− | *D3D11/OpenGL/ | + | *D3D11/OpenGL/OpenGLES. |
= Global Illumination = | = Global Illumination = | ||
Line 116: | Line 121: | ||
'''Rendering plugin supported''' | '''Rendering plugin supported''' | ||
− | *D3D11/OpenGL/ | + | *D3D11/OpenGL/OpenGLES. |
= GPU Particle System = | = GPU Particle System = | ||
Line 132: | Line 137: | ||
'''Rendering plugin supported''' | '''Rendering plugin supported''' | ||
− | *D3D11/OpenGL. | + | *D3D11/OpenGL/OpenGLES. |
= JudaTex Viewer = | = JudaTex Viewer = | ||
Line 146: | Line 151: | ||
'''Rendering plugin supported''' | '''Rendering plugin supported''' | ||
− | *D3D11/OpenGL/ | + | *D3D11/OpenGL/OpenGLES. |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
= Motion Blur and Depth of Field = | = Motion Blur and Depth of Field = | ||
Line 183: | Line 169: | ||
'''Rendering plugin supported''' | '''Rendering plugin supported''' | ||
− | *D3D11/OpenGL/ | + | *D3D11/OpenGL/OpenGLES. |
= Ocean = | = Ocean = | ||
Line 202: | Line 188: | ||
'''Rendering plugin supported''' | '''Rendering plugin supported''' | ||
− | *D3D11/OpenGL/ | + | *D3D11/OpenGL/OpenGLES. |
+ | |||
+ | = Order Independent Transparency = | ||
+ | [[File:OIT.jpg|200px|thumb|right|OIT]] | ||
+ | Order independent transparency rendering. | ||
+ | |||
+ | '''Techniques''' | ||
+ | #Depth peeling | ||
+ | #Per-pixel linked lists | ||
+ | #Adaptive transparency | ||
+ | |||
+ | '''Requirements''' | ||
+ | *Geforce 6600+ or Radeon 9500+. | ||
+ | |||
+ | '''Rendering plugin supported''' | ||
+ | *D3D11/OpenGL/OpenGLES. | ||
= Particle Editor = | = Particle Editor = | ||
Line 218: | Line 219: | ||
'''Rendering plugin supported''' | '''Rendering plugin supported''' | ||
− | *D3D11/OpenGL/ | + | *D3D11/OpenGL/OpenGLES. |
= PostProcessing = | = PostProcessing = | ||
Line 241: | Line 242: | ||
'''Rendering plugin supported''' | '''Rendering plugin supported''' | ||
− | *D3D11/OpenGL. | + | *D3D11/OpenGL/OpenGLES. |
− | = | + | = Procedural texture = |
[[File:Proceduraltex.jpg|200px|thumb|right|Procedural Texture]] | [[File:Proceduraltex.jpg|200px|thumb|right|Procedural Texture]] | ||
− | Various [[procedural texture]] generation by | + | Various [[procedural texture]] generation by simplex noise on GPUs. |
'''Techniques''' | '''Techniques''' | ||
Line 255: | Line 256: | ||
'''Rendering plugin supported''' | '''Rendering plugin supported''' | ||
− | *D3D11/OpenGL/ | + | *D3D11/OpenGL/OpenGLES. |
− | = | + | = Reflection = |
− | [[File: | + | [[File:Reflection.jpg|200px|thumb|right|Reflection]] |
− | + | Real-time screen space reflection. | |
'''Techniques''' | '''Techniques''' | ||
− | + | #Dual-directional SSR | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | #Dual | + | |
'''Requirements''' | '''Requirements''' | ||
− | *Geforce | + | *Geforce 6600+ or Radeon 9500+. |
+ | |||
+ | '''Rendering plugin supported''' | ||
+ | *D3D11/OpenGL/OpenGLES. | ||
+ | |||
+ | = Scene Player = | ||
+ | [[File:ScenePlayer.jpg|200px|thumb|right|Scene Player]] | ||
+ | A script driven scene player. | ||
+ | |||
+ | '''Techniques''' | ||
+ | #Python script | ||
+ | #[[Deferred rendering]] | ||
+ | |||
+ | '''Requirements''' | ||
+ | *Geforce 6600+ or Radeon 9500+. | ||
'''Rendering plugin supported''' | '''Rendering plugin supported''' | ||
− | *D3D11/OpenGL/ | + | *D3D11/OpenGL/OpenGLES. |
= Shadow cube map = | = Shadow cube map = | ||
Line 288: | Line 298: | ||
'''Rendering plugin supported''' | '''Rendering plugin supported''' | ||
− | *D3D11/OpenGL/ | + | *D3D11/OpenGL/OpenGLES. |
+ | |||
+ | = SSSSS = | ||
+ | [[File:SSSSS.jpg|200px|thumb|right|Screen space sub surface scattering]] | ||
+ | Screen space [[sub surface scattering]] and translucency. | ||
+ | |||
+ | '''Techniques''' | ||
+ | #[[SSSSS]] | ||
+ | #[[Sub surface scattering]] | ||
+ | |||
+ | '''Requirements''' | ||
+ | *Geforce 6+ or Radeon 9500+. | ||
+ | |||
+ | '''Rendering plugin supported''' | ||
+ | *D3D11/OpenGL/OpenGLES. | ||
= Sub Surface = | = Sub Surface = | ||
Line 302: | Line 326: | ||
'''Rendering plugin supported''' | '''Rendering plugin supported''' | ||
− | *D3D11/OpenGL/ | + | *D3D11/OpenGL/OpenGLES. |
= Text = | = Text = | ||
Line 315: | Line 339: | ||
'''Rendering plugin supported''' | '''Rendering plugin supported''' | ||
− | *D3D11/OpenGL/ | + | *D3D11/OpenGL/OpenGLES. |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
= Video texture = | = Video texture = | ||
Line 342: | Line 352: | ||
'''Rendering plugin supported''' | '''Rendering plugin supported''' | ||
− | *D3D11/OpenGL/ | + | *D3D11/OpenGL/OpenGLES. |
'''Known issues''' | '''Known issues''' |
Latest revision as of 23:33, 24 December 2014
Before running these samples for the first time, it's recommended to run KGEConfig, to complete the configuration first.
Contents
- 1 Area Lighting
- 2 Atmospheric Scattering
- 3 Cascaded Shadow Map
- 4 Caustics Map
- 5 Deferred Rendering
- 6 Detailed surface
- 7 Env Lighting
- 8 Global Illumination
- 9 GPU Particle System
- 10 JudaTex Viewer
- 11 Motion Blur and Depth of Field
- 12 Ocean
- 13 Order Independent Transparency
- 14 Particle Editor
- 15 PostProcessing
- 16 Procedural texture
- 17 Reflection
- 18 Scene Player
- 19 Shadow cube map
- 20 SSSSS
- 21 Sub Surface
- 22 Text
- 23 Video texture
Area Lighting
Real-time sphere and tube area lighting.
Techniques
- Area Lighting
Requirements
- Geforce 6600+ or Radeon 9500+.
Rendering plugin supported
- D3D11/OpenGL/OpenGLES.
Atmospheric Scattering
Physically-based atmospheric scattering. It can simulate atmospheric in different density and absorption.
Techniques
- Atmospheric scattering
Requirements
- Geforce 6600+ or Radeon 9500+.
Rendering plugin supported
- D3D11/OpenGL/OpenGLES.
Cascaded Shadow Map
Two kinds of high quality large-scale shadow rendering.
Techniques
- PSSM
- SDSM
Requirements
- Geforce 6600+ or Radeon 9500+.
Rendering plugin supported
- D3D11/OpenGL/OpenGLES.
Caustics Map
Realtime caustics generation.
Techniques
- Caustics
- Dual-face Refraction
- Omnidirectional shadow map
Requirements
- Geforce 6600+ or Radeon 9500+.
Rendering plugin supported
- D3D11/OpenGL/OpenGLES.
Deferred Rendering
Deferred rendering rendering framework.
Techniques
- Deferred Rendering
- GI
- SSVO
- FXAA
- Arbitrary light source
- Soft shadow
- Packing system
Requirements
- Geforce 6600+ or Radeon 9500+.
Rendering plugin supported
- D3D11/OpenGL/OpenGLES.
Detailed surface
Multiple detailed surface rendering techniques.
Techniques
- Bump mapping
- Parallax mapping
- Parallax occlusion mapping
- Displacement mapping
- Normal map compression (since KlayGE 3.4.0)
Requirements
- Geforce FX+ or Radeon 9500+.
Rendering plugin supported
- D3D11/OpenGL/OpenGLES.
Known issues
- The texture is not right in OpenGL plugin on ATI's card.
Env Lighting
Real-time physically based environment lighting.
Techniques
- Environment Lighting
Requirements
- Geforce 6600+ or Radeon 9500+.
Rendering plugin supported
- D3D11/OpenGL/OpenGLES.
Global Illumination
Realtime global illumination based on Splatting Indirect Illumination.
Techniques
- Realtime GI
- Deferred Rendering
- Soft shadow
Requirements
- Geforce 6+ or Radeon HD2400+.
Rendering plugin supported
- D3D11/OpenGL/OpenGLES.
GPU Particle System
GPU-based particle system.
Techniques
- Particle system
- Multi-pass rendering
- Vertex texture fetch
- Deferred particle
Requirements
- Geforce 6+ or Radeon HD2400+.
Rendering plugin supported
- D3D11/OpenGL/OpenGLES.
JudaTex Viewer
Juda Texture viewer.
Techniques
- Juda Texture
- Mouse Interaction
Requirements
- Geforce FX+ or Radeon 9500+.
Rendering plugin supported
- D3D11/OpenGL/OpenGLES.
Motion Blur and Depth of Field
Motion blur and depth of field post process. Focus plane and focus range can be adjusted. This sample also demonstrate the instancing technique. It switchs to hardware instancing if the hardware supports it, or else instance data are expanded on CPUs.
Techniques
- Motion blur
- Depth of field
- Summed-Area Table
- Software/hardware instancing
- Script engine
- UI
Requirements
- Geforce 6600+ or Radeon 9500+.
Rendering plugin supported
- D3D11/OpenGL/OpenGLES.
Ocean
Demonstrate the water rendering. Water movement is simulated by GPU real-time FFT operation. The kernel is from NVIDIA's demo.
Techniques
- Water rendering
- Compute shader
- FFT on GPUs
- Reflection mapping
- Fog
- Lens flare
- Packing system
Requirements
- Geforce 6xxx+ or Radeon HD2xxx+. Realtime editing requires Geforce 8xxx+ or Radeon HD4xxx+.
Rendering plugin supported
- D3D11/OpenGL/OpenGLES.
Order Independent Transparency
Order independent transparency rendering.
Techniques
- Depth peeling
- Per-pixel linked lists
- Adaptive transparency
Requirements
- Geforce 6600+ or Radeon 9500+.
Rendering plugin supported
- D3D11/OpenGL/OpenGLES.
Particle Editor
Particle system editor.
Techniques
- Particle system
- Complex UI
- Soft particle
- Geometry shader
Requirements
- Geforce FX+ or Radeon 9500+. Geforce 6+ recommended.
Rendering plugin supported
- D3D11/OpenGL/OpenGLES.
PostProcessing
Demonstrate the post processing, including:
- Ascii Arts, fitting the image to ascii characters.
- Cartoon rendering with two pass rendering. The first pass renders geometry, the second pass calculates lighting and edge.
- Tiling.
- HDR.
- Night Vision.
- Old Fashion, looks like old picture.
Techniques
- Post process
- Ascii fitting on GPUs
- Cartoon post process
- Depth and normal discontinuous detection
- MRT
Requirements
- Geforce 6600+ or Radeon 9500+.
Rendering plugin supported
- D3D11/OpenGL/OpenGLES.
Procedural texture
Various procedural texture generation by simplex noise on GPUs.
Techniques
- Perlin noise
- Procedural texture
Requirements
- Geforce FX+ or Radeon 9500+.
Rendering plugin supported
- D3D11/OpenGL/OpenGLES.
Reflection
Real-time screen space reflection.
Techniques
- Dual-directional SSR
Requirements
- Geforce 6600+ or Radeon 9500+.
Rendering plugin supported
- D3D11/OpenGL/OpenGLES.
Scene Player
A script driven scene player.
Techniques
- Python script
- Deferred rendering
Requirements
- Geforce 6600+ or Radeon 9500+.
Rendering plugin supported
- D3D11/OpenGL/OpenGLES.
Shadow cube map
Expand the traditional shadow map to cube map. Simulate the omnidirectional point light and texture projection. The other improvement is the usage of Variance shadow map.
Techniques
- Omnidirectional shadow map
- VSM
- Texture projection
Requirements
- Geforce FX 5600+ or Radeon 9500+. Geforce 6+ recommended.
Rendering plugin supported
- D3D11/OpenGL/OpenGLES.
SSSSS
Screen space sub surface scattering and translucency.
Techniques
Requirements
- Geforce 6+ or Radeon 9500+.
Rendering plugin supported
- D3D11/OpenGL/OpenGLES.
Sub Surface
Real-time rendering of sub surface scattering.
Techniques
- Sub surface scattering
- Bump map
Requirements
- Geforce FX 5600+ or Radeon 9500+. Geforce 6+ recommended.
Rendering plugin supported
- D3D11/OpenGL/OpenGLES.
Text
Demonstrate signed distance field based font system.
Techniques
- Font
Requirements
- Geforce FX+ or Radeon 9500+.
Rendering plugin supported
- D3D11/OpenGL/OpenGLES.
Video texture
Demostrate show engine. Decoded video can be mapped to 3D objects as texture. The video is from a open source movie Big Buck Bunny.
Techniques
- DirectShow decode to texture
Requirements
- Geforce 4 Ti+ or Radeon 9200+.
Rendering plugin supported
- D3D11/OpenGL/OpenGLES.
Known issues
- Can't switch to full screen in D3D11.