@needle-tools/engine 4.12.5 → 4.13.0-next.2d429c0

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.
Files changed (63) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/README.md +1 -1
  3. package/custom-elements.json +18 -1
  4. package/dist/{gltf-progressive-BqUnxvCx.umd.cjs → gltf-progressive-BURrJW0U.umd.cjs} +1 -1
  5. package/dist/{gltf-progressive-CSaX5HQb.min.js → gltf-progressive-DHLDFNvQ.min.js} +1 -1
  6. package/dist/{gltf-progressive-ChnIhDXx.js → gltf-progressive-eiJCrjLb.js} +3 -3
  7. package/dist/materialx-CnsT47BY.umd.cjs +90 -0
  8. package/dist/materialx-DTdTjiOL.min.js +90 -0
  9. package/dist/materialx-DUlX6ZVi.js +4642 -0
  10. package/dist/{needle-engine.bundle-Cj66livk.js → needle-engine.bundle-B9mInB8V.js} +3275 -3186
  11. package/dist/{needle-engine.bundle-Cnemui9H.umd.cjs → needle-engine.bundle-ChxvQROR.umd.cjs} +96 -96
  12. package/dist/{needle-engine.bundle-B_IGIr6Z.min.js → needle-engine.bundle-F7f5MEhj.min.js} +129 -129
  13. package/dist/needle-engine.d.ts +23 -1
  14. package/dist/needle-engine.js +415 -414
  15. package/dist/needle-engine.min.js +1 -1
  16. package/dist/needle-engine.umd.cjs +1 -1
  17. package/dist/{postprocessing-12-UW7je.min.js → postprocessing-BVNrgYZK.min.js} +1 -1
  18. package/dist/{postprocessing-B3Hu0Ryi.umd.cjs → postprocessing-CI2TjWpu.umd.cjs} +1 -1
  19. package/dist/{postprocessing-R535krvT.js → postprocessing-DdM-tz1j.js} +2 -2
  20. package/dist/{three-BzxwLtUE.umd.cjs → three-BW2s1Yl-.umd.cjs} +25 -25
  21. package/dist/{three-DMvLgxja.min.js → three-I__hSXzr.min.js} +26 -26
  22. package/dist/{three-D9pcFbxc.js → three-VvRoMeIN.js} +22 -0
  23. package/dist/{three-examples-F0MJj0vr.js → three-examples-BhfOE7NG.js} +1 -1
  24. package/dist/{three-examples-CjSwCv_b.umd.cjs → three-examples-Bpfu6ke_.umd.cjs} +1 -1
  25. package/dist/{three-examples-CIv2roOA.min.js → three-examples-D8zAE_7t.min.js} +1 -1
  26. package/dist/{three-mesh-ui-BLnJQzMl.umd.cjs → three-mesh-ui-BU55xDxJ.umd.cjs} +1 -1
  27. package/dist/{three-mesh-ui-BllgajJz.min.js → three-mesh-ui-C3QbemOV.min.js} +1 -1
  28. package/dist/{three-mesh-ui-DYyiRn5Y.js → three-mesh-ui-CcMp-FQm.js} +1 -1
  29. package/dist/{vendor-BIFy-gRe.js → vendor-BiyIZ61v.js} +1 -1
  30. package/dist/{vendor-BFgQSG2m.umd.cjs → vendor-COVQl0b8.umd.cjs} +1 -1
  31. package/dist/{vendor-ChgmXMYr.min.js → vendor-DW7zqjuT.min.js} +1 -1
  32. package/lib/engine/engine_loaders.js +7 -1
  33. package/lib/engine/engine_loaders.js.map +1 -1
  34. package/lib/engine/engine_modules.d.ts +9 -0
  35. package/lib/engine/engine_modules.js +25 -0
  36. package/lib/engine/engine_modules.js.map +1 -1
  37. package/lib/engine/engine_utils_format.d.ts +1 -1
  38. package/lib/engine/engine_utils_format.js +4 -1
  39. package/lib/engine/engine_utils_format.js.map +1 -1
  40. package/lib/engine/extensions/NEEDLE_materialx.d.ts +29 -0
  41. package/lib/engine/extensions/NEEDLE_materialx.js +115 -0
  42. package/lib/engine/extensions/NEEDLE_materialx.js.map +1 -0
  43. package/lib/engine/extensions/extensions.js +2 -0
  44. package/lib/engine/extensions/extensions.js.map +1 -1
  45. package/lib/engine/extensions/index.d.ts +1 -0
  46. package/lib/engine/extensions/index.js +1 -0
  47. package/lib/engine/extensions/index.js.map +1 -1
  48. package/lib/engine-components/ContactShadows.js +15 -0
  49. package/lib/engine-components/ContactShadows.js.map +1 -1
  50. package/lib/engine-components/Skybox.js +1 -1
  51. package/lib/engine-components/Skybox.js.map +1 -1
  52. package/package.json +3 -2
  53. package/plugins/vite/dependencies.js +9 -4
  54. package/plugins/vite/index.js +0 -2
  55. package/src/engine/engine_loaders.ts +9 -2
  56. package/src/engine/engine_modules.ts +24 -0
  57. package/src/engine/engine_utils_format.ts +6 -2
  58. package/src/engine/extensions/NEEDLE_materialx.ts +142 -0
  59. package/src/engine/extensions/extensions.ts +2 -0
  60. package/src/engine/extensions/index.ts +2 -1
  61. package/src/engine-components/ContactShadows.ts +15 -0
  62. package/src/engine-components/Skybox.ts +1 -1
  63. package/plugins/vite/materialx.js +0 -32
