diff --git a/wrench/reftests/split/reftest.list b/wrench/reftests/split/reftest.list index 147dd0227c..b0cff2355b 100644 --- a/wrench/reftests/split/reftest.list +++ b/wrench/reftests/split/reftest.list @@ -9,3 +9,6 @@ #== cross.yaml cross-ref.yaml #TODO: investigate sub-pixel differences == ordering.yaml ordering-ref.yaml fuzzy(1,20) == near-plane.yaml near-plane.png +# Note: on windows the image is rendered at a slightly different spot. +# similarly, a lot of tests in "transform" are non-windows. TODO: investigate +platform(linux,mac) fuzzy(1,20) == same-plane.yaml same-plane.png diff --git a/wrench/reftests/split/same-plane.png b/wrench/reftests/split/same-plane.png new file mode 100644 index 0000000000..13b3419a39 Binary files /dev/null and b/wrench/reftests/split/same-plane.png differ diff --git a/wrench/reftests/split/same-plane.yaml b/wrench/reftests/split/same-plane.yaml new file mode 100644 index 0000000000..d797354715 --- /dev/null +++ b/wrench/reftests/split/same-plane.yaml @@ -0,0 +1,33 @@ +# This test has a number of rectangles placed on the same transformed preserve3d plane. +# The expected result is that the rectangles are rendered in the order they are listed. +# This can fail if the primitives are considered outside of the main plane due +# to floating point precision issues in plane-splitting and transformation. +--- +root: + items: + - + type: "stacking-context" + transform: rotate-y(30) rotate-x(75) translate(-100, 100, 0) + transform-style: preserve-3d + perspective: 400 + items: + - + bounds: [0, 0, 450, 300] + type: rect + color: 0 255 0 1.0000 + - type: stacking-context + bounds: [0, 0, 600, 600] + transform: translate(200, 0, 0) + items: + - + bounds: [-200, 0, 150, 300] + type: rect + color: 255 0 0 1.0000 + - type: stacking-context + bounds: [0, 0, 600, 600] + transform: rotate-z(90) + items: + - + bounds: [0, 200, 150, 200] + type: rect + color: 0 0 255 1.0000