2012-09-27 16 views
7

में मैं विमानों, extruded splines, और सिलेंडर geometries का उपयोग कर एक शैक्षिक उपकरण के निर्माण कर रहा हूँ। विमानों में एक बनावट नक्शा होता है और बाकी मूल या लैम्बर्ट सामग्री होते हैं।असंगत अल्फ़ा चैनल Three.js

  • केवल मानचित्र में विमानों पर बनावट मानचित्र और इसमें अल्फा चैनल है।
  • रेंडरर = नए THREE.WebGLRenderer ({antialias: सच}):
  • बनावट नक्शा सभी वस्तुओं "सच पारदर्शी" है .GIF और .PNG
  • के रूप में परीक्षण किया गया है;

नोट: यह निम्न लिंक पर सूचीबद्ध एक ही समस्या है। इसे हल नहीं किया गया है और मेरा प्रतिनिधि टिप्पणी करने के लिए पर्याप्त नहीं है।

in three.js, alpha channel works inconsistently

mmaclaurin के रूप में बताया गया है, यह एक परिवर्तन क्रम खींचें और कैमरे स्थान में स्थित हो सकता है। मैं तीन अक्षों का उपयोग कर रहा हूं। ट्रेकबॉल नियंत्रण और दो अक्षों में कैमरा आंदोलन सीमित कर रहा हूं।

वायरफ्रेम के लिए बेसिकमटेरियल को जोड़ना या निकालना समस्या को नहीं बदलता है।

इसे पढ़ने के लिए धन्यवाद और आपकी सहायता के लिए धन्यवाद! विमान वस्तु की

उदाहरण:

var T4map = new THREE.ImageUtils.loadTexture('medium_T4.png'); 
    var T4Material = new THREE.MeshBasicMaterial({ opacity: .96, transparent:true, map: T4map }); 
    var T4Geometry = new THREE.PlaneGeometry(810, 699, 10, 10); 
    var T4 = new THREE.Mesh(T4Geometry, T4Material); 
    T4.position.y = -CNspacing; 
    T4.doubleSided = true; 
    scene.add(T4); 

extruded तख़्ता ज्यामिति का उदाहरण जहां समस्या सबसे महत्त्वपूर्ण है: depthTest के साथ चारों ओर खेलने के लिए

var mesh = THREE.SceneUtils.createMultiMaterialObject(geometry, [ 
new THREE.MeshLambertMaterial({ color: 0xaaff00, opacity: 0.5, transparent: true }),   
     mesh.position.set(x, y, z); 
     mesh.scale.set(s, s, s); 
     parent.add(mesh); 
+0

न्यू अवलोकन के लिए अपने विषय से संबंधित प्रश्नों, कर रहे हैं: यह केवल y> 0 करने के लिए सभी वस्तुओं को ले जा रहा है y नीचे हो रहा हो सकता है = 0 – ChrisTalbot

+0

मदद नहीं की हालांकि, अगर मैं अल्फा की कमी का निरीक्षण करने के लिए कैमरे को सभी वाई पदों के माध्यम से ले जाता हूं, तो अंततः प्रभाव बंद हो जाता है। एक ड्राइंग मुद्दे की तरह लगता है ... – ChrisTalbot

+0

समस्या बंद हो जाती है लेकिन पारदर्शिता खो जाती है और हमेशा के लिए चली जाती है (ताज़ा होने तक) – ChrisTalbot

उत्तर

3

प्रयास करें। आम तौर पर इस में मदद मिलेगी:

new THREE.MeshBasicMaterial({ side:THREE.BackSide,map:texture,transparency:true, opacity:0.9, depthWrite: false, depthTest: false }); 

कई अन्य पूर्व .: transparent bug

संबंधित मुद्दे