@babylonjs/serializers 5.0.0-beta.6 → 5.0.0-beta.8-snapshot

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 (79) hide show
  1. package/package.json +20 -105
  2. package/OBJ/index.d.ts +0 -1
  3. package/OBJ/index.js +0 -2
  4. package/OBJ/index.js.map +0 -1
  5. package/OBJ/objSerializer.d.ts +0 -21
  6. package/OBJ/objSerializer.js +0 -160
  7. package/OBJ/objSerializer.js.map +0 -1
  8. package/glTF/2.0/Extensions/KHR_lights_punctual.d.ts +0 -38
  9. package/glTF/2.0/Extensions/KHR_lights_punctual.js +0 -174
  10. package/glTF/2.0/Extensions/KHR_lights_punctual.js.map +0 -1
  11. package/glTF/2.0/Extensions/KHR_materials_clearcoat.d.ts +0 -24
  12. package/glTF/2.0/Extensions/KHR_materials_clearcoat.js +0 -91
  13. package/glTF/2.0/Extensions/KHR_materials_clearcoat.js.map +0 -1
  14. package/glTF/2.0/Extensions/KHR_materials_sheen.d.ts +0 -24
  15. package/glTF/2.0/Extensions/KHR_materials_sheen.js +0 -74
  16. package/glTF/2.0/Extensions/KHR_materials_sheen.js.map +0 -1
  17. package/glTF/2.0/Extensions/KHR_materials_unlit.d.ts +0 -21
  18. package/glTF/2.0/Extensions/KHR_materials_unlit.js +0 -52
  19. package/glTF/2.0/Extensions/KHR_materials_unlit.js.map +0 -1
  20. package/glTF/2.0/Extensions/KHR_texture_transform.d.ts +0 -34
  21. package/glTF/2.0/Extensions/KHR_texture_transform.js +0 -137
  22. package/glTF/2.0/Extensions/KHR_texture_transform.js.map +0 -1
  23. package/glTF/2.0/Extensions/index.d.ts +0 -5
  24. package/glTF/2.0/Extensions/index.js +0 -6
  25. package/glTF/2.0/Extensions/index.js.map +0 -1
  26. package/glTF/2.0/glTFAnimation.d.ts +0 -200
  27. package/glTF/2.0/glTFAnimation.js +0 -840
  28. package/glTF/2.0/glTFAnimation.js.map +0 -1
  29. package/glTF/2.0/glTFData.d.ts +0 -19
  30. package/glTF/2.0/glTFData.js +0 -53
  31. package/glTF/2.0/glTFData.js.map +0 -1
  32. package/glTF/2.0/glTFExporter.d.ts +0 -445
  33. package/glTF/2.0/glTFExporter.js +0 -1943
  34. package/glTF/2.0/glTFExporter.js.map +0 -1
  35. package/glTF/2.0/glTFExporterExtension.d.ts +0 -74
  36. package/glTF/2.0/glTFExporterExtension.js +0 -3
  37. package/glTF/2.0/glTFExporterExtension.js.map +0 -1
  38. package/glTF/2.0/glTFMaterialExporter.d.ts +0 -230
  39. package/glTF/2.0/glTFMaterialExporter.js +0 -1143
  40. package/glTF/2.0/glTFMaterialExporter.js.map +0 -1
  41. package/glTF/2.0/glTFSerializer.d.ts +0 -60
  42. package/glTF/2.0/glTFSerializer.js +0 -63
  43. package/glTF/2.0/glTFSerializer.js.map +0 -1
  44. package/glTF/2.0/glTFUtilities.d.ts +0 -96
  45. package/glTF/2.0/glTFUtilities.js +0 -196
  46. package/glTF/2.0/glTFUtilities.js.map +0 -1
  47. package/glTF/2.0/index.d.ts +0 -8
  48. package/glTF/2.0/index.js +0 -9
  49. package/glTF/2.0/index.js.map +0 -1
  50. package/glTF/2.0/shaders/textureTransform.fragment.d.ts +0 -5
  51. package/glTF/2.0/shaders/textureTransform.fragment.js +0 -7
  52. package/glTF/2.0/shaders/textureTransform.fragment.js.map +0 -1
  53. package/glTF/glTFFileExporter.d.ts +0 -20
  54. package/glTF/glTFFileExporter.js +0 -3
  55. package/glTF/glTFFileExporter.js.map +0 -1
  56. package/glTF/index.d.ts +0 -2
  57. package/glTF/index.js +0 -3
  58. package/glTF/index.js.map +0 -1
  59. package/index.d.ts +0 -3
  60. package/index.js.map +0 -1
  61. package/legacy/legacy-glTF2Serializer.d.ts +0 -2
  62. package/legacy/legacy-glTF2Serializer.js +0 -44
  63. package/legacy/legacy-glTF2Serializer.js.map +0 -1
  64. package/legacy/legacy-objSerializer.d.ts +0 -1
  65. package/legacy/legacy-objSerializer.js +0 -13
  66. package/legacy/legacy-objSerializer.js.map +0 -1
  67. package/legacy/legacy-stlSerializer.d.ts +0 -1
  68. package/legacy/legacy-stlSerializer.js +0 -13
  69. package/legacy/legacy-stlSerializer.js.map +0 -1
  70. package/legacy/legacy.d.ts +0 -4
  71. package/legacy/legacy.js +0 -5
  72. package/legacy/legacy.js.map +0 -1
  73. package/readme.md +0 -29
  74. package/stl/index.d.ts +0 -1
  75. package/stl/index.js +0 -2
  76. package/stl/index.js.map +0 -1
  77. package/stl/stlSerializer.d.ts +0 -17
  78. package/stl/stlSerializer.js +0 -108
  79. package/stl/stlSerializer.js.map +0 -1
