Variables
Const COLORS
COLORS: number[][] = [[1, 1, 1],[1, 0, 0],[0, 1, 0],[0, 0, 1],[1, 1, 0],[0, 1, 1],]
Const DefaultWebGL2BufferFragment
DefaultWebGL2BufferFragment: string = DefaultWebGL2FragmentAttributes_ + DefaultWebGLUniform_ + DefaultWebGL2BufferFragment_
Const DefaultWebGL2BufferFragment_
DefaultWebGL2BufferFragment_: "void main() {outColor = vec4(0.0, 0.0, 0.0, 1.0);}" = `void main() {outColor = vec4(0.0, 0.0, 0.0, 1.0);}`
Const DefaultWebGL2BufferVertex
DefaultWebGL2BufferVertex: string = DefaultWebGL2VertexAttributes_ + DefaultWebGLUniform_ + DefaultWebGLFlatVertex_
Const DefaultWebGL2FlatFragment
DefaultWebGL2FlatFragment: string = DefaultWebGL2FragmentAttributes_ + DefaultWebGLUniform_ + DefaultWebGL2FlatFragment_
Const DefaultWebGL2FlatFragment_
DefaultWebGL2FlatFragment_: "void main() {vec2 st = gl_FragCoord.xy / u_resolution.xy;st.x *= u_resolution.x / u_resolution.y;vec3 color = vec3(abs(cos(u_time * 0.1)) * st.y,abs(cos(u_time * 0.2)) * st.y,abs(sin(u_time)) * st.y);outColor = vec4(color, 1.0);}" = `void main() {vec2 st = gl_FragCoord.xy / u_resolution.xy;st.x *= u_resolution.x / u_resolution.y;vec3 color = vec3(abs(cos(u_time * 0.1)) * st.y,abs(cos(u_time * 0.2)) * st.y,abs(sin(u_time)) * st.y);outColor = vec4(color, 1.0);}`
Const DefaultWebGL2FragmentAttributes_
DefaultWebGL2FragmentAttributes_: "#version 300 esprecision mediump float;in vec4 v_position;in vec4 v_normal;in vec2 v_texcoord;in vec4 v_color;out vec4 outColor;" = `#version 300 esprecision mediump float;in vec4 v_position;in vec4 v_normal;in vec2 v_texcoord;in vec4 v_color;out vec4 outColor;`
Const DefaultWebGL2MeshFragment
DefaultWebGL2MeshFragment: string = DefaultWebGL2FragmentAttributes_ + DefaultWebGLUniform_ + DefaultWebGL2MeshFragment_
Const DefaultWebGL2MeshFragment_
DefaultWebGL2MeshFragment_: "void main() {vec2 uv = v_texcoord;vec3 color = vec3(abs(cos(u_time * 0.1)) * uv.y,abs(cos(u_time * 0.2)) * uv.y,abs(sin(u_time)) * uv.y);float incidence = max(dot(v_normal.xyz, vec3(0.0, 1.0, 0.0)), 0.0);vec3 light = vec3(0.2) + (vec3(1.0) * incidence);outColor = vec4(v_color.rgb * color * light, 1.0);}" = `void main() {vec2 uv = v_texcoord;vec3 color = vec3(abs(cos(u_time * 0.1)) * uv.y,abs(cos(u_time * 0.2)) * uv.y,abs(sin(u_time)) * uv.y);float incidence = max(dot(v_normal.xyz, vec3(0.0, 1.0, 0.0)), 0.0);vec3 light = vec3(0.2) + (vec3(1.0) * incidence);outColor = vec4(v_color.rgb * color * light, 1.0);}`
Const DefaultWebGL2MeshVertex
DefaultWebGL2MeshVertex: string = DefaultWebGL2VertexAttributes_ + DefaultWebGLUniform_ + DefaultWebGLMeshVertex_
Const DefaultWebGL2Uniform_
DefaultWebGL2Uniform_: "uniform mat4 u_projectionMatrix;uniform mat4 u_modelViewMatrix;uniform mat4 u_normalMatrix;uniform vec2 u_resolution;uniform float u_time;" = DefaultWebGLUniform_
Const DefaultWebGL2VertexAttributes_
DefaultWebGL2VertexAttributes_: "#version 300 esprecision mediump float;in vec4 a_position;in vec4 a_normal;in vec2 a_texcoord;in vec4 a_color;out vec4 v_position;out vec4 v_normal;out vec2 v_texcoord;out vec4 v_color;" = `#version 300 esprecision mediump float;in vec4 a_position;in vec4 a_normal;in vec2 a_texcoord;in vec4 a_color;out vec4 v_position;out vec4 v_normal;out vec2 v_texcoord;out vec4 v_color;`
Const DefaultWebGLBufferFragment
DefaultWebGLBufferFragment: string = DefaultWebGLFragmentAttributes_ + DefaultWebGLUniform_ + DefaultWebGLBufferFragment_
Const DefaultWebGLBufferFragment_
DefaultWebGLBufferFragment_: "void main(){gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0);}" = `void main(){gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0);}`
Const DefaultWebGLBufferVertex
DefaultWebGLBufferVertex: string = DefaultWebGLVertexAttributes_ + DefaultWebGLUniform_ + DefaultWebGLFlatVertex_
Const DefaultWebGLFlatFragment
DefaultWebGLFlatFragment: string = DefaultWebGLFragmentAttributes_ + DefaultWebGLUniform_ + DefaultWebGLFlatFragment_
Const DefaultWebGLFlatFragment_
DefaultWebGLFlatFragment_: "void main() {vec2 st = gl_FragCoord.xy / u_resolution.xy;st.x *= u_resolution.x / u_resolution.y;vec3 color = vec3(abs(cos(u_time * 0.1)) * st.y,abs(cos(u_time * 0.2)) * st.y,abs(sin(u_time)) * st.y);gl_FragColor = vec4(color, 1.0);}" = `void main() {vec2 st = gl_FragCoord.xy / u_resolution.xy;st.x *= u_resolution.x / u_resolution.y;vec3 color = vec3(abs(cos(u_time * 0.1)) * st.y,abs(cos(u_time * 0.2)) * st.y,abs(sin(u_time)) * st.y);gl_FragColor = vec4(color, 1.0);}`
Const DefaultWebGLFlatVertex_
DefaultWebGLFlatVertex_: "void main() {v_position = a_position;v_normal = a_normal;v_texcoord = a_texcoord;v_color = a_color;gl_Position = a_position;}" = `void main() {v_position = a_position;v_normal = a_normal;v_texcoord = a_texcoord;v_color = a_color;gl_Position = a_position;}`
Const DefaultWebGLFragmentAttributes_
DefaultWebGLFragmentAttributes_: "#ifdef GL_ESprecision mediump float;#endifvarying vec4 v_position;varying vec4 v_normal;varying vec2 v_texcoord;varying vec4 v_color;" = `#ifdef GL_ESprecision mediump float;#endifvarying vec4 v_position;varying vec4 v_normal;varying vec2 v_texcoord;varying vec4 v_color;`
Const DefaultWebGLMeshFragment
DefaultWebGLMeshFragment: string = DefaultWebGLFragmentAttributes_ + DefaultWebGLUniform_ + DefaultWebGLMeshFragment_
Const DefaultWebGLMeshFragment_
DefaultWebGLMeshFragment_: "void main() {vec2 uv = v_texcoord;vec3 color = vec3(abs(cos(u_time * 0.1)) * uv.y,abs(cos(u_time * 0.2)) * uv.y,abs(sin(u_time)) * uv.y);float incidence = max(dot(v_normal.xyz, vec3(0.0, 1.0, 0.0)), 0.0);vec3 light = vec3(0.2) + (vec3(1.0) * incidence);gl_FragColor = vec4(v_color.rgb * color * light, 1.0);}" = `void main() {vec2 uv = v_texcoord;vec3 color = vec3(abs(cos(u_time * 0.1)) * uv.y,abs(cos(u_time * 0.2)) * uv.y,abs(sin(u_time)) * uv.y);float incidence = max(dot(v_normal.xyz, vec3(0.0, 1.0, 0.0)), 0.0);vec3 light = vec3(0.2) + (vec3(1.0) * incidence);gl_FragColor = vec4(v_color.rgb * color * light, 1.0);}`
Const DefaultWebGLMeshVertex
DefaultWebGLMeshVertex: string = DefaultWebGLVertexAttributes_ + DefaultWebGLUniform_ + DefaultWebGLMeshVertex_
Const DefaultWebGLMeshVertex_
DefaultWebGLMeshVertex_: "void main(void) {v_position = u_projectionMatrix * u_modelViewMatrix * a_position;v_normal = u_normalMatrix * a_normal;v_texcoord = a_texcoord;v_color = a_color;gl_Position = v_position;}" = `void main(void) {v_position = u_projectionMatrix * u_modelViewMatrix * a_position;v_normal = u_normalMatrix * a_normal;v_texcoord = a_texcoord;v_color = a_color;gl_Position = v_position;}`
Const DefaultWebGLUniform_
DefaultWebGLUniform_: "uniform mat4 u_projectionMatrix;uniform mat4 u_modelViewMatrix;uniform mat4 u_normalMatrix;uniform vec2 u_resolution;uniform float u_time;" = `uniform mat4 u_projectionMatrix;uniform mat4 u_modelViewMatrix;uniform mat4 u_normalMatrix;uniform vec2 u_resolution;uniform float u_time;`
Const DefaultWebGLVertexAttributes_
DefaultWebGLVertexAttributes_: "#ifdef GL_ESprecision mediump float;#endifattribute vec4 a_position;attribute vec4 a_normal;attribute vec2 a_texcoord;attribute vec4 a_color;varying vec4 v_position;varying vec4 v_normal;varying vec2 v_texcoord;varying vec4 v_color;" = `#ifdef GL_ESprecision mediump float;#endifattribute vec4 a_position;attribute vec4 a_normal;attribute vec2 a_texcoord;attribute vec4 a_color;varying vec4 v_position;varying vec4 v_normal;varying vec2 v_texcoord;varying vec4 v_color;`
Const METHODS_FLOAT
METHODS_
FLOAT: UniformMethod[] = [UniformMethod.Uniform1f, UniformMethod.Uniform2f, UniformMethod.Uniform3f, UniformMethod.Uniform4f]
Const METHODS_FLOATV
METHODS_
FLOATV: UniformMethod[] = [UniformMethod.Uniform1fv, UniformMethod.Uniform2fv, UniformMethod.Uniform3fv, UniformMethod.Uniform4fv]
Const METHODS_INT
METHODS_
INT: UniformMethod[] = [UniformMethod.Uniform1i, UniformMethod.Uniform2i, UniformMethod.Uniform3i, UniformMethod.Uniform4i]
Const METHODS_INTV
METHODS_
INTV: UniformMethod[] = [UniformMethod.Uniform1iv, UniformMethod.Uniform2iv, UniformMethod.Uniform3iv, UniformMethod.Uniform4iv]
Const PI
PI: number = Math.PI
Const RAD
RAD: number = PI / 180
Const TextureExtensions
TextureExtensions: string[] = TextureImageExtensions.concat(TextureVideoExtensions)
Const TextureImageExtensions
TextureImageExtensions: string[] = ['jpg', 'jpeg', 'png']
Const TextureVideoExtensions
TextureVideoExtensions: string[] = ['ogv', 'webm', 'mp4']