@certe/atmos-editor 0.8.6 → 0.8.8

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.
@@ -8,6 +8,13 @@ export interface PlayerConfig {
8
8
  canvas?: HTMLCanvasElement;
9
9
  /** Physics plugin (from createEditorPhysics()). */
10
10
  physics?: EditorPhysicsPlugin;
11
+ /** Physics settings baked at build time from project-settings.json. */
12
+ physicsSettings?: {
13
+ gravity: [number, number, number];
14
+ fixedTimestep: number;
15
+ solverIterations: number;
16
+ substeps: number;
17
+ };
11
18
  /** User script modules from import.meta.glob('./scripts/*.ts', { eager: true }). */
12
19
  scriptModules?: Record<string, Record<string, unknown>>;
13
20
  /** Base URL prefix for asset fetches (default: '/'). */
@@ -1 +1 @@
1
- {"version":3,"file":"start-player.d.ts","sourceRoot":"","sources":["../../src/bootstrap/start-player.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,EAA4D,MAAM,mBAAmB,CAAC;AAE5G,OAAO,EAKL,YAAY,EAOb,MAAM,uBAAuB,CAAC;AAU/B,OAAO,KAAK,EAAE,mBAAmB,EAAY,MAAM,YAAY,CAAC;AAEhE,MAAM,WAAW,YAAY;IAC3B,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,2DAA2D;IAC3D,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,mDAAmD;IACnD,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAC9B,oFAAoF;IACpF,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACxD,wDAAwD;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,YAAY,CAAC;IAC3B,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,wBAAsB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,SAAS,CAAC,CA4L1E"}
1
+ {"version":3,"file":"start-player.d.ts","sourceRoot":"","sources":["../../src/bootstrap/start-player.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,EAA4D,MAAM,mBAAmB,CAAC;AAE5G,OAAO,EAKL,YAAY,EAOb,MAAM,uBAAuB,CAAC;AAU/B,OAAO,KAAK,EAAE,mBAAmB,EAAY,MAAM,YAAY,CAAC;AAEhE,MAAM,WAAW,YAAY;IAC3B,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,2DAA2D;IAC3D,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,mDAAmD;IACnD,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAC9B,uEAAuE;IACvE,eAAe,CAAC,EAAE;QAAE,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3H,oFAAoF;IACpF,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACxD,wDAAwD;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,YAAY,CAAC;IAC3B,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,wBAAsB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,SAAS,CAAC,CAiM1E"}
@@ -9,7 +9,7 @@ import { discoverScripts } from '../script-discovery.js';
9
9
  import { SimpleMaterialLoader } from '../simple-material-loader.js';
10
10
  export async function startPlayer(config) {
11
11
  const cleanups = [];
12
- const assetBase = config.assetBase ?? '/';
12
+ const assetBase = config.assetBase ?? './';
13
13
  // 1. Register builtins
14
14
  registerCoreBuiltins();
15
15
  registerRendererBuiltins();
@@ -134,7 +134,11 @@ export async function startPlayer(config) {
134
134
  if (sceneData.postProcess) {
135
135
  applyPostProcess(renderSystem, sceneData.postProcess);
136
136
  }
137
- // 14. Engine setup
137
+ // 14. Apply project physics settings (baked into build entry by vite plugin)
138
+ if (config.physics && config.physicsSettings) {
139
+ config.physics.applyPhysicsSettings?.(config.physicsSettings);
140
+ }
141
+ // 15. Engine setup
138
142
  if (physicsSystem)
139
143
  physicsSystem.scene = loadedScene;
140
144
  const engine = new Engine();
@@ -143,7 +147,7 @@ export async function startPlayer(config) {
143
147
  engine.setPhysics(physicsSystem);
144
148
  engine.input.attach(window);
145
149
  cleanups.push(() => engine.input.detach());
146
- // 15. Scene loader for runtime scene switching
150
+ // 16. Scene loader for runtime scene switching
147
151
  Scene.setSceneLoader(async (name) => {
148
152
  const scenePath = `scenes/${name}.scene.json`;
149
153
  try {
@@ -174,7 +178,7 @@ export async function startPlayer(config) {
174
178
  }
175
179
  });
176
180
  cleanups.push(() => Scene.setSceneLoader(null));
177
- // 16. Start engine
181
+ // 17. Start engine
178
182
  engine.start(loadedScene);
179
183
  return {
180
184
  engine,
@@ -1 +1 @@
1
- {"version":3,"file":"start-player.js","sourceRoot":"","sources":["../../src/bootstrap/start-player.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"start-player.js","sourceRoot":"","sources":["../../src/bootstrap/start-player.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@certe/atmos-editor",
3
3
  "description": "Browser-based Unity-style editor for the Atmos Engine — hierarchy, inspector, gizmos",
4
- "version": "0.8.6",
4
+ "version": "0.8.8",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/certesolutions-cyber/atmos.git",
@@ -56,11 +56,11 @@
56
56
  }
57
57
  },
58
58
  "dependencies": {
59
- "@certe/atmos-animation": "^0.8.6",
60
- "@certe/atmos-assets": "^0.8.6",
61
- "@certe/atmos-core": "^0.8.6",
62
- "@certe/atmos-math": "^0.8.6",
63
- "@certe/atmos-renderer": "^0.8.6",
59
+ "@certe/atmos-animation": "^0.8.8",
60
+ "@certe/atmos-assets": "^0.8.8",
61
+ "@certe/atmos-core": "^0.8.8",
62
+ "@certe/atmos-math": "^0.8.8",
63
+ "@certe/atmos-renderer": "^0.8.8",
64
64
  "react": "^19.0.0",
65
65
  "react-dom": "^19.0.0"
66
66
  },
package/vite-plugin.cjs CHANGED
@@ -132,6 +132,9 @@ function atmosPlugin(options) {
132
132
  generatedIndex = indexPath;
133
133
  }
134
134
  return {
135
+ // Default to relative paths so the build works in any subdirectory
136
+ // (e.g. GitHub Pages under /repo-name/). User can override with base in vite.config.
137
+ base: cfg.base ?? './',
135
138
  build: {
136
139
  target: cfg.build?.target ?? 'esnext',
137
140
  rollupOptions: {
@@ -163,11 +166,13 @@ function atmosPlugin(options) {
163
166
  load(id) {
164
167
  if (id !== RESOLVED_BUILD_ENTRY) return;
165
168
  let sceneName = 'main';
169
+ let physicsJson = 'undefined';
166
170
  try {
167
171
  const settingsPath = path.join(root, 'project-settings.json');
168
172
  if (fs.existsSync(settingsPath)) {
169
173
  const settings = JSON.parse(fs.readFileSync(settingsPath, 'utf-8'));
170
174
  if (settings.defaultScene) sceneName = settings.defaultScene;
175
+ if (settings.physics) physicsJson = JSON.stringify(settings.physics);
171
176
  }
172
177
  } catch { /* use default */ }
173
178
  return `
@@ -178,6 +183,7 @@ try {
178
183
  const app = await startPlayer({
179
184
  scene: 'scenes/${sceneName}.scene.json',
180
185
  physics,
186
+ physicsSettings: ${physicsJson},
181
187
  scriptModules,
182
188
  });
183
189
  } catch (err) {
@@ -224,6 +230,11 @@ try {
224
230
  copyDirSync(src, path.join(outDir, dir));
225
231
  }
226
232
  }
233
+ // Copy project-settings.json (physics settings, default scene, etc.)
234
+ const settingsFile = path.resolve(root, 'project-settings.json');
235
+ if (fs.existsSync(settingsFile)) {
236
+ fs.copyFileSync(settingsFile, path.join(outDir, 'project-settings.json'));
237
+ }
227
238
  },
228
239
 
229
240
  configureServer(server) {
package/vite-plugin.mjs CHANGED
@@ -132,6 +132,9 @@ export function atmosPlugin(options) {
132
132
  generatedIndex = indexPath;
133
133
  }
134
134
  return {
135
+ // Default to relative paths so the build works in any subdirectory
136
+ // (e.g. GitHub Pages under /repo-name/). User can override with base in vite.config.
137
+ base: cfg.base ?? './',
135
138
  build: {
136
139
  target: cfg.build?.target ?? 'esnext',
137
140
  rollupOptions: {
@@ -163,11 +166,13 @@ export function atmosPlugin(options) {
163
166
  load(id) {
164
167
  if (id !== RESOLVED_BUILD_ENTRY) return;
165
168
  let sceneName = 'main';
169
+ let physicsJson = 'undefined';
166
170
  try {
167
171
  const settingsPath = path.join(root, 'project-settings.json');
168
172
  if (fs.existsSync(settingsPath)) {
169
173
  const settings = JSON.parse(fs.readFileSync(settingsPath, 'utf-8'));
170
174
  if (settings.defaultScene) sceneName = settings.defaultScene;
175
+ if (settings.physics) physicsJson = JSON.stringify(settings.physics);
171
176
  }
172
177
  } catch { /* use default */ }
173
178
  return `
@@ -178,6 +183,7 @@ try {
178
183
  const app = await startPlayer({
179
184
  scene: 'scenes/${sceneName}.scene.json',
180
185
  physics,
186
+ physicsSettings: ${physicsJson},
181
187
  scriptModules,
182
188
  });
183
189
  } catch (err) {
@@ -224,6 +230,11 @@ try {
224
230
  copyDirSync(src, path.join(outDir, dir));
225
231
  }
226
232
  }
233
+ // Copy project-settings.json (physics settings, default scene, etc.)
234
+ const settingsFile = path.resolve(root, 'project-settings.json');
235
+ if (fs.existsSync(settingsFile)) {
236
+ fs.copyFileSync(settingsFile, path.join(outDir, 'project-settings.json'));
237
+ }
227
238
  },
228
239
 
229
240
  configureServer(server) {