diff options
author | Robert Brock <robert.brock@kdab.com> | 2016-05-09 12:23:17 +0100 |
---|---|---|
committer | Sean Harmer <sean.harmer@kdab.com> | 2016-05-15 13:45:22 +0000 |
commit | f9565161e3c3c09a0c99abb5254c394c16718700 (patch) | |
tree | 1bacbb256125bcbf6041333f6ed842885a99d8d3 /examples | |
parent | 9c6230517492b77cc594aef283433c2300467fa2 (diff) |
Moved transparency-qml example to manual test
Part of an examples cleanup
Change-Id: I44b7a843a7b32ef03857df9b19fde71d990785d8
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'examples')
-rw-r--r-- | examples/qt3d/qt3d.pro | 1 | ||||
-rw-r--r-- | examples/qt3d/transparency-qml/main.cpp | 63 | ||||
-rw-r--r-- | examples/qt3d/transparency-qml/main.qml | 220 | ||||
-rw-r--r-- | examples/qt3d/transparency-qml/phongalpha.frag | 43 | ||||
-rw-r--r-- | examples/qt3d/transparency-qml/phongalpha.vert | 17 | ||||
-rw-r--r-- | examples/qt3d/transparency-qml/transparency-qml.pro | 10 | ||||
-rw-r--r-- | examples/qt3d/transparency-qml/transparency-qml.qrc | 7 |
7 files changed, 0 insertions, 361 deletions
diff --git a/examples/qt3d/qt3d.pro b/examples/qt3d/qt3d.pro index 1694a6278..c3595fbd5 100644 --- a/examples/qt3d/qt3d.pro +++ b/examples/qt3d/qt3d.pro @@ -13,7 +13,6 @@ SUBDIRS += \ controls \ anaglyph-rendering \ planets-qml \ - transparency-qml \ transparency-qml-scene3d \ instanced-arrays-qml \ lights \ diff --git a/examples/qt3d/transparency-qml/main.cpp b/examples/qt3d/transparency-qml/main.cpp deleted file mode 100644 index 41d2f08a5..000000000 --- a/examples/qt3d/transparency-qml/main.cpp +++ /dev/null @@ -1,63 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the Qt3D module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** BSD License Usage -** Alternatively, you may use this file under the terms of the BSD license -** as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of The Qt Company Ltd nor the names of its -** contributors may be used to endorse or promote products derived -** from this software without specific prior written permission. -** -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include <Qt3DQuickExtras/qt3dquickwindow.h> -#include <QGuiApplication> - -int main(int argc, char* argv[]) -{ - QGuiApplication app(argc, argv); - Qt3DExtras::Quick::Qt3DQuickWindow view; - - view.setSource(QUrl("qrc:/main.qml")); - view.show(); - - return app.exec(); -} diff --git a/examples/qt3d/transparency-qml/main.qml b/examples/qt3d/transparency-qml/main.qml deleted file mode 100644 index 2a45b22c8..000000000 --- a/examples/qt3d/transparency-qml/main.qml +++ /dev/null @@ -1,220 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the Qt3D module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** BSD License Usage -** Alternatively, you may use this file under the terms of the BSD license -** as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of The Qt Company Ltd nor the names of its -** contributors may be used to endorse or promote products derived -** from this software without specific prior written permission. -** -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -import Qt3D.Core 2.0 -import Qt3D.Render 2.0 -import Qt3D.Input 2.0 -import Qt3D.Extras 2.0 -import QtQuick 2.4 as QQ2 - -Entity { - id: sceneRoot - - Camera { - id: camera - projectionType: CameraLens.PerspectiveProjection - fieldOfView: 45 - aspectRatio: 800/600 - nearPlane : 0.1 - farPlane : 1000.0 - position: Qt.vector3d( 0.0, 0.0, 40.0 ) - upVector: Qt.vector3d( 0.0, 1.0, 0.0 ) - viewCenter: Qt.vector3d( 0.0, 0.0, 0.0 ) - } - - FirstPersonCameraController { camera: camera } - - components: [ - RenderSettings { - activeFrameGraph: ForwardRenderer{ - camera: camera - clearColor: Qt.rgba(0.0, 0.5, 1, 1) - } - }, - // Event Source will be set by the Qt3DQuickWindow - InputSettings { } - ] - - TorusMesh { - id: torusMesh - radius: 5 - minorRadius: 1 - rings: 100 - slices: 20 - } - - SphereMesh { - id: sphereMesh - radius: 3 - } - - Transform { - id: sphereTransform - translation: Qt.vector3d(10, 0, 0) - } - - Transform { - id: cylinderTransform - translation: Qt.vector3d(-10, 0, 0) - } - - Entity { - id: torusEntity - components: [ torusMesh, phongMaterial ] - } - - Entity { - id: sphereEntity - components: [ sphereMesh, alphaMaterial, sphereTransform ] - } - - Entity { - id: cylinderEntity - components: [ sphereMesh, alphaMaterial, cylinderTransform ] - } - - Material - { - id: alphaMaterial - - property real alpha: 0.5 - - QQ2.NumberAnimation { - duration: 2000 - loops: QQ2.Animation.Infinite - target: alphaMaterial - property: "alpha" - from: 0.0 - to: 1.0 - running: true - } - - effect: Effect { - FilterKey { - id: forward - name: "renderingStyle" - value: "forward" - } - - parameters: [ - Parameter { name: "alpha"; value: alphaMaterial.alpha }, - Parameter { name: "ka"; value: "black" }, - Parameter { name: "kd"; value: "blue" }, - Parameter { name: "ks"; value: "white" }, - Parameter { name: "shininess"; value: 75.0 }, - Parameter { name: "lightPosition"; value: Qt.vector4d(1.0, 1.0, 0.0, 1.0) }, - Parameter { name: "lightIntensity"; value: Qt.vector3d(1.0, 1.0, 1.0) } - ] - - ShaderProgram { - id: alphaPhong - vertexShaderCode: loadSource("qrc:/phongalpha.vert") - fragmentShaderCode: loadSource("qrc:/phongalpha.frag") - } - - techniques: [ - Technique - { - filterKeys: [ forward ] - graphicsApiFilter { - api: GraphicsApiFilter.OpenGL - profile: GraphicsApiFilter.NoProfile - majorVersion: 2 - minorVersion: 0 - } - - renderPasses: RenderPass { - renderStates: [ - CullFace { mode : CullFace.Back }, - DepthTest { depthFunction: DepthTest.Less }, - NoDepthMask { }, - BlendEquationArguments { - sourceRgb: BlendEquationArguments.SourceAlpha - destinationRgb: BlendEquationArguments.OneMinusSourceAlpha - } - ,BlendEquation {blendFunction: BlendEquation.Add} - ] - - shaderProgram: alphaPhong - } - }, - Technique - { - filterKeys: [ forward ] - graphicsApiFilter { - api: GraphicsApiFilter.OpenGLES - profile: GraphicsApiFilter.NoProfile - majorVersion: 2 - minorVersion: 0 - } - - renderPasses: RenderPass { - renderStates: [ - CullFace { mode : CullFace.Back }, - DepthTest { depthFunction: DepthTest.Less }, - NoDepthMask { }, - BlendEquationArguments { - sourceRgb: BlendEquationArguments.SourceAlpha - destinationRgb: BlendEquationArguments.OneMinusSourceAlpha - } - ,BlendEquation {blendFunction: BlendEquation.Add} - ] - - shaderProgram: alphaPhong - } - } - ] - } - } - - PhongMaterial { - id: phongMaterial - } -} diff --git a/examples/qt3d/transparency-qml/phongalpha.frag b/examples/qt3d/transparency-qml/phongalpha.frag deleted file mode 100644 index 11d4ef0d9..000000000 --- a/examples/qt3d/transparency-qml/phongalpha.frag +++ /dev/null @@ -1,43 +0,0 @@ -#define FP highp - -uniform FP vec4 lightPosition; -uniform FP vec3 lightIntensity; - -// TODO: Replace with a struct -uniform FP vec3 ka; // Ambient reflectivity -uniform FP vec3 kd; // Diffuse reflectivity -uniform FP vec3 ks; // Specular reflectivity -uniform FP float shininess; // Specular shininess factor -uniform FP float alpha; - -varying FP vec3 position; -varying FP vec3 normal; - -FP vec3 adsModel( const FP vec3 pos, const FP vec3 n ) -{ - // Calculate the vector from the light to the fragment - FP vec3 s = normalize( vec3( lightPosition ) - pos ); - - // Calculate the vector from the fragment to the eye position - // (origin since this is in "eye" or "camera" space) - FP vec3 v = normalize( -pos ); - - // Reflect the light beam using the normal at this fragment - FP vec3 r = reflect( -s, n ); - - // Calculate the diffuse component - FP float diffuse = max( dot( s, n ), 0.0 ); - - // Calculate the specular component - FP float specular = 0.0; - if ( dot( s, n ) > 0.0 ) - specular = pow( max( dot( r, v ), 0.0 ), shininess ); - - // Combine the ambient, diffuse and specular contributions - return lightIntensity * ( ka + kd * diffuse + ks * specular ); -} - -void main() -{ - gl_FragColor = vec4( adsModel( position, normalize( normal ) ), alpha ); -} diff --git a/examples/qt3d/transparency-qml/phongalpha.vert b/examples/qt3d/transparency-qml/phongalpha.vert deleted file mode 100644 index 03a416213..000000000 --- a/examples/qt3d/transparency-qml/phongalpha.vert +++ /dev/null @@ -1,17 +0,0 @@ -attribute vec3 vertexPosition; -attribute vec3 vertexNormal; - -varying vec3 position; -varying vec3 normal; - -uniform mat4 modelView; -uniform mat3 modelViewNormal; -uniform mat4 mvp; - -void main() -{ - normal = normalize( modelViewNormal * vertexNormal ); - position = vec3( modelView * vec4( vertexPosition, 1.0 ) ); - - gl_Position = mvp * vec4( vertexPosition, 1.0 ); -} diff --git a/examples/qt3d/transparency-qml/transparency-qml.pro b/examples/qt3d/transparency-qml/transparency-qml.pro deleted file mode 100644 index 273e31546..000000000 --- a/examples/qt3d/transparency-qml/transparency-qml.pro +++ /dev/null @@ -1,10 +0,0 @@ -!include( ../examples.pri ) { - error( "Couldn't find the examples.pri file!" ) -} - -QT += qml quick 3dcore 3drender 3dinput 3dquick 3dquickextras - -SOURCES += main.cpp - -RESOURCES += transparency-qml.qrc - diff --git a/examples/qt3d/transparency-qml/transparency-qml.qrc b/examples/qt3d/transparency-qml/transparency-qml.qrc deleted file mode 100644 index bf9772dfa..000000000 --- a/examples/qt3d/transparency-qml/transparency-qml.qrc +++ /dev/null @@ -1,7 +0,0 @@ -<RCC> - <qresource prefix="/"> - <file>main.qml</file> - <file>phongalpha.vert</file> - <file>phongalpha.frag</file> - </qresource> -</RCC> |