/
view.ts
executable file
·70 lines (53 loc) · 3.51 KB
/
view.ts
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
export * from "@awayjs/view";
import {Loader, WaveAudioParser, AttributesBuffer} from "@awayjs/core";
import {Image2DParser, ImageCubeParser, TextureAtlasParser, Shape, Image2D, ImageCube, BitmapImage2D, ExternalImage2D, BitmapImageCube, SpecularImage2D, Sampler2D, SamplerCube, LineElements, TriangleElements, Single2DTexture, SingleCubeTexture, BasicMaterial} from "@awayjs/graphics";
import {Stage, GL_AttributesBuffer, GL_RenderImage2D, GL_RenderImageCube, GL_BitmapImage2D, GL_ExternalImage2D, GL_BitmapImageCube, GL_Sampler2D, GL_SamplerCube, RenderablePool, ShaderBase, GL_ShapeRenderable, GL_TriangleElements, GL_Single2DTexture, GL_SingleCubeTexture, GL_BasicMaterial} from "@awayjs/stage";
import {Skybox, DisplayObjectContainer, Scene, Billboard, LineSegment, Camera, DirectionalLight, Sprite, MovieClip, TextField, LightProbe, PointLight} from "@awayjs/scene";
import {GL_SkyboxMaterial, GL_BillboardRenderable, GL_LineSegmentRenderable, GL_SkyboxRenderable, GL_LineElements, DefaultMaterialGroup} from "@awayjs/renderer";
import {MethodMaterial, GL_MethodMaterial} from "@awayjs/materials";
import {PartitionBase, CameraNode, EntityNode, SkyboxNode} from "@awayjs/view";
//enable parsers
Loader.enableParser(WaveAudioParser);
Loader.enableParser(Image2DParser);
Loader.enableParser(ImageCubeParser);
Loader.enableParser(TextureAtlasParser);
//register core attributes
Stage.registerAbstraction(GL_AttributesBuffer, AttributesBuffer);
//register scene entities
DefaultMaterialGroup.registerAbstraction(GL_SkyboxMaterial, Skybox);
RenderablePool.registerAbstraction(GL_BillboardRenderable, Billboard);
RenderablePool.registerAbstraction(GL_LineSegmentRenderable, LineSegment);
RenderablePool.registerAbstraction(GL_ShapeRenderable, Shape);
RenderablePool.registerAbstraction(GL_SkyboxRenderable, Skybox);
//register graphics images
Stage.registerAbstraction(GL_RenderImage2D, Image2D);
Stage.registerAbstraction(GL_RenderImageCube, ImageCube);
Stage.registerAbstraction(GL_BitmapImage2D, BitmapImage2D);
Stage.registerAbstraction(GL_ExternalImage2D, ExternalImage2D);
Stage.registerAbstraction(GL_BitmapImageCube, BitmapImageCube);
Stage.registerAbstraction(GL_BitmapImage2D, SpecularImage2D);
Stage.registerAbstraction(GL_Sampler2D, Sampler2D);
Stage.registerAbstraction(GL_SamplerCube, SamplerCube);
//register graphics elements
Stage.registerAbstraction(GL_LineElements, LineElements);
Stage.registerAbstraction(GL_TriangleElements, TriangleElements);
//register graphics textures
ShaderBase.registerAbstraction(GL_Single2DTexture, Single2DTexture);
ShaderBase.registerAbstraction(GL_SingleCubeTexture, SingleCubeTexture);
//register graphics materials
DefaultMaterialGroup.registerAbstraction(GL_BasicMaterial, BasicMaterial);
//regiater material materials
DefaultMaterialGroup.registerAbstraction(GL_MethodMaterial, MethodMaterial);
//register view nodes
PartitionBase.registerAbstraction(CameraNode, Camera);
PartitionBase.registerAbstraction(EntityNode, DirectionalLight);
PartitionBase.registerAbstraction(EntityNode, Sprite);
PartitionBase.registerAbstraction(EntityNode, DisplayObjectContainer);
PartitionBase.registerAbstraction(EntityNode, Scene);
PartitionBase.registerAbstraction(EntityNode, MovieClip);
PartitionBase.registerAbstraction(EntityNode, Billboard);
PartitionBase.registerAbstraction(EntityNode, LineSegment);
PartitionBase.registerAbstraction(EntityNode, TextField);
PartitionBase.registerAbstraction(EntityNode, LightProbe);
PartitionBase.registerAbstraction(EntityNode, PointLight);
PartitionBase.registerAbstraction(SkyboxNode, Skybox);