2015-04-17 2 views
1

Pour une raison quelconque, j'ai du mal à trouver comment ajouter des modèles obj à JME. Je suis nouveau à JME et n'ai pas importé de modèles auparavant (autre que le tutoriel sur les actifs de l'échantillon).Comment ajouter le modèle .obj à JME

J'ai créé un modèle de base dans Blender et l'ai exporté en obj. J'ai ajouté l'obj au dossier projet/assets/models et le mtl au dossier the materials. Malheureusement, je suis toujours incapable de voir le modèle lorsque je lance le programme. La scène apparaît en noir. Je suis capable de voir un cube 1x1x1 créé en JME.

L'objet est un carré par défaut avec un autre carré qui l'intersecte. Les deux carrés ont des textures par défaut.

public class TestImport extends SimpleApplication { 
    public static void main(String[] args){ 
     TestImport app = new TestImport(); 
     app.start(); 
    } 

    @Override 
    public void simpleInitApp(){ 
     Spatial object = assetManager.loadModel(“Models/TestingOBJ/TestingOBJ.obj”); 
     rootNode.attachChild(object); 
     DirectionalLight sun = new DirectionalLight(); 
     sun.setDirection(new Vector3f(-2f,-2f,-2f).normalizeLocal()); 
     rootNode.addLight(sun); 
    } 
} 

Aidez s'il vous plaît!

Répondre

1

Les textures ne sont pas exportées dans des fichiers .obj et, par conséquent, vous essayez d'afficher un élément non texturé dans JME. Essayez d'ajouter un matériau à l'objet après avoir utilisé le gestionnaire de ressources pour charger le modèle.

public class TestImport extends SimpleApplication { 
    public static void main(String[] args){ 
     TestImport app = new TestImport(); 
     app.start(); 
    } 

    @Override 
    public void simpleInitApp(){ 
     Spatial object = assetManager.loadModel(“Models/TestingOBJ/TestingOBJ.obj”); 
     Material mat_default = new Material(assetManager, "Common/MatDefs/Misc/Unshaded.j3md"); 
     object.setMaterial(mat_default); 
     DirectionalLight sun = new DirectionalLight(); 
     sun.setDirection(new Vector3f(-2f,-2f,-2f).normalizeLocal()); 
     rootNode.addLight(sun); 
    } 
} 

Alors que JME sait où les trouver, assurez-vous que vous avez placé vos actifs dans les actifs/textures/dossier.