Releases & Changelogs

Needle Engine 4.1.0 alpha.1

Needle Engine

  • Add: Support for loading KTX2 textures as environment-image and background-image (e.g. <needle-engine background-image="my-skybox.ktx2">)
  • Fix: Issue where raycasting was not using acceleration structures and instead falling back to slow raycasting. This release greatly improves raycasting performance

:dart: Download Unity Plugin :package: Install from NPM
:octopus: Changelog on Github :bookmark_tabs: Needle Engine API
:bulb: Get started :sparkles: Samples

Needle Engine 4.1.0 alpha.4

Needle Engine

  • Add: SceneSwitcher methods for unload() and reload() the currently loaded scene

Unity Integration

  • Add: FileReference types now have an option to be assigned from an asset in the scene, URL string or filepath string
  • Change: Generated font assets are now cached
  • Change: Attempt to auto recover corrupted npx cache

:dart: Download Unity Plugin :package: Install from NPM
:octopus: Changelog on Github :bookmark_tabs: Needle Engine API
:bulb: Get started :sparkles: Samples

Needle Engine 4.1.0 alpha.5

Needle Engine

  • Fix: Issue where MeshCollider with InterleavedBufferAttributes were not created correctly
  • Fix: multi-object mesh collider handling for Groups and add warning for remaining case that are not supported
  • Fix: transparency trimming for screenshot should happen before screenshot is returned
  • Change: Reduced mesh LOD vertex reduction to improve quality of lowest LOD
  • Update build pipeline to latest 2.7 alpha
  • Update rapier dependency to 0.14.0

Unity Integration

  • Allow Node 22 LTS

:dart: Download Unity Plugin :package: Install from NPM
:octopus: Changelog on Github :bookmark_tabs: Needle Engine API
:bulb: Get started :sparkles: Samples

Needle Engine 4.1.0 alpha.6

Unity Integration

  • Update build pipeline to latest alpha

:dart: Download Unity Plugin :package: Install from NPM
:octopus: Changelog on Github :bookmark_tabs: Needle Engine API
:bulb: Get started :sparkles: Samples

Needle Engine 4.1.0 alpha.7

Needle Engine

  • Update three.js to r169
  • Update dependencies: three-mesh-bvh to 0.8.3, three-quarks to 0.15.5, postprocessing to 6.36.6, n8ao to 1.9.3
  • Fix: AR screenshot bug where the second screenshot would not look correct

:dart: Download Unity Plugin :package: Install from NPM
:octopus: Changelog on Github :bookmark_tabs: Needle Engine API
:bulb: Get started :sparkles: Samples

Needle Engine 4.1.0 alpha.9

Needle Engine

  • Fix: Better AgX and Neutral tonemapping

Unity Integration

  • Fix: On windows handle missing Roaming/npm folder
  • Update Needle Engine samples min dependency requirement to support three.js r169

:dart: Download Unity Plugin :package: Install from NPM
:octopus: Changelog on Github :bookmark_tabs: Needle Engine API
:bulb: Get started :sparkles: Samples

Needle Engine 4.1.0 alpha.10

Needle Engine

  • Fix: Instanced meshes bug where sometimes an vertex count increase due to mesh compression was not handled correctly

Unity Integration

  • Change: Allow to install samples for Unity 6000

:dart: Download Unity Plugin :package: Install from NPM
:octopus: Changelog on Github :bookmark_tabs: Needle Engine API
:bulb: Get started :sparkles: Samples

Needle Engine 4.1.0 alpha.11

Needle Engine

  • Remove: legacy Flycontrols component
  • Fix: MeshCollider contact normal direction

Unity Integration

  • Fix: Unity 6000 component links

:dart: Download Unity Plugin :package: Install from NPM
:octopus: Changelog on Github :bookmark_tabs: Needle Engine API
:bulb: Get started :sparkles: Samples

Needle Engine 4.1.0 alpha.12

Needle Engine

  • Change: Much improved initial loading speed making Needle Engine websites load up to 1000 ms faster.
    Improved Needle Engine website lighthouse scores for all Vite based projects.
    Improved bundle chunking and loading for better lighthouse scores.
    Core bundles and entrypoint glTF files are not loaded as soon as the web document is ready.
  • Change: Needle Engine does now lazily import dependencies for rapier and postprocessing to reduce download and startup size.
    This means that projects that don’t use any collider or rigidbody components will not load the physics and postprocessing modules. Modules can be loaded at any time once they’re need by e.g. components in the scene.

Unity Integration

  • Fix: Needle Cloud deployment list not being showing the last deployments
  • Fix: Sandbox scene template had falsely scaled Rock model

