2016-04-24 4 views
1

Ich möchte Formschlüssel im Blender exportieren, aber das Morph-Zielarray in der exportierten JSON-Datei hat ein Array in einem Array. Ich möchte, dass sich alle Formschlüsselpunkte in einem einzigen Array befinden. Irgendwelche Tipps, um die Formschlüssel korrekt zu exportieren.Exportieren von Formschlüsseln in Blender

Screenshot meiner exportierten JSON-Datei. (https://drive.google.com/open?id=0B6wLPPFE11zoWWNvQy1YbFNXblU)

Ich möchte die morphTarget Array wie das, was es ist in diesem Ritter Beispiel (http://threejs.org/examples/models/skinned/knight.js). Ich möchte, dass alle Punkte in ein einziges Array kommen.

Ich benutze blender 2.76 und io_three expoter. Vielen Dank im Voraus.

Antwort

0

Was Sie sehen, ist korrekt, obwohl es irreführend ist. Die Verwirrung kommt von zwei verschiedenen Arten von Daten, die unter Verwendung desselben Datenblocknamens gespeichert sind.

Jede morphTarget enthält ein Array als „vertices“ referenzierte

Eine Art von Daten sind die Positionen von jedem Scheitelpunkt. Dies sehen Sie im Beispiel des Ritters. Jede Koordinate für jeden Eckpunkt ist in dem Array enthalten, das die tatsächliche Eckpunktposition für jeden Rahmen ist. Die morphTargets dafür haben Namen wie „animation_000000“, „animation_000001“ ...

"morphTargets":[{ 
    "name":"animation_000000", 
    "vertices":[-1,-1,1,-1,1,1,-1,-1,-1,-1,1,-1,1,-1,1,1, 
     1,1,1,-1,-1,1,1,-1] 
},{ 
    "name":"animation_000001", 
    "vertices":[-1.0149,-1.0149,1.0149,-1.0149,1.0149,1.0149, 
     -1.0149,-1.0149,-1.0149,-1.0149,1.0149,-1.0149,1.0149, 
     -1.0149,1.0149,1.0149,1.0149,1.0149,1.0149,-1.0149,-1.0149, 
     1.0149,1.0149,-1.0149] 
},{ .... 

diese Animation Daten, die Sie mit „Übernehmen Modifikatoren“ aktiviert den Export benötigen und Behinderte „Shape Animation Blend“.

export settings for animation data

Die andere Art von Daten ist ein Array von Vektoren, die die shapekey Daten darstellen, so dass man ein Array mit Arrays von 3 Zahlen erhalten. Ein Shapekey im Blender ist eine Sammlung von Vektoren, die die Vertex-Bewegung relativ zur ursprünglichen Position definieren und dies scheint zu sein, was hier exportiert wird. Die morphTarget Namen für diese Daten entsprechen den shapekey Namen verwendet, die standardmäßig die „Taste 1“, „Key 2“ ...

"morphTargets":[{ 
    "name":"Key 1", 
    "vertices":[[-1.01209,-1.17045,-1.09497],[-1.10082,-1.09175,1.09065], 
     [-1.085,1.01564,-1.17664],[-1.17373,1.09434,1.00897], 
     [1.17373,-1.09434,-1.00897],[1.085,-1.01564,1.17664], 
     [1.10082,1.09175,-1.09065],[1.01209,1.17045,1.09497]] 
},{ 
    "name":"Key 2", 
    "vertices":[[-1.49369,-1.20168,-1.4188],[-1.47777,-1.31454,1.33278], 
     [-1.26675,1.54064,-1.30763],[-1.25083,1.42778,1.44395], 
     [1.25083,-1.42778,-1.44395],[1.26675,-1.54064,1.30763], 
     [1.47777,1.31454,-1.33278],[1.49369,1.20168,1.4188]] 
}], 

Um die shapekey Daten in den Export, die Sie brauchen Form zu ermöglichen „Ausblenden Animation "und deaktivieren Sie" Apply Modifiers ". Dieser Export scheint keine Keyframe-Animation zu enthalten, die sich auf die Shape-Keys bezieht.

export settings for shapekey data

+0

Problem, dass ich bin vor, dass die Liste von Scheitelpunkten in Form von Arrays innerhalb eines Arrays ist. Hier ist ein Screenshot der JSON-Datei https://drive.google.com/open?id=0B6wLPPFE11zoWWNvQy1YbFNXblU Vielen Dank –

+0

Ein bisschen Erkundung findet den Unterschied zwischen den beiden Datentypen, siehe meine aktualisierte Antwort. – sambler

+0

Vielen Dank, das war wirklich hilfreich. Aber ich frage mich, wie sie die morphtagets in diesem Beispiel (http://threejs.org/examples/#webgl_morphtargets_human) hier alle Scheitelpunkte in einem einzigen Array ohne Verwendung von Animation erhalten haben. Vielen Dank noch mal –