spoint 0.1.677 → 0.1.678

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.
@@ -85,8 +85,8 @@ export default {
85
85
  fillIntensity: 0.4,
86
86
  fillPosition: [-20, 30, -10],
87
87
  shadowMapSize: 1024,
88
- shadowBias: 0.0038,
89
- shadowNormalBias: 0.6,
88
+ shadowBias: -0.0005,
89
+ shadowNormalBias: 0.05,
90
90
  // shadowRadius/shadowBlurSamples are read only by three.js's VSM blur pass
91
91
  // (WebGLShadowMap.js postProcessShadowMap, gated on shadow.type===VSMShadowMap);
92
92
  // client/core/SceneSetup.js hardcodes renderer.shadowMap.type=PCFShadowMap, so
package/client/app.js CHANGED
@@ -258,7 +258,7 @@ try {
258
258
  _showBootFailureOverlay('WebGL2 is required', 'This 3D world needs a browser with WebGL2 support. Please update your browser, enable hardware acceleration, or try a different device.\n\n' + ((err && (err.stack || err.message)) || String(err)))
259
259
  throw err
260
260
  }
261
- const { ambient, studio, sun } = setupLights(scene), { gltfLoader } = createLoaders(renderer)
261
+ const { ambient, studio, sun } = setupLights(scene), { gltfLoader, ktx2Loader } = createLoaders(renderer)
262
262
  // Kick the anim-lib fetch now (idempotent, cached) so it overlaps the world import + cold worker boot instead of serializing behind them.
263
263
  preloadAnimationLibrary(gltfLoader)
264
264
  if (typeof window !== 'undefined') {
@@ -680,7 +680,7 @@ cullingHub.register('occlusionQueryBudget', () => occlusionQueryBudget.getStats(
680
680
  // client/core/WebGPUCullingHubIntegration.js's header for the full scope note); call
681
681
  // window.__runWebgpuComputeCull() from a dev console / future opt-in tier to populate it.
682
682
  window.__runWebgpuComputeCull = () => import('./core/WebGPUCullingHubIntegration.js').then(m => m.runAndRegister(cullingHub, { scene, camera }))
683
- const pm = createPlayerManager(scene, gltfLoader, cam, null, sceneGraph, modelPool)
683
+ const pm = createPlayerManager(scene, gltfLoader, cam, ktx2Loader, sceneGraph, modelPool)
684
684
  // Player LOD: real distance-tier classification (FULL/REDUCED/DOT) for the remote-player crowd -- see
685
685
  // core/PlayerLOD.js. tickPlayerAnimators (below) applies the verdict to gate VRM anim/feature updates;
686
686
  // the crowd-dot InstancedMesh2 renders everyone beyond the REDUCED ring at near-zero cost. Instantiated
@@ -26,7 +26,7 @@ const DEFAULTS = {
26
26
  sfxVolume: 1,
27
27
  musicVolume: 1,
28
28
  qualityPreset: 'Medium',
29
- dprAuto: true,
29
+ dprAuto: false,
30
30
  }
31
31
 
32
32
  function loadSaved() {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "spoint",
3
- "version": "0.1.677",
3
+ "version": "0.1.678",
4
4
  "description": "Physics and netcode SDK for multiplayer game servers",
5
5
  "type": "module",
6
6
  "workspaces": [