Pixi.js: Extension du chargeur Pixi ?

Créé le 15 oct. 2019  ·  3Commentaires  ·  Source: pixijs/pixi.js

Existe-t-il un moyen d'étendre le chargeur Pixi ou d'écrire un chargeur personnalisé ? Je souhaite ajouter le support SVGZ, ce qui signifie essentiellement que je dois dégonfler le contenu chargé gzippé en un SVG approprié avant que Pixi ne le traite.

Commentaire le plus utile

PixiJS v5 a introduit registerPlugin dans le Loader :
http://pixijs.download/dev/docs/PIXI.Loader.html#.registerPlugin

Cela vous permet de créer votre propre middleware pour gérer les types de médias personnalisés. Voici un exemple approximatif de la façon dont vous pouvez procéder :

const SVGZLoaderPlugin = {
  add() {
    // handle loading SVGZ files as an ArrayBuffer
    PIXI.LoaderResource.setExtensionXhrType(
      'svgz', LoaderResource.XHR_RESPONSE_TYPE.BUFFER);
    PIXI.LoaderResource.setExtensionLoadType(
      'svgz', LoaderResource.LOAD_TYPE.XHR);
  },
  use(resource, next) {
    // deflate SVGZ
    next();
  }
};
PIXI.Loader.registerPlugin(SVGZLoaderPlugin);

Vous pouvez également vous référer à https://github.com/englercj/resource-loader pour plus d'informations sur le fonctionnement de Loader.

Bonne chance!

Tous les 3 commentaires

PixiJS v5 a introduit registerPlugin dans le Loader :
http://pixijs.download/dev/docs/PIXI.Loader.html#.registerPlugin

Cela vous permet de créer votre propre middleware pour gérer les types de médias personnalisés. Voici un exemple approximatif de la façon dont vous pouvez procéder :

const SVGZLoaderPlugin = {
  add() {
    // handle loading SVGZ files as an ArrayBuffer
    PIXI.LoaderResource.setExtensionXhrType(
      'svgz', LoaderResource.XHR_RESPONSE_TYPE.BUFFER);
    PIXI.LoaderResource.setExtensionLoadType(
      'svgz', LoaderResource.LOAD_TYPE.XHR);
  },
  use(resource, next) {
    // deflate SVGZ
    next();
  }
};
PIXI.Loader.registerPlugin(SVGZLoaderPlugin);

Vous pouvez également vous référer à https://github.com/englercj/resource-loader pour plus d'informations sur le fonctionnement de Loader.

Bonne chance!

Merci, Matt ! Jusqu'à présent, la mise à niveau de la v4 à la v5 pose des problèmes avec le chargeur - il écrit un avertissement de dépréciation "PIXI.loaders.Loader class has move to PIXI.Loader" et affiche un rectangle noir sur l'écran jusqu'à ce que toutes les images soient chargées.

Existe-t-il un guide de transition ou des exemples sur la façon de réécrire l'ancien chargeur Pixi pour utiliser le nouveau ?

Nous avons un guide de migration v5 ici : https://github.com/pixijs/pixi.js/wiki/v5-Migration-Guide

Il n'y a rien de spécifique pour Loader. Cet avertissement de dépréciation vous permet simplement de savoir que l'espace de noms a changé, mais cela devrait toujours fonctionner. S'il se passe quelque chose de plus subtil, si vous pouviez un nouveau problème avec un exemple de ce que vous voyez avec des rectangles noirs, nous pouvons peut-être fournir une expérience plus gracieuse.

Je vais clore ce problème car il semble que la question du plugin ait été résolue.

Cette page vous a été utile?
0 / 5 - 0 notes