MtlObjBridge.js 908 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. /**
  2. * @author Kai Salmen / https://kaisalmen.de
  3. * Development repository: https://github.com/kaisalmen/WWOBJLoader
  4. */
  5. import { MTLLoader } from "../../../../jsm/loaders/MTLLoader.js";
  6. const MtlObjBridge = {
  7. /**
  8. *
  9. * @param processResult
  10. * @param assetLoader
  11. */
  12. link: function ( processResult, assetLoader ) {
  13. if ( typeof assetLoader.addMaterials === 'function' ) {
  14. assetLoader.addMaterials( this.addMaterialsFromMtlLoader( processResult ), true );
  15. }
  16. },
  17. /**
  18. * Returns the array instance of {@link MTLLoader.MaterialCreator}.
  19. *
  20. * @param Instance of {@link MTLLoader.MaterialCreator}
  21. */
  22. addMaterialsFromMtlLoader: function ( materialCreator ) {
  23. let newMaterials = {};
  24. if ( materialCreator instanceof MTLLoader.MaterialCreator ) {
  25. materialCreator.preload();
  26. newMaterials = materialCreator.materials;
  27. }
  28. return newMaterials;
  29. }
  30. };
  31. export { MtlObjBridge };