@@ -48,6 +48,7 @@ import { Layers } from 'three';
48
48
  import { LightProbe } from 'three';
49
49
  import { Line2 } from 'three/examples/jsm/lines/Line2.js';
50
50
  import { Loader } from 'three';
51
+ import { LoadingManager } from 'three';
51
52
  import { LOD_Results } from '@needle-tools/gltf-progressive';
52
53
  import { LODsManager as LODsManager_2 } from '@needle-tools/gltf-progressive';
53
54
  import { Material } from 'three';
@@ -61,6 +62,7 @@ import { n8ao } from 'n8ao';
61
62
  import { N8AOPostPass } from 'n8ao';
62
63
  import { NEEDLE_progressive } from '@needle-tools/gltf-progressive';
63
64
  import { NEEDLE_progressive_plugin } from '@needle-tools/gltf-progressive';
65
+ import { needleToolsMaterialx } from '@needle-tools/materialx';
64
66
  import { NormalBufferAttributes } from 'three';
65
67
  import { Object3D } from 'three';
66
68
  import { Object3DEventMap } from 'three';
@@ -8694,6 +8696,17 @@ export declare class MaskableGraphic extends Graphic {
8694
8696
  protected onAfterCreated(): void;
8695
8697
  }
8696
8698
 
8699
+ export declare namespace MaterialX {
8700
+ /**
8701
+ * Utility function to load a MaterialX material from a URL. This can be used in your own code to load MaterialX materials outside of the glTF loading process. The URL should point to a MaterialX XML file.
8702
+ */
8703
+ export function loadFromUrl(urlOrXML: string, opts?: {
8704
+ url?: string;
8705
+ loadingManager?: LoadingManager;
8706
+ materialNameOrIndex?: number | string;
8707
+ }): Promise<Material | null>;
8708
+ }
8709
+
8697
8710
  export declare const Mathf: MathHelper;
8698
8711
 
8699
8712
  declare class MathHelper {
@@ -8914,6 +8927,15 @@ export declare namespace NEEDLE_ENGINE_FEATURE_FLAGS {
8914
8927
  * If a module is already loaded it's also available in the `MODULE` variable.
8915
8928
  */
8916
8929
  export declare namespace NEEDLE_ENGINE_MODULES {
8930
+ export namespace MaterialX {
8931
+ export type TYPE = needleToolsMaterialx;
8932
+ let MODULE: TYPE;
8933
+ let MAYBEMODULE: TYPE | null;
8934
+ /** Wait for the module to be loaded (doesn't trigger a load) */
8935
+ export function ready(): Promise<TYPE>;
8936
+ /** Load the module */
8937
+ export function load(): Promise<TYPE>;
8938
+ }
8917
8939
  export namespace RAPIER_PHYSICS {
8918
8940
  export type TYPE = dimforgeRapier3dCompat;
8919
8941
  let MODULE: TYPE;
@@ -9508,7 +9530,7 @@ export declare type NeedleMenuPostMessageModel = {
9508
9530
  /**
9509
9531
  * The supported file types that can be determined by the engine. Used in {@link tryDetermineMimetypeFromURL} and {@link tryDetermineMimetypeFromBinary}
9510
9532
  */
9511
- export declare type NeedleMimetype = "unknown" | "unsupported" | "model/gltf+json" | "model/gltf-binary" | "model/vrm" | "model/vnd.usdz+zip" | "model/vnd.usd" | "model/vnd.usda" | "model/vnd.usdc" | "model/fbx" | "model/vnd.autodesk.fbx" | "model/obj" | (string & {});
9533
+ export declare type NeedleMimetype = "unknown" | "unsupported" | "model/gltf+json" | "model/gltf-binary" | "model/vrm" | "model/vnd.usdz+zip" | "model/vnd.usd" | "model/vnd.usda" | "model/vnd.usdc" | "model/fbx" | "model/vnd.autodesk.fbx" | "model/obj" | "application/materialx+xml" | (string & {});
9512
9534
 
9513
9535
  export declare const NeedlePatchesKey = "Needle:Patches";
9514
9536