2016-03-25 36 views
0

Three.js ile bir WebGL sahne oluşturuyorum ve bir sonraki problemim var: Bir .obj modelini Three.js ile yüklemeye çalışıyorum ve buna bir renk (örneğin, mavi) eklemek istiyorum. mtl dokusu yerine obj modeli. Bu şekilde yapmaya çalışacağım:Üç.js'de bir .obj modeline nasıl renk ekleyebilirim?

// instantiate a loader 
var loader = new THREE.OBJLoader(); 

// load a resource 
loader.load(
    // resource URL 
    'model_path.obj', 
    // Function when resource is loaded 
    function (object) { 
     scene.add(object); 
    } 
); 

Ama diyor sonraki hata var:

WebGL: INVALID_VALUE: bufferData: no data 
Uncaught TypeError: Cannot read property 'length' of undefined 
[.CommandBufferContext]GL ERROR :GL_INVALID_VALUE : glVertexAttribPointer: size GL_INVALID_VALUE 

nasıl hatayı düzeltmek olabilir, mavi renk ile bir obj modeli yükleme?

Çok teşekkür ederim!

cevap

1

Hata, köşe noktalarının dosyada olmadığı anlaşılıyor. OBJ dosya

v basit ham dosya :::: tepe

vt :::: doku

Vn :::: Normal

usemtl ::: doku tanımlamak koordinat , ka (ortam), ks (speküler) ve kd (yayılmış)

deneyin blender içine obj içe ve sonra bu şekilde üçgen yüzlü ihracat: enter image description here

sizin gibi face4 formatında endeksleri size görünür bunu yapma aslında eğer: onlar gibi görünen nirengi sonra bu kadar ....

0/1/2/3 3/2/4/0 :

0/1/2 3/2/0 ...

Yani üç ayrıştırıcı dosyayı yüklemek ve çocuklara malzemeyi ekleyebilir obj senin * düzeltirken.

+0

Çalışmıyor. Aynı hataya sahip olmaya devam ediyorum ... – jartymcfly

+0

Kimliğinizi yapabilir veya gizli dosya olup olmadığını kontrol etmek istediğiniz obj dosyasını paylaşabilirsiniz .. ?? aksi halde –

+0

'a yardımcı olmak zor olacaktır .obj dosyasını bu Dropbox bağlantısından indirebilirsiniz: https://www.dropbox.com/s/mslv900i90ra445/Pawn.obj?dl=0 – jartymcfly