Probleme d'importation d'un objet *.3ds

Gunhed87 Messages postés 2 Date d'inscription jeudi 26 février 2009 Statut Membre Dernière intervention 20 juin 2009 - 24 mars 2009 à 15:43
 Utilisateur anonyme - 20 juin 2009 à 13:36
Bonjour à tous,
Je suis débutant avec l'utilisation de Java3D et j'aimerai pouvoir charger un objet, créé avec l'éditeur 3d Studio Max, dans une application java3D.
 J'ai déjà téléchargé un loader 3ds (Inspector3DS/Loader3DS) et réalisé plusieurs tests mais je ne parviens jamais à visualiser l'objet chargé.

Voici mon code, si quelqu'un pouvait m'éclairer je lui en serai très reconnaissant :

import com.sun.j3d.utils.universe.SimpleUniverse;
import javax.media.j3d.BranchGroup;
import javax.media.j3d.TransformGroup;
import com.mnstarfire.loaders3d.Inspector3DS;
import javax.media.j3d.*;
import javax.vecmath.Color3f;
import javax.vecmath.Point3d;
import javax.vecmath.Vector3f;

public class NewTestImport {

    public NewTestImport()   
    {
        // 1. Créer un univers virtuel qui contiendra votre scène
        SimpleUniverse universe = new SimpleUniverse();
       
        // 2. Créer une structure de données qui contiendra un groupe d’objets
        BranchGroup group = new BranchGroup();
                       
        // 3. Ajouter un objet au groupe
        // Ajouter un objet importé
        Inspector3DS loader = new Inspector3DS("C:/Java/TP_Java/TestJava3D/bin/smurf.3ds");
        loader.setTextureLightingOn(); // turns on modulate mode for textures (lighting)
        loader.parseIt();
        TransformGroup theModel = loader.getModel();       
        group.addChild(theModel);
                                            
        // 4. Positionner la caméra pour faire face à l’objet
        universe.getViewingPlatform().setNominalViewingTransform();
       
        // 5. Ajouter le groupe d’objets à l’univers virtuel
        universe.addBranchGraph(group);
    }

    public static void main( String[] args ) {   
        new NewTestImport();   
    }

} // end of class NewTestImport

3 réponses

Utilisateur anonyme
19 juin 2009 à 10:58
Bonjour

Moi j'ai une solution qui marche pour charger les modèles 3DS mais elle repose sur JMonkeyEngine 2 avec JOGL 1.1.1 et non sur Java 3D qui est obsolète. Bon courage.

TUER : http://tuer.tuxfamily.org/tuer.php

yeah! vive java
0
Gunhed87 Messages postés 2 Date d'inscription jeudi 26 février 2009 Statut Membre Dernière intervention 20 juin 2009
20 juin 2009 à 12:18
Merci pour votre réponse, cependant mon projet devait tourner sous Java3D. J'ai réussi à contourner le problème en changeant mes 3DS en OBJ mais du coup je ne peux plus charger les animations.
Je garde votre lien de coté car il me semble intéressant si je décide un jour de refaire mon projet.
0
Utilisateur anonyme
20 juin 2009 à 13:36
Java3D n'est plus maintenu (et littéralement bourré de bogues), aucun enseignant ne peut te forcer à t'en servir, c'est une bibliothèque obsolète. Je te conseille donc de passer à autre chose (au pire, prends Xith3D, ça ressemble beaucoup à Java3D sauf que c'est toujours maintenu et que ça marche beaucoup mieux, c'est relativement stable). J'ai aidé quelques personnes sur des projets en Java3D; tant que tu utilises des fonctionnalités extrêmement limitées, ça va mais c'est sous-optimisé, c'est vraiment une horreur.

Le moteur que j'utilise est très simple, il faut à peine plus de 3 lignes de code pour charger une animation au format 3DS :) Bon courage.

TUER : http://tuer.tuxfamily.org/tuer.php

yeah! vive java
0
Rejoignez-nous