Tests: enable bake and shader raytracing tests for OptiX
These are now supported and so can be tested. Also refactor the code a bit to move Cycles specific blacklist out of generic render test code.
This commit is contained in:
@@ -9,6 +9,53 @@ import subprocess
|
||||
import sys
|
||||
from pathlib import Path
|
||||
|
||||
# List of .blend files that are known to be failing and are not ready to be
|
||||
# tested, or that only make sense on some devices. Accepts regular expressions.
|
||||
BLACKLIST_OSL = [
|
||||
# OSL only supported on CPU.
|
||||
'.*_osl.blend',
|
||||
'osl_.*.blend',
|
||||
]
|
||||
|
||||
BLACKLIST_OPTIX = [
|
||||
# No branched path on Optix.
|
||||
'T53854.blend',
|
||||
'T50164.blend',
|
||||
'portal.blend',
|
||||
'denoise_sss.blend',
|
||||
'denoise_passes.blend',
|
||||
'distant_light.blend',
|
||||
'aov_position.blend',
|
||||
'subsurface_branched_path.blend',
|
||||
'T43865.blend',
|
||||
]
|
||||
|
||||
BLACKLIST_GPU = [
|
||||
# Missing equiangular sampling on GPU.
|
||||
'area_light.blend',
|
||||
'denoise_hair.blend',
|
||||
'point_density_.*.blend',
|
||||
'point_light.blend',
|
||||
'shadow_catcher_bpt_.*.blend',
|
||||
'sphere_light.blend',
|
||||
'spot_light.blend',
|
||||
'T48346.blend',
|
||||
'world_volume.blend',
|
||||
# Uninvestigated differences with GPU.
|
||||
'image_log.blend',
|
||||
'subsurface_behind_glass_branched.blend',
|
||||
'T40964.blend',
|
||||
'T45609.blend',
|
||||
'T48860.blend',
|
||||
'smoke_color.blend',
|
||||
'bevel_mblur.blend',
|
||||
# Inconsistency between Embree and Hair primitive on GPU.
|
||||
'hair_basemesh_intercept.blend',
|
||||
'hair_instancer_uv.blend',
|
||||
'hair_particle_random.blend',
|
||||
'principled_hair_.*.blend',
|
||||
'transparent_shadow_hair.*.blend',
|
||||
]
|
||||
|
||||
def get_arguments(filepath, output_filepath):
|
||||
dirname = os.path.dirname(filepath)
|
||||
@@ -64,8 +111,15 @@ def main():
|
||||
output_dir = args.outdir[0]
|
||||
device = args.device[0]
|
||||
|
||||
blacklist = []
|
||||
if device != 'CPU':
|
||||
blacklist += BLACKLIST_GPU
|
||||
blacklist += BLACKLIST_OSL
|
||||
if device == 'OPTIX':
|
||||
blacklist += BLACKLIST_OPTIX
|
||||
|
||||
from modules import render_report
|
||||
report = render_report.Report('Cycles', output_dir, idiff, device)
|
||||
report = render_report.Report('Cycles', output_dir, idiff, device, blacklist)
|
||||
report.set_pixelated(True)
|
||||
report.set_reference_dir("cycles_renders")
|
||||
if device == 'CPU':
|
||||
|
Reference in New Issue
Block a user