2013-08-31 3 views
8

मैं एसडीएल 2.0 के साथ खेल रहा हूं लेकिन खोज के बाद मुझे रेटिना मैक का समर्थन करने के तरीके के बारे में कुछ भी ऑनलाइन नहीं मिला है। निम्नलिखित कोड का उपयोग कर एक विंडो बनाते समय।एसडीएल 2.0 रेटिना मैक

gWindow = SDL_CreateWindow("SDL Tutorial", SDL_WINDOWPOS_UNDEFINED, 
      SDL_WINDOWPOS_UNDEFINED, 500, 500, SDL_WINDOW_SHOWN); 

यह एक खिड़की 1000 * 1000 के वास्तविक आकार यह वास्तव में कोई मुद्दा नहीं है है कि यह कैसे क्षुधा एक HiDPI स्क्रीन का उपयोग काम करने की अपेक्षा की जाती है, क्योंकि पैदा करता है। हालांकि, छवियों को लोड करते समय मुझे उन छवियों को लोड करने का कोई तरीका नहीं दिख रहा है जो रेटिना स्क्रीन के लिए 2x जितनी बड़ी हैं और मेरी छवियां हमेशा धुंधली लगती हैं।

उत्तर

13

एसडीएल 2 के मौजूदा संस्करणों में रेटिना के लिए समर्थन है।

रेटिना विंडो बनाने के लिए, SDL_WINDOW_ALLOW_HIGHDPISDL_CreateWindow() पर ध्वज पास करें।

एक आकार बदलने के बाद, आप एपीआई कॉल SDL_GL_GetDrawableSize() के साथ वास्तविक बफर रिज़ॉल्यूशन की जांच कर सकते हैं।

0

अभी, एसडीएल मैक (या विंडोज मशीनों पर उच्च-डीपीआई डिस्प्ले) पर रेटिना डिस्प्ले का समर्थन नहीं करता है।

इन सुविधाओं को जोड़ने के लिए सबसे अच्छा कैसे के बारे में चर्चा है, और एसडीएल के बग ट्रैकर, यहाँ पर कुछ प्रोटोटाइप पैच: https://bugzilla.libsdl.org/show_bug.cgi?id=1934

मुमकिन है हम SDL2 के भविष्य के रिलीज में आधिकारिक रेटिना समर्थन देखेंगे। या यदि आप अपने स्वयं के एसडीएल पुस्तकालयों को संकलित करने के इच्छुक हैं, तो उन पैच मेरे लिए काम करते हैं।

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