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