-
Notifications
You must be signed in to change notification settings - Fork 204
/
index.js
161 lines (146 loc) · 4.51 KB
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
// CORE MODULE EXPORTS FOR LUMA.GL
// WEBGL CONTEXT
export {
isWebGL,
isWebGL2,
lumaStats,
createGLContext,
destroyGLContext,
resizeGLContext,
setGLContextDefaults,
getContextInfo,
getGLContextInfo,
getContextLimits,
FEATURES,
hasFeature,
hasFeatures,
getFeatures,
canCompileGLGSExtension,
cloneTextureFrom,
getKeyValue,
getKey,
// DEPRECATED
setGLContextDefaults as setContextDefaults,
getContextDebugInfo as glGetDebugInfo
} from '@luma.gl/webgl';
export {
trackContextState,
resetParameters,
getParameter,
getParameters,
setParameter,
setParameters,
withParameters,
getModifiedParameters
} from '@luma.gl/webgl-state-tracker';
// WEBGL1 OBJECTS/FUNCTIONS
export {
Buffer,
Shader,
VertexShader,
FragmentShader,
Program,
Framebuffer,
Renderbuffer,
Texture2D,
TextureCube,
clear,
clearBuffer,
// Copy and Blit
readPixelsToArray,
readPixelsToBuffer,
copyToDataUrl,
copyToImage,
copyToTexture,
blit
} from '@luma.gl/webgl';
export {
// WebGL2 classes & Extensions
Query,
Texture3D,
TransformFeedback,
VertexArrayObject,
VertexArray,
UniformBufferLayout,
setPathPrefix,
loadFile,
loadImage,
// experimental WebGL exports
Accessor as _Accessor,
clearBuffer as _clearBuffer
} from '@luma.gl/webgl';
// CORE
export {default as AnimationLoop} from './core/animation-loop';
export {default as Geometry} from './core/geometry';
export {encodePickingColor, decodePickingColor, getNullPickingColor} from './core/picking-colors';
export {default as Model} from './core/model';
export {default as Transform} from './core/transform';
export {default as ClipSpace} from './core/clip-space';
// Experimental core exports
export {default as _Attribute} from './core/attribute';
export {default as _ShaderCache} from './core/shader-cache';
export {default as _AnimationLoopProxy} from './core/animation-loop-proxy';
// Multipass Rendering
export {default as _MultiPassRenderer} from './multipass/multi-pass-renderer';
export {default as _RenderState} from './multipass/render-state';
export {default as _Pass} from './multipass/pass';
export {default as _CompositePass} from './multipass/composite-pass';
export {default as _ClearPass} from './multipass/clear-pass';
export {default as _RenderPass} from './multipass/render-pass';
export {default as _CopyPass} from './multipass/copy-pass';
export {default as _TexturePass} from './multipass/texture-pass';
// export {default as _MaskPass} from './multipass/mask-pass';
// export {default as _ClearMaskPass} from './multipass/clearmask-pass';
export {default as _ShaderModulePass} from './multipass/shader-module-pass';
// export {default as _Canvas} from './multipass/canvas';
// Geometries
export {default as ConeGeometry} from './geometries/cone-geometry';
export {default as CubeGeometry} from './geometries/cube-geometry';
export {default as CylinderGeometry} from './geometries/cylinder-geometry';
export {default as IcoSphereGeometry} from './geometries/ico-sphere-geometry';
export {default as PlaneGeometry} from './geometries/plane-geometry';
export {default as SphereGeometry} from './geometries/sphere-geometry';
export {default as TruncatedConeGeometry} from './geometries/truncated-cone-geometry';
// lighting
export {AmbientLight, DirectionalLight, PointLight} from './lighting/light-source';
// material
export {default as Material} from './materials/material';
export {default as PhongMaterial} from './materials/phong-material';
export {default as PBRMaterial} from './materials/pbr-material';
// SCENEGRAPH
// Core nodes
export {default as ScenegraphNode} from './scenegraph/nodes/scenegraph-node';
export {default as GroupNode} from './scenegraph/nodes/group-node';
export {default as ModelNode} from './scenegraph/nodes/model-node';
export {default as CameraNode} from './scenegraph/nodes/camera-node';
// TODO/CLEAN UP FOR V7
// We should have a minimal set of forwarding exports from shadertools (ideally none)
// Analyze risk of breaking apps
export {
registerShaderModules,
setDefaultShaderModules,
assembleShaders,
// HELPERS
combineInjects,
normalizeShaderModule,
// SHADER MODULES
fp32,
fp64,
project,
lights,
dirlight,
picking,
diffuse,
gouraudlighting,
phonglighting,
// experimental
_transform,
MODULAR_SHADERS,
getQualifierDetails,
getPassthroughFS,
typeToChannelSuffix,
typeToChannelCount,
convertToVec4
} from '@luma.gl/shadertools';
// UTILS: undocumented API for other luma.gl modules
export {log, assert, uid, self, window, global, document} from '@luma.gl/webgl';