2010-07-17 15 views
5

मैं एक प्रक्षेपण मैट्रिक्स की तलाश में हूं जिसे मैं 3 डी में उपयोग कर सकता हूं जो मुझे फिशिए का प्रभाव देगा। मैं एक पिक्सेलशैडर या ऐसा कुछ भी नहीं ढूंढ रहा हूं, जो पिक्सेल में हेरफेर करेगा - लेकिन वास्तविक प्रक्षेपण मैट्रिक्स 3 डी स्पेस से 2 डी पर प्रक्षेपित करने में प्रयुक्त होता है।Xna/OpenGL में Fisheye प्रोजेक्शन मैट्रिक्स - 3 डी

धन्यवाद।

+0

यह आसान हो सकता है: http://local.wasp.uwa.edu.au/~pbourke/miscellaneous/domefisheye/fisheye/ –

+0

धन्यवाद। यह उन अन्य परिदृश्यों में आसान होगा जो मैं देख रहा हूं। –

उत्तर

2

कार्लोस गलत नहीं है लेकिन आप अपने प्रोजेक्शन मैट्रिक्स बिल्डर में "फ़ील्ड व्यू (एफओवी)" पैरामीटर के साथ खेलने का प्रयास करना चाहेंगे।

+0

धन्यवाद दोनों। मुझे लगता है कि मुझे अपनी मैट्रिक्स गणनाओं को देखने की आवश्यकता होगी - मेरा पहला अनुमान एफओवी के साथ प्रयोग करना भी था, लेकिन वांछित प्रभाव नहीं मिला। मैं पिक्सेलपरफेक्ट की बजाय अनुमान का अधिक से अधिक देख रहा हूं। –

+0

@Einar, As Goz ने कहा कि कार्लोस पैसे पर है - एफओवी एंडपॉइंट्स के लिए काम करता है, उन्हें बदल देता है जहां उन्हें होना चाहिए, लेकिन यह अभी भी उनके बीच सीधी रेखा खींचता है। एक त्रिभुज का प्रतिनिधित्व करने वाले कुछ मेष बनाने की कोशिश करें - एक बहुभुज का उपयोग करके या 10 बहुभुज का उपयोग करके और 1000 बहुभुज का उपयोग करें। फिर एफओवी के साथ खेलने की कोशिश करें, शायद चीजें अधिक स्पष्ट होने जा रही हैं। – Unreason

11

यह वास्तव में संभव नहीं है। समरूप समन्वय में, मैट्रिस लाइनों को लाइनों में बदल देता है। तो मैट्रिस पर पूरी तरह से आधारित कोई समाधान आवश्यक रूप से लाइनों को झुकाव में असफल हो जाएगा।

0

कार्लोस सही है। एक तरीका है कि आप इसे नकली बना सकते हैं, लेकिन आपको अपने दृश्य को कई बार फिर से प्रस्तुत करना होगा।

असल में, आप यह समझकर शुरू करते हैं कि दो बिंदु परिप्रेक्ष्य कैसे करें। जो मैं एक प्रोजेक्शन मैट्रिक्स के साथ दृश्य को दो बार प्रस्तुत करके करता हूं जिसमें वैकल्पिक पक्षों पर एक गायब बिंदु होता है। फिर आप दो भागों को गठबंधन करते हैं, मुझे लगता है कि एक स्टैंसिल मानचित्र का उपयोग कर।

आप चार बिंदुओं के साथ छवियों को संयोजित चार बिंदु परिप्रेक्ष्य की तरह कुछ कर सकते हैं। आप उस प्रक्रिया को कई बार दोहराते हैं।

तब आप क्या कर रहे हैं एक बहुभुज पर प्रक्षेपण कर रहा है जो एक क्षेत्र का अनुमान लगाता है।

मैं और समझा सकता हूं, लेकिन मेरा अनुमान है कि यह बहुत जटिल लगता है।

नकली के लिए सबसे आसान तरीका एक बनावट को प्रस्तुत करना और छवि को विकृत करना है, और इसे पूर्णस्क्रीन क्वाड के रूप में प्रस्तुत करना है।

+0

इनपुट के लिए धन्यवाद - बढ़िया विचार। मेरी समस्या उस चीज़ से संबंधित थी जिसने मुझे देखा जब मुझे देखा गया। स्क्रीन पर प्रक्षेपण करते समय मुझे एक त्रुटि हुई, जिससे प्रभाव प्राप्त करने के लिए एफओवी को बदलने में मेरे सभी प्रयास हुए, मैं बेकार चाहता था। –

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