2012-11-01 2 views

Antwort

5

Zuerst müssen Sie Ihr Modell im Format obj exportieren. Stellen Sie sicher, dass Sie python 2.7 installiert haben.

Dann können Sie das obj-js Format mit dem python Skript zu konvertieren, die mit three.js enthalten in ist - convert_obj_three.py

Setzen Sie sowohl Ihr Modell und die python Skript im selben Ordner wie python, um es einfacher zu machen.

Dann in der Befehlszeile:

python convert_obj_three.py -i infile.obj -o outfile.js 

Wo infile.obj der Name des Modells ist, dass Sie von maya exportiert und outfile.js ist die Datei, die Sie in three.js laden möchten.

Sobald Sie eine konvertierte Datei haben, können Sie es mit diesem Skript etwas Ähnliches laden hier, Ich erstelle 3 Modelle, aber Sie können es zu laden benutzen Sie einfach:

function loadModel() { 
    loader = new THREE.JSONLoader(); 
    loader.load("js/your_model.js", function(geometry) { 
    box = []; 

    group = new THREE.Object3D(); 
    scene.add(group); 

      // here i'm creating 3 objects of same model 
    for (var i = 0; i < 3; i++) 
    { 
     box[i] = new THREE.Mesh(geometry, new THREE.MeshLambertMaterial({map: THREE.ImageUtils.loadTexture("js/your_texture.jpg")})); 
     box[i].scale.set(20,20,20); 
     box[i].position.x = (120*i) - 150; 
     group.add(box[i]); 
    } 
     callSomeFunctionOnceLoaded(); 
     },"js" 
    ); 
} 
+0

Ist es möglich, Materialien dynamisch vom Modell selbst zu laden? Ich finde immer noch Schwierigkeiten, sie in das exportierte Modell selbst (From Blender) und Adding to THREE dynamisch aus dem Modell. –