Hoofdstuk 100EEVEE volledig
De realtime renderer — in Blender 5.x weer gewoon BLENDER_EEVEE
EEVEE is Blenders rasterization-renderer: snel, en sinds de herschrijving (“EEVEE Next” tijdens de ontwikkeling van 4.2) fysiek veel accurater dan de oude EEVEE. Belangrijk kadertje meteen vooraf.
RECCONCEPT00:00:00:00schooliumVeranderd sinds 4.x: EEVEE Next heet weer gewoon EEVEE
Veranderd sinds 4.x: tijdens de 4.2-cyclus werd de herschreven renderer tijdelijk “EEVEE Next” genoemd naast de oude “EEVEE (Legacy)”. Sinds de oude renderer verwijderd is, heet er nog maar één EEVEE, en de interne engine-id is gewoon weer BLENDER_EEVEE (niet BLENDER_EEVEE_NEXT). In Blender 5.1, de versie van deze cursus, kies je EEVEE in de Render Engine-keuzelijst zoals altijd — de naam “Next” duikt alleen nog op in oudere tutorials en changelogs.
De herschrijving bracht een **echte raytracer** binnen EEVEE (het Raytracing-paneel), correcte lichtreflecties zonder screen-space-artefacten, en Light Probes die niet meer vooraf gebakken hoeven te worden. Materialen die vroeger apart voor EEVEE en Cycles ingesteld moesten worden, gedragen zich nu veel dichter bij elkaar.
RECRENDER · EEVEE00:00:00:001280×720Sampling en Raytracing
Sampling bepaalt hoeveel keer per pixel EEVEE het beeld opbouwt, gescheiden voor viewport (Viewport → Samples) en finale render (Render → Samples). Meer samples geeft minder ruis in raytraced reflecties, schaduwen en ambient occlusion, maar kost meer tijd — precies zoals bij Cycles, alleen loopt EEVEE er in de viewport doorgaans nog altijd interactief mee door.
Het Raytracing-paneel schakelt echte raytracing in voor reflecties, refracties en (optioneel) schaduwen. Method kiest tussen Screen-Trace (sneller, beperkt tot wat op het scherm zichtbaar is) en de volledige raytracer. Resolution % laat je raytracing op een lagere resolutie berekenen dan de render zelf, en vervolgens opschalen — een directe snelheid-versus-kwaliteit-knop.
RECBLENDER 5.1 · PROP-EEVEE-RAYTRACING00:00:00:001920×1080Light Probes: Irradiance Volume, Reflection Cubemap, Reflection Plane
Een Light Probe-object legt vooraf (of in EEVEE Next: grotendeels live) vast hoe licht zich op een plek in de scène gedraagt, zodat objecten daar correct indirect licht en reflecties krijgen zonder dat de raytracer alles elke frame opnieuw hoeft te herberekenen. Irradiance Volume legt een rooster van punten vast voor zacht indirect licht (global illumination) over een volume; Reflection Cubemap legt scherpe reflecties vast rond één punt; Reflection Plane is geoptimaliseerd voor platte spiegelende oppervlakken zoals een vloer of spiegel — goedkoper en scherper dan een cubemap voor dat geval.
In de Scene Properties → Indirect Lighting bak je de probes met Bake Indirect Lighting; dat is nog steeds nodig voor de Irradiance Volume-kwaliteit op zijn best, ook al werkt EEVEE Next ook zonder bake redelijk.
RECCONCEPT00:00:00:00schooliumShadows, Volumetrics, Subsurface Scattering
Shadows bepaalt de resolutie en kwaliteit van schaduwkaarten (Light Threshold, Jitter); elke lamp heeft daarnaast een eigen Shadow-paneel met Softness (zachtheid, gekoppeld aan de fysieke grootte van de lamp — zie hoofdstuk 99) en Bias om schaduw-acne (valse zelfschaduw) te onderdrukken.
Volumetrics rendert mist, rook en lichtstralen door een medium — met Start/End (het bereik in de scène), Tile Size en Samples als kwaliteit/snelheid-knoppen. Subsurface Scattering simuleert licht dat een klein stukje onder een oppervlak binnendringt en er weer uitkomt (huid, was, marmer) — Samples en Jitter Threshold regelen hier de kwaliteit van die verstrooiing.
RECCONCEPT00:00:00:00schooliumEEVEE — alle 54 instellingen
Rechtstreeks uit bpy.types.SceneEEVEE uitgelezen, inclusief de raytracing-, volumetrics- en shadow-parameters.
| Instelling | Type | Standaard | Bereik | Wat hij doet (tooltip uit Blender) |
|---|---|---|---|---|
| Diffuse Bounces | INT | 3 | 0 – onbegrensd | Number of times the light is reinjected inside light grids, 0 disable indirect diffuse light |
| Cubemap Size | ENUM | 512 | 128 px, 256 px, 512 px, 1024 px, 2048 px, 4096 px | Size of every cubemaps |
| Irradiance Visibility Size | ENUM | 32 | 8 px, 16 px, 32 px, 64 px | Size of the shadow map applied to each irradiance sample |
| Clamp Glossy | FLOAT | 0 | 0 – onbegrensd | Clamp pixel intensity to reduce noise inside glossy reflections from reflection cubemaps (0 to disable) |
| Irradiance Pool Size | ENUM | 16 | 16 MB, 32 MB, 64 MB, 128 MB, 256 MB, 512 MB, 1 GB | Size of the irradiance pool, a bigger pool size allows for more irradiance grid in the scene but might not fit into GPU memory and decrease performance |
| Viewport Samples | INT | 16 | 0 – onbegrensd | Number of samples, unlimited if 0 |
| Render Samples | INT | 64 | 1 – onbegrensd | Number of samples per pixel for rendering |
| Viewport Denoising | BOOLEAN | aan | – | Denoise image using temporal reprojection (can leave some ghosting) |
| Tracing Method | ENUM | SCREEN | Light Probe, Screen-Trace | Select the tracing method used to find scene-ray intersections |
| Jittered Shadows (Viewport) | BOOLEAN | uit | – | Enable jittered shadows on the viewport. (Jittered shadows are always enabled for final renders). |
| Clamp Surface Direct | FLOAT | 0 | 0 – onbegrensd | If non-zero, the maximum value for lights contribution on a surface. Higher values will be scaled down to avoid too much noise and slow convergence at the cost of accuracy. Used by light objects. |
| Clamp Surface Indirect | FLOAT | 10 | 0 – onbegrensd | If non-zero, the maximum value for indirect lighting on surface. Higher values will be scaled down to avoid too much noise and slow convergence at the cost of accuracy. Used by ray-tracing and light-probes. |
| Clamp Volume Direct | FLOAT | 0 | 0 – onbegrensd | If non-zero, the maximum value for lights contribution in volumes. Higher values will be scaled down to avoid too much noise and slow convergence at the cost of accuracy. Used by light objects. |
| Clamp Volume Indirect | FLOAT | 0 | 0 – onbegrensd | If non-zero, the maximum value for indirect lighting in volumes. Higher values will be scaled down to avoid too much noise and slow convergence at the cost of accuracy. Used by light-probes. |
| Direct Light Strength | FLOAT | 1 | 0 – 3 | Scale the contribution of direct lighting |
| Indirect Light Strength | FLOAT | 1 | 0 – 3 | Scale the contribution of indirect lighting |
| Start | FLOAT | 0.1 | 0.001 – onbegrensd | Start distance of the volumetric effect |
| End | FLOAT | 100 | 0.001 – onbegrensd | End distance of the volumetric effect |
| Resolution | ENUM | 8 | 1:1, 1:2, 1:4, 1:8, 1:16 | Control the quality of the volumetric effects. Higher resolution uses more memory. |
| Steps | INT | 64 | 1 – 256 | Number of steps to compute volumetric effects. Higher step count increase VRAM usage and quality. |
| Exponential Sampling | FLOAT | 0.8 | 0 – 1 | Distribute more samples closer to the camera |
| Volume Max Ray Depth | INT | 16 | 1 – 16 | Maximum surface intersection count used by the accurate volume intersection method. Will create artifact if it is exceeded. Higher count increases VRAM usage. |
| Clamp | FLOAT | 0 | 0 – onbegrensd | Maximum light contribution, reducing noise |
| Volumetric Shadows | BOOLEAN | uit | – | Cast shadows from volumetric materials onto volumetric materials (Very expensive) |
| Volumetric Shadow Samples | INT | 16 | 1 – 128 | Number of samples to compute volumetric shadowing |
| Volume Custom Range | BOOLEAN | uit | – | Enable custom start and end clip distances for volume computation |
| Fast GI Approximation | BOOLEAN | uit | – | Use faster global illumination technique for high roughness surfaces |
| Near Thickness | FLOAT | 0.25 | 0 – 100 | Geometric thickness of the surfaces when computing fast GI and ambient occlusion. Reduces light leaking and missing contact occlusion. |
| Far Thickness | FLOAT | 0.785 | 0.0175 – 3.1416 | Angular thickness of the surfaces when computing fast GI and ambient occlusion. Reduces energy loss and missing occlusion of far geometry. |
| Trace Precision | FLOAT | 0.25 | 0 – 1 | Precision of the fast GI ray marching |
| Step Count | INT | 8 | 1 – 64 | Amount of screen sample per GI ray |
| Ray Count | INT | 2 | 1 – 16 | Amount of GI ray to trace for each pixel |
| Method | ENUM | GLOBAL_ILLUMINATION | Ambient Occlusion, Global Illumination | Fast GI approximation method |
| Distance | FLOAT | 0 | 0 – 100 | If non-zero, the maximum distance at which other surfaces will contribute to the fast GI approximation |
| Bias | FLOAT | 0.05 | 0 – 0.5 | Bias the shading normal to reduce self intersection artifacts |
| Resolution | ENUM | 2 | 1:1, 1:2, 1:4, 1:8, 1:16 | Control the quality of the fast GI lighting. Higher resolution uses more memory. |
| Max Size | FLOAT | 100 | 0 – 200 | Max size of the bokeh shape for the depth of field (lower is faster) |
| Sprite Threshold | FLOAT | 1 | 0 – 10 | Brightness threshold for using sprite base depth of field |
| Neighbor Rejection | FLOAT | 10 | 0 – 40 | Maximum brightness to consider when rejecting bokeh sprites based on neighborhood (lower is faster) |
| Jitter Camera | BOOLEAN | uit | – | Jitter camera position to create accurate blurring using render samples (only for final render) |
| Over-blur | FLOAT | 5 | 0 – 20 | Apply blur to each jittered sample to reduce under-sampling artifacts |
| Bleeding Bias | FLOAT | 100 | 0.01 – 1000 | Lower values will reduce background bleeding onto foreground elements |
| Max Blur | INT | 32 | 0 – 512 | Maximum blur distance a pixel can spread over |
| Motion steps | INT | 1 | 1 – 64 | Controls accuracy of motion blur, more steps means longer render time |
| Shadows | BOOLEAN | aan | – | Enable shadow casting from lights |
| Shadow Pool Size | ENUM | 512 | 16 MB, 32 MB, 64 MB, 128 MB, 256 MB, 512 MB, 1 GB | Size of the shadow pool, a bigger pool size allows for more shadows in the scene but might not fit into GPU memory |
| Shadow Ray Count | INT | 1 | 1 – 4 | Amount of shadow ray to trace for each light |
| Shadow Step Count | INT | 6 | 1 – 16 | Amount of shadow map sample per shadow ray |
| Light Threshold | FLOAT | 0.01 | 0 – 1 | Minimum light intensity for a light to contribute to the lighting |
| Overscan | BOOLEAN | uit | – | Internally render past the image border to avoid screen-space effects disappearing |
| Overscan Size | FLOAT | 3 | 0 – 10 | Percentage of render size to add as overscan to the internal render buffers |
| Use Ray-Tracing | BOOLEAN | uit | – | Enable the ray-tracing module |
| Shadows Resolution Scale | FLOAT | 1 | 0 – 1 | Resolution percentage of shadow maps |
Zelf proberen: één scène, twee renderers
Open start_eevee_cycles.blend: dezelfde scène twee keer opgezet met identieke materialen en belichting. Render eerst met EEVEE, noteer de rendertijd, schakel dan om naar Cycles (hoofdstuk 101) en render opnieuw.
- 1Render met EEVEE op de standaardinstellingen, bekijk reflecties en schaduwen.
- 2Zet Raytracing aan op Screen-Trace, vergelijk de reflecties in de viewport.
- 3Wissel Render Engine naar Cycles, render met dezelfde cameraplaatsing.
- 4Vergelijk beide renders naast elkaar: waar zie je verschil, en welke is sneller?
RECRENDER · EEVEE00:00:00:001280×720
RECRENDER · EEVEE00:00:00:001280×720