:dart: Download Unity Plugin :package: Install from NPM
:octopus: Changelog on Github :bookmark_tabs: Needle Engine API
:bulb: Get started :sparkles: Samples

Needle Engine Blender Addon 0.52.2

  • Fix: Handle issue where toktx version could not be parsed due to text encoding
  • Fix: When using auto-export on save the scene should not be dirty after export
  • Change: Update Needle Engine to latest stable 3.51.0

:dart: Download Addon :bulb: Download Samples

Needle Engine Blender Addon 0.52.3

  • Fix layout error in Blender 4.0

:dart: Download Addon :bulb: Download Samples

Needle Engine # 3.51.3

Needle Engine

  • Fix: Needle Menu icons should be hidden until font is loaded (using display=block)

Unity Integration

  • Fix: Handle npx cache corruption
  • Fix: Handle rare issue where nodejs didn’t create it’s own npm folder
  • Change: Cache and load generated font textures from project library
  • Change: Display npx cache errors as warnings in Unity console
  • Change: Samples window should allow installation for Unity 6000

:dart: Download Unity Plugin :package: Install from NPM
:octopus: Changelog on Github :bookmark_tabs: Needle Engine API
:bulb: Get started :sparkles: Samples

Needle Engine 4.1.0 alpha.13

Needle Engine

  • Update three.js dependency to fix issue in WebXRManager

:dart: Download Unity Plugin :package: Install from NPM
:octopus: Changelog on Github :bookmark_tabs: Needle Engine API
:bulb: Get started :sparkles: Samples

Needle Engine 4.1.0 alpha.14

Needle Engine

  • Fix: glsl shader error at linear to sRGB conversion

:dart: Download Unity Plugin :package: Install from NPM
:octopus: Changelog on Github :bookmark_tabs: Needle Engine API
:bulb: Get started :sparkles: Samples

Needle Engine 4.1.0 beta

  • Promote to beta

:dart: Download Unity Plugin :package: Install from NPM
:octopus: Changelog on Github :bookmark_tabs: Needle Engine API
:bulb: Get started :sparkles: Samples

Needle Engine # 3.51.4

  • Fix: Invalid dependency in 3.51.3

:dart: Download Unity Plugin :package: Install from NPM
:octopus: Changelog on Github :bookmark_tabs: Needle Engine API
:bulb: Get started :sparkles: Samples

Needle Engine 4.1.0 beta.1

Needle Engine

  • Fix: ParticleSystem custom behaviours
  • Fix: OrbitControls not keeping the initial look direction if autoTarget was off
  • Fix: Invalid Rigidbody warning caused by async physics engine loading change
  • Fix: SharpeningEffect
  • Update gltf-progressive including a fix for loading texture LOD 0 (the highest resolution)
  • Update three.quarks dependency to 0.15.6

Unity Integration

  • Fix: Component menu item paths for Deploy components
  • Fix: Validation window NPM update
  • Update helper package dependency for Node 22 support

:dart: Download Unity Plugin :package: Install from NPM
:octopus: Changelog on Github :bookmark_tabs: Needle Engine API
:bulb: Get started :sparkles: Samples

Needle Engine 4.1.0 beta.2

Needle Engine

  • Fix: VideoPlayer screenspace mode colorspace
  • Fix: XRRig setAsActiveRig() now ensures the given rig has the highest priority. Previously it was possibly immediately overidden again if another XRRig with a higher priority was active in the scene.
  • Change: SpatialTrigger EventList events are now invoked without additional parameters. They did previously take a reference to the SpatialTriggerReceiver and active SpatialTrigger. If this information is important the SpatialTriggerReceiver can be saved when subscribing to the event and the trigger can be accessed using the triggerReceiver.currentIntersected array.
  • Change: TransformGizmo now exposes the underlying three.js TransformGizmo via a new control property.
  • Change: GroundProjection now uses the scene.background instead of scene.environment

:dart: Download Unity Plugin :package: Install from NPM
:octopus: Changelog on Github :bookmark_tabs: Needle Engine API
:bulb: Get started :sparkles: Samples

Needle Engine 4.1.0 beta.3

Needle Engine

  • Fix issue where networked values with the @syncField decorator would not be updated correctly on instances spawned at runtime (e.g. via PlayerSync).

:dart: Download Unity Plugin :package: Install from NPM
:octopus: Changelog on Github :bookmark_tabs: Needle Engine API
:bulb: Get started :sparkles: Samples

Needle Engine 4.1.0 beta.4

Needle Engine

  • Add: OrbitControls support for orthographic camera
  • Fix: Orthographic camera aspect ratio

:dart: Download Unity Plugin :package: Install from NPM
:octopus: Changelog on Github :bookmark_tabs: Needle Engine API
:bulb: Get started :sparkles: Samples