2011-01-03 10 views
6

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

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

  1. कीबोर्ड के पास एक साथ इनपुट की अलग-अलग मात्रा होती है।
  2. कुछ गेम अन्य गेम की तुलना में अधिक कीबोर्ड इनपुट स्वीकार कर सकते हैं।

पहले, मैंने सोचा कि यह हार्डवेयर केवल समस्या है, लेकिन कुछ प्रोग्राम अलग-अलग व्यवहार क्यों करते हैं? क्यों कुछ कार्यक्रम अन्य कार्यक्रमों की तुलना में अधिक कीबोर्ड इनपुट स्वीकार कर सकते हैं? तो हम अधिक प्रोग्राम इनपुट स्वीकार करने के लिए अपने कार्यक्रम कैसे लिख सकते हैं?

उत्तर

5

यदि आप यह तय करना चाहते हैं तो आपको एक मूल्यवान-एआर कीबोर्ड खरीदना होगा।

नामक एक प्रोग्राम GlovePie विभिन्न स्रोतों से प्रोग्राम करने योग्य इनपुट की अनुमति देता है और इस समस्या को हल कर सकता है। GlovePie डाउनलोड पेज Here.~

उदाहरण के लिए, मैं एक आरपीजी गेम विकसित कर रहा हूं, और मेरे लैपटॉप का कीबोर्ड रन + अप + बाएं (पूर्वोत्तर रन) के संयोजन का पता नहीं लगा सकता है। हालांकि, अगर मैं अपने यूएसबी लॉजिटेक नियंत्रक को प्लग करता हूं और GlovePie का उपयोग कर नियंत्रक के बटन पर उन सटीक कुंजीपटल कुंजियों (ऊपर, बाएं, और बी [चलाने के लिए]) को मैप करता हूं, तो बिना किसी समस्या के पूर्वोत्तर चलाने के लिए आदेश कर सकता है।

आपके प्रश्नों के लिए, मुझे बिल्कुल यकीन नहीं है कि कार्यक्रम कुंजीपटल इनपुट के लिए अलग-अलग क्यों प्रतिक्रिया करते हैं, लेकिन यह के साथ हो सकता है कि वे आपके इनपुट का पता कैसे लगाते हैं। उदाहरण के लिए: एक जावा-आधारित गेम डायरेक्ट इनपुट (आपके इनपुट/आउटपुट डिवाइस से भेजे गए हस्ताक्षर) का पता लगा सकता है, जबकि एक एमुलेटर (जैसे पीसी के लिए एसएनईएस एम्यूलेटर जेएसएनईएस) केवल "ऊपर" कुंजी का उपयोग किया जा सकता है। एक अन्य इनपुट-इम्यूलेशन प्रोग्राम, ऑटोहॉटकी, जावा-आधारित गेम को नियंत्रित नहीं कर सकता है क्योंकि यह गेम के पहचान के समान रूप का उपयोग नहीं करता है (यह जावा के डायरेक्ट इनपुट का उपयोग नहीं करता है)।

तो, अधिक कुंजी प्राप्त करने के लिए, मैं ग्लोवेपी के साथ एक यूएसबी नियंत्रक का उपयोग करता हूं। एक और मंच से

उद्धरण:।। "यह वास्तव में एक समस्या (तकनीकी) समाधान काफी सरल है नहीं है, लेकिन कुंजीपटल की लागत बढ़ जाती है इस सरल समस्या पर विचार करें:। आप 64 चाबियाँ कितने तारों है यदि आप प्रत्येक संभावित एक साथ कुंजी प्रेस को अलग करना चाहते हैं तो आपको इसकी आवश्यकता है। उत्तर: 65, प्रत्येक कुंजी के लिए एक आम और एक। हालांकि, यदि आप 8x8 कुंजी के साथ सरणी में कुंजियों की व्यवस्था करते हैं तो आपको कॉलम के लिए केवल 16 तारों की आवश्यकता होती है। पंक्तियों के लिए 8। यह कुंजीपटल नियंत्रक चिप पर पिन की मात्रा को कम करता है और कीबोर्ड को उत्पादन के लिए बहुत सस्ता बनाता है। मैंने जो भी कीबोर्ड देखा है, वे इस तरह से उत्पादित होते हैं।"

7

