EEVEE-Next: Update Documentation #104816
@ -10,9 +10,10 @@
|
||||
|
||||
introduction.rst
|
||||
render_settings/index.rst
|
||||
materials/index.rst
|
||||
world.rst
|
||||
scene.rst
|
||||
lighting.rst
|
||||
light_probes/index.rst
|
||||
materials/index.rst
|
||||
limitations.rst
|
||||
limitations_shadow.rst
|
||||
|
@ -4,9 +4,9 @@ Introduction
|
||||
************
|
||||
|
||||
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).
|
||||
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.
|
||||
They basically capture the scene with a flipped camera.
|
||||
A light probe plane records the light incoming from a single direction for all visible points on a plane.
|
||||
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
|
||||
there are light probe planes in the view.
|
||||
This type of light probe is suited to smooth planar surfaces.
|
||||
|
||||
Light probe planes only work when ray tracing method is set to `Screen-Trace`. If ray tracing
|
||||
is enabled, light probe planes will serve as support buffers. This accelerates the tracing process
|
||||
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).
|
||||
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`
|
||||
each of them.
|
||||
|
||||
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::
|
||||
|
||||
@ -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.
|
||||
|
||||
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::
|
||||
|
||||
: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
|
||||
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.
|
||||
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.
|
||||
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.
|
||||
|
||||
|
||||
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
|
||||
================
|
||||
|
||||
@ -52,11 +55,11 @@ Viewport Display
|
||||
|
||||
:Panel: :menuselection:`Object Data --> Viewport Display`
|
||||
|
||||
Influence
|
||||
Show the influence bounds in the 3D Viewport.
|
||||
|
||||
Arrow Size
|
||||
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.
|
||||
|
||||
Influence
|
||||
Show the influence bounds in the 3D Viewport.
|
||||
|
@ -3,35 +3,50 @@
|
||||
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>`.
|
||||
|
||||
*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.
|
||||
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`
|
||||
|
||||
.. note::
|
||||
|
||||
Spherical light probes are encoded into tetrahedral maps. Some distortions may occur on the
|
||||
negative Z hemisphere. Those are more visible with higher roughness values.
|
||||
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)
|
||||
|
||||
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::
|
||||
|
||||
:Panel: :menuselection:`Object Data --> Probe`
|
||||
|
||||
Shape/Type
|
||||
Type
|
||||
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.
|
||||
This influence zone is defined by the size parameter and object scaling.
|
||||
|
||||
Falloff
|
||||
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
|
||||
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
|
||||
================
|
||||
|
||||
Influence
|
||||
Show the influence bounds in the 3D Viewport. The inner sphere is where the falloff starts.
|
||||
Data
|
||||
Show the captured light using a reflective sphere of the given size.
|
||||
|
||||
Clipping
|
||||
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
|
||||
Show the *Custom Parallax* shape in the 3D Viewport.
|
||||
|
@ -3,9 +3,10 @@
|
||||
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,
|
||||
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.
|
||||
- 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::
|
||||
|
||||
: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
|
||||
Spatial resolution for volumetric light probes is determined per probe.
|
||||
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.
|
||||
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
|
||||
Number of ray directions to evaluate when baking.
|
||||
This increases the baking time proportionally to the size of the scene representation.
|
||||
|
||||
Surfel Density
|
||||
Number of surfels per unit distance. Higher values improves quality.
|
||||
Surfel Resolution
|
||||
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
|
||||
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 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 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
|
||||
Offset sampling of the irradiance grid in the surface normal direction to reduce light bleeding.
|
||||
.. tip::
|
||||
|
||||
Facing Bias
|
||||
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.
|
||||
Setting *Clamp Indirect* to a very non-zero value will effectively only record the first light bounce leading.
|
||||
|
||||
|
||||
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
|
||||
================
|
||||
|
||||
Data
|
||||
Show the captured light using small diffuse spheres of the given size.
|
||||
|
||||
Influence
|
||||
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