Source code

Revision control

Copy as Markdown

Other Tools

# 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-style: preserve-3d
transform: rotate-y(-30) rotate-x(-75) translate(-100, 100, 0)
items:
- type: "stacking-context"
perspective: 400
transform-style: preserve-3d
items:
- type: rect
bounds: [0, 0, 450, 300]
color: 0 255 0 1.0000
- type: stacking-context
bounds: [0, 0, 600, 600]
transform: translate(200, 0, 0)
items:
- type: rect
bounds: [-200, 0, 150, 300]
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