Changelog
0.4.37
- Add handling for meshes without polygons
- Add logging for errors that occur in the modifier render listener
0.4.36
- Add retry capabilities to API client
0.4.35
- Ensure
ModelInterface.parse
runsNodeInterface.load
- Export additional resource and modifier option/source types
0.4.34
- Fix issue with
window
reference.
0.4.33
- Handle pass-throughs for zone intersections in
Tool
0.4.32
- Fix handling of
baseURL
option
0.4.31
- Fix
Design.apply()
signature for patterns - Add point-and-click feature to
Tool
0.4.30
- Add
SceneInterface
camera positioning helper options (b
,f
, and so on) - Add
MaterialResource.setColor
convenience method
0.4.29
- Fix some typing issues
0.4.28
- Emit
update
fromDesign
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
- Add
update:start
andupdate:end
events toResourceInterface
- Add
render:start
,render:end
,update:start
, andupdate:end
toModifierInterface
- Improvements to events emitted by
Design
Design
emitsrender
for itself andrender:end
events for resources and modifiers registered in the designDesign
emitsupdate
forupdate:end
events of resources and modifiers registered in the design
Tool
callsModifierInterface.render()
directly instead ofDesign.render()
to reduce emitter noise
0.4.26
- Disable
SceneInterface
autoRotate
whenTool
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
inMaterialInterfaceTextureSources
- 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 duringAbstractResource.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.