UNPKG

6.08 kBJavaScriptView Raw
1// tslint:disable-next-line:no-reference
2/// <reference path="../../../node_modules/@webgpu/types/dist/index.d.ts" />
3import 'reflect-metadata';
4import { Component, ComponentManager } from './ComponentManager';
5import { FrameGraphSystem } from './components/framegraph/System';
6import { GeometryComponent } from './components/geometry/GeometryComponent';
7import { GeometrySystem } from './components/geometry/System';
8import { MaterialComponent } from './components/material/MaterialComponent';
9import { MaterialSystem } from './components/material/System';
10import { CullableComponent } from './components/mesh/CullableComponent';
11import { MeshComponent } from './components/mesh/MeshComponent';
12import { MeshSystem } from './components/mesh/System';
13import { PixelPickingPass } from './components/renderer/passes/PixelPickingPass';
14import { RendererSystem } from './components/renderer/System';
15import { HierarchyComponent } from './components/scenegraph/HierarchyComponent';
16import { SceneGraphSystem } from './components/scenegraph/System';
17import { TransformComponent } from './components/scenegraph/TransformComponent';
18import { createEntity } from './Entity';
19import { IDENTIFIER } from './identifier';
20import { container, createWorldContainer, lazyInject, lazyMultiInject } from './inversify.config';
21import { generateAABBFromVertices } from './utils/aabb';
22import { isSafari } from './utils/isSafari';
23/**
24 * inspired by Entitas' Systems
25 * @see https://github.com/sschmid/Entitas-CSharp/wiki/Systems
26 */
27
28var AST_TOKEN_TYPES;
29
30(function (AST_TOKEN_TYPES) {
31 AST_TOKEN_TYPES["Void"] = "Void";
32 AST_TOKEN_TYPES["Boolean"] = "Boolean";
33 AST_TOKEN_TYPES["Float"] = "Float";
34 AST_TOKEN_TYPES["Uint32"] = "Uint32";
35 AST_TOKEN_TYPES["Int32"] = "Int32";
36 AST_TOKEN_TYPES["Vector"] = "Vector";
37 AST_TOKEN_TYPES["Vector2Float"] = "vec2<f32>";
38 AST_TOKEN_TYPES["Vector3Float"] = "vec3<f32>";
39 AST_TOKEN_TYPES["Vector4Float"] = "vec4<f32>";
40 AST_TOKEN_TYPES["Vector2Boolean"] = "vec2<bool>";
41 AST_TOKEN_TYPES["Vector3Boolean"] = "vec3<bool>";
42 AST_TOKEN_TYPES["Vector4Boolean"] = "vec4<bool>";
43 AST_TOKEN_TYPES["Vector2Uint"] = "vec2<u32>";
44 AST_TOKEN_TYPES["Vector3Uint"] = "vec3<u32>";
45 AST_TOKEN_TYPES["Vector4Uint"] = "vec4<u32>";
46 AST_TOKEN_TYPES["Vector2Int"] = "vec2<i32>";
47 AST_TOKEN_TYPES["Vector3Int"] = "vec3<i32>";
48 AST_TOKEN_TYPES["Vector4Int"] = "vec4<i32>";
49 AST_TOKEN_TYPES["Matrix"] = "Matrix";
50 AST_TOKEN_TYPES["Matrix3x3Float"] = "mat3x3<f32>";
51 AST_TOKEN_TYPES["Matrix4x4Float"] = "mat4x4<i32>";
52 AST_TOKEN_TYPES["Struct"] = "Struct";
53 AST_TOKEN_TYPES["FloatArray"] = "Float[]";
54 AST_TOKEN_TYPES["Vector4FloatArray"] = "vec4<f32>[]";
55})(AST_TOKEN_TYPES || (AST_TOKEN_TYPES = {}));
56
57var AST_NODE_TYPES;
58
59(function (AST_NODE_TYPES) {
60 AST_NODE_TYPES["Program"] = "Program";
61 AST_NODE_TYPES["Identifier"] = "Identifier";
62 AST_NODE_TYPES["VariableDeclaration"] = "VariableDeclaration";
63 AST_NODE_TYPES["BlockStatement"] = "BlockStatement";
64 AST_NODE_TYPES["ReturnStatement"] = "ReturnStatement";
65 AST_NODE_TYPES["FunctionDeclaration"] = "FunctionDeclaration";
66 AST_NODE_TYPES["VariableDeclarator"] = "VariableDeclarator";
67 AST_NODE_TYPES["AssignmentExpression"] = "AssignmentExpression";
68 AST_NODE_TYPES["LogicalExpression"] = "LogicalExpression";
69 AST_NODE_TYPES["BinaryExpression"] = "BinaryExpression";
70 AST_NODE_TYPES["ArrayExpression"] = "ArrayExpression";
71 AST_NODE_TYPES["UnaryExpression"] = "UnaryExpression";
72 AST_NODE_TYPES["UpdateExpression"] = "UpdateExpression";
73 AST_NODE_TYPES["FunctionExpression"] = "FunctionExpression";
74 AST_NODE_TYPES["MemberExpression"] = "MemberExpression";
75 AST_NODE_TYPES["ConditionalExpression"] = "ConditionalExpression";
76 AST_NODE_TYPES["ExpressionStatement"] = "ExpressionStatement";
77 AST_NODE_TYPES["CallExpression"] = "CallExpression";
78 AST_NODE_TYPES["NumThreadStatement"] = "NumThreadStatement";
79 AST_NODE_TYPES["StorageStatement"] = "StorageStatement";
80 AST_NODE_TYPES["DoWhileStatement"] = "DoWhileStatement";
81 AST_NODE_TYPES["WhileStatement"] = "WhileStatement";
82 AST_NODE_TYPES["ForStatement"] = "ForStatement";
83 AST_NODE_TYPES["BreakStatement"] = "BreakStatement";
84 AST_NODE_TYPES["ContinueStatement"] = "ContinueStatement";
85 AST_NODE_TYPES["IfStatement"] = "IfStatement";
86 AST_NODE_TYPES["ImportedFunctionStatement"] = "ImportedFunctionStatement";
87})(AST_NODE_TYPES || (AST_NODE_TYPES = {}));
88
89var STORAGE_CLASS;
90
91(function (STORAGE_CLASS) {
92 STORAGE_CLASS["Input"] = "Input";
93 STORAGE_CLASS["Output"] = "Output";
94 STORAGE_CLASS["Uniform"] = "Uniform";
95 STORAGE_CLASS["Workgroup"] = "Workgroup";
96 STORAGE_CLASS["UniformConstant"] = "UniformConstant";
97 STORAGE_CLASS["Image"] = "Image";
98 STORAGE_CLASS["StorageBuffer"] = "StorageBuffer";
99 STORAGE_CLASS["Private"] = "Private";
100 STORAGE_CLASS["Function"] = "Function";
101})(STORAGE_CLASS || (STORAGE_CLASS = {}));
102
103/**
104 * 根据目标平台生成 Shader 代码
105 * * WebGL GLSL 1.0
106 * * WebGPU Chrome/Edge GLSL 4.5 & WGSL @see https://gpuweb.github.io/gpuweb/wgsl.html
107 * * Safari WHLSL (maybe deprecated)
108 */
109var Target;
110
111(function (Target) {
112 Target["GLSL100"] = "GLSL100";
113 Target["GLSL450"] = "GLSL450";
114 Target["WGSL"] = "WGSL";
115})(Target || (Target = {}));
116
117var DefineValuePlaceholder = '__DefineValuePlaceholder__';
118export * from './ComponentManager';
119export * from './services';
120export * from './shape';
121export * from './components/renderer';
122export * from './components/material/interface';
123export * from './components/mesh/interface';
124export * from './components/renderer';
125export { container, createWorldContainer, lazyInject, lazyMultiInject, createEntity, Component, ComponentManager, IDENTIFIER, FrameGraphSystem, GeometrySystem, RendererSystem // InteractionSystem,
126, MaterialSystem, MeshSystem, SceneGraphSystem, CullableComponent, MeshComponent, TransformComponent, MaterialComponent, GeometryComponent, HierarchyComponent, isSafari, generateAABBFromVertices, PixelPickingPass, AST_TOKEN_TYPES, AST_NODE_TYPES, STORAGE_CLASS, Target, DefineValuePlaceholder };
127//# sourceMappingURL=index.js.map
\No newline at end of file