MtlObjBridge.js 865 B

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