Commit graph

101 commits

Author SHA1 Message Date
Mark van de Ruit
6c56baf9a4 EEVEE: LTC form factor attenuation
Adds an attenuation factor inside the LTC evaluation, reducing light
leakage in our approximation. Further refactors surrounding code to
avoid recomputing light data that is in the caller.

Pull Request: https://projects.blender.org/blender/blender/pulls/161262
2026-09-17 14:16:42 +02:00
Bart van der Braak
86e21e9f8a Tests: Change failure thresholds for AMD GPUs
While testing driver stack changes while moving our AMD GPU workers
from Rocky Linux 8 to Ubuntu 24.04 these tests came up as errors. Some
of these errors could be attributed to hardware differences (W7600 vs.
W7800).

Pull Request: https://projects.blender.org/blender/blender/pulls/163975
2026-09-16 19:02:20 +02:00
Sergey Sharybin
819d52f3d2 GSplat: Initial rendering support for Cycles
Based on the "Stochastic ray tracing of transparent 3D Gaussians" paper
by Xin Sun et. al. The basic idea: perform stochastic intersection with
the Gaussian splat based on its transparency.

Gaussian splats are implemented as a dedicated primitive type, but it
shares the same layout for position and radius as points, so a lot of
existing functions (positions, attributes, etc) work for both points
and splats.

For the Embree and hardware intersection it is implemented as a custom
primitive type.

The choice of using bounding spheres mainly comes from a balance between
performance and memory usage. More ideal would be to use OBB, but it is
not supported for custom primitive types in Embree and GPU HW-RT on all
backends.

There is a known limitation that comes from the fact that the datasets
are trained in sRGB space and Cycles work in Linear space: areas with
low opacity and high radiance render noticeably differently from the
ground-truth implementation.

Ref #159470

Pull Request: https://projects.blender.org/blender/blender/pulls/163103
2026-09-16 16:52:10 +02:00
avon662
325bb9d27d EEVEE: Add sky texture sun disc support
Why:
Feature parity. Cycles has sun disk. EEVEE's atmospheric contribution
was incomplete without one.

How:
Should be pretty self explanatory. Grab the values from the Node.
Compute the values. Sum into the sky RGB. Designed to mimic the
convention Cycles uses. With the exception of the angular distance,
instead using the GLSL helper. Also removed the GUI warning as it was no
longer necessary.
For obvious reasons. The sun would not survive baking into the LUT. So
its summed to the final RGB.

Pull Request: https://projects.blender.org/blender/blender/pulls/163132
2026-09-16 13:54:46 +02:00
Le Gia Bao
fb61ad85d0 EEVEE: Add Support for Panoramic Camera View
# Implemented

- Panoramic camera types: equirectangular,
equiangular cubemap face, fisheye equidistant,
fisheye equisolid, fisheye lens polynomial,
central cylindrical, mirror ball.
- Render 6 subviews (fixed 90° FOV each, 5% overscan).
- Subview enable/disable masking (PanoramicViewBits)
to skip faces not needed for narrow FOV.
- Accumulate radial depth for panoramic projections.
- Film accumulation per owning face per pixel.

# Future tasks

### Turned off for now

- Depth of Field
- Volume temporal reprojection history state is shared
across all 6 subviews instead of per-view, so it's disabled
for now. Per-view history would be the real fix.

### Optimizations

- Per-face render resolution: scale each cubeface's resolution
to its actual angle contribution instead of a fixed size.
- Clip each subview's projection matrix to its actual visible FOV
instead of always rendering the full 90°. Needs care to clip to
exact pixel borders, or reprojection onto the film breaks.
- Stencil mask per subview to avoid computing weights.
(currently: pixels not owned by a face just copy their existing
value and return early).

### Known limitations

- Film sampling use nearest-texel only, not a proper filter kernel
(a 3x3 or plus-shaped 5-sample kernel would reduce
 aliasing/banding)
