@vyr/three-browser 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (102) hide show
  1. package/package.json +25 -0
  2. package/src/common/index.ts +2 -0
  3. package/src/common/provider.ts +14 -0
  4. package/src/common/validate.ts +10 -0
  5. package/src/fragment/GeoMapFragment.vue +129 -0
  6. package/src/fragment/InstancedMeshFragment.vue +29 -0
  7. package/src/fragment/MeshFragment.vue +98 -0
  8. package/src/fragment/ModelFragment.vue +28 -0
  9. package/src/fragment/NodeFragment.vue +93 -0
  10. package/src/fragment/ParticleFragment.vue +147 -0
  11. package/src/fragment/PointsFragment.vue +34 -0
  12. package/src/fragment/SpriteFragment.vue +38 -0
  13. package/src/fragment/TextFragment.vue +98 -0
  14. package/src/fragment/animation/AnimationActionFragment.vue +110 -0
  15. package/src/fragment/geometry/BoxGeometryFragment.vue +44 -0
  16. package/src/fragment/geometry/BufferGeometryFragment.vue +26 -0
  17. package/src/fragment/geometry/CircleGeometryFragment.vue +35 -0
  18. package/src/fragment/geometry/CylinderGeometryFragment.vue +60 -0
  19. package/src/fragment/geometry/ExtrudeGeometryFragment.vue +111 -0
  20. package/src/fragment/geometry/PlaneGeometryFragment.vue +35 -0
  21. package/src/fragment/geometry/RingGeometryFragment.vue +45 -0
  22. package/src/fragment/geometry/SphereGeometryFragment.vue +51 -0
  23. package/src/fragment/geometry/SurfaceGeometryFragment.vue +18 -0
  24. package/src/fragment/geometry/TubeGeometryFragment.vue +65 -0
  25. package/src/fragment/light/AmbientLightFragment.vue +27 -0
  26. package/src/fragment/light/DirectionalLightFragment.vue +86 -0
  27. package/src/fragment/light/HemisphereLightFragment.vue +34 -0
  28. package/src/fragment/light/PointLightFragment.vue +68 -0
  29. package/src/fragment/light/RectAreaLightFragment.vue +48 -0
  30. package/src/fragment/light/SpotLightFragment.vue +96 -0
  31. package/src/fragment/material/MaterialFragment.vue +53 -0
  32. package/src/fragment/material/MeshBasicMaterialFragment.vue +126 -0
  33. package/src/fragment/material/MeshPhongMaterialFragment.vue +263 -0
  34. package/src/fragment/material/MeshStandardMaterialFragment.vue +256 -0
  35. package/src/fragment/material/PointsMaterialFragment.vue +81 -0
  36. package/src/fragment/material/ShaderMaterialFragment.vue +61 -0
  37. package/src/fragment/material/ShadowMaterialFragment.vue +49 -0
  38. package/src/fragment/material/SpriteMaterialFragment.vue +79 -0
  39. package/src/fragment/texture/TextureFragment.vue +131 -0
  40. package/src/index.ts +4 -0
  41. package/src/locale/Language.ts +10 -0
  42. package/src/locale/LanguageProvider.ts +655 -0
  43. package/src/locale/index.ts +2 -0
  44. package/src/option/Animation.ts +17 -0
  45. package/src/option/Geometry.ts +22 -0
  46. package/src/option/Material.ts +42 -0
  47. package/src/option/Mesh.ts +10 -0
  48. package/src/option/Shadow.ts +18 -0
  49. package/src/option/Texture.ts +55 -0
  50. package/src/option/index.ts +6 -0
  51. package/src/service/footer/action/geometry/index.ts +73 -0
  52. package/src/service/footer/action/index.ts +9 -0
  53. package/src/service/footer/action/material/index.ts +70 -0
  54. package/src/service/footer/action/texture/index.ts +63 -0
  55. package/src/service/global/index.ts +1 -0
  56. package/src/service/global/scripts/index.ts +12 -0
  57. package/src/service/index.ts +79 -0
  58. package/src/service/inspector/GeoMapViewer.vue +32 -0
  59. package/src/service/inspector/HTMLConvertViewer.vue +31 -0
  60. package/src/service/inspector/InstanceMeshViewer.vue +33 -0
  61. package/src/service/inspector/MeshViewer.vue +33 -0
  62. package/src/service/inspector/ModelViewer.vue +34 -0
  63. package/src/service/inspector/NodeViewer.vue +30 -0
  64. package/src/service/inspector/ParticleViewer.vue +37 -0
  65. package/src/service/inspector/PerspectiveCameraViewer.vue +62 -0
  66. package/src/service/inspector/PointsViewer.vue +33 -0
  67. package/src/service/inspector/ServiceViewer.vue +92 -0
  68. package/src/service/inspector/SpriteViewer.vue +34 -0
  69. package/src/service/inspector/TextViewer.vue +34 -0
  70. package/src/service/inspector/animation/AnimationActionViewer.vue +31 -0
  71. package/src/service/inspector/geometry/BoxGeometryViewer.vue +32 -0
  72. package/src/service/inspector/geometry/BufferGeometryViewer.vue +33 -0
  73. package/src/service/inspector/geometry/CircleGeometryViewer.vue +32 -0
  74. package/src/service/inspector/geometry/CylinderGeometryViewer.vue +32 -0
  75. package/src/service/inspector/geometry/ExtrudeGeometryViewer.vue +32 -0
  76. package/src/service/inspector/geometry/PlaneGeometryViewer.vue +32 -0
  77. package/src/service/inspector/geometry/RingGeometryViewer.vue +32 -0
  78. package/src/service/inspector/geometry/SphereGeometryViewer.vue +32 -0
  79. package/src/service/inspector/geometry/SurfaceGeometryViewer.vue +32 -0
  80. package/src/service/inspector/geometry/TubeGeometryViewer.vue +32 -0
  81. package/src/service/inspector/index.ts +50 -0
  82. package/src/service/inspector/light/AmbientLightViewer.vue +33 -0
  83. package/src/service/inspector/light/DirectionalLightViewer.vue +33 -0
  84. package/src/service/inspector/light/HemisphereLightViewer.vue +33 -0
  85. package/src/service/inspector/light/PointLightViewer.vue +33 -0
  86. package/src/service/inspector/light/RectAreaLightViewer.vue +33 -0
  87. package/src/service/inspector/light/SpotLightViewer.vue +33 -0
  88. package/src/service/inspector/material/MeshBasicMaterialViewer.vue +34 -0
  89. package/src/service/inspector/material/MeshPhongMaterialViewer.vue +34 -0
  90. package/src/service/inspector/material/MeshStandardMaterialViewer.vue +34 -0
  91. package/src/service/inspector/material/PointsMaterialViewer.vue +33 -0
  92. package/src/service/inspector/material/ShaderMaterialViewer.vue +34 -0
  93. package/src/service/inspector/material/ShadowMaterialViewer.vue +34 -0
  94. package/src/service/inspector/material/SpriteMaterialViewer.vue +34 -0
  95. package/src/service/inspector/texture/TextureViewer.vue +32 -0
  96. package/src/service/sidebar/asset/action/AddAnimationAction.ts +66 -0
  97. package/src/service/sidebar/asset/action/AddLightAction.ts +66 -0
  98. package/src/service/sidebar/asset/action/index.ts +7 -0
  99. package/src/service/sidebar/scene/action/AddAnimationAction.ts +64 -0
  100. package/src/service/sidebar/scene/action/AddLightAction.ts +66 -0
  101. package/src/service/sidebar/scene/action/index.ts +7 -0
  102. package/src/shims-vue.d.ts +10 -0
