module Graphics.Rendering.Ombra.Shader (
Shader,
VertexShader,
FragmentShader,
VertexShaderOutput(Vertex),
FragmentShaderOutput(..),
ShaderVars,
VOShaderVars,
Uniform,
Attribute,
Generic,
SVList((:-), N),
Bool,
Float,
Int,
Sampler2D,
SamplerCube,
Vec2(..),
Vec3(..),
Vec4(..),
BVec2(..),
BVec3(..),
BVec4(..),
IVec2(..),
IVec3(..),
IVec4(..),
Mat2(..),
Mat3(..),
Mat4(..),
Array,
loop,
store,
texture2D,
texture2DBias,
texture2DProj,
texture2DProjBias,
texture2DProj4,
texture2DProjBias4,
texture2DLod,
texture2DProjLod,
texture2DProjLod4,
arrayLength,
radians,
degrees,
sin,
cos,
tan,
asin,
acos,
atan,
atan2,
exp,
log,
exp2,
log2,
sqrt,
inversesqrt,
abs,
sign,
floor,
ceil,
fract,
mod,
min,
max,
clamp,
mix,
step,
smoothstep,
length,
distance,
dot,
cross,
normalize,
faceforward,
reflect,
refract,
matrixCompMult,
VecOrd,
VecEq,
lessThan,
lessThanEqual,
greaterThan,
greaterThanEqual,
equal,
notEqual,
BoolVector,
anyB,
allB,
notB,
true,
false,
ToBool,
bool,
ToInt,
int,
ToFloat,
float,
Components,
CompList,
ToCompList,
(#),
ToVec2,
vec2,
ToVec3,
vec3,
ToVec4,
vec4,
ToBVec2,
bvec2,
ToBVec3,
bvec3,
ToBVec4,
bvec4,
ToIVec2,
ivec2,
ToIVec3,
ivec3,
ToIVec4,
ivec4,
ToMat2,
mat2,
ToMat3,
mat3,
ToMat4,
mat4,
(*),
(/),
(+),
(),
(^),
(&&),
(||),
(==),
(>=),
(<=),
(<),
(>),
(!),
fromInteger,
fromRational,
ifThenElse,
negate,
(.),
id,
const,
flip,
($),
CPU.fst,
CPU.snd,
position,
fragData,
fragCoord,
fragFrontFacing
) where
import GHC.Generics (Generic)
import Graphics.Rendering.Ombra.Shader.CPU
import Graphics.Rendering.Ombra.Shader.Language.Types
import Graphics.Rendering.Ombra.Shader.Language.Functions
import Graphics.Rendering.Ombra.Shader.ShaderVar
import Graphics.Rendering.Ombra.Shader.Stages
import Prelude ((.), id, const, flip, ($))
import qualified Prelude as CPU