@@ -1,24 +0,0 @@
1
- import { IMaterial } from "babylonjs-gltf2interface";
2
- import { IGLTFExporterExtensionV2 } from "../glTFExporterExtension";
3
- import { _Exporter } from "../glTFExporter";
4
- import { Material } from "@babylonjs/core/Materials/material";
5
- import { BaseTexture } from "@babylonjs/core/Materials/Textures/baseTexture";
6
- /**
7
- * @hidden
8
- */
9
- export declare class KHR_materials_clearcoat implements IGLTFExporterExtensionV2 {
10
- /** Name of this extension */
11
- readonly name = "KHR_materials_clearcoat";
12
- /** Defines whether this extension is enabled */
13
- enabled: boolean;
14
- /** Defines whether this extension is required */
15
- required: boolean;
16
- private _exporter;
17
- private _wasUsed;
18
- constructor(exporter: _Exporter);
19
- dispose(): void;
20
- /** @hidden */
21
- get wasUsed(): boolean;
22
- postExportMaterialAdditionalTextures?(context: string, node: IMaterial, babylonMaterial: Material): BaseTexture[];
23
- postExportMaterialAsync?(context: string, node: IMaterial, babylonMaterial: Material): Promise<IMaterial>;
24
- }
@@ -1,91 +0,0 @@
1
- import { _Exporter } from "../glTFExporter.js";
2
- import { PBRBaseMaterial } from "@babylonjs/core/Materials/PBR/pbrBaseMaterial.js";
3
- import { Tools } from "@babylonjs/core/Misc/tools.js";
4
- var NAME = "KHR_materials_clearcoat";
5
- /**
6
- * @hidden
7
- */
8
- var KHR_materials_clearcoat = /** @class */ (function () {
9
- function KHR_materials_clearcoat(exporter) {
10
- /** Name of this extension */
11
- this.name = NAME;
12
- /** Defines whether this extension is enabled */
13
- this.enabled = true;
14
- /** Defines whether this extension is required */
15
- this.required = false;
16
- this._wasUsed = false;
17
- this._exporter = exporter;
18
- }
19
- KHR_materials_clearcoat.prototype.dispose = function () {
20
- };
21
- Object.defineProperty(KHR_materials_clearcoat.prototype, "wasUsed", {
22
- /** @hidden */
23
- get: function () {
24
- return this._wasUsed;
25
- },
26
- enumerable: false,
27
- configurable: true
28
- });
29
- KHR_materials_clearcoat.prototype.postExportMaterialAdditionalTextures = function (context, node, babylonMaterial) {
30
- var additionalTextures = [];
31
- if (babylonMaterial instanceof PBRBaseMaterial) {
32
- if (babylonMaterial.clearCoat.isEnabled) {
33
- if (babylonMaterial.clearCoat.texture) {
34
- additionalTextures.push(babylonMaterial.clearCoat.texture);
35
- }
36
- if (!babylonMaterial.clearCoat.useRoughnessFromMainTexture && babylonMaterial.clearCoat.textureRoughness) {
37
- additionalTextures.push(babylonMaterial.clearCoat.textureRoughness);
38
- }
39
- if (babylonMaterial.clearCoat.bumpTexture) {
40
- additionalTextures.push(babylonMaterial.clearCoat.bumpTexture);
41
- }
42
- return additionalTextures;
43
- }
44
- }
45
- return [];
46
- };
47
- KHR_materials_clearcoat.prototype.postExportMaterialAsync = function (context, node, babylonMaterial) {
48
- var _this = this;
49
- return new Promise(function (resolve, reject) {
50
- if (babylonMaterial instanceof PBRBaseMaterial) {
51
- if (!babylonMaterial.clearCoat.isEnabled) {
52
- resolve(node);
53
- return;
54
- }
55
- _this._wasUsed = true;
56
- node.extensions = node.extensions || {};
57
- var clearCoatTextureInfo = _this._exporter._glTFMaterialExporter._getTextureInfo(babylonMaterial.clearCoat.texture);
58
- var clearCoatTextureRoughnessInfo = void 0;
59
- if (babylonMaterial.clearCoat.useRoughnessFromMainTexture) {
60
- clearCoatTextureRoughnessInfo = _this._exporter._glTFMaterialExporter._getTextureInfo(babylonMaterial.clearCoat.texture);
61
- }
62
- else {
63
- clearCoatTextureRoughnessInfo = _this._exporter._glTFMaterialExporter._getTextureInfo(babylonMaterial.clearCoat.textureRoughness);
64
- }
65
- if (babylonMaterial.clearCoat.isTintEnabled) {
66
- Tools.Warn("Clear Color tint is not supported for glTF export. Ignoring for: ".concat(babylonMaterial.name));
67
- }
68
- if (babylonMaterial.clearCoat.remapF0OnInterfaceChange) {
69
- Tools.Warn("Clear Color F0 remapping is not supported for glTF export. Ignoring for: ".concat(babylonMaterial.name));
70
- }
71
- var clearCoatNormalTextureInfo = _this._exporter._glTFMaterialExporter._getTextureInfo(babylonMaterial.clearCoat.bumpTexture);
72
- var clearCoatInfo_1 = {
73
- clearcoatFactor: babylonMaterial.clearCoat.intensity,
74
- clearcoatTexture: clearCoatTextureInfo !== null && clearCoatTextureInfo !== void 0 ? clearCoatTextureInfo : undefined,
75
- clearcoatRoughnessFactor: babylonMaterial.clearCoat.roughness,
76
- clearcoatRoughnessTexture: clearCoatTextureRoughnessInfo !== null && clearCoatTextureRoughnessInfo !== void 0 ? clearCoatTextureRoughnessInfo : undefined,
77
- clearcoatNormalTexture: clearCoatNormalTextureInfo !== null && clearCoatNormalTextureInfo !== void 0 ? clearCoatNormalTextureInfo : undefined,
78
- hasTextures: function () {
79
- return clearCoatInfo_1.clearcoatTexture !== null || clearCoatInfo_1.clearcoatRoughnessTexture !== null || clearCoatInfo_1.clearcoatRoughnessTexture !== null;
80
- }
81
- };
82
- node.extensions[NAME] = clearCoatInfo_1;
83
- }
84
- resolve(node);
85
- });
86
- };
87
- return KHR_materials_clearcoat;
88
- }());
89
- export { KHR_materials_clearcoat };
90
- _Exporter.RegisterExtension(NAME, function (exporter) { return new KHR_materials_clearcoat(exporter); });
91
- //# sourceMappingURL=KHR_materials_clearcoat.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"KHR_materials_clearcoat.js","sourceRoot":"","sources":["../../../../../sourceES6/serializers/src/glTF/2.0/Extensions/KHR_materials_clearcoat.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,eAAe,EAAE,MAAM,+CAA+C,CAAC;AAGhF,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAEnD,IAAM,IAAI,GAAG,yBAAyB,CAAC;AAEvC;;GAEG;AACH;IAcI,iCAAY,QAAmB;QAb/B,6BAA6B;QACb,SAAI,GAAG,IAAI,CAAC;QAE5B,gDAAgD;QACzC,YAAO,GAAG,IAAI,CAAC;QAEtB,iDAAiD;QAC1C,aAAQ,GAAG,KAAK,CAAC;QAIhB,aAAQ,GAAG,KAAK,CAAC;QAGrB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC9B,CAAC;IAEM,yCAAO,GAAd;IACA,CAAC;IAGD,sBAAW,4CAAO;QADlB,cAAc;aACd;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC;QACzB,CAAC;;;OAAA;IAEM,sEAAoC,GAA3C,UAA6C,OAAe,EAAE,IAAe,EAAE,eAAyB;QACpG,IAAM,kBAAkB,GAAkB,EAAE,CAAC;QAC7C,IAAI,eAAe,YAAY,eAAe,EAAE;YAC5C,IAAI,eAAe,CAAC,SAAS,CAAC,SAAS,EAAE;gBACrC,IAAI,eAAe,CAAC,SAAS,CAAC,OAAO,EAAE;oBACnC,kBAAkB,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;iBAC9D;gBACD,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,2BAA2B,IAAI,eAAe,CAAC,SAAS,CAAC,gBAAgB,EAAE;oBACtG,kBAAkB,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;iBACvE;gBACD,IAAI,eAAe,CAAC,SAAS,CAAC,WAAW,EAAE;oBACvC,kBAAkB,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;iBAClE;gBACD,OAAO,kBAAkB,CAAC;aAC7B;SACJ;QAED,OAAO,EAAE,CAAC;IACd,CAAC;IAEM,yDAAuB,GAA9B,UAAgC,OAAe,EAAE,IAAe,EAAE,eAAyB;QAA3F,iBA6CC;QA5CG,OAAO,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;YAC/B,IAAI,eAAe,YAAY,eAAe,EAAE;gBAC5C,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,SAAS,EAAE;oBACtC,OAAO,CAAC,IAAI,CAAC,CAAC;oBACd,OAAO;iBACV;gBAED,KAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;gBAErB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC;gBAExC,IAAM,oBAAoB,GAAG,KAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,eAAe,CAAC,eAAe,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;gBACrH,IAAI,6BAA6B,SAAA,CAAC;gBAClC,IAAI,eAAe,CAAC,SAAS,CAAC,2BAA2B,EAAE;oBACvD,6BAA6B,GAAG,KAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,eAAe,CAAC,eAAe,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;iBAC3H;qBAAM;oBACH,6BAA6B,GAAG,KAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,eAAe,CAAC,eAAe,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;iBACpI;gBAED,IAAI,eAAe,CAAC,SAAS,CAAC,aAAa,EAAE;oBACzC,KAAK,CAAC,IAAI,CAAC,2EAAoE,eAAe,CAAC,IAAI,CAAE,CAAC,CAAC;iBAC1G;gBAED,IAAI,eAAe,CAAC,SAAS,CAAC,wBAAwB,EAAE;oBACpD,KAAK,CAAC,IAAI,CAAC,mFAA4E,eAAe,CAAC,IAAI,CAAE,CAAC,CAAC;iBAClH;gBAED,IAAM,0BAA0B,GAAG,KAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,eAAe,CAAC,eAAe,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;gBAE/H,IAAM,eAAa,GAA2B;oBAC1C,eAAe,EAAE,eAAe,CAAC,SAAS,CAAC,SAAS;oBACpD,gBAAgB,EAAE,oBAAoB,aAApB,oBAAoB,cAApB,oBAAoB,GAAI,SAAS;oBACnD,wBAAwB,EAAE,eAAe,CAAC,SAAS,CAAC,SAAS;oBAC7D,yBAAyB,EAAE,6BAA6B,aAA7B,6BAA6B,cAA7B,6BAA6B,GAAI,SAAS;oBACrE,sBAAsB,EAAE,0BAA0B,aAA1B,0BAA0B,cAA1B,0BAA0B,GAAI,SAAS;oBAC/D,WAAW,EAAE;wBACT,OAAO,eAAa,CAAC,gBAAgB,KAAK,IAAI,IAAI,eAAa,CAAC,yBAAyB,KAAK,IAAI,IAAI,eAAa,CAAC,yBAAyB,KAAK,IAAI,CAAC;oBAC3J,CAAC;iBACJ,CAAC;gBAEF,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,eAAa,CAAC;aACzC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;IACP,CAAC;IACL,8BAAC;AAAD,CAAC,AA5FD,IA4FC;;AAED,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,UAAC,QAAQ,IAAK,OAAA,IAAI,uBAAuB,CAAC,QAAQ,CAAC,EAArC,CAAqC,CAAC,CAAC","sourcesContent":["import { IMaterial } from \"babylonjs-gltf2interface\";\r\nimport { IGLTFExporterExtensionV2 } from \"../glTFExporterExtension\";\r\nimport { _Exporter } from \"../glTFExporter\";\r\nimport { Material } from \"@babylonjs/core/Materials/material\";\r\nimport { PBRBaseMaterial } from \"@babylonjs/core/Materials/PBR/pbrBaseMaterial\";\r\nimport { BaseTexture } from \"@babylonjs/core/Materials/Textures/baseTexture\";\r\nimport { IKHRMaterialsClearcoat } from \"babylonjs-gltf2interface\";\r\nimport { Tools } from \"@babylonjs/core/Misc/tools\";\r\n\r\nconst NAME = \"KHR_materials_clearcoat\";\r\n\r\n/**\r\n * @hidden\r\n */\r\nexport class KHR_materials_clearcoat implements IGLTFExporterExtensionV2 {\r\n /** Name of this extension */\r\n public readonly name = NAME;\r\n\r\n /** Defines whether this extension is enabled */\r\n public enabled = true;\r\n\r\n /** Defines whether this extension is required */\r\n public required = false;\r\n\r\n private _exporter: _Exporter;\r\n\r\n private _wasUsed = false;\r\n\r\n constructor(exporter: _Exporter) {\r\n this._exporter = exporter;\r\n }\r\n\r\n public dispose() {\r\n }\r\n\r\n /** @hidden */\r\n public get wasUsed() {\r\n return this._wasUsed;\r\n }\r\n\r\n public postExportMaterialAdditionalTextures?(context: string, node: IMaterial, babylonMaterial: Material): BaseTexture[] {\r\n const additionalTextures: BaseTexture[] = [];\r\n if (babylonMaterial instanceof PBRBaseMaterial) {\r\n if (babylonMaterial.clearCoat.isEnabled) {\r\n if (babylonMaterial.clearCoat.texture) {\r\n additionalTextures.push(babylonMaterial.clearCoat.texture);\r\n }\r\n if (!babylonMaterial.clearCoat.useRoughnessFromMainTexture && babylonMaterial.clearCoat.textureRoughness) {\r\n additionalTextures.push(babylonMaterial.clearCoat.textureRoughness);\r\n }\r\n if (babylonMaterial.clearCoat.bumpTexture) {\r\n additionalTextures.push(babylonMaterial.clearCoat.bumpTexture);\r\n }\r\n return additionalTextures;\r\n }\r\n }\r\n\r\n return [];\r\n }\r\n\r\n public postExportMaterialAsync?(context: string, node: IMaterial, babylonMaterial: Material): Promise<IMaterial> {\r\n return new Promise((resolve, reject) => {\r\n if (babylonMaterial instanceof PBRBaseMaterial) {\r\n if (!babylonMaterial.clearCoat.isEnabled) {\r\n resolve(node);\r\n return;\r\n }\r\n\r\n this._wasUsed = true;\r\n\r\n node.extensions = node.extensions || {};\r\n\r\n const clearCoatTextureInfo = this._exporter._glTFMaterialExporter._getTextureInfo(babylonMaterial.clearCoat.texture);\r\n let clearCoatTextureRoughnessInfo;\r\n if (babylonMaterial.clearCoat.useRoughnessFromMainTexture) {\r\n clearCoatTextureRoughnessInfo = this._exporter._glTFMaterialExporter._getTextureInfo(babylonMaterial.clearCoat.texture);\r\n } else {\r\n clearCoatTextureRoughnessInfo = this._exporter._glTFMaterialExporter._getTextureInfo(babylonMaterial.clearCoat.textureRoughness);\r\n }\r\n\r\n if (babylonMaterial.clearCoat.isTintEnabled) {\r\n Tools.Warn(`Clear Color tint is not supported for glTF export. Ignoring for: ${babylonMaterial.name}`);\r\n }\r\n\r\n if (babylonMaterial.clearCoat.remapF0OnInterfaceChange) {\r\n Tools.Warn(`Clear Color F0 remapping is not supported for glTF export. Ignoring for: ${babylonMaterial.name}`);\r\n }\r\n\r\n const clearCoatNormalTextureInfo = this._exporter._glTFMaterialExporter._getTextureInfo(babylonMaterial.clearCoat.bumpTexture);\r\n\r\n const clearCoatInfo: IKHRMaterialsClearcoat = {\r\n clearcoatFactor: babylonMaterial.clearCoat.intensity,\r\n clearcoatTexture: clearCoatTextureInfo ?? undefined,\r\n clearcoatRoughnessFactor: babylonMaterial.clearCoat.roughness,\r\n clearcoatRoughnessTexture: clearCoatTextureRoughnessInfo ?? undefined,\r\n clearcoatNormalTexture: clearCoatNormalTextureInfo ?? undefined,\r\n hasTextures: () => {\r\n return clearCoatInfo.clearcoatTexture !== null || clearCoatInfo.clearcoatRoughnessTexture !== null || clearCoatInfo.clearcoatRoughnessTexture !== null;\r\n }\r\n };\r\n\r\n node.extensions[NAME] = clearCoatInfo;\r\n }\r\n resolve(node);\r\n });\r\n }\r\n}\r\n\r\n_Exporter.RegisterExtension(NAME, (exporter) => new KHR_materials_clearcoat(exporter));\r\n"]}
@@ -1,24 +0,0 @@
1
- import { IMaterial } from "babylonjs-gltf2interface";
2
- import { IGLTFExporterExtensionV2 } from "../glTFExporterExtension";
3
- import { _Exporter } from "../glTFExporter";
4
- import { Material } from "@babylonjs/core/Materials/material";
5
- import { BaseTexture } from "@babylonjs/core/Materials/Textures/baseTexture";
6
- /**
7
- * @hidden
8
- */
9
- export declare class KHR_materials_sheen implements IGLTFExporterExtensionV2 {
10
- /** Name of this extension */
11
- readonly name = "KHR_materials_sheen";
12
- /** Defines whether this extension is enabled */
13
- enabled: boolean;
14
- /** Defines whether this extension is required */
15
- required: boolean;
16
- private _wasUsed;
17
- private _exporter;
18
- constructor(exporter: _Exporter);
19
- dispose(): void;
20
- /** @hidden */
21
- get wasUsed(): boolean;
22
- postExportMaterialAdditionalTextures(context: string, node: IMaterial, babylonMaterial: Material): BaseTexture[];
23
- postExportMaterialAsync(context: string, node: IMaterial, babylonMaterial: Material): Promise<IMaterial>;
24
- }
@@ -1,74 +0,0 @@
1
- import { _Exporter } from "../glTFExporter.js";
2
- import { PBRMaterial } from "@babylonjs/core/Materials/PBR/pbrMaterial.js";
3
- var NAME = "KHR_materials_sheen";
4
- /**
5
- * @hidden
6
- */
7
- var KHR_materials_sheen = /** @class */ (function () {
8
- function KHR_materials_sheen(exporter) {
9
- /** Name of this extension */
10
- this.name = NAME;
11
- /** Defines whether this extension is enabled */
12
- this.enabled = true;
13
- /** Defines whether this extension is required */
14
- this.required = false;
15
- this._wasUsed = false;
16
- this._exporter = exporter;
17
- }
18
- KHR_materials_sheen.prototype.dispose = function () {
19
- };
20
- Object.defineProperty(KHR_materials_sheen.prototype, "wasUsed", {
21
- /** @hidden */
22
- get: function () {
23
- return this._wasUsed;
24
- },
25
- enumerable: false,
26
- configurable: true
27
- });
28
- KHR_materials_sheen.prototype.postExportMaterialAdditionalTextures = function (context, node, babylonMaterial) {
29
- if (babylonMaterial instanceof PBRMaterial) {
30
- if (babylonMaterial.sheen.isEnabled && babylonMaterial.sheen.texture) {
31
- return [babylonMaterial.sheen.texture];
32
- }
33
- }
34
- return [];
35
- };
36
- KHR_materials_sheen.prototype.postExportMaterialAsync = function (context, node, babylonMaterial) {
37
- var _this = this;
38
- return new Promise(function (resolve, reject) {
39
- var _a, _b, _c, _d;
40
- if (babylonMaterial instanceof PBRMaterial) {
41
- if (!babylonMaterial.sheen.isEnabled) {
42
- resolve(node);
43
- return;
44
- }
45
- _this._wasUsed = true;
46
- if (node.extensions == null) {
47
- node.extensions = {};
48
- }
49
- var sheenInfo_1 = {
50
- sheenColorFactor: babylonMaterial.sheen.color.asArray(),
51
- sheenRoughnessFactor: (_a = babylonMaterial.sheen.roughness) !== null && _a !== void 0 ? _a : 0,
52
- hasTextures: function () {
53
- return sheenInfo_1.sheenColorTexture !== null || sheenInfo_1.sheenRoughnessTexture !== null;
54
- }
55
- };
56
- if (babylonMaterial.sheen.texture) {
57
- sheenInfo_1.sheenColorTexture = (_b = _this._exporter._glTFMaterialExporter._getTextureInfo(babylonMaterial.sheen.texture)) !== null && _b !== void 0 ? _b : undefined;
58
- }
59
- if (babylonMaterial.sheen.textureRoughness && !babylonMaterial.sheen.useRoughnessFromMainTexture) {
60
- sheenInfo_1.sheenRoughnessTexture = (_c = _this._exporter._glTFMaterialExporter._getTextureInfo(babylonMaterial.sheen.textureRoughness)) !== null && _c !== void 0 ? _c : undefined;
61
- }
62
- else if (babylonMaterial.sheen.texture && babylonMaterial.sheen.useRoughnessFromMainTexture) {
63
- sheenInfo_1.sheenRoughnessTexture = (_d = _this._exporter._glTFMaterialExporter._getTextureInfo(babylonMaterial.sheen.texture)) !== null && _d !== void 0 ? _d : undefined;
64
- }
65
- node.extensions[NAME] = sheenInfo_1;
66
- }
67
- resolve(node);
68
- });
69
- };
70
- return KHR_materials_sheen;
71
- }());
72
- export { KHR_materials_sheen };
73
- _Exporter.RegisterExtension(NAME, function (exporter) { return new KHR_materials_sheen(exporter); });
74
- //# sourceMappingURL=KHR_materials_sheen.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"KHR_materials_sheen.js","sourceRoot":"","sources":["../../../../../sourceES6/serializers/src/glTF/2.0/Extensions/KHR_materials_sheen.ts"],"names":[],"mappings":"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","sourcesContent":["import { IMaterial } from \"babylonjs-gltf2interface\";\r\nimport { IGLTFExporterExtensionV2 } from \"../glTFExporterExtension\";\r\nimport { _Exporter } from \"../glTFExporter\";\r\nimport { Material } from \"@babylonjs/core/Materials/material\";\r\nimport { PBRMaterial } from \"@babylonjs/core/Materials/PBR/pbrMaterial\";\r\nimport { BaseTexture } from \"@babylonjs/core/Materials/Textures/baseTexture\";\r\nimport { IKHRMaterialsSheen } from \"babylonjs-gltf2interface\";\r\n\r\nconst NAME = \"KHR_materials_sheen\";\r\n\r\n/**\r\n * @hidden\r\n */\r\nexport class KHR_materials_sheen implements IGLTFExporterExtensionV2 {\r\n /** Name of this extension */\r\n public readonly name = NAME;\r\n\r\n /** Defines whether this extension is enabled */\r\n public enabled = true;\r\n\r\n /** Defines whether this extension is required */\r\n public required = false;\r\n\r\n private _wasUsed = false;\r\n\r\n private _exporter: _Exporter;\r\n\r\n constructor(exporter: _Exporter) {\r\n this._exporter = exporter;\r\n }\r\n\r\n public dispose() {\r\n }\r\n\r\n /** @hidden */\r\n public get wasUsed() {\r\n return this._wasUsed;\r\n }\r\n\r\n public postExportMaterialAdditionalTextures(context: string, node: IMaterial, babylonMaterial: Material): BaseTexture[] {\r\n if (babylonMaterial instanceof PBRMaterial) {\r\n if (babylonMaterial.sheen.isEnabled && babylonMaterial.sheen.texture) {\r\n return [babylonMaterial.sheen.texture];\r\n }\r\n }\r\n\r\n return [];\r\n }\r\n\r\n public postExportMaterialAsync(context: string, node: IMaterial, babylonMaterial: Material): Promise<IMaterial> {\r\n return new Promise((resolve, reject) => {\r\n if (babylonMaterial instanceof PBRMaterial) {\r\n if (!babylonMaterial.sheen.isEnabled) {\r\n resolve(node);\r\n return;\r\n }\r\n\r\n this._wasUsed = true;\r\n\r\n if (node.extensions == null) {\r\n node.extensions = {};\r\n }\r\n const sheenInfo: IKHRMaterialsSheen = {\r\n sheenColorFactor: babylonMaterial.sheen.color.asArray(),\r\n sheenRoughnessFactor: babylonMaterial.sheen.roughness ?? 0,\r\n hasTextures: () => {\r\n return sheenInfo.sheenColorTexture !== null || sheenInfo.sheenRoughnessTexture !== null;\r\n }\r\n };\r\n\r\n if (babylonMaterial.sheen.texture) {\r\n sheenInfo.sheenColorTexture = this._exporter._glTFMaterialExporter._getTextureInfo(babylonMaterial.sheen.texture) ?? undefined;\r\n }\r\n\r\n if (babylonMaterial.sheen.textureRoughness && !babylonMaterial.sheen.useRoughnessFromMainTexture) {\r\n sheenInfo.sheenRoughnessTexture = this._exporter._glTFMaterialExporter._getTextureInfo(babylonMaterial.sheen.textureRoughness) ?? undefined;\r\n } else if (babylonMaterial.sheen.texture && babylonMaterial.sheen.useRoughnessFromMainTexture) {\r\n sheenInfo.sheenRoughnessTexture = this._exporter._glTFMaterialExporter._getTextureInfo(babylonMaterial.sheen.texture) ?? undefined;\r\n }\r\n\r\n node.extensions[NAME] = sheenInfo;\r\n }\r\n resolve(node);\r\n });\r\n }\r\n}\r\n\r\n_Exporter.RegisterExtension(NAME, (exporter) => new KHR_materials_sheen(exporter));"]}
@@ -1,21 +0,0 @@
1
- import { IMaterial } from "babylonjs-gltf2interface";
2
- import { IGLTFExporterExtensionV2 } from "../glTFExporterExtension";
3
- import { _Exporter } from "../glTFExporter";
4
- import { Material } from '@babylonjs/core/Materials/material';
5
- /**
6
- * @hidden
7
- */
8
- export declare class KHR_materials_unlit implements IGLTFExporterExtensionV2 {
9
- /** Name of this extension */
10
- readonly name = "KHR_materials_unlit";
11
- /** Defines whether this extension is enabled */
12
- enabled: boolean;
13
- /** Defines whether this extension is required */
14
- required: boolean;
15
- private _wasUsed;
16
- constructor(exporter: _Exporter);
17
- /** @hidden */
18
- get wasUsed(): boolean;
19
- dispose(): void;
20
- postExportMaterialAsync?(context: string, node: IMaterial, babylonMaterial: Material): Promise<IMaterial>;
21
- }
@@ -1,52 +0,0 @@
1
- import { _Exporter } from "../glTFExporter.js";
2
- import { PBRMaterial } from '@babylonjs/core/Materials/PBR/pbrMaterial.js';
3
- import { StandardMaterial } from '@babylonjs/core/Materials/standardMaterial.js';
4
- var NAME = "KHR_materials_unlit";
5
- /**
6
- * @hidden
7
- */
8
- var KHR_materials_unlit = /** @class */ (function () {
9
- function KHR_materials_unlit(exporter) {
10
- /** Name of this extension */
11
- this.name = NAME;
12
- /** Defines whether this extension is enabled */
13
- this.enabled = true;
14
- /** Defines whether this extension is required */
15
- this.required = false;
16
- this._wasUsed = false;
17
- }
18
- Object.defineProperty(KHR_materials_unlit.prototype, "wasUsed", {
19
- /** @hidden */
20
- get: function () {
21
- return this._wasUsed;
22
- },
23
- enumerable: false,
24
- configurable: true
25
- });
26
- KHR_materials_unlit.prototype.dispose = function () {
27
- };
28
- KHR_materials_unlit.prototype.postExportMaterialAsync = function (context, node, babylonMaterial) {
29
- var _this = this;
30
- return new Promise(function (resolve, reject) {
31
- var unlitMaterial = false;
32
- if (babylonMaterial instanceof PBRMaterial) {
33
- unlitMaterial = babylonMaterial.unlit;
34
- }
35
- else if (babylonMaterial instanceof StandardMaterial) {
36
- unlitMaterial = babylonMaterial.disableLighting;
37
- }
38
- if (unlitMaterial) {
39
- _this._wasUsed = true;
40
- if (node.extensions == null) {
41
- node.extensions = {};
42
- }
43
- node.extensions[NAME] = {};
44
- }
45
- resolve(node);
46
- });
47
- };
48
- return KHR_materials_unlit;
49
- }());
50
- export { KHR_materials_unlit };
51
- _Exporter.RegisterExtension(NAME, function (exporter) { return new KHR_materials_unlit(exporter); });
52
- //# sourceMappingURL=KHR_materials_unlit.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"KHR_materials_unlit.js","sourceRoot":"","sources":["../../../../../sourceES6/serializers/src/glTF/2.0/Extensions/KHR_materials_unlit.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAE9E,IAAM,IAAI,GAAG,qBAAqB,CAAC;AAEnC;;GAEG;AACH;IAYI,6BAAY,QAAmB;QAX/B,6BAA6B;QACb,SAAI,GAAG,IAAI,CAAC;QAE5B,gDAAgD;QACzC,YAAO,GAAG,IAAI,CAAC;QAEtB,iDAAiD;QAC1C,aAAQ,GAAG,KAAK,CAAC;QAEhB,aAAQ,GAAG,KAAK,CAAC;IAGzB,CAAC;IAGD,sBAAW,wCAAO;QADlB,cAAc;aACd;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC;QACzB,CAAC;;;OAAA;IAEM,qCAAO,GAAd;IACA,CAAC;IAEM,qDAAuB,GAA9B,UAAgC,OAAe,EAAE,IAAe,EAAE,eAAyB;QAA3F,iBAsBC;QArBG,OAAO,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;YAC/B,IAAI,aAAa,GAAG,KAAK,CAAC;YAE1B,IAAI,eAAe,YAAY,WAAW,EAAE;gBACxC,aAAa,GAAG,eAAe,CAAC,KAAK,CAAC;aACzC;iBAAM,IAAI,eAAe,YAAY,gBAAgB,EAAE;gBACpD,aAAa,GAAG,eAAe,CAAC,eAAe,CAAC;aACnD;YAED,IAAI,aAAa,EAAE;gBACf,KAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;gBAErB,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,EAAE;oBACzB,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;iBACxB;gBAED,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;aAC9B;YAED,OAAO,CAAC,IAAI,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;IACP,CAAC;IACL,0BAAC;AAAD,CAAC,AA9CD,IA8CC;;AAED,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,UAAC,QAAQ,IAAK,OAAA,IAAI,mBAAmB,CAAC,QAAQ,CAAC,EAAjC,CAAiC,CAAC,CAAC","sourcesContent":["import { IMaterial } from \"babylonjs-gltf2interface\";\r\nimport { IGLTFExporterExtensionV2 } from \"../glTFExporterExtension\";\r\nimport { _Exporter } from \"../glTFExporter\";\r\nimport { Material } from '@babylonjs/core/Materials/material';\r\nimport { PBRMaterial } from '@babylonjs/core/Materials/PBR/pbrMaterial';\r\nimport { StandardMaterial } from '@babylonjs/core/Materials/standardMaterial';\r\n\r\nconst NAME = \"KHR_materials_unlit\";\r\n\r\n/**\r\n * @hidden\r\n */\r\nexport class KHR_materials_unlit implements IGLTFExporterExtensionV2 {\r\n /** Name of this extension */\r\n public readonly name = NAME;\r\n\r\n /** Defines whether this extension is enabled */\r\n public enabled = true;\r\n\r\n /** Defines whether this extension is required */\r\n public required = false;\r\n\r\n private _wasUsed = false;\r\n\r\n constructor(exporter: _Exporter) {\r\n }\r\n\r\n /** @hidden */\r\n public get wasUsed() {\r\n return this._wasUsed;\r\n }\r\n\r\n public dispose() {\r\n }\r\n\r\n public postExportMaterialAsync?(context: string, node: IMaterial, babylonMaterial: Material): Promise<IMaterial> {\r\n return new Promise((resolve, reject) => {\r\n let unlitMaterial = false;\r\n\r\n if (babylonMaterial instanceof PBRMaterial) {\r\n unlitMaterial = babylonMaterial.unlit;\r\n } else if (babylonMaterial instanceof StandardMaterial) {\r\n unlitMaterial = babylonMaterial.disableLighting;\r\n }\r\n\r\n if (unlitMaterial) {\r\n this._wasUsed = true;\r\n\r\n if (node.extensions == null) {\r\n node.extensions = {};\r\n }\r\n\r\n node.extensions[NAME] = {};\r\n }\r\n\r\n resolve(node);\r\n });\r\n }\r\n}\r\n\r\n_Exporter.RegisterExtension(NAME, (exporter) => new KHR_materials_unlit(exporter));"]}
@@ -1,34 +0,0 @@
1
- import { ImageMimeType, ITextureInfo } from "babylonjs-gltf2interface";
2
- import { Texture } from "@babylonjs/core/Materials/Textures/texture";
3
- import { IGLTFExporterExtensionV2 } from "../glTFExporterExtension";
4
- import { _Exporter } from "../glTFExporter";
5
- import "../shaders/textureTransform.fragment";
6
- /**
7
- * @hidden
8
- */
9
- export declare class KHR_texture_transform implements IGLTFExporterExtensionV2 {
10
- private _recordedTextures;
11
- /** Name of this extension */
12
- readonly name = "KHR_texture_transform";
13
- /** Defines whether this extension is enabled */
14
- enabled: boolean;
15
- /** Defines whether this extension is required */
16
- required: boolean;
17
- /** Reference to the glTF exporter */
18
- private _wasUsed;
19
- constructor(exporter: _Exporter);
20
- dispose(): void;
21
- /** @hidden */
22
- get wasUsed(): boolean;
23
- postExportTexture?(context: string, textureInfo: ITextureInfo, babylonTexture: Texture): void;
24
- preExportTextureAsync(context: string, babylonTexture: Texture, mimeType: ImageMimeType): Promise<Texture>;
25
- /**
26
- * Transform the babylon texture by the offset, rotation and scale parameters using a procedural texture
27
- * @param babylonTexture
28
- * @param offset
29
- * @param rotation
30
- * @param scale
31
- * @param scene
32
- */
33
- private _textureTransformTextureAsync;
34
- }
@@ -1,137 +0,0 @@
1
- import { Tools } from "@babylonjs/core/Misc/tools.js";
2
- import { ProceduralTexture } from "@babylonjs/core/Materials/Textures/Procedurals/proceduralTexture.js";
3
- import { _Exporter } from "../glTFExporter.js";
4
- var NAME = "KHR_texture_transform";
5
- import "../shaders/textureTransform.fragment.js";
6
- /**
7
- * @hidden
8
- */
9
- var KHR_texture_transform = /** @class */ (function () {
10
- function KHR_texture_transform(exporter) {
11
- this._recordedTextures = [];
12
- /** Name of this extension */
13
- this.name = NAME;
14
- /** Defines whether this extension is enabled */
15
- this.enabled = true;
16
- /** Defines whether this extension is required */
17
- this.required = false;
18
- /** Reference to the glTF exporter */
19
- this._wasUsed = false;
20
- }
21
- KHR_texture_transform.prototype.dispose = function () {
22
- for (var _i = 0, _a = this._recordedTextures; _i < _a.length; _i++) {
23
- var texture = _a[_i];
24
- texture.dispose();
25
- }
26
- };
27
- Object.defineProperty(KHR_texture_transform.prototype, "wasUsed", {
28
- /** @hidden */
29
- get: function () {
30
- return this._wasUsed;
31
- },
32
- enumerable: false,
33
- configurable: true
34
- });
35
- KHR_texture_transform.prototype.postExportTexture = function (context, textureInfo, babylonTexture) {
36
- var canUseExtension = babylonTexture && ((babylonTexture.uAng === 0 && babylonTexture.wAng === 0 && babylonTexture.vAng === 0) || (babylonTexture.uRotationCenter === 0 && babylonTexture.vRotationCenter === 0));
37
- if (canUseExtension) {
38
- var textureTransform = {};
39
- var transformIsRequired = false;
40
- if (babylonTexture.uOffset !== 0 || babylonTexture.vOffset !== 0) {
41
- textureTransform.offset = [babylonTexture.uOffset, babylonTexture.vOffset];
42
- transformIsRequired = true;
43
- }
44
- if (babylonTexture.uScale !== 1 || babylonTexture.vScale !== 1) {
45
- textureTransform.scale = [babylonTexture.uScale, babylonTexture.vScale];
46
- transformIsRequired = true;
47
- }
48
- if (babylonTexture.wAng !== 0) {
49
- textureTransform.rotation = babylonTexture.wAng;
50
- transformIsRequired = true;
51
- }
52
- if (babylonTexture.coordinatesIndex !== 0) {
53
- textureTransform.texCoord = babylonTexture.coordinatesIndex;
54
- transformIsRequired = true;
55
- }
56
- if (!transformIsRequired) {
57
- return;
58
- }
59
- this._wasUsed = true;
60
- if (!textureInfo.extensions) {
61
- textureInfo.extensions = {};
62
- }
63
- textureInfo.extensions[NAME] = textureTransform;
64
- }
65
- };
66
- KHR_texture_transform.prototype.preExportTextureAsync = function (context, babylonTexture, mimeType) {
67
- var _this = this;
68
- return new Promise(function (resolve, reject) {
69
- var scene = babylonTexture.getScene();
70
- if (!scene) {
71
- reject("".concat(context, ": \"scene\" is not defined for Babylon texture ").concat(babylonTexture.name, "!"));
72
- return;
73
- }
74
- var bakeTextureTransform = false;
75
- /*
76
- * The KHR_texture_transform schema only supports rotation around the origin.
77
- * the texture must be baked to preserve appearance.
78
- * see: https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Khronos/KHR_texture_transform#gltf-schema-updates
79
- */
80
- if ((babylonTexture.uAng !== 0 || babylonTexture.wAng !== 0 || babylonTexture.vAng !== 0) && (babylonTexture.uRotationCenter !== 0 || babylonTexture.vRotationCenter !== 0)) {
81
- bakeTextureTransform = true;
82
- }
83
- if (!bakeTextureTransform) {
84
- resolve(babylonTexture);
85
- return;
86
- }
87
- return _this._textureTransformTextureAsync(babylonTexture, scene)
88
- .then(function (proceduralTexture) {
89
- resolve(proceduralTexture);
90
- })
91
- .catch(function (e) {
92
- reject(e);
93
- });
94
- });
95
- };
96
- /**
97
- * Transform the babylon texture by the offset, rotation and scale parameters using a procedural texture
98
- * @param babylonTexture
99
- * @param offset
100
- * @param rotation
101
- * @param scale
102
- * @param scene
103
- */
104
- KHR_texture_transform.prototype._textureTransformTextureAsync = function (babylonTexture, scene) {
105
- var _this = this;
106
- return new Promise(function (resolve) {
107
- var proceduralTexture = new ProceduralTexture("".concat(babylonTexture.name), babylonTexture.getSize(), "textureTransform", scene);
108
- if (!proceduralTexture) {
109
- Tools.Log("Cannot create procedural texture for ".concat(babylonTexture.name, "!"));
110
- resolve(babylonTexture);
111
- }
112
- proceduralTexture.reservedDataStore = {
113
- hidden: true,
114
- source: babylonTexture
115
- };
116
- _this._recordedTextures.push(proceduralTexture);
117
- proceduralTexture.coordinatesIndex = babylonTexture.coordinatesIndex;
118
- proceduralTexture.setTexture("textureSampler", babylonTexture);
119
- proceduralTexture.setMatrix("textureTransformMat", babylonTexture.getTextureMatrix());
120
- // isReady trigger creation of effect if it doesnt exist yet
121
- if (proceduralTexture.isReady()) {
122
- proceduralTexture.render();
123
- resolve(proceduralTexture);
124
- }
125
- else {
126
- proceduralTexture.getEffect().executeWhenCompiled(function () {
127
- proceduralTexture.render();
128
- resolve(proceduralTexture);
129
- });
130
- }
131
- });
132
- };
133
- return KHR_texture_transform;
134
- }());
135
- export { KHR_texture_transform };
136
- _Exporter.RegisterExtension(NAME, function (exporter) { return new KHR_texture_transform(exporter); });
137
- //# sourceMappingURL=KHR_texture_transform.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"KHR_texture_transform.js","sourceRoot":"","sources":["../../../../../sourceES6/serializers/src/glTF/2.0/Extensions/KHR_texture_transform.ts"],"names":[],"mappings":"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","sourcesContent":["import { ImageMimeType, ITextureInfo } from \"babylonjs-gltf2interface\";\r\nimport { Tools } from \"@babylonjs/core/Misc/tools\";\r\nimport { Texture } from \"@babylonjs/core/Materials/Textures/texture\";\r\nimport { ProceduralTexture } from \"@babylonjs/core/Materials/Textures/Procedurals/proceduralTexture\";\r\nimport { Scene } from \"@babylonjs/core/scene\";\r\n\r\nimport { IGLTFExporterExtensionV2 } from \"../glTFExporterExtension\";\r\nimport { _Exporter } from \"../glTFExporter\";\r\nimport { IKHRTextureTransform } from 'babylonjs-gltf2interface';\r\n\r\nconst NAME = \"KHR_texture_transform\";\r\n\r\nimport \"../shaders/textureTransform.fragment\";\r\n\r\n/**\r\n * @hidden\r\n */\r\nexport class KHR_texture_transform implements IGLTFExporterExtensionV2 {\r\n private _recordedTextures: ProceduralTexture[] = [];\r\n\r\n /** Name of this extension */\r\n public readonly name = NAME;\r\n\r\n /** Defines whether this extension is enabled */\r\n public enabled = true;\r\n\r\n /** Defines whether this extension is required */\r\n public required = false;\r\n\r\n /** Reference to the glTF exporter */\r\n private _wasUsed = false;\r\n\r\n constructor(exporter: _Exporter) {\r\n }\r\n\r\n public dispose() {\r\n for (var texture of this._recordedTextures) {\r\n texture.dispose();\r\n }\r\n }\r\n\r\n /** @hidden */\r\n public get wasUsed() {\r\n return this._wasUsed;\r\n }\r\n\r\n public postExportTexture?(context: string, textureInfo: ITextureInfo, babylonTexture: Texture): void {\r\n const canUseExtension = babylonTexture && ((babylonTexture.uAng === 0 && babylonTexture.wAng === 0 && babylonTexture.vAng === 0) || (babylonTexture.uRotationCenter === 0 && babylonTexture.vRotationCenter === 0));\r\n\r\n if (canUseExtension) {\r\n let textureTransform: IKHRTextureTransform = {};\r\n let transformIsRequired = false;\r\n\r\n if (babylonTexture.uOffset !== 0 || babylonTexture.vOffset !== 0) {\r\n textureTransform.offset = [babylonTexture.uOffset, babylonTexture.vOffset];\r\n transformIsRequired = true;\r\n }\r\n\r\n if (babylonTexture.uScale !== 1 || babylonTexture.vScale !== 1) {\r\n textureTransform.scale = [babylonTexture.uScale, babylonTexture.vScale];\r\n transformIsRequired = true;\r\n }\r\n\r\n if (babylonTexture.wAng !== 0) {\r\n textureTransform.rotation = babylonTexture.wAng;\r\n transformIsRequired = true;\r\n }\r\n\r\n if (babylonTexture.coordinatesIndex !== 0) {\r\n textureTransform.texCoord = babylonTexture.coordinatesIndex;\r\n transformIsRequired = true;\r\n }\r\n\r\n if (!transformIsRequired) {\r\n return;\r\n }\r\n\r\n this._wasUsed = true;\r\n if (!textureInfo.extensions) {\r\n textureInfo.extensions = {};\r\n }\r\n textureInfo.extensions[NAME] = textureTransform;\r\n }\r\n }\r\n\r\n public preExportTextureAsync(context: string, babylonTexture: Texture, mimeType: ImageMimeType): Promise<Texture> {\r\n return new Promise((resolve, reject) => {\r\n const scene = babylonTexture.getScene();\r\n if (!scene) {\r\n reject(`${context}: \"scene\" is not defined for Babylon texture ${babylonTexture.name}!`);\r\n return;\r\n }\r\n\r\n let bakeTextureTransform = false;\r\n\r\n /*\r\n * The KHR_texture_transform schema only supports rotation around the origin.\r\n * the texture must be baked to preserve appearance.\r\n * see: https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Khronos/KHR_texture_transform#gltf-schema-updates\r\n */\r\n if ((babylonTexture.uAng !== 0 || babylonTexture.wAng !== 0 || babylonTexture.vAng !== 0) && (babylonTexture.uRotationCenter !== 0 || babylonTexture.vRotationCenter !== 0)) {\r\n bakeTextureTransform = true;\r\n }\r\n\r\n if (!bakeTextureTransform) {\r\n resolve(babylonTexture);\r\n return;\r\n }\r\n\r\n return this._textureTransformTextureAsync(babylonTexture, scene)\r\n .then((proceduralTexture) => {\r\n resolve(proceduralTexture);\r\n })\r\n .catch((e) => {\r\n reject(e);\r\n });\r\n });\r\n }\r\n\r\n /**\r\n * Transform the babylon texture by the offset, rotation and scale parameters using a procedural texture\r\n * @param babylonTexture\r\n * @param offset\r\n * @param rotation\r\n * @param scale\r\n * @param scene\r\n */\r\n private _textureTransformTextureAsync(babylonTexture: Texture, scene: Scene): Promise<Texture> {\r\n return new Promise((resolve) => {\r\n const proceduralTexture = new ProceduralTexture(`${babylonTexture.name}`, babylonTexture.getSize(), \"textureTransform\", scene);\r\n if (!proceduralTexture) {\r\n Tools.Log(`Cannot create procedural texture for ${babylonTexture.name}!`);\r\n resolve(babylonTexture);\r\n }\r\n\r\n proceduralTexture.reservedDataStore = {\r\n hidden: true,\r\n source: babylonTexture\r\n };\r\n\r\n this._recordedTextures.push(proceduralTexture);\r\n\r\n proceduralTexture.coordinatesIndex = babylonTexture.coordinatesIndex;\r\n proceduralTexture.setTexture(\"textureSampler\", babylonTexture);\r\n proceduralTexture.setMatrix(\"textureTransformMat\", babylonTexture.getTextureMatrix());\r\n\r\n // isReady trigger creation of effect if it doesnt exist yet\r\n if (proceduralTexture.isReady()) {\r\n proceduralTexture.render();\r\n resolve(proceduralTexture);\r\n } else {\r\n proceduralTexture.getEffect().executeWhenCompiled(() => {\r\n proceduralTexture.render();\r\n resolve(proceduralTexture);\r\n });\r\n }\r\n });\r\n }\r\n}\r\n\r\n_Exporter.RegisterExtension(NAME, (exporter) => new KHR_texture_transform(exporter));"]}
@@ -1,5 +0,0 @@
1
- export * from "./KHR_texture_transform";
2
- export * from "./KHR_lights_punctual";
3
- export * from "./KHR_materials_clearcoat";
4
- export * from "./KHR_materials_sheen";
5
- export * from "./KHR_materials_unlit";
@@ -1,6 +0,0 @@
1
- export * from "./KHR_texture_transform.js";
2
- export * from "./KHR_lights_punctual.js";
3
- export * from "./KHR_materials_clearcoat.js";
4
- export * from "./KHR_materials_sheen.js";
5
- export * from "./KHR_materials_unlit.js";
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../sourceES6/serializers/src/glTF/2.0/Extensions/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC","sourcesContent":["export * from \"./KHR_texture_transform\";\r\nexport * from \"./KHR_lights_punctual\";\r\nexport * from \"./KHR_materials_clearcoat\";\r\nexport * from \"./KHR_materials_sheen\";\r\nexport * from \"./KHR_materials_unlit\";"]}