Changelog

0.4.41

  • Improve reprojection (integrate API, update mapping structure)
  • Implement ZoneDataInterface.meshes (deprecates ZoneRecipient features)

0.4.40

  • Add ScenePointerEvent.scene
  • Deprecate ScenePointerEvent.nodes in favor of ScenePointerEvent.intersections
  • Add MeshInterface.isZoneRecipient

0.4.39

  • Expose rotatePoint
  • Improve AssignmentInterface.getMatrix()
  • Improve positioning logic, add tests

0.4.38

  1. Fix an issue where patterns appeared upside-down.

0.4.37

  1. Add handling for meshes without polygons
  2. Add logging for errors that occur in the modifier render listener

0.4.36

  1. Add retry capabilities to API client

0.4.35

  1. Ensure ModelInterface.parse runs NodeInterface.load
  2. Export additional resource and modifier option/source types

0.4.34

  1. Fix issue with window reference.

0.4.33

  1. Handle pass-throughs for zone intersections in Tool

0.4.32

  1. Fix handling of baseURL option

0.4.31

  1. Fix Design.apply() signature for patterns
  2. Add point-and-click feature to Tool

0.4.30

  1. Add SceneInterface camera positioning helper options (b, f, and so on)
  2. Add MaterialResource.setColor convenience method

0.4.29

  1. Fix some typing issues

0.4.28

  1. Emit update from Design for internal changes, such as:
    • When the model is set
    • When resources and modifiers are added or removed
    • Immediately after render is emitted

0.4.27

  1. Add update:start and update:end events to ResourceInterface
  2. Add render:start, render:end, update:start, and update:end to ModifierInterface
  3. Improvements to events emitted by Design
    • Design emits render for itself and render:end events for resources and modifiers registered in the design
    • Design emits update for update:end events of resources and modifiers registered in the design
  4. Tool calls ModifierInterface.render() directly instead of Design.render() to reduce emitter noise

0.4.26

  • Disable SceneInterface autoRotate when Tool is active

0.4.25

  • Fix Tool "move" operation when modifier is rotated

0.4.24

  • Add Tool implementation
  • Documentation updates, cleanup
  • Ensure validators are exported

0.4.23

  • Dynamically generate validators

Breaking Changes

Design Document Types

The types are now capitalized. If you were relying on import type { latest } from '@core3d/sdk'; it should be updated to import type { Latest } from '@core3d/sdk';. This is true for all explicit Design Document versions, as well (e.g. v0 -> v11).

Validators

Validation functions were excluded from this version (e.g. validateLatest, validateV0, etc.). These are internal utilities, but the missing exports will break builds if you relied on them.

0.4.22

  • Improve docblocks for intellisense
  • Deprecate some methods

0.4.21

  • Update docs
  • Integrate API types
  • Add TTL to Cache
  • Use canvas in MaterialInterfaceTextureSources
  • Improve texture source types
  • Updates to ImagePacker

0.4.20

  • Implement NodeInterface.fetchMask
  • Implement NodeInterface.fetchPolygons
  • Use new masks for bakes

0.4.19

  • Load textures in parallel

0.4.18

  • Fix issues with scene target configuration
  • SceneOptions type improvements
  • Add MeshInterface.hasDistinctIslands

0.4.17

  • Fix mesh name preservation when groups have the same name

0.4.16

  • Implement canny edge detection
  • Auto-update scene on target render
  • Ensure SceneInterface.camera does not contain undefined
  • Fix intersections, prevent catchup animations
  • Reinstate autorotate

0.4.15

  • Deprecate SceneInterface.invalidate
  • Fix depth type rendering

0.4.14

  • Add Scene events
  • Allow partial SceneOptions.camera
  • Support more advanced env config
  • Do not apply default material to models
  • Expose SceneInterface.camera

0.4.13

  • Handle missing meshes during GLTF import
  • Add SceneOptions.environment

0.4.12

  • Allow partial SceneOptions in create helpers

0.4.11

  • Add SceneInterface.configure() w/ new options

0.4.10

  • Add Canvas.getRootNode()

0.4.9

  • Add missing @types/three where needed
  • Roll back three@0.162.0

0.4.8

  • Rework GLTFLoaderPreserveMeshNamesExtension matching algorithm
  • Handle uncaught, bubbled exceptions during GL parsing

0.4.7

  • Add SceneInterface.invalidate()
  • Re-clone objects during scene invalidation

0.4.6

  • Improve Three.js scene lighting
  • Require three@^0.163.0

0.4.5

  • Ensure Three.js textures are recreated when materials are copied
  • Fix an issue where subsequent renders override earlier render parameters
  • Add controls and autoRotate to SceneOptions, make createScene options optional
  • Ensure Three.js GLTF plugins have names

0.4.4

  • Move "default" export keys to last position

0.4.3

  • Move @core3d/ devDependencies to peerDependencies

0.4.2

  • Improve Resource render flow
  • Add Design.move
  • Implement Zone.contains
  • Implement Model.findNodeByInternalObject
  • Include src property in texture sources, expose MaterialInterface.src
  • Handle generic Assignable/Attachble interfaces in Design.apply
  • Add typed EventEmitter, emit "render" from Design

0.4.1

  • Fix: prevent AbstractResource cache entry override during AbstractResource.load()

0.4.0

Public release.

0.3.x

Public release preparation.

0.2.x

API refactor iteration.

0.1.x

Early development version of the SDK.

Get in touch

We'd love to learn more about your vision and how we can help.

PressPrivacyTermsSupportCopyright © 2024 Core3D, Inc. All Rights Reserved.