EEVEE-Next: Update Documentation #104816
@ -10,9 +10,10 @@
|
|||||||
|
|
||||||
introduction.rst
|
introduction.rst
|
||||||
render_settings/index.rst
|
render_settings/index.rst
|
||||||
materials/index.rst
|
|
||||||
world.rst
|
world.rst
|
||||||
|
scene.rst
|
||||||
lighting.rst
|
lighting.rst
|
||||||
light_probes/index.rst
|
light_probes/index.rst
|
||||||
|
materials/index.rst
|
||||||
limitations.rst
|
limitations.rst
|
||||||
limitations_shadow.rst
|
limitations_shadow.rst
|
||||||
|
@ -4,9 +4,9 @@ Introduction
|
|||||||
************
|
************
|
||||||
|
|
||||||
Light probe objects are used by EEVEE as support objects.
|
Light probe objects are used by EEVEE as support objects.
|
||||||
They record lighting information locally in order to light the scene using indirect lighting.
|
|
||||||
|
|
||||||
There are three different types of light probes. One for diffuse lighting, two for specular lighting.
|
There are three different types of light probes.
|
||||||
|
Each type of light probe record the lighting at different resolution and frequency.
|
||||||
fclem marked this conversation as resolved
Outdated
|
|||||||
|
They are used together to recover incoming light information when using ray tracing is not possible (either for performance or for technical limitations).
|
||||||
fclem marked this conversation as resolved
Outdated
Hans Goudey
commented
`They` -> `Probes`
|
|||||||
|
|
||||||
These types of objects are only useful for EEVEE (and by extension, the Material Preview mode).
|
These types of objects are only useful for EEVEE (and by extension, the Material Preview mode).
|
||||||
They are meant to guide the engine to compute better lighting quickly.
|
|
||||||
|
@ -1,18 +1,18 @@
|
|||||||
|
|
||||||
******************
|
*****************
|
||||||
Light Probe Planes
|
Light Probe Plane
|
||||||
******************
|
*****************
|
||||||
|
|
||||||
These special types of light probe object are suited to smooth planar surfaces.
|
A light probe plane records the light incoming from a single direction for all visible points on a plane.
|
||||||
They basically capture the scene with a flipped camera.
|
The specular reflection direction is the only one currently available.
|
||||||
|
|
||||||
Using planar light probes adds more render time as the scene needs to be rendered as many times as
|
This type of light probe is suited to smooth planar surfaces.
|
||||||
there are light probe planes in the view.
|
|
||||||
|
|
||||||
Light probe planes only work when ray tracing method is set to `Screen-Trace`. If ray tracing
|
Each visible planar light probes increases the render time as the scene needs to be rendered for
|
||||||
fclem marked this conversation as resolved
Outdated
Hans Goudey
commented
`probes increases` -> `probe increases`
|
|||||||
is enabled, light probe planes will serve as support buffers. This accelerates the tracing process
|
each of them.
|
||||||
and completes the missing data from the view space. This also make reflection more correct for the
|
|
||||||
affected surfaces that have medium roughness and disturbed normals (i.e. normal maps).
|
Light probe planes only work when ray tracing method is set to `Screen-Trace`. When enabled, they
|
||||||
fclem marked this conversation as resolved
Outdated
Hans Goudey
commented
`when ray tracing method` -> `when the ray tracing method`
|
|||||||
|
accelerate the tracing process and complete the missing data from the screen space ray tracing.
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
@ -26,25 +26,28 @@ If Backface Culling is not enabled, snapping the light probe plane to the planar
|
|||||||
will effectively capture the underside of the surface.
|
will effectively capture the underside of the surface.
|
||||||
|
|
||||||
You can manually move the light probe plane above the surface enough for it to not appear in the capture.
|
You can manually move the light probe plane above the surface enough for it to not appear in the capture.
|
||||||
Alternatively you can disable the light probe visibility in the object panel.
|
Alternatively you can disable the light probe visibility in the object visibility panel.
|
||||||
|
|
||||||
.. reference::
|
.. reference::
|
||||||
|
|
||||||
:Panel: :menuselection:`Object Data --> Probe`
|
:Panel: :menuselection:`Object Data --> Probe`
|
||||||
|
|
||||||
Clipping Offset
|
|
||||||
Define how much below the plane the near clip is when capturing the scene.
|
|
||||||
Increasing this can fix reflection contact problems.
|
|
||||||
|
|
||||||
Distance
|
Distance
|
||||||
A probe object only influences the lighting of nearby surfaces.
|
A probe object only influences the lighting of surfaces inside its influence zone.
|
||||||
This influence zone is defined by the Distance parameter and object scaling.
|
This influence zone is defined by the Distance parameter and object scaling.
|
||||||
fclem marked this conversation as resolved
Outdated
Hans Goudey
commented
`Distance` -> `distance`
`object scaling` -> `the object's scale`
|
|||||||
The influence distance varies is a bit, depending on the probe type.
|
|
||||||
|
|
||||||
For light probe planes the influence distance is the distance from the plane.
|
For light probe planes the influence distance is the distance from the plane.
|
||||||
fclem marked this conversation as resolved
Outdated
Hans Goudey
commented
`For light probe planes` -> `For light probe planes,`
|
|||||||
Only surfaces whose normals are aligned with the Reflection Plane will receive the captured reflection.
|
Only surfaces whose normals are aligned with the Reflection Plane will receive the captured reflection.
|
||||||
|
|
||||||
|
|
||||||
|
Capture
|
||||||
|
=======
|
||||||
|
|
||||||
|
Clipping Offset
|
||||||
|
Define how much below the plane the near clip is when capturing the scene.
|
||||||
fclem marked this conversation as resolved
Outdated
Hans Goudey
commented
`how much below` -> `how far below`
|
|||||||
|
Increasing this can fix reflection contact problems.
|
||||||
|
|
||||||
|
|
||||||
Viewport Display
|
Viewport Display
|
||||||
================
|
================
|
||||||
|
|
||||||
@ -52,11 +55,11 @@ Viewport Display
|
|||||||
|
|
||||||
:Panel: :menuselection:`Object Data --> Viewport Display`
|
:Panel: :menuselection:`Object Data --> Viewport Display`
|
||||||
|
|
||||||
Influence
|
|
||||||
Show the influence bounds in the 3D Viewport.
|
|
||||||
|
|
||||||
Arrow Size
|
Arrow Size
|
||||||
Size of the arrow showing the reflection plane normal.
|
Size of the arrow showing the reflection plane normal.
|
||||||
|
|
||||||
Show Preview Plane
|
Capture
|
||||||
Show the captured reflected image onto a fully reflective plane in the 3D Viewport.
|
Show the captured reflected image onto a fully reflective plane in the 3D Viewport.
|
||||||
|
|
||||||
|
Influence
|
||||||
|
Show the influence bounds in the 3D Viewport.
|
||||||
|
@ -3,35 +3,50 @@
|
|||||||
Light Probe Sphere
|
Light Probe Sphere
|
||||||
******************
|
******************
|
||||||
|
|
||||||
Specular Indirect Lighting can be stored in a light probe sphere.
|
A light probe sphere records the light incomming from many directions at a single location.
|
||||||
|
|
||||||
.. seealso::
|
They are used for smooth and semi-rough reflections.
|
||||||
|
They then smoothly blend to light probe volume lighting for completely diffuse reflections.
|
||||||
fclem marked this conversation as resolved
Outdated
Hans Goudey
commented
`They then` -> `Sphere probes`
|
|||||||
|
|
||||||
:doc:`Indirect Lighting </render/eevee/render_settings/light_probes>`.
|
If *Raytracing* is turned on, they are used as a fall back if a ray misses.
|
||||||
fclem marked this conversation as resolved
Outdated
Hans Goudey
commented
`fall back` -> `fallback`
|
|||||||
|
|
||||||
*Ray traced reflections* are more precise than spherical light probes.
|
|
||||||
If enabled, they have priority and spherical light probes are used as a fall back if a ray misses.
|
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
Spherical light probes are encoded into tetrahedral maps. Some distortions may occur on the
|
In both usage, the light probe spheres are shadowed by light probe volume. This is to
|
||||||
fclem marked this conversation as resolved
Outdated
Hans Goudey
commented
`In both usage` -> `In both usages`
`This is to...` (missing text here)
|
|||||||
negative Z hemisphere. Those are more visible with higher roughness values.
|
|
||||||
|
|
||||||
|
Adjusting their resolution is done inside the *Scene* data panel.
|
||||||
|
|
||||||
|
.. seealso::
|
||||||
|
|
||||||
|
:doc:`Scene </render/eevee/scene>`.
|
||||||
|
|
||||||
|
The world also have an internal light probe sphere which resolution can be adjusted in the *World* data panel.
|
||||||
fclem marked this conversation as resolved
Outdated
Hans Goudey
commented
`The world also have` -> `The world also has`
`which resolution` -> `with a resolution that`
|
|||||||
|
|
||||||
|
.. seealso::
|
||||||
|
|
||||||
|
:doc:`World </render/eevee/world>`.
|
||||||
|
|
||||||
.. reference::
|
.. reference::
|
||||||
|
|
||||||
:Panel: :menuselection:`Object Data --> Probe`
|
:Panel: :menuselection:`Object Data --> Probe`
|
||||||
|
|
||||||
Shape/Type
|
Type
|
||||||
Select the shape of the influence volume. Can be set to Sphere or Box.
|
Select the shape of the influence volume. Can be set to Sphere or Box.
|
||||||
fclem marked this conversation as resolved
Hans Goudey
commented
Delete Delete `Select the`, this can just describe what the property does
|
|||||||
|
|
||||||
Size
|
Radius
|
||||||
A probe object only influences the lighting of nearby surfaces.
|
A probe object only influences the lighting of nearby surfaces.
|
||||||
This influence zone is defined by the size parameter and object scaling.
|
This influence zone is defined by the size parameter and object scaling.
|
||||||
|
|
||||||
Falloff
|
Falloff
|
||||||
Percentage of the influence distance during which the influence of a probe fades linearly.
|
Percentage of the influence distance during which the influence of a probe fades linearly.
|
||||||
fclem marked this conversation as resolved
Outdated
Hans Goudey
commented
`during` -> `in` (during is for time)
|
|||||||
|
|
||||||
|
|
||||||
|
Capture
|
||||||
|
=======
|
||||||
|
|
||||||
|
In the viewport, capture only happens if an update is detected on the light probe data or position.
|
||||||
|
For renders, the capture happens at the start of each frame.
|
||||||
|
|
||||||
Clipping
|
Clipping
|
||||||
Define the near and far clip distances when capturing the scene.
|
Define the near and far clip distances when capturing the scene.
|
||||||
|
|
||||||
@ -54,11 +69,14 @@ change the shape and radius of the parallax volume independently.
|
|||||||
Viewport Display
|
Viewport Display
|
||||||
================
|
================
|
||||||
|
|
||||||
Influence
|
Data
|
||||||
Show the influence bounds in the 3D Viewport. The inner sphere is where the falloff starts.
|
Show the captured light using a reflective sphere of the given size.
|
||||||
|
|
||||||
Clipping
|
Clipping
|
||||||
Show the clipping distance in the 3D Viewport.
|
Show the clipping distance in the 3D Viewport.
|
||||||
|
|
||||||
|
Influence
|
||||||
|
Show the influence bounds in the 3D Viewport. The inner sphere is where the falloff starts.
|
||||||
|
|
||||||
Parallax
|
Parallax
|
||||||
Show the *Custom Parallax* shape in the 3D Viewport.
|
Show the *Custom Parallax* shape in the 3D Viewport.
|
||||||
|
@ -3,9 +3,10 @@
|
|||||||
Light Probe Volume
|
Light Probe Volume
|
||||||
******************
|
******************
|
||||||
|
|
||||||
Diffuse indirect lighting is stored in a light probe volume object.
|
A volume probe records the light incomming from all directions at a many locations inside a volume.
|
||||||
fclem marked this conversation as resolved
Outdated
Hans Goudey
commented
`at a many` -> `at many`
|
|||||||
|
|
||||||
Lighting is computed at the dot positions visible when the Irradiance Volume object is selected.
|
The light is then filtered and only the diffuse light is recorded.
|
||||||
|
The capture point positions are visible as an overlay when the Irradiance Volume object is selected.
|
||||||
|
|
||||||
If an object is not inside any Irradiance Volume, or if the indirect lighting has not been baked,
|
If an object is not inside any Irradiance Volume, or if the indirect lighting has not been baked,
|
||||||
the world's diffuse lighting will be used to shade it.
|
the world's diffuse lighting will be used to shade it.
|
||||||
@ -14,73 +15,151 @@ the world's diffuse lighting will be used to shade it.
|
|||||||
|
|
||||||
- When lighting indoor environments, try to align grids with the room shape.
|
- When lighting indoor environments, try to align grids with the room shape.
|
||||||
- Try not to put too much resolution in empty areas or areas with a low amount of lighting variation.
|
- Try not to put too much resolution in empty areas or areas with a low amount of lighting variation.
|
||||||
- You can fix bad samples by adding a smaller grid near the problematic area.
|
- Bad samples can be fixed by adding a smaller grid near the problematic area.
|
||||||
|
- Large scenes may require using many volumes with different level of details.
|
||||||
|
|
||||||
|
|
||||||
.. reference::
|
.. reference::
|
||||||
|
|
||||||
:Panel: :menuselection:`Object Data --> Probe`
|
:Panel: :menuselection:`Object Data --> Probe`
|
||||||
|
|
||||||
|
Intensity
|
||||||
|
Intensity factor of the recorded lighting.
|
||||||
|
Making this parameter anything other than 1.0 is not physically correct.
|
||||||
|
To be used for tweaking, animating or artistic purposes.
|
||||||
|
|
||||||
|
|
||||||
|
Sampling Bias
|
||||||
|
=============
|
||||||
|
|
||||||
|
Normal Bias
|
||||||
|
Offset sampling of the irradiance grid in the surface normal direction to reduce light bleeding.
|
||||||
|
Can lead to specular appearance of diffuse surface if set too high.
|
||||||
|
|
||||||
|
View Bias
|
||||||
|
Offset sampling of the irradiance grid in the viewing direction to reduce light bleeding.
|
||||||
|
Can lead to view dependant result if set too high. Prefer this if camera is static.
|
||||||
|
|
||||||
|
Facing Bias
|
||||||
|
When set to zero, avoids capture points behind the shaded surface to bleed light onto
|
||||||
fclem marked this conversation as resolved
Outdated
Hans Goudey
commented
`avoids capture points` -> `avoids capturing points`
|
|||||||
|
the shaded surface, but this produces non-smooth interpolation when the capture resolution is high.
|
||||||
fclem marked this conversation as resolved
Outdated
Hans Goudey
commented
`surface, but this` -> `surface. This`
|
|||||||
|
Increasing this bias will make the interpolation smoother but also introduce some light bleeding.
|
||||||
|
|
||||||
|
|
||||||
|
Validity & Dilation
|
||||||
|
===================
|
||||||
|
|
||||||
|
During the baking process, a validity score is assigned to each capture point.
|
||||||
|
This score is based on the number of back-face was hit when capturing the incoming lighting.
|
||||||
fclem marked this conversation as resolved
Outdated
Hans Goudey
commented
`number of back-face was hit` -> `number of back-faces hit`
|
|||||||
|
Only materials with *Single Sided* turned on for Light Probe Volumes will reduce the validity score.
|
||||||
|
|
||||||
|
Validity Threshold
|
||||||
|
Capture points with validity below this threshold will be ignored during lighting interpolation.
|
||||||
|
This remove the influence of capture points trapped inside closed geometry, reducing the artifacts they produced.
|
||||||
|
|
||||||
|
Dilation Threshold
|
||||||
|
Capture points with validity below this threshold will have their data replaced using valid neighbors.
|
||||||
|
|
||||||
|
Dilation radius
|
||||||
|
Radius in capture points in which to search for a valid neighbor.
|
||||||
|
|
||||||
|
|
||||||
|
Bake
|
||||||
|
====
|
||||||
|
|
||||||
|
Light probe volume light data is static and needs to be manually baked.
|
||||||
|
Once baked, the data is stored inside the object data-block and can be moved, animated and linked
|
||||||
|
between blender files.
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
Baking uses the render visibility of the objects in the scene.
|
||||||
|
|
||||||
|
During baking, the scene is converted into a different representation to accelerate light transport.
|
||||||
|
This representation can be very memory intensive and prevent baking if it cannot fit inside the GPU memory.
|
||||||
fclem marked this conversation as resolved
Hans Goudey
commented
`prevent` -> `prevents`
|
|||||||
|
There are a few way to deal with this issue:
|
||||||
|
- Larger scene should be divided into smaller sections or using different level of details.
|
||||||
fclem marked this conversation as resolved
Outdated
Hans Goudey
commented
`Larger scene` -> `Larger scenes`
`or using` -> `or use`
|
|||||||
|
- Reduce
|
||||||
|
- Turn off the light probe volume visibility option on objects that have little to no effect in the bake.
|
||||||
|
|
||||||
|
.. tip::
|
||||||
|
|
||||||
|
The internal scene representation can be inspected using the `Debug Value` 3, 4 and 5.
|
||||||
|
|
||||||
Resolution
|
Resolution
|
||||||
Spatial resolution for volumetric light probes is determined per probe.
|
Spatial resolution for volumetric light probes is determined per probe.
|
||||||
The local volume is divided into a regular grid of the specified dimensions.
|
The local volume is divided into a regular grid of the specified dimensions.
|
||||||
Irradiance light sample will be computed for each cell in this grid.
|
Irradiance light sample will be computed for each cell in this grid.
|
||||||
fclem marked this conversation as resolved
Hans Goudey
commented
`light sample` -> `light samples`
|
|||||||
|
|
||||||
Intensity
|
|
||||||
Intensity factor of the recorded lighting.
|
|
||||||
Making this parameter anything other than 1.0 is not physically correct. Use it for tweaking or
|
|
||||||
artistic purposes.
|
|
||||||
|
|
||||||
Bake Samples
|
Bake Samples
|
||||||
Number of ray directions to evaluate when baking.
|
Number of ray directions to evaluate when baking.
|
||||||
|
This increases the baking time proportionally to the size of the scene representation.
|
||||||
|
|
||||||
Surfel Density
|
Surfel Resolution
|
||||||
Number of surfels per unit distance. Higher values improves quality.
|
Number of surfels to spawn in one local unit distance.
|
||||||
|
Higher values increase quality. Have a huge impact on memory usage.
|
||||||
fclem marked this conversation as resolved
Hans Goudey
commented
`quality. Have a huge` -> `quality, but have a huge`
|
|||||||
|
A good value is twice the maximum *Resolution*.
|
||||||
|
|
||||||
|
|
||||||
|
Capture
|
||||||
|
=======
|
||||||
|
|
||||||
Capture Distance
|
Capture Distance
|
||||||
The maximum distance to capture light from.
|
Distance around the light probe volume that will be captured during the bake.
|
||||||
|
A distance of 0 will only considered the inside of the volume.
|
||||||
|
|
||||||
|
World Contribution
|
||||||
|
Bake incoming light from the world instead of just visibility for more accurate lighting,
|
||||||
|
but lose correct blending to surrounding irradiance volumes.
|
||||||
|
|
||||||
|
Indirect Light Contribution
|
||||||
|
Capture light bounces from light source.
|
||||||
|
|
||||||
|
Emission Contribution
|
||||||
|
Capture emissive surfaces when baking.
|
||||||
|
|
||||||
|
|
||||||
|
Clamping
|
||||||
|
========
|
||||||
|
|
||||||
Clamp Direct
|
Clamp Direct
|
||||||
Clamp incoming direct light. 0.0 disables direct light clamping.
|
Clamp incoming direct light. 0.0 disables direct light clamping.
|
||||||
|
Here direct light refers to the light that bounces only once (from light object)
|
||||||
fclem marked this conversation as resolved
Hans Goudey
commented
`from light object` -> `from the light object`
|
|||||||
|
or coming from emissive materials.
|
||||||
fclem marked this conversation as resolved
Outdated
Hans Goudey
commented
`or coming` -> or light coming`
|
|||||||
|
|
||||||
Clamp Indirect
|
Clamp Indirect
|
||||||
Clamp incoming indirect light. 0.0 disables indirect light clamping.
|
Clamp incoming indirect light. 0.0 disables indirect light clamping.
|
||||||
|
Here indirect light refers to the light that bounces off a surface after the first bounce (from light object)
|
||||||
|
or during the first bounce if the light comes from emissive materials.
|
||||||
|
|
||||||
Normal Bias
|
.. tip::
|
||||||
Offset sampling of the irradiance grid in the surface normal direction to reduce light bleeding.
|
|
||||||
|
|
||||||
Facing Bias
|
Setting *Clamp Indirect* to a very non-zero value will effectively only record the first light bounce leading.
|
||||||
Smoother irradiance interpolation but introduce light bleeding.
|
|
||||||
|
|
||||||
Capture Surface Bias
|
|
||||||
Moves capture points position away from surfaces to avoid artifacts.
|
|
||||||
|
|
||||||
Capture Escape Bias
|
|
||||||
Moves capture points outside objects.
|
|
||||||
|
|
||||||
Dilation Threshold
|
|
||||||
Ratio of front-facing surface hits under which a grid sample will reuse neighbors grid sample
|
|
||||||
lighting.
|
|
||||||
|
|
||||||
Dilation radius
|
|
||||||
Radius in grid sample to search valid grid samples to copy into invalid grid samples.
|
|
||||||
|
|
||||||
Capture world
|
|
||||||
Bake incoming light fromn the world, instead of just visibility, for more accurate lighting,
|
|
||||||
but lose correct blending to surrounding irradiance volumes.
|
|
||||||
|
|
||||||
Capture Indirect
|
|
||||||
Bake light bounces from light source for more accurate lighting.
|
|
||||||
|
|
||||||
Capture Emission
|
|
||||||
Bake emissive surfaces for more accurate lighting.
|
|
||||||
|
|
||||||
|
|
||||||
|
Offset
|
||||||
|
======
|
||||||
|
|
||||||
|
In order to reduce artifacts caused by bad capture points positioning, the bake process will adjust their location.
|
||||||
fclem marked this conversation as resolved
Outdated
Hans Goudey
commented
`capture points positioning` -> `capture point positioning`
|
|||||||
|
First by moving them slightly away from surrounding surfaces, avoiding banding artifacts.
|
||||||
fclem marked this conversation as resolved
Hans Goudey
commented
`location. First by` -> `location, first by`
|
|||||||
|
It also tries to move them out of objects if they are not so far bellow the surface.
|
||||||
fclem marked this conversation as resolved
Hans Goudey
commented
`not so far bellow` -> `not too far below`
|
|||||||
|
|
||||||
|
Surface Offset
|
||||||
|
Distance to move the capture points away from surfaces.
|
||||||
|
|
||||||
|
Search Distance
|
||||||
|
Distance to search for valid capture positions if the capture point is near the back-face of a single-sided object.
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
|
||||||
|
Only materials with *Single Sided* turned on for Light Probe Volumes will move capture point position.
|
||||||
|
|
||||||
|
|
||||||
Viewport Display
|
Viewport Display
|
||||||
================
|
================
|
||||||
|
|
||||||
|
Data
|
||||||
|
Show the captured light using small diffuse spheres of the given size.
|
||||||
|
|
||||||
Influence
|
Influence
|
||||||
Show the influence bounds in the 3D Viewport. The inner sphere is where the falloff starts.
|
Show the influence bounds in the 3D Viewport. The inner sphere is where the falloff starts.
|
||||||
|
|
||||||
|
6
manual/render/eevee/scene.rst
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
|
||||||
|
*****
|
||||||
|
Scene
|
||||||
|
*****
|
||||||
|
|
||||||
|
TODO
|
record
->records
at different resolution
->at a different resolution