Commit ae189aa4 authored by Jonas Karlsson's avatar Jonas Karlsson
Browse files

Add quick3d lights benchmark

parent 38f87e15
import QtQuick
import QtQuick3D
import QmlBench
Benchmark {
id: root;
count: 1; // Unused
staticCount: 1; // Unused
width: 1280
height: 720
visible: true
View3D {
anchors.fill: parent
environment: SceneEnvironment {
clearColor: "#808080"
backgroundMode: SceneEnvironment.Color
antialiasingMode: SceneEnvironment.MSAA
antialiasingQuality: SceneEnvironment.High
}
PerspectiveCamera {
position: Qt.vector3d(0, 400, 600)
eulerRotation.x: -30
clipFar: 2000
}
DirectionalLight {
id: light1
color: Qt.rgba(1.0, 0.1, 0.1, 1.0)
ambientColor: Qt.rgba(0.1, 0.1, 0.1, 1.0)
position: Qt.vector3d(0, 200, 0)
rotation: Quaternion.fromEulerAngles(-135, -90, 0)
shadowMapQuality: Light.ShadowMapQualityHigh
visible: true
castsShadow: true
brightness: 0.5
SequentialAnimation on rotation {
loops: Animation.Infinite
QuaternionAnimation {
to: Quaternion.fromEulerAngles(-45, -90, 0)
duration: 2000
easing.type: Easing.InOutQuad
}
QuaternionAnimation {
to: Quaternion.fromEulerAngles(-135, -90, 0)
duration: 2000
easing.type: Easing.InOutQuad
}
}
}
PointLight {
id: light2
color: Qt.rgba(0.1, 1.0, 0.1, 1.0)
ambientColor: Qt.rgba(0.1, 0.1, 0.1, 1.0)
position: Qt.vector3d(0, 300, 0)
shadowMapFar: 2000
shadowMapQuality: Light.ShadowMapQualityHigh
visible: true
castsShadow: true
brightness: 0.5
SequentialAnimation on x {
loops: Animation.Infinite
NumberAnimation {
to: 400
duration: 2000
easing.type: Easing.InOutQuad
}
NumberAnimation {
to: 0
duration: 2000
easing.type: Easing.InOutQuad
}
}
}
PointLight {
id: light3
color: Qt.rgba(0.1, 1.0, 0.1, 1.0)
ambientColor: Qt.rgba(0.1, 0.1, 0.1, 1.0)
position: Qt.vector3d(0, 300, 0)
shadowMapFar: 2000
shadowMapQuality: Light.ShadowMapQualityHigh
visible: true
castsShadow: true
brightness: 0.5
SequentialAnimation on x {
loops: Animation.Infinite
NumberAnimation {
to: -400
duration: 2000
easing.type: Easing.InOutQuad
}
NumberAnimation {
to: 0
duration: 2000
easing.type: Easing.InOutQuad
}
}
}
PointLight {
id: light2b
color: Qt.rgba(0.1, 1.0, 0.1, 1.0)
ambientColor: Qt.rgba(0.1, 0.1, 0.1, 1.0)
position: Qt.vector3d(0, 300, 0)
shadowMapFar: 2000
shadowMapQuality: Light.ShadowMapQualityHigh
visible: true
castsShadow: true
brightness: 0.5
SequentialAnimation on z {
loops: Animation.Infinite
NumberAnimation {
to: 400
duration: 2000
easing.type: Easing.InOutQuad
}
NumberAnimation {
to: 0
duration: 2000
easing.type: Easing.InOutQuad
}
}
}
PointLight {
id: light3b
color: Qt.rgba(0.1, 1.0, 0.1, 1.0)
ambientColor: Qt.rgba(0.1, 0.1, 0.1, 1.0)
position: Qt.vector3d(0, 300, 0)
shadowMapFar: 2000
shadowMapQuality: Light.ShadowMapQualityHigh
visible: true
castsShadow: true
brightness: 0.5
SequentialAnimation on z {
loops: Animation.Infinite
NumberAnimation {
to: -400
duration: 2000
easing.type: Easing.InOutQuad
}
NumberAnimation {
to: 0
duration: 2000
easing.type: Easing.InOutQuad
}
}
}
SpotLight {
id: light4
color: Qt.rgba(1.0, 0.9, 0.7, 1.0)
ambientColor: Qt.rgba(0.0, 0.0, 0.0, 0.0)
position: Qt.vector3d(0, 250, 0)
eulerRotation.x: -45
shadowMapFar: 2000
shadowMapQuality: Light.ShadowMapQualityHigh
visible: true
castsShadow: true
brightness: 0.5
coneAngle: 50
innerConeAngle: 30
PropertyAnimation on eulerRotation.y {
loops: Animation.Infinite
from: 0
to: -360
duration: 10000
}
}
Model {
source: "#Rectangle"
y: -200
scale: Qt.vector3d(15, 15, 15)
eulerRotation.x: -90
materials: [
DefaultMaterial {
diffuseColor: Qt.rgba(0.8, 0.6, 0.4, 1.0)
}
]
}
Model {
source: "#Rectangle"
z: -400
scale: Qt.vector3d(15, 15, 15)
materials: [
DefaultMaterial {
diffuseColor: Qt.rgba(0.8, 0.8, 0.9, 1.0)
}
]
}
Model {
source: "#Sphere"
scale: Qt.vector3d(3, 3, 3)
materials: [
DefaultMaterial {
diffuseColor: Qt.rgba(0.9, 0.9, 0.9, 1.0)
}
]
}
Model {
source: "#Cube"
position: light1.position
rotation: light1.rotation
property real size: 0.2
scale: Qt.vector3d(size, size, size)
materials: [
DefaultMaterial {
diffuseColor: light1.color
opacity: 0.4
}
]
}
Model {
source: "#Cube"
position: light2.position
rotation: light2.rotation
property real size: 0.2
scale: Qt.vector3d(size, size, size)
materials: [
DefaultMaterial {
diffuseColor: light2.color
opacity: 0.4
}
]
}
Model {
source: "#Cube"
position: light3.position
rotation: light3.rotation
property real size: 0.2
scale: Qt.vector3d(size, size, size)
materials: [
DefaultMaterial {
diffuseColor: light3.color
opacity: 0.4
}
]
}
Model {
source: "#Cube"
position: light2b.position
rotation: light2b.rotation
property real size: 0.2
scale: Qt.vector3d(size, size, size)
materials: [
DefaultMaterial {
diffuseColor: light2b.color
opacity: 0.4
}
]
}
Model {
source: "#Cube"
position: light3b.position
rotation: light3b.rotation
property real size: 0.2
scale: Qt.vector3d(size, size, size)
materials: [
DefaultMaterial {
diffuseColor: light3b.color
opacity: 0.4
}
]
}
Model {
source: "#Cube"
position: light4.position
rotation: light4.rotation
property real size: 0.2
scale: Qt.vector3d(size, size, size)
materials: [
DefaultMaterial {
diffuseColor: light4.color
opacity: 0.4
}
]
}
}
}
\ No newline at end of file
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment