2013-03-06 20 views
8

Üç JS'ye Dışa Aktarım için mrdoob Blender Dışa Aktarım Eklentisini (io_mesh_threejs) kullanıyorum, ancak verilen .js veya .dae nesneleri dokuya herhangi bir başvuru içermiyor harita dosyaları. Nesneyi dışa aktarmam için özel bir yol var mı? Alternatif olarak, ihracatçı tarafından dahil edilmek üzere haritayı Blender 2.65'deki nesneye uygulamak için özel bir yol var mı. Son olarak, eğer bir yol olmazsa, dokuyu JS dosyasına manuel olarak ekleyebilir miyim?THREE.JS JSON modellerini blender'dan (dokular dahil) verme


Karıştırıcı önce verme

enter image description here


(doku referans olmadan) Dışa JSON nesne

{ 

    "metadata" : 
    { 
     "formatVersion" : 3.1, 
     "generatedBy" : "Blender 2.65 Exporter", 
     "vertices"  : 8, 
     "faces"   : 6, 
     "normals"  : 8, 
     "colors"  : 0, 
     "uvs"   : [4], 
     "materials"  : 1, 
     "morphTargets" : 0, 
     "bones"   : 0 
    }, 

    "scale" : 1.000000, 

    "materials" : [ { 
     "DbgColor" : 15658734, 
     "DbgIndex" : 0, 
     "DbgName" : "Material", 
     "blending" : "NormalBlending", 
     "colorAmbient" : [0.6400000190734865, 0.6400000190734865, 0.6400000190734865], 
     "colorDiffuse" : [0.6400000190734865, 0.6400000190734865, 0.6400000190734865], 
     "colorSpecular" : [0.5, 0.5, 0.5], 
     "depthTest" : true, 
     "depthWrite" : true, 
     "shading" : "Lambert", 
     "specularCoef" : 50, 
     "transparency" : 1.0, 
     "transparent" : false, 
     "vertexColors" : false 
    }], 

    "vertices" : [1,-0.988938,-1,1,-0.988938,1,-1,-0.988938,1,-1,-0.988938,-1,1,1.01106,-0.999999,0.999999,1.01106,1,-1,1.01106,1,-1,1.01106,-1], 

    "morphTargets" : [], 

    "normals" : [0.577349,-0.577349,-0.577349,0.577349,-0.577349,0.577349,-0.577349,-0.577349,0.577349,-0.577349,-0.577349,-0.577349,0.577349,0.577349,-0.577349,-0.577349,0.577349,-0.577349,-0.577349,0.577349,0.577349,0.577349,0.577349,0.577349], 

    "colors" : [], 

    "uvs" : [[1,-0,1,1,0,1,-0,0]], 

    "faces" : [43,0,1,2,3,0,0,1,2,3,0,1,2,3,43,4,7,6,5,0,0,1,2,3,4,5,6,7,43,0,4,5,1,0,0,1,2,3,0,4,7,1,43,1,5,6,2,0,0,1,2,3,1,7,6,2,43,2,6,7,3,0,0,1,2,3,2,6,5,3,43,4,0,3,7,0,2,3,0,1,4,0,3,5], 

    "bones" : [], 

    "skinIndices" : [], 

    "skinWeights" : [], 

    "animation" : {} 


} 

Kod Bu aradığınızı olmalıdır JSON Obje

var object; 
var loader = new THREE.JSONLoader();   

loader.load("./quirk_logo.js", function(geometry, materials) { 
    var material = new THREE.MeshFaceMaterial(materials); 
    object = new THREE.Mesh(geometry, materials); 

    object.scale.set(1, 1, 1); 
    scene.add(object) 
    render(); 
}); 

cevap

1
+0

yardımcı olur. Hala işe yaramadı. – Spider

+0

Yükleyici kodunuz ile benimki ile karşılaştırıyordum ve şu var: var modelLoader = new THREE.JSONLoader(). Load ("./quirk_logo.js", işlev (geometri, materyaller) { \t var material = materials [0]; \t var mesh = yeni ÜÇ.Mesh (geometri, yeni ÜÇ.MeshFaceMaterial (malzemeler)); \t \t mesh.scale.set (1, 1, 1); \t scene.add (mesh); }); Tek tahmin edeyim, materyal dizinizi ilk elemana yerleştirmemenizdir, bu nedenle örgü oluşturuyor, ancak yukarıdaki eğiticiyi izlediyseniz, malzemeyi uygulamaz. Bundan sonra hala çalışmıyorsa, biraz daha yardım etmeyi deneyeceğim. – Yazuka

2

Ben öncelikle Blender'da gelen .obj modelinizi aktarabilir ve sağ .json model almak için bu yazının geri kalan bölümünü takip edebilirsiniz düşünüyorum.
http://bkcore.com/blog/3d/webgl-three-js-workflow-tips.html

+0

Python'u yüklemeden komut dosyasını çalıştırmak istiyorum – Paul

+1

Python'u yüklemek istemiyorsanız, taşınabilir sürümünü (bu sürümü kullanıyorum) denemelisiniz. [İndirme sayfası] (http://portablepython.com/wiki/PortablePython2.7.5.1) – Manhhailua

1

Pişirdiğim örneğe bir bakın.

http://www.atulr.com/blender3js

Sen benim repo linkinden kodumu bakabilirsiniz:

https://github.com/master-atul/blender3js

U burada çalışan örnek görebilirsiniz.

Ve ben kullanılan dışa aktarma seçeneklerini öğrenmek isterseniz:

doğrudan Burada anlatılan seçenekleri ile blender animasyonlar ve her şeyi ihraç etti.

https://devmatrix.wordpress.com/2013/02/27/creating-skeletal-animation-in-blender-and-exporting-it-to-three-js/

Umut bu Şerefe :) Eğitimi Takip

+0

Bunun dokularla ne ilgisi var? Sorusu, modellerin dokularla dışa vurulmasıydı. –