@scenoco-three/editor 0.5.4 → 0.6.0

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 (113) hide show
  1. package/README.md +31 -93
  2. package/dist/cli/index.js +49 -115
  3. package/dist-app/assets/EffectComposer-lekj9UUq.js +1 -0
  4. package/dist-app/assets/GLTFLoader-C2lUhzim.js +1 -0
  5. package/dist-app/assets/OutputPass-DZtd342R.js +72 -0
  6. package/dist-app/assets/Pass-BP3b3hlf.js +1 -0
  7. package/dist-app/assets/RenderPass-BjVchlYg.js +1 -0
  8. package/dist-app/assets/ShaderPass-DMXLcV9X.js +24 -0
  9. package/dist-app/assets/SkeletonUtils-Cxy_owx9.js +1 -0
  10. package/dist-app/assets/index-AxOpglZ-.css +1 -0
  11. package/dist-app/assets/index-D-Iq7tix.js +4135 -0
  12. package/dist-app/assets/inter-CaiW00F8.js +1 -0
  13. package/dist-app/assets/registry-BOM35tSr.js +1433 -0
  14. package/dist-app/assets/worker-_Lh8Vt-i.js +1270 -0
  15. package/dist-app/examples/breakout/assets/geometry/ball.geometry.xml +1 -0
  16. package/dist-app/examples/breakout/assets/geometry/brick.geometry.xml +1 -0
  17. package/dist-app/examples/breakout/assets/geometry/floor-sensor.geometry.xml +1 -0
  18. package/dist-app/examples/breakout/assets/geometry/paddle.geometry.xml +1 -0
  19. package/dist-app/examples/breakout/assets/geometry/wall-side.geometry.xml +1 -0
  20. package/dist-app/examples/breakout/assets/geometry/wall-top.geometry.xml +1 -0
  21. package/dist-app/examples/breakout/assets/materials/ball.material.xml +1 -0
  22. package/dist-app/examples/breakout/assets/materials/brick-firm.material.xml +1 -0
  23. package/dist-app/examples/breakout/assets/materials/brick-hard.material.xml +1 -0
  24. package/dist-app/examples/breakout/assets/materials/brick-soft.material.xml +1 -0
  25. package/dist-app/examples/breakout/assets/materials/paddle.material.xml +10 -0
  26. package/dist-app/examples/breakout/assets/materials/wall.material.xml +1 -0
  27. package/dist-app/examples/breakout/assets/render/neon.render.xml +14 -0
  28. package/dist-app/examples/breakout/assets/scenes/arena.prefab.xml +68 -0
  29. package/dist-app/examples/breakout/assets/scenes/brick.prefab.xml +15 -0
  30. package/dist-app/examples/breakout/assets/scenes/hud.scene.xml +56 -0
  31. package/dist-app/examples/breakout/assets/scenes/level-1.scene.xml +36 -0
  32. package/dist-app/examples/breakout/assets/scenes/level-2.scene.xml +36 -0
  33. package/dist-app/examples/breakout/assets/scenes/level-3.scene.xml +36 -0
  34. package/dist-app/examples/castle/assets/geometry/capsule.geometry.xml +3 -0
  35. package/dist-app/examples/castle/assets/geometry/cone.geometry.xml +2 -0
  36. package/dist-app/examples/castle/assets/geometry/cube.geometry.xml +3 -0
  37. package/dist-app/examples/castle/assets/geometry/cylinder.geometry.xml +3 -0
  38. package/dist-app/examples/castle/assets/geometry/plane.geometry.xml +4 -0
  39. package/dist-app/examples/castle/assets/geometry/quad.geometry.xml +3 -0
  40. package/dist-app/examples/castle/assets/geometry/sphere.geometry.xml +2 -0
  41. package/dist-app/examples/castle/assets/materials/grass.material.xml +1 -0
  42. package/dist-app/examples/castle/assets/materials/roof.material.xml +1 -0
  43. package/dist-app/examples/castle/assets/materials/stone.material.xml +1 -0
  44. package/dist-app/examples/castle/assets/materials/wood.material.xml +1 -0
  45. package/dist-app/examples/castle/assets/scenes/main.scene.xml +25 -0
  46. package/dist-app/examples/collector/assets/geometry/capsule.geometry.xml +3 -0
  47. package/dist-app/examples/collector/assets/geometry/cone.geometry.xml +2 -0
  48. package/dist-app/examples/collector/assets/geometry/cube.geometry.xml +3 -0
  49. package/dist-app/examples/collector/assets/geometry/cylinder.geometry.xml +3 -0
  50. package/dist-app/examples/collector/assets/geometry/plane.geometry.xml +4 -0
  51. package/dist-app/examples/collector/assets/geometry/quad.geometry.xml +3 -0
  52. package/dist-app/examples/collector/assets/geometry/sphere.geometry.xml +2 -0
  53. package/dist-app/examples/collector/assets/materials/crate.material.xml +1 -0
  54. package/dist-app/examples/collector/assets/materials/depot.material.xml +1 -0
  55. package/dist-app/examples/collector/assets/materials/ground.material.xml +1 -0
  56. package/dist-app/examples/collector/assets/materials/player.material.xml +1 -0
  57. package/dist-app/examples/collector/assets/scenes/crate.prefab.xml +9 -0
  58. package/dist-app/examples/collector/assets/scenes/main.scene.xml +83 -0
  59. package/dist-app/examples/playable/assets/geometry/capsule.geometry.xml +3 -0
  60. package/dist-app/examples/playable/assets/geometry/cone.geometry.xml +2 -0
  61. package/dist-app/examples/playable/assets/geometry/cube.geometry.xml +3 -0
  62. package/dist-app/examples/playable/assets/geometry/cylinder.geometry.xml +3 -0
  63. package/dist-app/examples/playable/assets/geometry/plane.geometry.xml +4 -0
  64. package/dist-app/examples/playable/assets/geometry/quad.geometry.xml +3 -0
  65. package/dist-app/examples/playable/assets/geometry/sphere.geometry.xml +2 -0
  66. package/dist-app/examples/playable/assets/materials/ground.material.xml +1 -0
  67. package/dist-app/examples/playable/assets/materials/target.material.xml +2 -0
  68. package/dist-app/examples/playable/assets/scenes/main.scene.xml +53 -0
  69. package/dist-app/examples/playable/assets/scenes/target.prefab.xml +9 -0
  70. package/dist-app/examples.json +68 -0
  71. package/{app → dist-app}/index.html +2 -2
  72. package/dist-app/model.json +1 -0
  73. package/package.json +25 -29
  74. package/app/cameraRig.ts +0 -118
  75. package/app/commands.ts +0 -78
  76. package/app/desktopControls.ts +0 -47
  77. package/app/document.ts +0 -547
  78. package/app/editLog.ts +0 -127
  79. package/app/editor.css +0 -51
  80. package/app/gizmo.ts +0 -169
  81. package/app/globals.d.ts +0 -9
  82. package/app/main.ts +0 -546
  83. package/app/meta.ts +0 -24
  84. package/app/picking.ts +0 -47
  85. package/app/session.ts +0 -612
  86. package/app/touchControls.ts +0 -127
  87. package/app/ui-react/AddMemberPopup.tsx +0 -114
  88. package/app/ui-react/BottomLauncher.tsx +0 -15
  89. package/app/ui-react/EditorUI.tsx +0 -22
  90. package/app/ui-react/FilePicker.tsx +0 -80
  91. package/app/ui-react/HeadBtn.tsx +0 -21
  92. package/app/ui-react/InspectorSheet.tsx +0 -475
  93. package/app/ui-react/NodeListSheet.tsx +0 -56
  94. package/app/ui-react/TopBar.tsx +0 -137
  95. package/app/ui-react/Tree.tsx +0 -106
  96. package/app/ui-react/cx.ts +0 -4
  97. package/app/ui-react/fields.tsx +0 -407
  98. package/app/ui-react/format.ts +0 -30
  99. package/app/ui-react/mount.tsx +0 -31
  100. package/app/ui-react/store.ts +0 -80
  101. package/app/ui-react/types.ts +0 -88
  102. package/app/ui-react/ui.module.css +0 -250
  103. package/app/ui-react/useSize.ts +0 -20
  104. package/app/values.ts +0 -137
  105. package/app/vite-env.d.ts +0 -7
  106. package/dist/index.d.ts +0 -10
  107. package/dist/index.js +0 -10
  108. package/dist/mcp.d.ts +0 -32
  109. package/dist/mcp.js +0 -191
  110. package/dist/protocol.d.ts +0 -170
  111. package/dist/protocol.js +0 -22
  112. package/dist/server.d.ts +0 -124
  113. package/dist/server.js +0 -440
