2008-09-18 7 views
9

मैंने सोचा कि जब तक मैं ओएस एक्स के लिए गेमपैड कोड लिखने की कोशिश नहीं करता तब तक मैं एक सभ्य प्रोग्रामर था। अब मुझे गहराई से बेकार लगता है।गेमपैड कोड: बुह?

क्या किसी को भी किसी भी कोड के बारे में पता है जिसे मैं कानूनी रूप से अपने (गैर-मुक्त) गेम में उपयोग कर सकता हूं?

क्या ओएस एक्स पर गेमपैड से बात करना वाकई मुश्किल है? मैं क्या खो रहा हूँ?

उत्तर

-1

कोई कोड नहीं, लेकिन गेमपैड के साथ संचार करना और पसंद InputSprocket तंत्र के साथ बहुत सरल है। आपके पास सटीक समस्या क्या थी?

+0

खेल स्पॉकेट ओएस एक्स पर समर्थित नहीं दिखते हैं। अनुशंसित एपीआई यहां हैं, हालांकि मैं तेंदुए का उपयोग नहीं कर सकता: केवल http://developer.apple.com/referencelibrary/Games/idxHumanInterfaceDeviceForceFeedback -date.html –

3

छुपा प्रबंधक, विशेष रूप से नया HID Manager APIs in Leopard देखें। यह कुछ हद तक वर्बोज़ है, लेकिन इसका सार यह है कि जब डिवाइस संलग्न होते हैं और अलग होते हैं तो आप कॉलबैक प्राप्त कर सकते हैं, और उन डिवाइसों की घटनाओं को दबाए जाने पर कॉलबैक प्राप्त कर सकते हैं।

यदि आप कोको के साथ काम कर रहे हैं, Dave Dribin में DDHidLib है जो छुपा प्रबंधक के ऊपर एक अच्छा उद्देश्य-सी एपीआई प्रदान करता है, और टाइगर पर भी चलता है।

+0

छुपा प्रबंधक वह है जो मैं झुका रहा हूं (हालांकि मैं तेंदुए-विशिष्ट सामग्री का उपयोग नहीं कर रहा हूं)। मैं बस इतना कह सकता हूं कि यदि कोई भी कभी भी कोडर के रूप में अपनी सीमाएं खोजना चाहता है, तो छुपा प्रबंधक से गेमपैड डेटा प्राप्त करने का प्रयास करना इसके लिए एक अच्छी जगह है। –

+0

यदि आपके पास विकल्प है, तो आप नए तेंदुए-विशिष्ट API का उपयोग करने के लिए सबसे अच्छे हैं। पुराना एपीआई बहुत स्केची है, और मुझे संदेह है कि इसे हिम तेंदुए में समर्थित किया जाएगा। मुझे थोड़ी देर पहले एक बड़ी सुरक्षा दोष (सीवीई -20072424) मिली, और ऐप्पल ने 11.5 महीने पैच के साथ आने के लिए लिया। – splicer

2

जवाब बदल गया ऐप्पल की HID_Utilities, जो (कुछ हद तक) छुपा प्रबंधक से बात करने के काम को सरल बनाता है।

जॉन केरमेक वास्तव में सिर पर कील मारा जब उन्होंने कहा कि एप्पल के खेल के बारे में परवाह नहीं है ... पर OSX गेमपैड घटनाओं पाने के लिए

2

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

आसान!

+0

मैंने मूल रूप से एसडीएल कोड को देखा और अनिच्छा से फैसला किया कि मैं एलजीपीएल कोड का भी उपयोग नहीं कर सका। लेकिन जैसा कि यह पता चला है, एसडीएल जॉयस्टिक कोड ऐप्पल के HID_Utilities कोड का एक कट-ऐप है जिसे मैं समाप्त कर रहा हूं, इसलिए यह वैसे ही काम करता है। –