Wieso geht der Code nicht?

1 Antwort

Hi marcus09421,

der Code von dir war ein bisschen schwer nachzuvollziehen, da hier Externe JS-Dateien verwendet werden. Daher habe ich zusätzlich ein Hilfsprogramm genutzt.

Folgendes ist aufgefallen.

Die Einbindung von GLTFLoader.js ist fehlerhaft. Module können hier fehlerhaft eingebunden sein. Eine Lösung wäre ein anderes Script einzubinden wie diese:

<script src="https://cdn.jsdelivr.net/npm/three@0.128.0/examples/jsm/loaders/GLTFLoader.js" type="module"></script>

Der zweite Fehler besteht das eine bestimmte Funktion nicht in der alten Version vorhanden ist - loadAsync() wird in dieser Version nicht unterstützt. Alternativen habe ich aus dem Netz gefischt:

loader.load(
  'tshirt_model.glb',
  function (gltf) {
    shirt = gltf.scene;
    scene.add(shirt);
    console.log('T-Shirt Modell geladen');
  },
  undefined,
  function (error) {
    console.error('Modellfehler:', error);
    addFallbackCube();
  }
);

Ein weiteres Problem kann die Nutzung der Kamera sein. Wenn es keine Kamerea gibt, der Zugriff nicht erlaubt ist oder die Seite lokal gestartet wird, kann es sein das ein Fehler ausgegeben wird.

Das nächtste Problem ist die Nutzung von alten Parameter in bodyPix. Hier solltest du im Nachschlagewerk der JavaScript-Bibliothek nachschauen.

Es sind reichlich Fehler oder Denkfehler und um alle aufzuzählen, würde es den Rahmen dieser Antwort sprengen.

Woher ich das weiß:Berufserfahrung – Ich bin gelernter Mediengestalter Digital und Print(IHK)