- No antialiasing at boundaries.
- Screen-space raytracing hits subview boundaries and
creates artifacts. Possible fix: overscan parameter and make a
blend between the cubefaces.

Pull Request: https://projects.blender.org/blender/blender/pulls/159474
2026-09-03 14:47:04 +02:00
Le Gia Bao
bc59d1412b EEVEE: Blocklist aov_consecutive_view_layers on OpenGL
Blocklist aov_consecutive_view_layers on OpenGL as it is currently
failling on the AMD buildbot.

Pull Request: https://projects.blender.org/blender/blender/pulls/163430
2026-09-02 20:13:49 +02:00
Miguel Pozo
c3f2d1fb67 EEVEE: Material Lighting Nodes
Pull Request: https://projects.blender.org/blender/blender/pulls/161429

---------

Co-authored-by: Clément Foucault <foucault.clem@gmail.com>
Co-authored-by: Clément Foucault <8117+fclem@noreply.localhost>
2026-09-02 13:44:16 +02:00
Christoph Neuhauser
b40da1310b GPU: Add command line option for skipping GPU backend support checks
A new command line option `--debug-gpu-backend-no-fallback` is added
that skips the GPU backend support checks. This is primarily useful for
the GPU tests that should not fall back to another backend. This has the
useful side effect of skipping `vk_instance_create_for_platform_checks`,
which would otherwise create its own Vulkan instance. `vkCreateInstance`
can be an expensive function call depending on the used GPU driver (see
https://projects.blender.org/infrastructure/meta/issues/231).

Pull Request: https://projects.blender.org/blender/blender/pulls/163203
2026-08-28 12:35:23 +02:00
Weizhen Huang
f15daf81bf Cycles: Add dispersion to Principled BSDF
Dispersion is defined by two parameters:
Abbe Number and Dispersion Scale.

This corresponds to OpenPBR v1.1.1

Pull Request: https://projects.blender.org/blender/blender/pulls/162041

Note: dispersion is temporarily disabled when using MNEE (shadow caustics) on oneAPI, due to a compiler bug. Waiting for a fix from the oneAPI side.

![prism.png](/attachments/219c3966-b39d-4846-991b-976f84f83081)
Co-authored-by: Sebastian Herholz <sebastian.herholz@gmail.com>
2026-08-18 11:03:49 +02:00
Christoph Neuhauser
9dfdae1c36 Fix #162523: GPU: Add mipmap workaround for Intel Arc Windows OpenGL
The compute-shader based function `update_mipmaps` can generate broken
mipmaps for Intel Arc Windows OpenGL. A workaround for falling back to
`generate_mipmap` is added to mitigate the issue. Furthermore, a render
test is added that catches the issue.

Pull Request: https://projects.blender.org/blender/blender/pulls/162524
2026-08-13 16:03:06 +02:00
Christoph Neuhauser
7d641fe968 Tests: EEVEE: Blocklist volume_instance test for Intel Windows
Previously, the blocklist for volume_instance was only applied to the
OpenGL backend for Intel Windows. While this issue was presumably fixed,
the same issue can also be seen sporadically for the Vulkan backend.
Until the issue has been investigated, it makes sense to blocklist both.

Pull Request: https://projects.blender.org/blender/blender/pulls/162411
2026-08-06 16:16:19 +02:00
Le Gia Bao
51daedddde Fix #129533: EEVEE: Dither film accumulation to avoid shadow banding
Since the same pixel gets used every sample,
the rounding error accumulates and biases the
result instead of averaging out, as we're using
a fixed offset.

Fix by dithering the rounding offset per
sample instead of using a fixed value.

Pull Request: https://projects.blender.org/blender/blender/pulls/161958
2026-08-04 14:23:01 +02:00
Mark van de Ruit
36b9b24ada GPU: Pass gpu_backend to get_gpu_device_vendor in render tests
As the vulkan backend is now default, `get_gpu_device_vendor()` returns
the selected GPU for Vulkan. In the rare case that OpenGL uses a
different GPU, this causes render tests to use incorrect tolerances and
possibly fail. The PR adds the GPU backend argument to
`get_gpu_device_vendor()` to avoid this\*.

> \* this = confusing me

Pull Request: https://projects.blender.org/blender/blender/pulls/161255
2026-07-09 14:36:38 +02:00
Sergey Sharybin
84515ec017 Fix #147659: Shadow rays for hair don't support colored transparency
Cycles used a single float for the baked transparency.
Change it to RGBE, so that it is colored, and does not increase the
state size.

Pull Request: https://projects.blender.org/blender/blender/pulls/160680
2026-07-06 16:24:00 +02:00
Clément Foucault
e40148276b EEVEE: Bypass lightprobe setup in tests without any lit materials
This significantly reduce the overhead of simple tests
like the image tests.

Before (warm run)
```
(.venv) $[build_linux] ctest -R eevee_opengl_image_
Test project /mnt/data/Blender/build_linux
    Start 257: eevee_opengl_image_colorspace
1/4 Test #257: eevee_opengl_image_colorspace ......   Passed    7.28 sec
    Start 258: eevee_opengl_image_data_types
2/4 Test #258: eevee_opengl_image_data_types ......   Passed   16.24 sec
    Start 259: eevee_opengl_image_mapping
3/4 Test #259: eevee_opengl_image_mapping .........   Passed   17.99 sec
    Start 260: eevee_opengl_image_texture_limit
4/4 Test #260: eevee_opengl_image_texture_limit ...   Passed   16.28 sec

100% tests passed, 0 tests failed out of 4

Total Test time (real) =  57.82 sec
```
After (warm run)
```
(.venv) $[build_linux] ctest -R eevee_opengl_image_
Test project /mnt/data/Blender/build_linux
    Start 257: eevee_opengl_image_colorspace
1/4 Test #257: eevee_opengl_image_colorspace ......   Passed    5.17 sec
    Start 258: eevee_opengl_image_data_types
2/4 Test #258: eevee_opengl_image_data_types ......   Passed   11.60 sec
    Start 259: eevee_opengl_image_mapping
3/4 Test #259: eevee_opengl_image_mapping .........   Passed   12.79 sec
    Start 260: eevee_opengl_image_texture_limit
4/4 Test #260: eevee_opengl_image_texture_limit ...   Passed   12.30 sec

100% tests passed, 0 tests failed out of 4

Total Test time (real) =  41.89 sec
```

Pull Request: https://projects.blender.org/blender/blender/pulls/160868
2026-06-30 17:00:58 +02:00
Clément Foucault
5b296aee6f EEVEE: Add placeholder for Cycles blocklist 2026-06-26 10:48:58 +02:00
Brecht Van Lommel
1319a955eb Fix #160256: Cycles OptiX crash with OSL camera and shader raytrace
This particular combination was not computing the stack size correctly,
since shader raytrace was moved to a separate OptiX module. It needs to
be set manually now that it's not part of the same module.

Regression from c51fcf73a7.

Pull Request: https://projects.blender.org/blender/blender/pulls/160318
2026-06-24 14:31:29 +02:00
Clément Foucault
ec92178a69 Fix #160084: EEVEE: Wrong Gbuffer packing with colored refraction
The heuristic for colorless reflections detection
was not taking into account the Multiscatter GGX case.
In this configuration, the `Favg` is tinting the reflectance
which results in colored reflections. The Gbuffer packing needs
to be notified to account for that.
See `GPU_MATFLAG_REFLECTION_MAYBE_COLORED`.

Also unblock Principled BSDF transmission test.
It was previously disabled because of a shadow
issue that was recently solved. Moreover it tests for this
specific case.

Pull Request: https://projects.blender.org/blender/blender/pulls/160232
2026-06-16 18:12:45 +02:00
Jeroen Bakker
0b7a4b32c8 Tests: Disable Workbench/EEVEE on AMD official drivers
Also disabling it on windows builders. In the future we will enable
them after the planned reconfiguration of the buildbot workers.

Pull Request: https://projects.blender.org/blender/blender/pulls/160215
2026-06-16 13:36:51 +02:00
Jeroen Bakker
97a2b406af Tests: Disable Workbench/EEVEE tests on AMD/Linux
Platform can get unstable. The artifacts that were detected seemed
like invalid synchronization of index buffers, or incorrect execution
of vertex buffers. This could be related to the combination of AMD
official drivers and Rocky8. More investigation is needed, but for
now we just disable these tests.

Pull Request: https://projects.blender.org/blender/blender/pulls/160204
2026-06-16 09:34:41 +02:00
Ray Molenkamp
72f8c89b77 Core: add --console-crash-handler flag
Initially noted by devops as a problem: UI tests when crashing
spawn our crash dialog, that will just sit there for 1200 seconds
until the CI environment decides the test has failed and kills the
process, clicking away the dialog also works, but neither option is
ideal here.

The crash handler knows when we are in background mode, (`-B`) and
suppresses this dialog so this is why it has not been an issue for the
normal tests. However when we do crash we get an unhelpful message
saying `Writing: blender.crash.txt` which is not collected by buildbot
so unless a developer can get a devops person to go retrieve this file
its contents will be left to ones imagination.

This PR adds a `--console-crash-handler` argument that does two things:

1 - Suppress the crash dialog even when we are not in background mode
2 - Rather than writing the crash data to blender.crash.txt write this
information to stderr so it shows up in the CI logs.

It also updates all invocations of blender I could find in our test
scripts to pass this new flag. The benchmark scripts have not been
updated as they regularly run against older blender versions that may
not support the new flag.

Pull Request: https://projects.blender.org/blender/blender/pulls/159983
2026-06-15 20:23:29 +02:00
Jeroen Bakker
e13012872f Tests: Enable vulkan render tests
Enabling all render tests that are not failing on the build bot for 5.2

Pull Request: https://projects.blender.org/blender/blender/pulls/159966
2026-06-15 07:52:07 +02:00
Clément Foucault
bdfbad66e1 EEVEE: Update threshold for passing tests on older AMD GPU 2026-06-11 15:41:50 +02:00
Christoph Neuhauser
fc8445c991 Fix #159634: EEVEE: Increase screen space ray bias
EEVEE screen space ray tracing uses a bias of `-2.4e-7f * 2.0f` to avoid
self-intersections. This bias is increased to `-2.4e-7f * 7.0f` in order
to work around self-intersections present on Intel GPUs on Windows.

Pull Request: https://projects.blender.org/blender/blender/pulls/159953
2026-06-11 14:08:39 +02:00
Jeroen Bakker
6063b2f8f3 Fix: Block implicit_volume.blend for Win/AMD/Vulkan
This test raises a driver error on many setups. This has been reported
to AMD. This PR blocks the test on the failing platforms.

See #159880 for details.

Pull Request: https://projects.blender.org/blender/blender/pulls/159949
2026-06-11 12:51:20 +02:00
Clément Foucault
528483c68d EEVEE: Add shading_offset to the test blocklist on intel
This is to mitigate the test failure we are
currently having after updating the testing
infra.

Rel #159634
2026-06-05 15:31:15 +02:00
Miguel Pozo
b6ef80f9b9 Tests: Block shadow_min_pool_size on Nvidia Linux as well
The issue is not Windows-only.
2026-06-01 19:22:53 +02:00
Clément Foucault
154eedd25b EEVEE: Increase motion blur tests threshold for M1
The Apple M1 GPU seems to have slightly different
bump values in this test.
2026-06-01 14:29:43 +02:00
Clément Foucault
6ce49cab38 Fix: EEVEE: Undefined behavior in polygonal bokeh depth of field
This caused a discrepancy between Metal and other platforms.

From the MSL specification:
```
atan2(y, x)
Implemented as
if x > 0, atan(y / x),
if x < 0 and y > 0, atan(y / x) + M_PI_F
if x < 0 and y < 0, atan(y / x) – M_PI_F
and if x = 0 or y = 0, the result is undefined
```
Also the GLSL specification:
```
The result is undefined if x=0.
```

Fixed by adding a small epsilon to `atan`.

Pull Request: https://projects.blender.org/blender/blender/pulls/159305
2026-05-29 20:26:25 +02:00
Clément Foucault
5a60abee1d EEVEE: Improve test differences
- Try to reduce difference in tests caused by hardware filtering.
- Increase sample count for tests with raster difference.
- Reduce threshold after 528d859105
- Remove test from blocklist after d0ae9292f9

Pull Request: https://projects.blender.org/blender/blender/pulls/159176
2026-05-28 15:11:50 +02:00
Miguel Pozo
6908cd1350 EEVEE: Disable shadow_min_pool_size on OpenGL for Nvidia Windows
The test shows non-deterministic behavior.
The reason is unknown, the max pool size is not exceeded.
The test shows a slightly different result each time, as long as the
volume probe is rendered.
Storing the bake result in the blend file (using a `Volume_Probe_Baked`
object) doesn't fix it.
Given that Linux doesn't seem to fail, it may be a driver issue.

Pull Request: https://projects.blender.org/blender/blender/pulls/159121
2026-05-26 22:14:36 +02:00
Miguel Pozo
6602850224 EEVEE: Raycast Visibility toggle
Implement a visibility toggle for Raycast queries.
Available in `Properties Panel > Object > Visibility > Raycast`.

Allows selecting which objects are visible to the Raycast node.

Pull Request: https://projects.blender.org/blender/blender/pulls/157799
2026-05-25 07:42:25 +02:00
Clément Foucault
14774b31b5 EEVEE: Update failure threshold for different Nvidia architectures
The sampling pattern are different per architecture.
Increases threshold slightly for tests that fails.
2026-05-22 20:50:16 +02:00
Clément Foucault
df30a8b3ec EEVEE: Update test failure threshold
After fixing a bunch of issues over the years,
the render tests failure threshold it too high and
let valid errors become undetected.

Divide the fail threshold by 10 in most cases
and by 2 in worst cases.

This reduces the threshold to a very low number since
most EEVEE renders have a low amount of noise.

Some tests are updated to reduce platform differences.

This unveiled quite a few issues that will be fixed
in main later on (see blocklist edits).

Test refinement:
- 🟩 NVidia Opengl (reference)
- 🟩 AMD Opengl
- 🟩 AMD Vulkan
- 🟩 Intel Opengl
- 🟩 Metal

Pull Request: https://projects.blender.org/blender/blender/pulls/158810
2026-05-22 07:36:11 +02:00
Clément Foucault
4bbe6e4dab EEVEE: Add support for lightprobe plane on Blended material
This adds back lightprobe plane support for Blended Material
and Shader to RGB evaluation.

This adds a parallax property on the Lightprobe Planes to tweak
the amount of (non-physical) distortion caused by normals.

Unlike legacy EEVEE (4.1) this implementation does not do any
raytracing even if raytracing is enabled in the render options.
Instead, it uses the same heuristic when raytracing was disabled
in 4.1. However, it now uses the new parallax amount from the
planar lightprobe property.

The heuristic fades out reflections if the normal differs from
the reflection direction or if roughness is not small.

To avoid big regression in compile time, the sampling of the
planar probe is done only once for all the BSDFs and using the
average normal.

Fix #135198

Pull Request: https://projects.blender.org/blender/blender/pulls/158483
2026-05-13 19:50:22 +02:00
Clément Foucault
861ef28873 EEVEE: Raytracing: Resolve major issues
Serie of major fixes. See PR for more details.

Pull Request: https://projects.blender.org/blender/blender/pulls/157059
2026-05-01 09:55:52 +02:00
Clément Foucault
5b273c17d8 EEVEE: Fast GI: Resolve major issues
- Fix HiZ texture not sampled with integer LOD
- Fix AO light leaking caused by spherical harmonics
- Fix LOD scaling with precision slider
- Fix normal initialization inside the tracing shader
- Fix energy conservation
- Fix radiance reprojection

Pull Request: https://projects.blender.org/blender/blender/pulls/156597
2026-04-03 12:59:12 +02:00
Jeroen Bakker
2f657feb36 GPU: Mipmap filtering consistency
In OpenGL mipmap creation is a driver responsibility. In Metal
and Vulkan this became an application responsibility. This results
in a mismatch between OpenGL and the other backends.

This PR will implement mipmap creation inside the GPU module. It
is for now only enabled for Vulkan. OpenGL and Metal will be added
in separately.

This PR introduces a compute shader that will generate the
mipmap chain. The compute shader is be based on
https://github.com/nvpro-samples/vk_compute_mipmaps/tree/main/nvpro_pyramid
general sharer. This shader can calculate 2 mipmap levels at a time.

This PR adds the first couple of texture formats and falls
back to the backend specific implementation for the rest. The
supported texture formats are:

- 2D texture/UNORM_8_8_8_8
- 2D arrayed texture/UNORM_8_8_8_8
- 2D texture/SFLOAT_16
- 2D arrayed texture/SFLOAT_16
- 2D texture/SFLOAT_16_16_16_16
- 2D arrayed texture/SFLOAT_16_16_16_16

Other texture formats will be added later on and OpenGL/Metal enablement
will be added later.

Pull Request: https://projects.blender.org/blender/blender/pulls/155463
2026-03-26 12:59:46 +01:00
Mark van de Ruit
ee45eaf611 EEVEE: Update subsurface thickness test for sphere/slab modes
Updated `subsurface_thickness`  and references to test both sphere and slab thickness modes; slab was previously not being tested.

Pull Request: https://projects.blender.org/blender/blender/pulls/156182
2026-03-24 14:34:49 +01:00
Miguel Pozo
7da2065b9d Fix #154166: Cycles: Raycast + Bump artifacts
The raycast node disables self intersection when the ray start is the
surface position.
However, this fails when evaluating bump.

This commit adds an extra offset to the ray start (tmin) when
evaluating bump.

Co-authored-by: Brecht Van Lommel <brecht@blender.org>
Pull Request: https://projects.blender.org/blender/blender/pulls/154222
2026-03-12 15:33:08 +01:00
Miguel Pozo
4cc54a73a2 Cleanup: EEVEE Tests: Fail thresholds clarification
Add extra info.
Swap camera and texture locations.
2026-02-18 17:58:52 +01:00
Jeroen Bakker
bbbc20fb81 Fix #154515, #154516: EEVEE rendertests on AMD/Linux/OpenGL
Increased the fail threshold for texture, rayquery and camera tests.

Pull Request: https://projects.blender.org/blender/blender/pulls/154520
2026-02-18 09:25:46 +01:00
Treata11
7c44fae9d4 EEVEE: Add light path intensity controls
#### This patch adds **Direct** and **Indirect Light intensity controls** to **EEVEE**.

The new controls allow artists to scale the contribution of **direct** and **indirect**
lighting paths independently, without modifying the underlying lighting algorithms,
sampling, or ray tracing settings.

Both controls default to `1.0`, resulting in **no visual change** for existing files.

### Design Rationale

This feature is intentionally narrow in scope and exists to address cases that cannot
be handled correctly or efficiently using render passes or the compositor.

A compositor-based solution is currently not viable because Direct and Indirect light
passes **do not yet exist**, and when they do, they will not support **blended materials**.
This would create discrepancies between **dithered** and **blended** materials.

Using render passes for this purpose would also require additional accumulation passes
and buffers, would not be compatible with `TAA`, and would be disproportionate to a simple
scalar operation. For these reasons, the controls are implemented directly in the EEVEE
lighting pipeline.

The scaling is applied after clamping to preserve firefly suppression behavior and to
match the **behavior** of a **post-lighting compositing** adjustment.

### Intended Use

In spirit, this is similar to *Light Probe intensity* and is useful for:
- Large-scale environments where lighting balance needs adjustment
- Scenes requiring stronger or weaker indirect illumination
- Balancing direct vs indirect contribution without reauthoring lights
- HDR and color grading workflows

The controls do **not** alter ray depth, sampling, accumulation, or performance
characteristics, and apply uniformly across the EEVEE lighting paths.

Pull Request: https://projects.blender.org/blender/blender/pulls/153340
2026-02-04 02:36:14 +01:00
Jeroen Bakker
990474f17a Fix: Failing render tests on Intel/Windows/OpenGL
Previous fix incorrectly blocked it for Vulkan. Should have been OpenGL.

Pull Request: https://projects.blender.org/blender/blender/pulls/153757
2026-02-02 16:03:30 +01:00
Miguel Pozo
9b40c870b2 EEVEE: Disable volume_instance.blend test on Intel Windows OpenGL
Fails sporadically and causes all subsequent volume tests to fail.
(See #153612 for details)

Pull Request: https://projects.blender.org/blender/blender/pulls/153660
2026-01-30 17:37:08 +01:00
Christoph Neuhauser
8560b1ee6a Tests: Add environment variable BLENDER_TEST_IGNORE_VENDOR_BLOCKLIST
This commit adds the environment variable
`BLENDER_TEST_IGNORE_VENDOR_BLOCKLIST` to the GTest and Python tests.
In contrast to `BLENDER_TEST_IGNORE_BLOCKLIST`, this only ignores the
blocklists for tests that are blocked for individual hardware vendors.
When a test fails in Blender due to driver issues, the test is blocked
for the hardware vendor until a fixed driver is available for the CI
workers. This means that hardware vendors need to manually remove the
blocklists when they check the state of test failures.
The new environment variable gives an easy option to also run these
tests in case where seeing these failures (but not general failures,
e.g., due to issues in Blender) is preferrable.

Pull Request: https://projects.blender.org/blender/blender/pulls/153549
2026-01-30 14:25:38 +01:00
Christoph Neuhauser
a8502c7fb3 Fix #148865: Tests: Add Vulkan backend tests for Storm and UI
This PR adds separate Vulkan backend tests for Storm Hydra/USD and UI.
The new tests are called:
- storm_hydra_[backend]_*
- storm_usd_[backend]_*
- ui_[backend]_*

The Vulkan tests are not yet enabled by default due to open issues.
For enabling them, the CMake options WITH_STORM_TESTS_VULKAN and
WITH_UI_TESTS_VULKAN can be turned on.

Pull Request: https://projects.blender.org/blender/blender/pulls/149142
2026-01-27 15:46:19 +01:00
Clément Foucault
259267952f EEVEE: Replace angle computation in shadow code with cosine
The tangent computation was not needed. Also precompute the
cosine of the shadow angle to avoid implementation dependant
result.

Pull Request: https://projects.blender.org/blender/blender/pulls/151739
2025-12-17 14:45:58 +01:00
Jeroen Bakker
3b96ccca8a Vulkan: Enable previous failing sss_reflection_clamp render test
Enabling this test so we keep track to the state.

Pull Request: https://projects.blender.org/blender/blender/pulls/151496
2025-12-11 17:18:51 +01:00
Miguel Pozo
d14e71d9b9 EEVEE: Add tests for untested EEVEE-specific features
Part of #148449

This also adds a way to skip certain parts of the EEVEE_render_test
setup by storing (optional) boolean properties in the scene.

Pull Request: https://projects.blender.org/blender/blender/pulls/149471
2025-11-17 18:07:13 +01:00