अन्य मंच से बोली पूरी तरह से सही नहीं है ...

कीबोर्ड हमेशा कुंजी झिल्ली पर एक मैट्रिक्स और एक 8x8 व्यवस्था का उपयोग/microswitches 64 कुंजी कवर करेगा। शक्ति नीचे एक आम पंक्ति भेजा जा रहा है और उठाते हुए कौन सा कॉलम (यदि कोई हो) बिजली एक समय में एक से जुड़ा हुआ था - यह बहुत जल्दी स्कैन करता है। नियंत्रक चिप आसानी से एक ही समय में कई चाबियों को निर्धारित कर सकता है क्योंकि वे चाहते हैं (उनमें से सभी सहित) किसी भी प्रकार का प्रदर्शन हिट (इसे हर कुंजी को ऊपर या नीचे मतदान करना होता है)

उस जानकारी को होस्ट द्वारा सूचित करने के लिए कुंजीपटल द्वारा क्रमबद्ध किया जाता है जो ई vents हुआ है (चिप # 1 के डिजाइन और बस # 2 पर यातायात की मात्रा के रूप में सीमित कारक हैं)। वे ड्राइवरों द्वारा उचित ओएस घटनाओं में परिवर्तित हो जाते हैं (सीमित कारक # 3)। उन घटनाओं को तब अनुप्रयोगों द्वारा नियंत्रित किया जाता है, जो बदले में उनके द्वारा ट्रैक की जाने वाली कुंजियों की संख्या (# 4) पर अपनी सीमाएं हो सकती हैं।

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

+0

"एक बार में जितनी बार चाहें उतनी चाबियों को निर्धारित करें (उनमें से सभी सहित)" यह कथन आवे के जवाब में जानकारी को पूरी तरह गलत है। – horta

+0

आपकी प्रतिक्रिया के लिए धन्यवाद - अरेव का जवाब यहां शामिल कई सीमित कारकों का एक व्यावहारिक प्रदर्शन है। इस तथ्य से कोई दूर नहीं जा रहा है कि एक मैट्रिक्स 8x8 से अधिक तरीके से मतदान कर सकता है या किसी समस्या के बिना महत्वपूर्ण रूप से अधिक स्विच कर सकता है, 1080p/100Hz प्रदर्शन प्रति सेकंड 1920x1080x8x3x100 बाइनरी घटनाओं के लिए स्थानांतरित करने के लिए आवश्यक डेटा की मात्रा पर विचार करें। –

+0

मैं समझता हूं कि मैट्रिक्सिंग डेटा की एक आश्चर्यजनक रूप से बढ़ी हुई मात्रा को अनुमति देता है जिसे अंदर या बाहर भेजा जा सकता है। आउटपुट पर कभी भी कोई समस्या नहीं होती है, क्योंकि एलसीडी में, यह किसी भी समय प्रदर्शित होने वाले कॉलम को चुनता है और एक ही समय में दो कॉलम कभी नहीं चुनता है। हालांकि इनपुट पर, कंप्यूटर यह नहीं चुन सकता कि उपयोगकर्ता कौन से कॉलम/पंक्तियों को एक ही समय में दबाता है जिसके परिणामस्वरूप संदिग्ध कुंजी-प्रेस होती है यदि दो पंक्तियां और दो कॉलम एक साथ छोटा हो जाते हैं। आपका शेष सारांश बहुत उपयोगी है हालांकि यह दिखाता है कि यहां तक ​​कि यदि पहले हार्डवेयर मैट्रिक्सिंग समस्या को ठीक किया गया है, तो अभी भी अन्य बाधाएं हैं। – horta

4

मुझे एक अच्छा लेख Keyboard Ghosting Explained! मिला, जिसने मुझे इस मुद्दे पर जानने की आवश्यकता समझाई। और इसमें एक टेस्ट एरिया है, इसलिए मुझे पता चल सकता है कि मेरे लैपटॉप पर चाबियाँ कौन से संयोजन अच्छी तरह से खेल नहीं रही हैं।

+0

आपके लिए धन्यवाद, स्पष्टीकरण और डेमो के साथ बहुत उपयोगी है। – Demurgos

+0

लिंक मर चुका है। लिंक रोट ने इस जवाब को रद्द कर दिया है। –

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