इसलिए, एक या दो घंटे की फिडिंग और अलग-अलग पुस्तकालयों की कोशिश करना, और ऐसा लगता है कि ओआईएस (और एसडीएल ) सिर्फ एक जॉयस्टिक के रूप में नियंत्रक को पहचानता है और मुझे वह सब कुछ प्रदान करता है जिसकी मुझे आवश्यकता है।
यदि आप ऊपर दिए गए लिंक से OIS इंस्टॉल करते हैं, और 'कंसोलटेस्ट' प्रोजेक्ट बनाते / चलाते हैं, तो आप कंट्रोलर से डिबग विंडो में आउटपुट देख सकते हैं।
इसके अतिरिक्त, यहाँ के एनाम मैं उस मैच का उपयोग SDL द्वारा निर्मित एक्सिस / बटन नंबरों के लिए कर रहा हूँ (नोट ओआईएस नहीं है, जो कि मैंने अब उपयोग नहीं करने का निर्णय लिया है, नंबर अच्छी तरह से समान हो सकते हैं)। ध्यान दें कि ट्रिगर बटन को एक अक्ष के रूप में वर्गीकृत नहीं किया गया है, जो मुझे यकीन है कि उन्हें होना चाहिए (0-255 मेमोरी से):
//Values SDL attributes to individual PS3 axes
enum EPS3RawAxesIndex
{
EPS3RawAxesIndex_LeftX = 0,
EPS3RawAxesIndex_LeftY = 1,
EPS3RawAxesIndex_RightX = 2,
EPS3RawAxesIndex_RightY = 3
};
//Values SDL attributes to individual PS3 controller buttons
enum EPS3RawButtonIndex
{
EPS3RawButtonIndex_Select = 0,
EPS3RawButtonIndex_JoyClickLeft = 1,
EPS3RawButtonIndex_JoyClickRight = 2,
EPS3RawButtonIndex_Start = 3,
EPS3RawButtonIndex_DpadUp = 4,
EPS3RawButtonIndex_DpadRight = 5,
EPS3RawButtonIndex_DpadDown = 6,
EPS3RawButtonIndex_DpadLeft = 7,
EPS3RawButtonIndex_TriggerLeft = 8,
EPS3RawButtonIndex_TriggerRight = 9,
EPS3RawButtonIndex_ShoulderLeft = 10,
EPS3RawButtonIndex_ShoulderRight = 11,
EPS3RawButtonIndex_Triangle = 12,
EPS3RawButtonIndex_Circle = 13,
EPS3RawButtonIndex_Cross = 14,
EPS3RawButtonIndex_Square = 15,
EPS3RawButtonIndex_PSButton = 16
};