@@ -0,0 +1,66 @@
1
+ import { Descriptor } from "@vyr/engine";
2
+ import { Action, DataService, runtime } from "@vyr/runtime";
3
+ import { sidebar } from '@vyr/builtin'
4
+ import { AmbientLightDescriptor, DirectionalLightDescriptor, HemisphereLightDescriptor, PointLightDescriptor, RectAreaLightDescriptor, SpotLightDescriptor } from "@vyr/three";
5
+ import { language } from '../../../../locale'
6
+
7
+ class AddLightAction extends Action {
8
+ static id = 'sidebar.asset.AddLight'
9
+ static generate = (label: string, Class: typeof Descriptor) => {
10
+ class ClassAction extends Action {
11
+ static id = `sidebar.${Class.type}`
12
+ label = label
13
+ update() {
14
+ this.disabled = true
15
+ this.show = true
16
+ const dataService = runtime.get<DataService>('data')
17
+ const navigator = dataService.sidebar.get<sidebar.asset.AssetNavigator>(sidebar.asset.AssetNavigator.key)
18
+ if (navigator.status.mouseItem === null) return
19
+ this.disabled = false
20
+ }
21
+ validator() {
22
+ return false
23
+ }
24
+ execute() {
25
+ const dataService = runtime.get<DataService>('data')
26
+ const navigator = dataService.sidebar.get<sidebar.asset.AssetNavigator>(sidebar.asset.AssetNavigator.key)
27
+ navigator.status.modifyMode = 'add'
28
+ navigator.status.modifyContent = new Class()
29
+ navigator.status.modifyValue = navigator.status.mouseItem
30
+ }
31
+ }
32
+ return new ClassAction()
33
+ }
34
+ label = language.get('sidebar.asset.action.addLight.label')
35
+ order = 2
36
+ children = [
37
+ AddLightAction.generate(language.get('descriptor.type.BoxGeometry'), AmbientLightDescriptor),
38
+ AddLightAction.generate(language.get('descriptor.type.BoxGeometry'), DirectionalLightDescriptor),
39
+ AddLightAction.generate(language.get('descriptor.type.BoxGeometry'), HemisphereLightDescriptor),
40
+ AddLightAction.generate(language.get('descriptor.type.BoxGeometry'), PointLightDescriptor),
41
+ AddLightAction.generate(language.get('descriptor.type.BoxGeometry'), RectAreaLightDescriptor),
42
+ AddLightAction.generate(language.get('descriptor.type.BoxGeometry'), SpotLightDescriptor),
43
+ ]
44
+ active() {
45
+ const dataService = runtime.get<DataService>('data')
46
+
47
+ return dataService.sidebar.active === sidebar.asset.AssetNavigator.key
48
+ }
49
+ update() {
50
+ this.show = false
51
+ this.disabled = true
52
+ const dataService = runtime.get<DataService>('data')
53
+ const navigator = dataService.sidebar.get<sidebar.asset.AssetNavigator>(sidebar.asset.AssetNavigator.key)
54
+ if (navigator.status.mouseItem === null) return
55
+ if (navigator.status.mouseItem === navigator.root) return
56
+
57
+ this.show = true
58
+ this.disabled = false
59
+ }
60
+ validator() {
61
+ return false
62
+ }
63
+ execute() { }
64
+ }
65
+
66
+ export { AddLightAction }
@@ -0,0 +1,7 @@
1
+ import { AddLightAction } from "./AddLightAction";
2
+ import { AddAnimationAction } from "./AddAnimationAction";
3
+
4
+ export default [
5
+ AddLightAction,
6
+ AddAnimationAction,
7
+ ]
@@ -0,0 +1,64 @@
1
+ import { AnimationUnitDescriptor, Descriptor } from "@vyr/engine";
2
+ import { Action, DataService, runtime } from "@vyr/runtime";
3
+ import { sidebar } from '@vyr/builtin'
4
+ import { AnimationActionDescriptor, ModelDescriptor } from "@vyr/three";
5
+ import { language } from '../../../../locale'
6
+
7
+ class AddAnimationAction extends Action {
8
+ static id = 'sidebar.scene.AddAnimation'
9
+ static generate = (label: string, Class: typeof Descriptor) => {
10
+ class ClassAction extends Action {
11
+ static id = Class.type
12
+ label = label
13
+ update() {
14
+ this.show = false
15
+ this.disabled = true
16
+ const dataService = runtime.get<DataService>('data')
17
+ const navigator = dataService.sidebar.get<sidebar.scene.SceneNavigator>(sidebar.scene.SceneNavigator.key)
18
+ if (navigator.status.mouseItem === null) return
19
+ this.show = true
20
+ if (Class.type === AnimationActionDescriptor.type) {
21
+ if ((navigator.status.mouseItem instanceof ModelDescriptor) === false) return
22
+ }
23
+ this.disabled = false
24
+ }
25
+ validator() {
26
+ return false
27
+ }
28
+ execute() {
29
+ const dataService = runtime.get<DataService>('data')
30
+ const navigator = dataService.sidebar.get<sidebar.scene.SceneNavigator>(sidebar.scene.SceneNavigator.key)
31
+ navigator.status.modifyMode = 'add'
32
+ navigator.status.modifyContent = new Class({})
33
+ navigator.status.modifyValue = navigator.status.mouseItem
34
+ }
35
+ }
36
+ return new ClassAction()
37
+ }
38
+ label = language.get('sidebar.scene.action.addAnimation.label')
39
+ order = 2
40
+ children = [
41
+ AddAnimationAction.generate(language.get('descriptor.type.AnimationUnit'), AnimationUnitDescriptor),
42
+ AddAnimationAction.generate(language.get('descriptor.type.AnimationAction'), AnimationActionDescriptor),
43
+ ]
44
+ active() {
45
+ const dataService = runtime.get<DataService>('data')
46
+
47
+ return dataService.sidebar.active === sidebar.scene.SceneNavigator.key
48
+ }
49
+ update() {
50
+ this.show = false
51
+ this.disabled = true
52
+ const dataService = runtime.get<DataService>('data')
53
+ const navigator = dataService.sidebar.get<sidebar.scene.SceneNavigator>(sidebar.scene.SceneNavigator.key)
54
+ if (navigator.status.mouseItem === null) return
55
+ this.show = true
56
+ this.disabled = false
57
+ }
58
+ validator() {
59
+ return false
60
+ }
61
+ execute() { }
62
+ }
63
+
64
+ export { AddAnimationAction }
@@ -0,0 +1,66 @@
1
+ import { Descriptor } from "@vyr/engine";
2
+ import { Action, DataService, runtime } from "@vyr/runtime";
3
+ import { sidebar } from '@vyr/builtin'
4
+ import { AmbientLightDescriptor, DirectionalLightDescriptor, HemisphereLightDescriptor, PointLightDescriptor, RectAreaLightDescriptor, SpotLightDescriptor } from '@vyr/three'
5
+ import { language } from '../../../../locale'
6
+
7
+ class AddLightAction extends Action {
8
+ static id = 'sidebar.scene.AddLight'
9
+ static generate = (label: string, Class: typeof Descriptor) => {
10
+ class ClassAction extends Action {
11
+ static id = `sidebar.${Class.type}`
12
+ label = label
13
+ update() {
14
+ this.show = false
15
+ this.disabled = true
16
+ const dataService = runtime.get<DataService>('data')
17
+ const navigator = dataService.sidebar.get<sidebar.scene.SceneNavigator>(sidebar.scene.SceneNavigator.key)
18
+ this.show = true
19
+ if (navigator.status.mouseItem === null) return
20
+ this.disabled = false
21
+ }
22
+ validator() {
23
+ return false
24
+ }
25
+ execute() {
26
+ const dataService = runtime.get<DataService>('data')
27
+ const navigator = dataService.sidebar.get<sidebar.scene.SceneNavigator>(sidebar.scene.SceneNavigator.key)
28
+ navigator.status.modifyMode = 'add'
29
+ navigator.status.modifyContent = new Class()
30
+ navigator.status.modifyValue = navigator.status.mouseItem
31
+ }
32
+ }
33
+ return new ClassAction()
34
+ }
35
+ label = language.get('sidebar.scene.action.addLight.label')
36
+ order = 2
37
+ children = [
38
+ AddLightAction.generate(language.get('descriptor.type.AmbientLight'), AmbientLightDescriptor),
39
+ AddLightAction.generate(language.get('descriptor.type.DirectionalLight'), DirectionalLightDescriptor),
40
+ AddLightAction.generate(language.get('descriptor.type.HemisphereLight'), HemisphereLightDescriptor),
41
+ AddLightAction.generate(language.get('descriptor.type.PointLight'), PointLightDescriptor),
42
+ AddLightAction.generate(language.get('descriptor.type.RectAreaLight'), RectAreaLightDescriptor),
43
+ AddLightAction.generate(language.get('descriptor.type.SpotLight'), SpotLightDescriptor),
44
+ ]
45
+ active() {
46
+ const dataService = runtime.get<DataService>('data')
47
+
48
+ return dataService.sidebar.active === sidebar.scene.SceneNavigator.key
49
+ }
50
+ update() {
51
+ this.show = false
52
+ this.disabled = true
53
+ const dataService = runtime.get<DataService>('data')
54
+ const navigator = dataService.sidebar.get<sidebar.scene.SceneNavigator>(sidebar.scene.SceneNavigator.key)
55
+ if (navigator.status.mouseItem === null) return
56
+
57
+ this.show = true
58
+ this.disabled = false
59
+ }
60
+ validator() {
61
+ return false
62
+ }
63
+ execute() { }
64
+ }
65
+
66
+ export { AddLightAction }
@@ -0,0 +1,7 @@
1
+ import { AddLightAction } from "./AddLightAction";
2
+ import { AddAnimationAction } from "./AddAnimationAction";
3
+
4
+ export default [
5
+ AddLightAction,
6
+ AddAnimationAction,
7
+ ]
@@ -0,0 +1,10 @@
1
+ /* eslint-disable */
2
+ declare module '*.vue' {
3
+ const component: DefineComponent<{}, {}, any>
4
+ export default component
5
+ }
6
+
7
+ declare module '!!raw-loader!*' {
8
+ const v: string
9
+ export default v
10
+ }