विंडोज एयरो स्क्रीन को फटने से कैसे रोकता है?


14

जब विंडोज एयरो चालू होता है, तो एरो के बिना बेसिक थीम का उपयोग करते समय कोई स्क्रीन फाड़ नहीं होती है।

हालाँकि, वर्टिकल सिंक वाले गेम डेस्कटॉप पर कुछ करते समय इनपुट लैग की तुलना में अधिक होते हैं? यहां तक ​​कि यह वी-सिंक से विंडो वाले गेम को सिंक करने के लिए लगता है, इससे बेहतर होगा कि अगर वे गेम में जो भी तरीके का निर्माण कर रहे हैं उसका उपयोग कर रहे हों।

ऐसा क्यों और कैसे होता है, या ऐसा प्रतीत होता है?

जवाबों:


8

वास्तव में, कारण Aero एक आवेदन में VSYNC को मजबूर करने के बिना फाड़ को रोक सकता है क्योंकि यह एक कंपोजिट विंडो प्रबंधक है। यह किसी भी चल रहे एप्लिकेशन के संबंध में डेस्कटॉप और सभी खिड़कियों को अतुल्यकालिक रूप से खींचता है।

यह कहना है, जब आप विंडोज विस्टा / 7 में कंपोजिंग को सक्षम करते हैं (यह हमेशा विंडोज 8 में सक्षम होता है ), यह पिछली छवि की एक कॉपी का उपयोग करके सभी खिड़कियों को आकर्षित करेगा जो पीछे से सामने की ओर स्वैप की गई थी। कंपोज़ीटर (Microsoft इसे DWM, डेस्कटॉप विंडो मैनेजर कहता है ) VSYNC के साथ सब कुछ सक्षम करता है, और क्योंकि यह प्रत्येक विंडो के लिए पिछली पूरी तरह से स्वैप की गई फ्रंट बफर इमेज की एक कॉपी का उपयोग करता है, जो कभी भी आंशिक रूप से तैयार किए गए फ़्रेम को प्रदर्शित नहीं करता है। हालांकि, यह वास्तव में पुराने सॉफ्टवेयर को रोकने का एक दुर्भाग्यपूर्ण दुष्प्रभाव है जो विशेष रूप से सही ढंग से काम करने से सामने के बफर में खींचने के लिए डिज़ाइन किया गया था - लेकिन आधुनिक सॉफ्टवेयर ऐसा नहीं करता है।

संक्षेप में, DWM फाड़ के खिलाफ सुरक्षा की एक अतिरिक्त परत जोड़ता है। एक जो सिस्टम पर चल रहे किसी भी एप्लिकेशन को प्रदर्शन की ताज़ा दर के बावजूद एक दर पर आकर्षित करने की अनुमति देगा और फिर भी आंसू रोक सकता है। इस तरह की प्रणाली पर, विंडो मोड में ओपनजीएल या डायरेक्ट 3 डी में वीएसवाईएनसी को सक्षम करने वाली एकमात्र चीज वास्तव में सीपीयू / जीपीयू उपयोग को पीछे छोड़ती है।

यही कारण है कि अनुकूली वीएसवाईएनसी का निर्माण किया गया था, यह विचार उन अनुप्रयोगों को दंडित करने के लिए नहीं है जो डिस्प्ले रेट के रिफ्रेश रेट को कम करके उन्हें रिफ्रेश रेट के निम्न कारक (जैसे 60 हर्ट्ज -> 30, 20, 15, 10, 10, 12) को बनाए नहीं रख सकते हैं। , 6, 5, 4, 3, 2, 1) लेकिन उन अनुप्रयोगों को सीमित करने के लिए जो मॉनिटर की तुलना में तेजी से ड्राइंग कर रहे हैं वे अत्यधिक मात्रा में सीपीयू / जीपीयू पावर का उपयोग करने से चित्र प्रदर्शित कर सकते हैं।


5

एयरो सक्षम होने के साथ, डेस्कटॉप विंडो मैनेजर डबल बफरिंग का उपयोग करता है :

विंडोज एयरो फीचर स्क्रीन पर आकर्षित करने के लिए डबल बफरिंग का व्यापक उपयोग करता है।

स्रोत

विकिपीडिया पर यह कहना है कि स्क्रीन फाड़ को रोकने के लिए वी-सिंक के साथ इसका उपयोग कैसे किया जाता है:

ऊर्ध्वाधर रिक्त अंतराल के दौरान, ड्राइवर वीडियो कार्ड को या तो तेजी से ऑफ-स्क्रीन ग्राफिक्स क्षेत्र को सक्रिय प्रदर्शन क्षेत्र (डबल बफ़रिंग) में कॉपी करने का आदेश देता है, या दोनों मेमोरी क्षेत्रों को डिस्प्ले करने योग्य मानता है, और बस उनके बीच और पीछे स्विच करें (पृष्ठ) flipping)।


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

बेशक आप अभी भी फाड़ सकते हैं यदि आप डबल बफरिंग गलत करते हैं, लेकिन मुद्दा यह है कि डीबी का उपयोग फाड़ को रोकने के लिए किया जा सकता है।
नाइट्रो 2k01

3

कोई बफरिंग में परिणाम पर डबल बफरिंग + वी-सिंक। एयरो उस कॉन्फ़िगरेशन का उपयोग करने के लिए होता है।


2

DWM (वह तकनीक जो एयरो प्रभाव को सक्षम करती है) आपकी स्क्रीन में सब कुछ एक डी 3 डी सतह के रूप में प्रस्तुत करती है (जो कि फ्लिप पर खेलना जारी रखने के लिए वीडियो के लिए संभव बनाता है)। यह रेंडरिंग तकनीक स्वचालित रूप से फाड़ को रोकती है , हालांकि गेम विधि सामान्य DWM विधि से बेहतर होनी चाहिए (यह उनका अपना इंजन है, सब के बाद)। तो यह संभावना है कि खेल विधि या तो पहले स्थान पर अच्छी नहीं है, या यह आपके कॉन्फ़िगरेशन के लिए अनुकूलित नहीं है।


2
अपने आप में, Direct3D का उपयोग स्क्रीन फाड़ को रोकता नहीं है। यह डबल बफरिंग है।
bwDraco
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.