blob: cf3f68db8c3c7b863536f68c68cb421ed502fc83 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
// Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
import QtQuick 2.2
import SceneGraphTest 1.0
/*
The purpose of the test is to verify that a batch of more than 64K
vertices gets split into multiple drawsets and still rendered correctly.
Both the clipped and unclipped batches have 50.000 rectangles resulting
in 200.000 vertices in each batch, which should be plenty..
#samples: 8
PixelPos R G B Error-tolerance
#base: 0 0 1.0 0.0 0.0 0.0
#base: 99 199 1.0 0.0 0.0 0.0
#base: 100 0 0.0 0.0 0.0 0.0
#base: 199 199 0.0 0.0 0.0 0.0
#final: 0 0 0.0 0.0 1.0 0.0
#final: 99 199 0.0 0.0 1.0 0.0
#final: 100 0 0.0 1.0 0.0 0.0
#final: 199 199 0.0 1.0 0.0 0.0
*/
RenderTestBase
{
id: root
Column {
id: clipped
width: 100
clip: true
PerPixelRect { width: 100; height: 250; color: "red" }
PerPixelRect { width: 100; height: 250; color: "blue" }
}
Column {
id: unclipped
x: 100
width: 100
PerPixelRect { width: 100; height: 250; color: "black" }
PerPixelRect { width: 100; height: 250; color: "#00ff00" }
}
SequentialAnimation {
id: animation
NumberAnimation { target: clipped; property: "y"; from: 0; to: -clipped.height + root.height; duration: 100 }
NumberAnimation { target: unclipped; property: "y"; from: 0; to: -unclipped.height + root.height; duration: 100 }
PropertyAction { target: root; property: "finalStageComplete"; value: true; }
}
onEnterFinalStage: {
animation.running = true;
}
}
|