J'ai donc essayé d'exécuter the code mais cela donne une liste d'erreur de plage d'index. J'ai changé l'index de 1 à 0, mais l'écran apparaît seulement noir. Comment pourrais-je changer le code pour le faire fonctionner?OBJFILELOADER - pygame
-2
A
Répondre
0
Il vous suffit de passer le nom de fichier/chemin du fichier .obj à la OBJ
classe:
obj = OBJ('suzzane.obj')
En outre, le script a été écrit en Python 2 et si vous voulez l'utiliser avec Python 3, vous devez mettre à jour quelques petites choses.
Modifier cette ligne,
raise ValueError, "mtl file doesn't start with newmtl stmt"
à:
raise ValueError("mtl file doesn't start with newmtl stmt")
Et tous les map
itérateurs doivent être transformées en listes:
mtl[values[0]] = map(float, values[1:])
# Just call `list()`.
mtl[values[0]] = list(map(float, values[1:]))
+0
Ça a marché! J'ai réalisé le premier changement, mais j'ai complètement oublié le changement de liste. – ZDD
S'il vous plaît poster le message d'erreur complète/pile trace. – skrx
obj = OBJ (sys.argv [1], "suzzane.mtl") IndexError: index de liste hors limites J'ai changé l'index à 0 mais seul un écran noir apparaît. – ZDD
Il suffit de copier tout ce que vous voyez sous "Traceback (dernier appel dernier):" et ajoutez cela à votre message. – skrx