मैंने अपने खेल परियोजनाओं के लिए एसडीएल और एसएफएमएल दोनों का उपयोग किया। मैंने एक तैयार गेम, एक टेट्रिस गेम के लिए एसडीएल का उपयोग किया, और मैंने ज्यादातर shader प्रयोगों के लिए एक खिड़की की परत के रूप में SFML का उपयोग किया। मेरे अनुभव से, मुझे यह कहना होगा कि एसडीएल यह कहता है। यह एक साधारण प्रत्यक्ष-मीडिया परत है, जो आपके मीडिया (ध्वनि और वीडियो) के डेटा को अलग करती है एक स्तर के साथ काम करती है जिसे आप विभिन्न प्लेटफार्मों के साथ बातचीत कर सकते हैं। यही "सब" करता है।
उसके कारण, आपको आम तौर पर इसे कुछ अन्य पुस्तकालयों के साथ मिलाना होगा, विशेष रूप से SDL_mixer, SDL_gfx, और SDL_image, जो कार्यक्षमता प्रदान करते हैं, जिससे सभी को गेम बनाने की आवश्यकता होती है।
ये सभी पुस्तकालय सी प्रोग्रामिंग भाषा के लिए भी हैं, और वे इसका अनुसरण करते हैं। ऐसा नहीं है कि इसके साथ कुछ भी गलत है, लेकिन यदि आप चाहते हैं कि कैसे आप io के साथ बातचीत करते हैं, तो आपको मूल रूप से उस परत का निर्माण करना होगा।
SFML बॉक्स के ठीक बाहर आता है। इसमें ध्वनि है, इसमें वीडियो है, इसमें मिश्रण है, इसमें फ्रेम-कैपिंग है, और यह ऑब्जेक्ट ओरिएंटेड है। यदि आप ऐसा चाहते हैं, तो मैं आपको उसके लिए जाने की सलाह दूंगा। SFML में कुछ बुनियादी कार्यक्षमता के लिए opengl (विशेष रूप से startShape / EndShape और पिक्सेल शेड्स) में एक अमूर्त परत है। मुझे नहीं लगता कि एसडीएल के पास ऐसा कुछ है, बस इसके साथ विलय करने की एक विधि है।
PS C / C ++ से वार्तालाप को दूर करने के लिए नहीं, लेकिन यदि आप किसी विशेष कारण से उस भाषा का उपयोग नहीं कर रहे हैं, और एक आसान चाहते हैं, तो हमेशा pygame है। जो मूल रूप से अजगर के लिए एसडीएल + है।