2015-11-19 5 views
10

मैं थोड़ी देर के लिए PyGame का उपयोग कर रहा हूं और मुझे गणित में उपयोग की जाने वाली सामान्य समन्वय प्रणाली (इसके निचले बाएं कोने में इसकी उत्पत्ति के साथ) को पिगमेम समन्वय प्रणाली में बदलने के लिए समन्वय परिवर्तन करना पड़ा है (इसकी उत्पत्ति के साथ ऊपरी बायां कोना)। मुझे this post उस के लिए बहुत उपयोगी मिला।क्यों PyGame समन्वय प्रणाली की उत्पत्ति शीर्ष-बाएं कोने पर है?

लेकिन मुझे आश्चर्य है, Pygame इस अजीब समन्वय प्रणाली का उपयोग क्यों कर रहा है?

+3

स्टीव 314 के उत्तर के आधार पर आपका प्रश्न शायद http://gamedev.stackexchange.com/ :) –

+0

@ इब्राहिमएपाची पर बेहतर है, मुझे लगता है कि यह पोस्ट सामान्य रूप से गेम विकास के लिए कंप्यूटर ग्राफिक्स से संबंधित है। .. – jessag

उत्तर

9

यह सिर्फ PyGame नहीं है - यह ग्राफिक्स डिस्प्ले के लिए एक पुराना सम्मेलन है। कई एपीआई आपको ओवरराइड करने और अपना खुद का सम्मेलन चुनने की अनुमति देते हैं, लेकिन फिर भी, वे पृष्ठभूमि में उस शीर्ष-बाएं कोने के सम्मेलन में वापस मैप कर रहे हैं।

पुराने सीआरटी डिस्प्ले के लिए सम्मेलन की उत्पत्ति देखना आसान है। प्रत्येक फ्रेम के लिए रास्टर स्कैन शीर्ष-नीचे बढ़ी है, प्रत्येक पंक्ति स्कैन किए गए बाएं से दाएं। चूंकि स्कैन इस तरह से किया गया था, सिग्नल उस तरह से भेजा गया था, और स्मृति में पिक्सेल बफर को उस तरीके से व्यवस्थित किया गया था ताकि हार्डवेयर प्रत्येक फ्रेम के लिए स्मृति के अपेक्षाकृत सरल और कुशल रैखिक स्कैन को कार्यान्वित करने की अनुमति दे सके।

एलसीडी और अन्य नई प्रदर्शन प्रौद्योगिकियों के साथ, मुझे पूरा यकीन है कि यह सिर्फ ऐतिहासिक कारणों से सम्मेलन है - एक बिंदु पर संभावित रूप से मनमाने ढंग से निर्णय की विरासत, कैसे रास्टर को टीवी सिग्नल और सीआरटी के लिए एक तस्वीर को स्कैन करना चाहिए दशकों पहले।

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