@@ -0,0 +1,53 @@
1
+ <!-- A playable: one mechanic, twenty seconds, no menu.
2
+
3
+ Tap the falling blocks. Twelve of them wins; five misses loses. Everything that decides the
4
+ round is on <Round>, and everything that decides how it looks is here.
5
+
6
+ Portrait first — <CameraFit mode="contain"> keeps the same 9 x 16 play area on any screen,
7
+ so a phone in portrait and a landscape ad slot both frame the whole thing. -->
8
+ <Scene camera="#camera" background="#10131a">
9
+ <Systems>
10
+ <Round duration="20" target="12" allowedMisses="5" />
11
+ <!-- Turns a tap into `onTap` on whatever is under it. -->
12
+ <Pointer />
13
+ <UIRenderer />
14
+ </Systems>
15
+
16
+ <AmbientLight color="#9db4d0" intensity="1.1" />
17
+ <DirectionalLight color="#fff3dd" intensity="2.4" position="x: 4; y: 9; z: 6" />
18
+
19
+ <PerspectiveCamera id="camera" near="0.1" far="100" position="z: 14">
20
+ <Components>
21
+ <CameraFit mode="contain" width="9" height="16" distance="14" />
22
+ </Components>
23
+
24
+ <Canvas>
25
+ <Panel anchor="stretchTop" height="72" layout="horizontal" alignX="between"
26
+ alignY="center" padding="18" background="#000000" opacity="0.35">
27
+ <Text id="time" text="20" fontSize="30" color="#f0b429" />
28
+ <Text id="score" text="0 / 12" fontSize="24" color="#e6edf6" />
29
+ </Panel>
30
+
31
+ <Panel anchor="center" width="300" height="80" layout="vertical" alignX="center" alignY="center">
32
+ <Text id="banner" text="" fontSize="42" color="#ffffff" />
33
+ </Panel>
34
+ </Canvas>
35
+ </PerspectiveCamera>
36
+
37
+ <!-- The floor. Nothing collides with it; <Faller> just checks its own y. -->
38
+ <Mesh geometry="../geometry/plane.geometry.xml" material="../materials/ground.material.xml"
39
+ eulerAngles="x: -90" position="y: -6" scale="2" />
40
+
41
+ <!-- Drops them in from above the frame. -->
42
+ <Group id="spawner" position="y: 9">
43
+ <Components>
44
+ <Spawner spawns="target.prefab.xml" interval="0.9" finalInterval="0.45" spread="3.4" />
45
+ </Components>
46
+ </Group>
47
+
48
+ <Group id="hud">
49
+ <Components>
50
+ <Hud timeText="#time" scoreText="#score" banner="#banner" />
51
+ </Components>
52
+ </Group>
53
+ </Scene>
@@ -0,0 +1,9 @@
1
+ <!-- One thing to tap. The root element IS the node this prefab produces — a Mesh, so a spawned
2
+ target is a real mesh with no wrapper around it. -->
3
+ <Mesh geometry="../geometry/cube.geometry.xml" material="../materials/target.material.xml"
4
+ eulerAngles="x: 20; z: 15" scale="0.9">
5
+ <Components>
6
+ <Target points="1" spin="120" />
7
+ <Faller speed="3.2" floor="-5.5" />
8
+ </Components>
9
+ </Mesh>
@@ -0,0 +1,68 @@
1
+ [
2
+ {
3
+ "kind": "prefab",
4
+ "path": "examples/collector/assets/scenes/crate.prefab.xml",
5
+ "stem": "crate",
6
+ "group": "collector"
7
+ },
8
+ {
9
+ "kind": "scene",
10
+ "path": "examples/collector/assets/scenes/main.scene.xml",
11
+ "stem": "main",
12
+ "group": "collector"
13
+ },
14
+ {
15
+ "kind": "prefab",
16
+ "path": "examples/breakout/assets/scenes/arena.prefab.xml",
17
+ "stem": "arena",
18
+ "group": "breakout"
19
+ },
20
+ {
21
+ "kind": "prefab",
22
+ "path": "examples/breakout/assets/scenes/brick.prefab.xml",
23
+ "stem": "brick",
24
+ "group": "breakout"
25
+ },
26
+ {
27
+ "kind": "scene",
28
+ "path": "examples/breakout/assets/scenes/hud.scene.xml",
29
+ "stem": "hud",
30
+ "group": "breakout"
31
+ },
32
+ {
33
+ "kind": "scene",
34
+ "path": "examples/breakout/assets/scenes/level-1.scene.xml",
35
+ "stem": "level-1",
36
+ "group": "breakout"
37
+ },
38
+ {
39
+ "kind": "scene",
40
+ "path": "examples/breakout/assets/scenes/level-2.scene.xml",
41
+ "stem": "level-2",
42
+ "group": "breakout"
43
+ },
44
+ {
45
+ "kind": "scene",
46
+ "path": "examples/breakout/assets/scenes/level-3.scene.xml",
47
+ "stem": "level-3",
48
+ "group": "breakout"
49
+ },
50
+ {
51
+ "kind": "scene",
52
+ "path": "examples/playable/assets/scenes/main.scene.xml",
53
+ "stem": "main",
54
+ "group": "playable"
55
+ },
56
+ {
57
+ "kind": "prefab",
58
+ "path": "examples/playable/assets/scenes/target.prefab.xml",
59
+ "stem": "target",
60
+ "group": "playable"
61
+ },
62
+ {
63
+ "kind": "scene",
64
+ "path": "examples/castle/assets/scenes/main.scene.xml",
65
+ "stem": "main",
66
+ "group": "castle"
67
+ }
68
+ ]
@@ -4,11 +4,11 @@
4
4
  <meta charset="utf-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover" />
6
6
  <title>SceNoCo editor</title>
7
- <link rel="stylesheet" href="./editor.css" />
7
+ <script type="module" crossorigin src="./assets/index-D-Iq7tix.js"></script>
8
+ <link rel="stylesheet" crossorigin href="./assets/index-AxOpglZ-.css">
8
9
  </head>
9
10
  <body>
10
11
  <canvas id="viewport"></canvas>
11
12
  <div id="sc-ui"></div>
12
- <script type="module" src="./main.ts"></script>
13
13
  </body>
14
14
  </html>