summaryrefslogtreecommitdiffstats
path: root/src/Runtime/ogl-runtime/res/effectlib/wireframeCM.glsllib
diff options
context:
space:
mode:
Diffstat (limited to 'src/Runtime/ogl-runtime/res/effectlib/wireframeCM.glsllib')
m---------src/Runtime/ogl-runtime0
-rw-r--r--src/Runtime/ogl-runtime/res/effectlib/wireframeCM.glsllib169
2 files changed, 0 insertions, 169 deletions
diff --git a/src/Runtime/ogl-runtime b/src/Runtime/ogl-runtime
new file mode 160000
+Subproject 2025912174c4cf99270b7439ec3b021e1d089ae
diff --git a/src/Runtime/ogl-runtime/res/effectlib/wireframeCM.glsllib b/src/Runtime/ogl-runtime/res/effectlib/wireframeCM.glsllib
deleted file mode 100644
index fcbf7e9f..00000000
--- a/src/Runtime/ogl-runtime/res/effectlib/wireframeCM.glsllib
+++ /dev/null
@@ -1,169 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2014 NVIDIA Corporation.
-** Copyright (C) 2017 The Qt Company Ltd.
-** Contact: https://www.qt.io/licensing/
-**
-** This file is part of Qt 3D Studio.
-**
-** $QT_BEGIN_LICENSE:GPL$
-** 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.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU
-** General Public License version 3 or (at your option) any later version
-** approved by the KDE Free Qt Foundation. The licenses are as published by
-** the Free Software Foundation and appearing in the file LICENSE.GPL3
-** included in the packaging of this file. Please review the following
-** information to ensure the GNU General Public License requirements will
-** be met: https://www.gnu.org/licenses/gpl-3.0.html.
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#ifndef WIREFRAME_CM_GLSLLIB
-#define WIREFRAME_CM_GLSLLIB
-
-#ifdef GL_ES
-precision highp float;
-precision highp int;
-#endif
-
-#if (TESSELLATION_EVALUATION_SHADER == 1)
-#define VARYING_NAME(varyingName) varyingName##TE
-#else
-#define VARYING_NAME(varyingName) varyingName##VX
-#endif
-
-attribute vec3 VARYING_NAME(varNormal)[];
-attribute vec3 VARYING_NAME(varObjPos)[];
-
-varying vec3 varNormal;
-varying vec3 varObjPos;
-
-#if QT3DS_ENABLE_UV0
-attribute vec3 VARYING_NAME(varTexCoord0)[];
-varying vec3 varTexCoord0;
-#endif
-
-#if QT3DS_ENABLE_TEXTAN
-attribute vec3 VARYING_NAME(varTangent)[];
-attribute vec3 VARYING_NAME(varObjTangent)[];
-varying vec3 varTangent;
-varying vec3 varObjTangent;
-#endif
-
-#if QT3DS_ENABLE_BINORMAL
-attribute vec3 VARYING_NAME(varBinormal)[];
-attribute vec3 VARYING_NAME(varObjBinormal)[];
-varying vec3 varBinormal;
-varying vec3 varObjBinormal;
-#endif
-
-#if QT3DS_ENABLE_WORLD_POSITION
-attribute vec3 VARYING_NAME(varWorldPos)[];
-varying vec3 varWorldPos;
-#endif
-
-varying vec3 varEdgeDistance;
-
-uniform mat4 viewport_matrix;
-
-layout (triangles) in;
-layout (triangle_strip, max_vertices = 3) out;
-
-void main()
-{
- // how this all work see http://developer.download.nvidia.com/SDK/10.5/direct3d/Source/SolidWireframe/Doc/SolidWireframe.pdf
- // project points to screen space
- vec3 p0 = vec3(viewport_matrix * (gl_in[0].gl_Position / gl_in[0].gl_Position.w));
- vec3 p1 = vec3(viewport_matrix * (gl_in[1].gl_Position / gl_in[1].gl_Position.w));
- vec3 p2 = vec3(viewport_matrix * (gl_in[2].gl_Position / gl_in[2].gl_Position.w));
- // compute triangle heights
- float e1 = length(p1 - p2);
- float e2 = length(p2 - p0);
- float e3 = length(p1 - p0);
- float alpha = acos( (e2*e2 + e3*e3 - e1*e1) / (2.0*e2*e3) );
- float beta = acos( (e1*e1 + e3*e3 - e2*e2) / (2.0*e1*e3) );
- float ha = abs( e3 * sin( beta ) );
- float hb = abs( e3 * sin( alpha ) );
- float hc = abs( e2 * sin( alpha ) );
-
-
- // vertex 0
- varEdgeDistance = vec3(ha*gl_in[0].gl_Position.w, 0.0, 0.0);
- varNormal = VARYING_NAME(varNormal)[0];
- varObjPos = VARYING_NAME(varObjPos)[0];
-#if QT3DS_ENABLE_UV0
- varTexCoord0 = VARYING_NAME(varTexCoord0)[0];
-#endif
-#if QT3DS_ENABLE_TEXTAN
- varTangent = VARYING_NAME(varTangent)[0];
- varObjTangent = VARYING_NAME(varObjTangent)[0];
-#endif
-#if QT3DS_ENABLE_BINORMAL
- varBinormal = VARYING_NAME(varBinormal)[0];
- varObjBinormal = VARYING_NAME(varObjBinormal)[0];
-#endif
-#if QT3DS_ENABLE_WORLD_POSITION
- varWorldPos = VARYING_NAME(varWorldPos)[0];
-#endif
-
- gl_Position = gl_in[0].gl_Position;
- EmitVertex();
-
- // vertex 1
- varEdgeDistance = vec3(0.0, hb*gl_in[1].gl_Position.w, 0.0);
- varNormal = VARYING_NAME(varNormal)[1];
- varObjPos = VARYING_NAME(varObjPos)[1];
-#if QT3DS_ENABLE_UV0
- varTexCoord0 = VARYING_NAME(varTexCoord0)[1];
-#endif
-#if QT3DS_ENABLE_TEXTAN
- varTangent = VARYING_NAME(varTangent)[1];
- varObjTangent = VARYING_NAME(varObjTangent)[1];
-#endif
-#if QT3DS_ENABLE_BINORMAL
- varBinormal = VARYING_NAME(varBinormal)[1];
- varObjBinormal = VARYING_NAME(varObjBinormal)[1];
-#endif
-#if QT3DS_ENABLE_WORLD_POSITION
- varWorldPos = VARYING_NAME(varWorldPos)[1];
-#endif
-
- gl_Position = gl_in[1].gl_Position;
- EmitVertex();
-
- // vertex 2
- varEdgeDistance = vec3(0.0, 0.0, hc*gl_in[2].gl_Position.w);
- varNormal = VARYING_NAME(varNormal)[2];
- varObjPos = VARYING_NAME(varObjPos)[2];
-#if QT3DS_ENABLE_UV0
- varTexCoord0 = VARYING_NAME(varTexCoord0)[2];
-#endif
-#if QT3DS_ENABLE_TEXTAN
- varTangent = VARYING_NAME(varTangent)[2];
- varObjTangent = VARYING_NAME(varObjTangent)[2];
-#endif
-#if QT3DS_ENABLE_BINORMAL
- varBinormal = VARYING_NAME(varBinormal)[2];
- varObjBinormal = VARYING_NAME(varObjBinormal)[2];
-#endif
-#if QT3DS_ENABLE_WORLD_POSITION
- varWorldPos = VARYING_NAME(varWorldPos)[2];
-#endif
-
- gl_Position = gl_in[2].gl_Position;
- EmitVertex();
-
- EndPrimitive();
-}
-
-#endif