Cycles: Enable OptiX OSL render tests
OptiX OSL tests were previously disabled due to a GPU driver bug resulting in many tests failing unexpectedly. The new driver version is now out with the fix so we can now enable OptiX OSL testing. This commit also updates the OptiX OSL block list with better comments, and more tests that are known to fail and need investigating. Ref: #123012 Pull Request: https://projects.blender.org/blender/blender/pulls/129280
This commit is contained in:
@@ -725,7 +725,7 @@ if(WITH_CYCLES OR WITH_GPU_RENDER_TESTS)
|
||||
if(WITH_CYCLES_TEST_OSL AND WITH_CYCLES_OSL)
|
||||
# OSL is only supported with CPU and OptiX
|
||||
# TODO: Enable OptiX support once it's more stable
|
||||
if("${_cycles_device_lower}" STREQUAL "cpu")
|
||||
if(("${_cycles_device_lower}" STREQUAL "cpu") OR ("${_cycles_device_lower}" STREQUAL "optix"))
|
||||
add_render_test(
|
||||
${_cycles_test_name}_osl
|
||||
${CMAKE_CURRENT_LIST_DIR}/cycles_render_tests.py
|
||||
@@ -734,7 +734,6 @@ if(WITH_CYCLES OR WITH_GPU_RENDER_TESTS)
|
||||
--device ${_cycles_device}
|
||||
--osl
|
||||
)
|
||||
# Doesn't do anything until OptiX is enabled
|
||||
if(NOT ("${_cycles_device_lower}" STREQUAL "cpu"))
|
||||
set_tests_properties(${_cycles_test_name}_osl PROPERTIES RUN_SERIAL TRUE)
|
||||
endif()
|
||||
|
||||
@@ -77,29 +77,27 @@ BLOCKLIST_OPTIX_OSL = [
|
||||
'ambient_occlusion.*.blend',
|
||||
'bevel.blend',
|
||||
'osl_trace_shader.blend',
|
||||
# The Volumetric noise texture is different for some reason
|
||||
'principled_absorption.blend',
|
||||
# Dicing tests use wireframe node which doesn't appear to be supported in OptiX
|
||||
'dicing_camera.blend',
|
||||
'offscreen_dicing.blend',
|
||||
'panorama_dicing.blend',
|
||||
# Bump evaluation is not implemented yet. See 104276
|
||||
'compare_bump.blend',
|
||||
'both_displacement.blend',
|
||||
'bump_with_displacement.blend',
|
||||
'ray_portal.blend',
|
||||
# TODO: Investigate every other failing case and add them here.
|
||||
# Note: Many tests are failing due to CUDA errors. Some of these are driver issues that NVIDIA is currently looking into.
|
||||
#
|
||||
# Currently failing tests that aren't in this list are:
|
||||
# ray_portal*.blend - CUDA error
|
||||
# image_mapping_udim*.blend - Can't load UDIM from disk? But can load UDIM if it's packed, but doesn't seem to use it properly.
|
||||
# points_volume.blend - CUDA error
|
||||
# principled_emission_alpha.blend - CUDA error related to connected inputs. Probably the same as 122779
|
||||
# point_density_*_object - Object scale doesn't appear to be appplied to texture
|
||||
# All the other tests mentioned in BLOCKLIST_OSL (E.g. Principled BSDF tests having noise differences)
|
||||
# Volumetric textures use a different default texture mapping in OptiX OSL. See 129279
|
||||
'principled_absorption.blend',
|
||||
'denoise_volume.blend',
|
||||
# The 3D texture doesn't have the right mappings
|
||||
'point_density_.*_object.blend',
|
||||
# Dicing tests use wireframe node which doesn't appear to be supported with OptiX OSL
|
||||
'dicing_camera.blend',
|
||||
'offscreen_dicing.blend',
|
||||
'panorama_dicing.blend',
|
||||
# The mapping of the UDIM texture is incorrect. Need to investigate why.
|
||||
'image_mapping_udim_packed.blend',
|
||||
# Error during rendering. Need to investigate why.
|
||||
'points_volume.blend',
|
||||
]
|
||||
|
||||
|
||||
BLOCKLIST_METAL = []
|
||||
|
||||
if platform.system() == "Darwin":
|
||||
|
||||
Reference in New Issue
Block a user