unstale

npm / @luma.gl/core

@luma.gl/core

What changed in @luma.gl/core 9, from its official release notes, upgrade guides and advisories. Also covers @luma.gl/engine, @luma.gl/shadertools, @luma.gl/webgl. Sources checked 2026-10-25.

18 new APIs and options2 behavior and defaults4 fixes and other

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli 0.2.6 on npm

@luma.gl/core 924 changes

New APIs and options 18

  • WGSL shader modules support @binding(auto) to eliminate binding conflicts.

    9.4.0release notes

  • Semantic color normalization now has a helper namespace; the legacy floatColors alias remains available.

    9.4.0release notes

  • New WGSL helpers decode compact Uint64 DGGS cell keys for storage-buffer and boundary-extraction workflows.

    9.4.0release notes

  • A new shader module provides shared semantic color normalization and premultiplied alpha helpers.

    9.4.0release notes

  • The WGSL module adds helpers for splitting binary64-rounded subtraction into normalized double-single limbs, normalizing and comparing limbs with integer-controlled behavior, and classifying non-finite values.

    9.4.0release notes

  • The shader module can subtract packed IEEE 754 double-precision values directly in WGSL and convert the result to f32.

    9.4.0release notes

  • A new shader module adds a diffuse-only matte material model.

    9.4.0release notes

  • The shader module supports a new light type, SpotLight.

    9.4.0release notes

  • This shader define can force or disable integer-controlled double-single arithmetic.

    9.4.0release notes

  • All material shader modules support an unlit prop so applications can disable lighting for materials that are already lit.

    9.4.0release notes

  • Byte-based semantic color APIs accept useByteColors: false for float and HDR-style color values while preserving current defaults.

    9.4.0release notes

  • ShaderModules now have WGSL variants, enabling shader modules to be used with WGSL.

    9.4.0release notes

  • A new shader-pass pipeline type supports structured multi-pass postprocessing.

    9.4.0release notes

  • Reusable shader assembly plugins group modules, defines, named injections, caller-owned vertex inputs, and generated cross-stage varyings.

    9.4.0release notes

  • WebGPU shaders can read packed RGBA storage rows through this helper.

    9.4.0release notes

  • The shared fp32 shader module provides a portable tangent approximation in GLSL and WGSL.

    9.4.0release notes

  • A new water material shader module provides GLSL and WGSL shaders.

    9.4.0release notes

  • Preprocessing accepts simple boolean and numeric #if expressions; assembled WGSL exposes a vertex-storage capability define so inactive resource branches are removed before automatic binding assignment.

    9.4.0release notes

Behavior and default changes 2

  • ShaderAssembler applies registered hook functions and standard named injections while assembling unified WGSL shaders.

    9.4.0release notes

  • uniformTypes supports nested structs and fixed-size arrays.

    9.4.0release notes

Fixes and other changes 4

  • Indexed model draws now honor the vertex count.

    9.4.2release notes

  • The default framebuffer is resized after an external canvas resize.

    9.4.1release notes

  • The legacy alias remains available alongside the new colors helper namespace.

    9.4.0release notes

  • WGSL double-single arithmetic automatically uses integer-controlled operations on Apple WebGPU adapters to avoid Metal compiler reassociation while retaining the vec2f API.

    9.4.0release notes