2013-04-10 17 views
6

मैंने ट्यूटोरियल, कार्यान्वयन और सहायता के लिए इंटरनेट की खोज की है। कुछ भी तो नहीं।जीएलएसएल | बिलबोर्ड शेडर, स्केलिंग

एकमात्र चीज़ जो मैं पा सकता हूं वह बिलबोर्ड शेडर कार्यान्वयन है जो पहचान के लिए mat4 के ऊपरी-बाएं 3x3 मैट्रिक्स को सेट करता है। यह रोटेशन को फेंक देता है, लेकिन प्रभावी ढंग से स्केलिंग भी करता है।

क्या बिलबोर्डिंग करने का कोई तरीका है जो स्केलिंग (गैर-वर्दी) स्केलिंग नहीं करता है?

नोट: मैं किसी के लिए अपना प्रोग्रामिंग करने की तलाश नहीं कर रहा हूं। यह सिर्फ इतना है कि मैं अपने सिर को विनिर्देशों के चारों ओर लपेट नहीं सकता। सही दिशा में कोई भी संकेतक स्वागत है।

उत्तर

11

ऊपरी-बाएं 3x3 मैट्रिक्स में घूर्णन होता है लेकिन स्केल भी होता है। जैसा कि आपने देखा है, दोनों ऊपरी 3x3 nukes nuking दोनों। आप पहले 3x3 से पैमाने निकालने के पैमाने को संरक्षित करना चाहते हैं। वेक्टर के रूप में लिया गया 3x3 का प्रत्येक कॉलम आपको प्रत्येक कॉलम वेक्टर की परिमाण ले कर प्रत्येक दिशा में स्केल बताता है।

यदि आपका 4x4 मैट्रिक्स

RSX RSY RSZ T 
0  0  0  1 

है तो फिर पैमाने कारकों

xScale = ||RSX|| 
yScale = ||RSY|| 
zScale = ||RSZ|| 

उन सहेजें, फिर उसे फार्म एक नया 4x4 मैट्रिक्स क्या आप पहले से ही कर रहे हैं, लेकिन यह भी पैमाने को शामिल कर रहे हैं ।

xScale 0  0  xT 
0  yScale 0  yT 
0  0  zScale zT 
0  0  0  1 
+0

एक आकर्षण की तरह काम करता है! स्केल कारकों को पुनः प्राप्त करने के चरण को याद किया। –

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