Revision control

++ // Copyright (C) 2020 The Qt Company Ltd.
++ // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
++
++ import QtQuick3D
++ import QtQuick
++
++ // There are three monkey things here, with two spheres on top.
++ // The left sphere uses mip level 0 and just colorizes a bit.
++ // The right sphere samples a different mip level (SCREEN_MIP_TEXTURE).
++
++ Rectangle {
++ width: 400
++ height: 400
++ color: "#444845"
++
++ View3D {
++ id: v3d
++ anchors.fill: parent
++
++ // environment: SceneEnvironment {
++ // clearColor: "#444845"
++ // backgroundMode: SceneEnvironment.Color
++ // }
++
++ camera: PerspectiveCamera {
++ id: camera
++ position: Qt.vector3d(0, 0, 600)
++ }
++
++ DirectionalLight {
++ position: Qt.vector3d(-500, 500, -100)
++ ambientColor: Qt.rgba(0.1, 0.1, 0.1, 1.0)
++ }
++
++ Model {
++ source: "#Rectangle"
++ y: -200
++ scale: Qt.vector3d(5, 5, 5)
++ eulerRotation.x: -90
++ materials: [
++ CustomMaterial {
++ shadingMode: CustomMaterial.Shaded
++ vertexShader: "customdiffusespecular.vert"
++ fragmentShader: "customdiffuse.frag"
++ property real uTime: 0.0
++ property real uAmplitude: 0.0
++ property color uDiffuse: "white"
++ property real uShininess: 50
++ }
++ ]
++ }
++
++ Model {
++ source: "../shared/models/monkey_object.mesh"
++ scale: Qt.vector3d(80, 80, 80)
++ eulerRotation.y: 90
++ x: -200
++ materials: [
++ CustomMaterial {
++ fragmentShader: "worldnormal.frag"
++ cullMode: CustomMaterial.NoCulling
++ }
++ ]
++ }
++
++ Model {
++ source: "../shared/models/monkey_object.mesh"
++ scale: Qt.vector3d(80, 80, 80)
++ eulerRotation.y: 90
++ materials: [
++ CustomMaterial {
++ fragmentShader: "worldnormal.frag"
++ cullMode: CustomMaterial.NoCulling
++ }
++ ]
++ }
++
++ Model {
++ source: "../shared/models/monkey_object.mesh"
++ scale: Qt.vector3d(80, 80, 80)
++ eulerRotation.y: 90
++ x: 200
++ materials: [
++ CustomMaterial {
++ fragmentShader: "worldnormal.frag"
++ cullMode: CustomMaterial.NoCulling
++ }
++ ]
++ }
++
++ Model {
++ source: "#Sphere"
++ scale: Qt.vector3d(4, 4, 4)
++ z: 100
++ x: -200
++ materials: [
++ CustomMaterial {
++ shadingMode: CustomMaterial.Shaded
++ sourceBlend: CustomMaterial.SrcAlpha
++ destinationBlend: CustomMaterial.OneMinusSrcAlpha
++ fragmentShader: "customscreenmiptexture.frag"
++ property real mipLevel: 0
++ }
++ ]
++ }
++
++ Model {
++ source: "#Sphere"
++ scale: Qt.vector3d(4, 4, 4)
++ z: 100
++ x: 200
++ materials: [
++ CustomMaterial {
++ shadingMode: CustomMaterial.Shaded
++ sourceBlend: CustomMaterial.SrcAlpha
++ destinationBlend: CustomMaterial.OneMinusSrcAlpha
++ fragmentShader: "customscreenmiptexture.frag"
++ property real mipLevel: 3
++ }
++ ]
++ }
++ }
++ }