Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Tobias Hunger
qt-creator
Commits
a22fad93
Commit
a22fad93
authored
Nov 29, 2010
by
Rhys Weatherley
Browse files
Update GLSL system library definitions
parent
55bfc274
Changes
6
Hide whitespace changes
Inline
Side-by-side
share/qtcreator/glsl/glsl_120.frag
View file @
a22fad93
/**************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: Nokia Corporation (qt-info@nokia.com)
**
** Commercial Usage
**
** Licensees holding valid Qt Commercial licenses may use this file in
** accordance with the Qt Commercial License Agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Nokia.
**
** GNU Lesser General Public License Usage
**
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 as published by the Free Software
** Foundation and appearing in the file LICENSE.LGPL included in the
** packaging of this file. Please review the following information to
** ensure the GNU Lesser General Public License version 2.1 requirements
** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** If you are unsure which license is appropriate for your use, please
** contact the sales department at http://qt.nokia.com/contact.
**
**************************************************************************/
// Fragment shader special variables.
vec4
gl_FragCoord
;
...
...
@@ -12,3 +40,17 @@ varying vec4 gl_SecondaryColor;
varying
vec4
gl_TexCoord
[];
varying
float
gl_FogFragCoord
;
varying
vec2
gl_PointCoord
;
// Fragment processing functions.
float
dFdx
(
float
p
);
vec2
dFdx
(
vec2
p
);
vec3
dFdx
(
vec3
p
);
vec4
dFdx
(
vec4
p
);
float
dFdy
(
float
p
);
vec2
dFdy
(
vec2
p
);
vec3
dFdy
(
vec3
p
);
vec4
dFdy
(
vec4
p
);
float
fwidth
(
float
p
);
vec2
fwidth
(
vec2
p
);
vec3
fwidth
(
vec3
p
);
vec4
fwidth
(
vec4
p
);
share/qtcreator/glsl/glsl_120.vert
View file @
a22fad93
/**************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: Nokia Corporation (qt-info@nokia.com)
**
** Commercial Usage
**
** Licensees holding valid Qt Commercial licenses may use this file in
** accordance with the Qt Commercial License Agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Nokia.
**
** GNU Lesser General Public License Usage
**
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 as published by the Free Software
** Foundation and appearing in the file LICENSE.LGPL included in the
** packaging of this file. Please review the following information to
** ensure the GNU Lesser General Public License version 2.1 requirements
** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** If you are unsure which license is appropriate for your use, please
** contact the sales department at http://qt.nokia.com/contact.
**
**************************************************************************/
// Vertex shader special variables.
vec4
gl_Position
;
...
...
@@ -29,3 +57,18 @@ varying float gl_FogFragCoord;
// Common functions.
vec4
ftransform
();
// Texture level-of-detail functions.
vec4
texture1DLod
(
sampler1D
sampler
,
float
coord
,
float
lod
);
vec4
texture1DProjLod
(
sampler1D
sampler
,
vec2
coord
,
float
lod
);
vec4
texture1DProjLod
(
sampler1D
sampler
,
vec4
coord
,
float
lod
);
vec4
texture2DLod
(
sampler2D
sampler
,
vec2
coord
,
float
lod
);
vec4
texture2DProjLod
(
sampler2D
sampler
,
vec3
coord
,
float
lod
);
vec4
texture2DProjLod
(
sampler2D
sampler
,
vec4
coord
,
float
lod
);
vec4
texture3DLod
(
sampler3D
sampler
,
vec3
coord
,
float
lod
);
vec4
texture3DProjLod
(
sampler3D
sampler
,
vec4
coord
,
float
lod
);
vec4
textureCubeLod
(
samplerCube
sampler
,
vec3
coord
,
float
lod
);
vec4
shadow1DLod
(
sampler1DShadow
sampler
,
vec3
coord
,
float
lod
);
vec4
shadow2DLod
(
sampler2DShadow
sampler
,
vec3
coord
,
float
lod
);
vec4
shadow1DProjLod
(
sampler1DShadow
sampler
,
vec4
coord
,
float
lod
);
vec4
shadow2DProjLod
(
sampler2DShadow
sampler
,
vec4
coord
,
float
lod
);
share/qtcreator/glsl/glsl_120_common.glsl
View file @
a22fad93
/**************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: Nokia Corporation (qt-info@nokia.com)
**
** Commercial Usage
**
** Licensees holding valid Qt Commercial licenses may use this file in
** accordance with the Qt Commercial License Agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Nokia.
**
** GNU Lesser General Public License Usage
**
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 as published by the Free Software
** Foundation and appearing in the file LICENSE.LGPL included in the
** packaging of this file. Please review the following information to
** ensure the GNU Lesser General Public License version 2.1 requirements
** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** If you are unsure which license is appropriate for your use, please
** contact the sales department at http://qt.nokia.com/contact.
**
**************************************************************************/
// Built-in constants.
const
int
gl_MaxLights
=
8
;
...
...
@@ -122,53 +150,181 @@ struct gl_FogParameters {
uniform
gl_FogParameters
gl_Fog
;
// Angle and trigonometry functions.
genType
radians
(
genType
degress
);
genType
degrees
(
genType
radians
);
genType
sin
(
genType
angle
);
genType
cos
(
genType
angle
);
genType
tan
(
genType
angle
);
genType
asin
(
genType
x
);
genType
acos
(
genType
x
);
genType
atan
(
genType
y
,
genType
x
);
genType
atan
(
genType
y_over_x
);
float
radians
(
float
degress
);
vec2
radians
(
vec2
degress
);
vec3
radians
(
vec3
degress
);
vec4
radians
(
vec4
degress
);
float
degrees
(
float
radians
);
vec2
degrees
(
vec2
radians
);
vec3
degrees
(
vec3
radians
);
vec4
degrees
(
vec4
radians
);
float
sin
(
float
angle
);
vec2
sin
(
vec2
angle
);
vec3
sin
(
vec3
angle
);
vec4
sin
(
vec4
angle
);
float
cos
(
float
angle
);
vec2
cos
(
vec2
angle
);
vec3
cos
(
vec3
angle
);
vec4
cos
(
vec4
angle
);
float
tan
(
float
angle
);
vec2
tan
(
vec2
angle
);
vec3
tan
(
vec3
angle
);
vec4
tan
(
vec4
angle
);
float
asin
(
float
x
);
vec2
asin
(
vec2
x
);
vec3
asin
(
vec3
x
);
vec4
asin
(
vec4
x
);
float
acos
(
float
x
);
vec2
acos
(
vec2
x
);
vec3
acos
(
vec3
x
);
vec4
acos
(
vec4
x
);
float
atan
(
float
y
,
float
x
);
vec2
atan
(
vec2
y
,
vec2
x
);
vec3
atan
(
vec3
y
,
vec3
x
);
vec4
atan
(
vec4
y
,
vec4
x
);
float
atan
(
float
y_over_x
);
vec2
atan
(
vec2
y_over_x
);
vec3
atan
(
vec3
y_over_x
);
vec4
atan
(
vec4
y_over_x
);
// Exponential functions.
genType
pow
(
genType
x
,
genType
y
);
genType
exp
(
genType
x
);
genType
log
(
genType
x
);
genType
exp2
(
genType
x
);
genType
log2
(
genType
x
);
genType
sqrt
(
genType
x
);
genType
inversesqrt
(
genType
x
);
float
pow
(
float
x
,
float
y
);
vec2
pow
(
vec2
x
,
vec2
y
);
vec3
pow
(
vec3
x
,
vec3
y
);
vec4
pow
(
vec4
x
,
vec4
y
);
float
exp
(
float
x
);
vec2
exp
(
vec2
x
);
vec3
exp
(
vec3
x
);
vec4
exp
(
vec4
x
);
float
log
(
float
x
);
vec2
log
(
vec2
x
);
vec3
log
(
vec3
x
);
vec4
log
(
vec4
x
);
float
exp2
(
float
x
);
vec2
exp2
(
vec2
x
);
vec3
exp2
(
vec3
x
);
vec4
exp2
(
vec4
x
);
float
log2
(
float
x
);
vec2
log2
(
vec2
x
);
vec3
log2
(
vec3
x
);
vec4
log2
(
vec4
x
);
float
sqrt
(
float
x
);
vec2
sqrt
(
vec2
x
);
vec3
sqrt
(
vec3
x
);
vec4
sqrt
(
vec4
x
);
float
inversesqrt
(
float
x
);
vec2
inversesqrt
(
vec2
x
);
vec3
inversesqrt
(
vec3
x
);
vec4
inversesqrt
(
vec4
x
);
// Common functions.
genType
abs
(
genType
x
);
genType
sign
(
genType
x
);
genType
floor
(
genType
x
);
genType
ceil
(
genType
x
);
genType
fract
(
genType
x
);
genType
mod
(
genType
x
,
float
y
);
genType
mod
(
genType
x
,
genType
y
);
genType
min
(
genType
x
,
float
y
);
genType
min
(
genType
x
,
genType
y
);
genType
max
(
genType
x
,
float
y
);
genType
max
(
genType
x
,
genType
y
);
genType
clamp
(
genType
x
,
genType
minVal
,
genType
maxVal
);
genType
clamp
(
genType
x
,
float
minVal
,
float
maxVal
);
genType
mix
(
genType
x
,
genType
y
,
genType
a
);
genType
mix
(
genType
x
,
genType
y
,
float
a
);
genType
step
(
genType
edge
,
genType
x
);
genType
step
(
float
edge
,
genType
x
);
genType
smoothstep
(
genType
edge0
,
genType
edge1
,
genType
x
);
genType
smoothstep
(
float
edge0
,
float
edge1
,
genType
x
);
float
length
(
genType
x
);
float
distance
(
genType
p0
,
genType
p1
);
float
dot
(
genType
x
,
genType
y
);
float
abs
(
float
x
);
vec2
abs
(
vec2
x
);
vec3
abs
(
vec3
x
);
vec4
abs
(
vec4
x
);
float
sign
(
float
x
);
vec2
sign
(
vec2
x
);
vec3
sign
(
vec3
x
);
vec4
sign
(
vec4
x
);
float
floor
(
float
x
);
vec2
floor
(
vec2
x
);
vec3
floor
(
vec3
x
);
vec4
floor
(
vec4
x
);
float
ceil
(
float
x
);
vec2
ceil
(
vec2
x
);
vec3
ceil
(
vec3
x
);
vec4
ceil
(
vec4
x
);
float
fract
(
float
x
);
vec2
fract
(
vec2
x
);
vec3
fract
(
vec3
x
);
vec4
fract
(
vec4
x
);
float
mod
(
float
x
,
float
y
);
vec2
mod
(
vec2
x
,
float
y
);
vec3
mod
(
vec3
x
,
float
y
);
vec4
mod
(
vec4
x
,
float
y
);
float
mod
(
float
x
,
float
y
);
vec2
mod
(
vec2
x
,
vec2
y
);
vec3
mod
(
vec3
x
,
vec3
y
);
vec4
mod
(
vec4
x
,
vec4
y
);
float
min
(
float
x
,
float
y
);
vec2
min
(
vec2
x
,
float
y
);
vec3
min
(
vec3
x
,
float
y
);
vec4
min
(
vec4
x
,
float
y
);
float
min
(
float
x
,
float
y
);
vec2
min
(
vec2
x
,
vec2
y
);
vec3
min
(
vec3
x
,
vec3
y
);
vec4
min
(
vec4
x
,
vec4
y
);
float
max
(
float
x
,
float
y
);
vec2
max
(
vec2
x
,
float
y
);
vec3
max
(
vec3
x
,
float
y
);
vec4
max
(
vec4
x
,
float
y
);
float
max
(
float
x
,
float
y
);
vec2
max
(
vec2
x
,
vec2
y
);
vec3
max
(
vec3
x
,
vec3
y
);
vec4
max
(
vec4
x
,
vec4
y
);
float
clamp
(
float
x
,
float
minVal
,
float
maxVal
);
vec2
clamp
(
vec2
x
,
vec2
minVal
,
vec2
maxVal
);
vec3
clamp
(
vec3
x
,
vec3
minVal
,
vec3
maxVal
);
vec4
clamp
(
vec4
x
,
vec4
minVal
,
vec4
maxVal
);
float
clamp
(
float
x
,
float
minVal
,
float
maxVal
);
vec2
clamp
(
vec2
x
,
float
minVal
,
float
maxVal
);
vec3
clamp
(
vec3
x
,
float
minVal
,
float
maxVal
);
vec4
clamp
(
vec4
x
,
float
minVal
,
float
maxVal
);
float
mix
(
float
x
,
float
y
,
float
a
);
vec2
mix
(
vec2
x
,
vec2
y
,
vec2
a
);
vec3
mix
(
vec3
x
,
vec3
y
,
vec3
a
);
vec4
mix
(
vec4
x
,
vec4
y
,
vec4
a
);
float
mix
(
float
x
,
float
y
,
float
a
);
vec2
mix
(
vec2
x
,
vec2
y
,
float
a
);
vec3
mix
(
vec3
x
,
vec3
y
,
float
a
);
vec4
mix
(
vec4
x
,
vec4
y
,
float
a
);
float
step
(
float
edge
,
float
x
);
vec2
step
(
vec2
edge
,
vec2
x
);
vec3
step
(
vec3
edge
,
vec3
x
);
vec4
step
(
vec4
edge
,
vec4
x
);
float
step
(
float
edge
,
float
x
);
vec2
step
(
float
edge
,
vec2
x
);
vec3
step
(
float
edge
,
vec3
x
);
vec4
step
(
float
edge
,
vec4
x
);
float
smoothstep
(
float
edge0
,
float
edge1
,
float
x
);
vec2
smoothstep
(
vec2
edge0
,
vec2
edge1
,
vec2
x
);
vec3
smoothstep
(
vec3
edge0
,
vec3
edge1
,
vec3
x
);
vec4
smoothstep
(
vec4
edge0
,
vec4
edge1
,
vec4
x
);
float
smoothstep
(
float
edge0
,
float
edge1
,
float
x
);
vec2
smoothstep
(
float
edge0
,
float
edge1
,
vec2
x
);
vec3
smoothstep
(
float
edge0
,
float
edge1
,
vec3
x
);
vec4
smoothstep
(
float
edge0
,
float
edge1
,
vec4
x
);
// Geometric functions.
float
length
(
float
x
);
float
length
(
vec2
x
);
float
length
(
vec3
x
);
float
length
(
vec4
x
);
float
distance
(
float
p0
,
float
p1
);
float
distance
(
vec2
p0
,
vec2
p1
);
float
distance
(
vec3
p0
,
vec3
p1
);
float
distance
(
vec4
p0
,
vec4
p1
);
float
dot
(
float
x
,
float
y
);
float
dot
(
vec2
x
,
vec2
y
);
float
dot
(
vec3
x
,
vec3
y
);
float
dot
(
vec4
x
,
vec4
y
);
vec3
cross
(
vec3
x
,
vec3
y
);
genType
normalize
(
genType
x
);
genType
faceforward
(
genType
N
,
genType
I
,
genType
Nref
);
genType
reflect
(
genType
I
,
genType
N
);
genType
refract
(
genType
I
,
genType
N
,
float
eta
);
float
normalize
(
float
x
);
vec2
normalize
(
vec2
x
);
vec3
normalize
(
vec3
x
);
vec4
normalize
(
vec4
x
);
float
faceforward
(
float
N
,
float
I
,
float
Nref
);
vec2
faceforward
(
vec2
N
,
vec2
I
,
vec2
Nref
);
vec3
faceforward
(
vec3
N
,
vec3
I
,
vec3
Nref
);
vec4
faceforward
(
vec4
N
,
vec4
I
,
vec4
Nref
);
float
reflect
(
float
I
,
float
N
);
vec2
reflect
(
vec2
I
,
vec2
N
);
vec3
reflect
(
vec3
I
,
vec3
N
);
vec4
reflect
(
vec4
I
,
vec4
N
);
float
refract
(
float
I
,
float
N
,
float
eta
);
vec2
refract
(
vec2
I
,
vec2
N
,
float
eta
);
vec3
refract
(
vec3
I
,
vec3
N
,
float
eta
);
vec4
refract
(
vec4
I
,
vec4
N
,
float
eta
);
// Matrix functions.
mat2
matrixCompMult
(
mat2
x
,
mat2
y
);
...
...
@@ -251,3 +407,53 @@ bool all(bvec4 x);
bvec2
not
(
bvec2
x
);
bvec3
not
(
bvec3
x
);
bvec4
not
(
bvec4
x
);
// Texture lookup functions.
vec4
texture1D
(
sampler1D
sampler
,
float
coord
);
vec4
texture1D
(
sampler1D
sampler
,
float
coord
,
float
bias
);
vec4
texture1DProj
(
sampler1D
sampler
,
vec2
coord
);
vec4
texture1DProj
(
sampler1D
sampler
,
vec2
coord
,
float
bias
);
vec4
texture1DProj
(
sampler1D
sampler
,
vec4
coord
);
vec4
texture1DProj
(
sampler1D
sampler
,
vec4
coord
,
float
bias
);
vec4
texture2D
(
sampler2D
sampler
,
vec2
coord
);
vec4
texture2D
(
sampler2D
sampler
,
vec2
coord
,
float
bias
);
vec4
texture2DProj
(
sampler2D
sampler
,
vec3
coord
);
vec4
texture2DProj
(
sampler2D
sampler
,
vec3
coord
,
float
bias
);
vec4
texture2DProj
(
sampler2D
sampler
,
vec4
coord
);
vec4
texture2DProj
(
sampler2D
sampler
,
vec4
coord
,
float
bias
);
vec4
texture3D
(
sampler3D
sampler
,
vec3
coord
);
vec4
texture3D
(
sampler3D
sampler
,
vec3
coord
,
float
bias
);
vec4
texture3DProj
(
sampler3D
sampler
,
vec4
coord
);
vec4
texture3DProj
(
sampler3D
sampler
,
vec4
coord
,
float
bias
);
vec4
textureCube
(
samplerCube
sampler
,
vec3
coord
);
vec4
textureCube
(
samplerCube
sampler
,
vec3
coord
,
float
bias
);
vec4
shadow1D
(
sampler1DShadow
sampler
,
vec3
coord
);
vec4
shadow1D
(
sampler1DShadow
sampler
,
vec3
coord
,
float
bias
);
vec4
shadow2D
(
sampler2DShadow
sampler
,
vec3
coord
);
vec4
shadow2D
(
sampler2DShadow
sampler
,
vec3
coord
,
float
bias
);
vec4
shadow1DProj
(
sampler1DShadow
sampler
,
vec4
coord
);
vec4
shadow1DProj
(
sampler1DShadow
sampler
,
vec4
coord
,
float
bias
);
vec4
shadow2DProj
(
sampler2DShadow
sampler
,
vec4
coord
);
vec4
shadow2DProj
(
sampler2DShadow
sampler
,
vec4
coord
,
float
bias
);
// Noise functions.
float
noise1
(
float
x
);
float
noise1
(
vec2
x
);
float
noise1
(
vec3
x
);
float
noise1
(
vec4
x
);
vec2
noise2
(
float
x
);
vec2
noise2
(
vec2
x
);
vec2
noise2
(
vec3
x
);
vec2
noise2
(
vec4
x
);
vec3
noise3
(
float
x
);
vec3
noise3
(
vec2
x
);
vec3
noise3
(
vec3
x
);
vec3
noise3
(
vec4
x
);
vec4
noise4
(
float
x
);
vec4
noise4
(
vec2
x
);
vec4
noise4
(
vec3
x
);
vec4
noise4
(
vec4
x
);
share/qtcreator/glsl/glsl_es_100.frag
0 → 100644
View file @
a22fad93
/**************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: Nokia Corporation (qt-info@nokia.com)
**
** Commercial Usage
**
** Licensees holding valid Qt Commercial licenses may use this file in
** accordance with the Qt Commercial License Agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Nokia.
**
** GNU Lesser General Public License Usage
**
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 as published by the Free Software
** Foundation and appearing in the file LICENSE.LGPL included in the
** packaging of this file. Please review the following information to
** ensure the GNU Lesser General Public License version 2.1 requirements
** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** If you are unsure which license is appropriate for your use, please
** contact the sales department at http://qt.nokia.com/contact.
**
**************************************************************************/
// Fragment shader special variables.
mediump
vec4
gl_FragCoord
;
bool
gl_FrontFacing
;
mediump
vec4
gl_FragColor
;
mediump
vec4
gl_FragData
[
gl_MaxDrawBuffers
];
mediump
vec2
gl_PointCoord
;
share/qtcreator/glsl/glsl_es_100.vert
0 → 100644
View file @
a22fad93
/**************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: Nokia Corporation (qt-info@nokia.com)
**
** Commercial Usage
**
** Licensees holding valid Qt Commercial licenses may use this file in
** accordance with the Qt Commercial License Agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Nokia.
**
** GNU Lesser General Public License Usage
**
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 as published by the Free Software
** Foundation and appearing in the file LICENSE.LGPL included in the
** packaging of this file. Please review the following information to
** ensure the GNU Lesser General Public License version 2.1 requirements
** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** If you are unsure which license is appropriate for your use, please
** contact the sales department at http://qt.nokia.com/contact.
**
**************************************************************************/
// Vertex shader special variables.
highp
vec4
gl_Position
;
mediump
float
gl_PointSize
;
// Texture level-of-detail functions.
vec4
texture2DLod
(
sampler2D
sampler
,
vec2
coord
,
float
lod
);
vec4
texture2DProjLod
(
sampler2D
sampler
,
vec3
coord
,
float
lod
);
vec4
texture2DProjLod
(
sampler2D
sampler
,
vec4
coord
,
float
lod
);
vec4
textureCubeLod
(
samplerCube
sampler
,
vec3
coord
,
float
lod
);
share/qtcreator/glsl/glsl_es_100_common.glsl
0 → 100644
View file @
a22fad93
/**************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: Nokia Corporation (qt-info@nokia.com)
**
** Commercial Usage
**
** Licensees holding valid Qt Commercial licenses may use this file in
** accordance with the Qt Commercial License Agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Nokia.
**
** GNU Lesser General Public License Usage
**
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 as published by the Free Software
** Foundation and appearing in the file LICENSE.LGPL included in the
** packaging of this file. Please review the following information to
** ensure the GNU Lesser General Public License version 2.1 requirements
** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** If you are unsure which license is appropriate for your use, please
** contact the sales department at http://qt.nokia.com/contact.
**
**************************************************************************/
// Built-in constants.
const
mediump
int
gl_MaxVertexAttribs
=
8
;
const
mediump
int
gl_MaxVertexUniformVectors
=
128
;
const
mediump
int
gl_MaxVaryingVectors
=
8
;
const
mediump
int
gl_MaxVertexTextureImageUnits
=
0
;
const
mediump
int
gl_MaxCombinedTextureImageUnits
=
8
;
const
mediump
int
gl_MaxTextureImageUnits
=
8
;
const
mediump
int
gl_MaxFragmentUniformVectors
=
16
;
const
mediump
int
gl_MaxDrawBuffers
=
1
;
// Built-in uniform state.
struct
gl_DepthRangeParameters
{
highp
float
near
;
highp
float
far
;
highp
float
diff
;
};
uniform
gl_DepthRangeParameters
gl_DepthRange
;
// Angle and trigonometry functions.
float
radians
(
float
degress
);
vec2
radians
(
vec2
degress
);
vec3
radians
(
vec3
degress
);
vec4
radians
(
vec4
degress
);
float
degrees
(
float
radians
);
vec2
degrees
(
vec2
radians
);
vec3
degrees
(
vec3
radians
);
vec4
degrees
(
vec4
radians
);
float
sin
(
float
angle
);
vec2
sin
(
vec2
angle
);
vec3
sin
(
vec3
angle
);
vec4
sin
(
vec4
angle
);
float
cos
(
float
angle
);
vec2
cos
(
vec2
angle
);
vec3
cos
(
vec3
angle
);
vec4
cos
(
vec4
angle
);
float
tan
(
float
angle
);
vec2
tan
(
vec2
angle
);
vec3
tan
(
vec3
angle
);
vec4
tan
(
vec4
angle
);
float
asin
(
float
x
);
vec2
asin
(
vec2
x
);
vec3
asin
(
vec3
x
);
vec4
asin
(
vec4
x
);
float
acos
(
float
x
);
vec2
acos
(
vec2
x
);
vec3
acos
(
vec3
x
);
vec4
acos
(
vec4
x
);
float
atan
(
float
y
,
float
x
);
vec2
atan
(
vec2
y
,
vec2
x
);
vec3
atan
(
vec3
y
,
vec3
x
);
vec4
atan
(
vec4
y
,
vec4
x
);
float
atan
(
float
y_over_x
);
vec2
atan
(
vec2
y_over_x
);
vec3
atan
(
vec3
y_over_x
);
vec4
atan
(
vec4
y_over_x
);
// Exponential functions.
float
pow
(
float
x
,
float
y
);
vec2
pow
(
vec2
x
,
vec2
y
);
vec3
pow
(
vec3
x
,
vec3
y
);
vec4
pow
(
vec4
x
,
vec4
y
);
float
exp
(
float
x
);
vec2
exp
(
vec2
x
);
vec3
exp
(
vec3
x
);
vec4
exp
(
vec4
x
);
float
log
(
float
x
);
vec2
log
(
vec2
x
);
vec3
log
(
vec3
x
);
vec4
log
(
vec4
x
);
float
exp2
(
float
x
);
vec2
exp2
(
vec2
x
);
vec3
exp2
(
vec3
x
);
vec4
exp2
(
vec4
x
);
float
log2
(
float
x
);
vec2
log2
(
vec2
x
);
vec3
log2
(
vec3
x
);
vec4
log2
(
vec4
x
);
float
sqrt
(
float
x
);
vec2
sqrt
(
vec2
x
);