WestLangley के समाधान से प्रेरित होकर ऊपर, मुझे पता चला है कि spotlight.target और सुर्खियों ही एक ही वस्तु के लिए बच्चों के रूप में जोड़ा जा सकता है, कि कैमरा या किसी अन्य वस्तु, एक कार या एक बंदूक की तरह है या नहीं। फिर वे मूल वस्तु के सापेक्ष स्थित होते हैं, ताकि स्थिति को एक ऑब्जेक्ट से दूसरे ऑब्जेक्ट में कॉपी करने की आवश्यकता न हो।
आप, उदाहरण के लिए, कुछ इस तरह कर सकता है:
scene.add(camera);
camera.add(gun);
gun.position.set(-30,-30,0);
gun.add(spotlight);
spotlight.position.set(0,0,30);
gun.add(spotlight.target);
spotlight.target.position.set(0,0,31);
और अब बंदूक, डिफ़ॉल्ट रूप से, कैमरा का पालन करेंगे, और सुर्खियों बंदूक के साथ प्रकाश होगा। अगर बंदूक किसी कारण से घूमती है (बुलेट को हटाकर या जमीन पर या क्रॉलिंग), स्पॉटलाइट भी घूमता है। तीन सॉफ्टवेयर का एक अच्छा टुकड़ा है। :-)
यदि आप कैमरे पर स्पॉटलाइट संलग्न करते हैं और इसे कैमरे के समान दिशा में इंगित करते हैं और इसे केंद्र से दूर नहीं रखते हैं, तो प्रकाश शंकु लगातार परिपत्र दिखाई देगा। कई अनुप्रयोगों के लिए यह कूलर और अधिक यथार्थवादी दिखता है कि यह प्रक्षेपण में गतिशील रूप से आकार बदलता है।एक छोटा ऑफ़सेट वह सब कुछ लेता है (जैसे ऊपर मेरे उदाहरण में, हालांकि मैंने इसका परीक्षण नहीं किया है)।
स्रोत
2016-04-19 19:16:53
हाँ, लेकिन प्वाइंटलाइट मुझे छाया नहीं देता है। क्या पॉइंटलाइट के साथ उन्हें रखने का कोई तरीका है? –
सच है, पॉइंटलाइट छाया का समर्थन नहीं करते हैं। लेकिन अगर प्रकाश स्थित है, जहां कैमरा है, तो आप छाया को कास्टिंग नहीं कर सकते हैं, क्योंकि छाया कास्टिंग करने वाली वस्तुएं रास्ते में हैं। – WestLangley
ठीक है शायद खराब उदाहरण - कार्य: मैं सर्वर के रूप में node.js द्वारा सिंक किए गए दृश्य में दो इकाइयां चाहता हूं, (मल्टीप्लेयर) और मैं परिभाषित दिशा को इंगित करते हुए प्रत्येक इकाई में फ्लैश लाइट रखना चाहता हूं। सॉकेट द्वारा ऐसी जानकारी भेजने का सबसे अच्छा तरीका क्या है? (जिस तरह से स्वीकार्य बटन है? :)) –