2012-06-24 6 views
5

थ्रीजेएस (जावास्क्रिप्ट/वेबजीएल) में मैं एक स्थिर पृष्ठभूमि छवि कैसे बना सकता हूं जो दृश्य का हिस्सा है लेकिन पूर्ण आंतरिक ब्राउज़र विंडो में फिट करने के लिए वास्तव में आकार बदलता है? जब मैं सीएसएस का उपयोग करता हूं तो यह काम करता है लेकिन फिर renderer.domElement.toDataURL ('image/png') के माध्यम से "स्क्रीनशॉट" बनाते समय पृष्ठभूमि छवि नहीं दिखाई देगी, जिसे मैं चाहता हूं। धन्यवाद!थ्रीजेएस: एक पृष्ठभूमि छवि बनाना जो वास्तव में खिड़की से फिट बैठता है?

+0

आप कैमरे दृश्य में स्थिर हो जाएगा, या इसे स्थानांतरित करने में सक्षम हो जाएगा ? क्या आपने स्काईबॉक्स बनाने की कोशिश करने के बारे में सोचा है? –

+0

आप किस प्रकार का रेंडरर उपयोग करते हैं? –

+0

कोरी, मेरे पास वर्तमान में एक स्थिर कैमरा है। मैं दृश्य के पीछे एक बनावट बॉक्स डाल रहा हूं, लेकिन यह नहीं पता कि बॉक्स को अपने बनावट के साथ स्क्रीन को भरने के लिए कौन से आयाम हैं। डैनी, मैं WebGLRenderer का उपयोग कर रहा हूँ। धन्यवाद! –

उत्तर

13

आप पृष्ठभूमि छवि को प्रस्तुत करने के लिए एक अलग पृष्ठभूमि दृश्य का उपयोग कर सकते हैं।

var bg = new THREE.Mesh(
    new THREE.PlaneGeometry(2, 2, 0), 
    new THREE.MeshBasicMaterial({map: backgroundTexture}) 
); 

// The bg plane shouldn't care about the z-buffer. 
bg.material.depthTest = false; 
bg.material.depthWrite = false; 

var bgScene = new THREE.Scene(); 
var bgCam = new THREE.Camera(); 
bgScene.add(bgCam); 
bgScene.add(bg); 

फिर अपने रेंडर लूप में, अपने वास्तविक दृश्य से पहले बीजीएससीन बनाएं।

renderer.autoClear = false; 
renderer.clear(); 
renderer.render(bgScene, bgCam); 
renderer.render(scene, cam); 
+0

बहुत बहुत धन्यवाद मैं इसे आज़मा दूंगा! –

+0

मेरे लिए काम नहीं कर रहा है, 'ओबीजेएमटीएलोड' का उपयोग कर रहा हूं, इस कामकाजी जुर्माना के बिना, 'ओबीजेएमटीएलओडर' और 'ओबीजेएलओडर' के लिए क्या करना है ??? –

+0

हाँ अंततः यह काम किया .... –

0

यदि आप एक पैनोरमा दर्शक या ऐसा ही कुछ करने की कोशिश कर रहे हैं मेरे लिए स्पष्ट नहीं था ...

है कि आपके लक्ष्य था, यहाँ एक जवाब मैं की समस्या को हल करने के लिए दे दिया है गाया क्षेत्र के लिए एक equirectangular छवि डालने (जो माउस द्वारा नियंत्रित किया जा सकता है और/या deviceOrientation [स्मार्टफोन में accelerometer]):

https://stackoverflow.com/a/37129356/1920145

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