मैंने लगभग 10 वर्षों तक गेम प्रोग्राम नहीं किया है (मेरा आखिरी अनुभव डीजेजीपीपी + एलेग्रो था), लेकिन मैंने सोचा कि मैं सप्ताहांत में एक्सएनए की जांच करूँगा यह देखने के लिए कि यह कैसे आकार दे रहा था।गेम प्रोग्रामिंग और इवेंट हैंडलर
मैं काफी प्रभावित हूं, हालांकि मैं एक गेम इंजन को एक साथ रखना जारी रखता हूं, मेरे पास एक (संभवतः) मूल प्रश्न है।
गेम को चलाने के लिए आप सी # के प्रतिनिधियों और घटनाओं पर कितना भरोसा कर सकते हैं? एक आवेदन प्रोग्रामर के रूप में, मैं प्रतिनिधियों और घटनाओं का भारी उपयोग करता हूं, लेकिन मुझे नहीं पता कि ऐसा करने के लिए कोई महत्वपूर्ण ओवरहेड है या नहीं।
मेरे गेम इंजन में, मैंने एक प्रकार का "पीछा कैमरा" डिज़ाइन किया है, जिसे किसी ऑब्जेक्ट से जोड़ा जा सकता है और फिर ऑब्जेक्ट के सापेक्ष अपनी स्थिति को फिर से समझता है। जब ऑब्जेक्ट चलता है, पीछा कैम को अपडेट करने के दो तरीके हैं।
- मुख्य गेम लूप में "अपडेट कैमरा()" विधि है।
- किसी ईवेंट हैंडलर का उपयोग करें, और पीछा करने वाला कैमरा ऑब्जेक्ट की सदस्यता लेता है।
मैं बाद का उपयोग कर रहा हूं, क्योंकि यह मुझे घटनाओं को एक साथ श्रृंखला करने और इंजन के बड़े हिस्सों को अच्छी तरह से स्वचालित करने की अनुमति देता है। अचानक, 3-5 लाइन इवेंट हैंडलर के मुट्ठी भर में भारी और जटिल हो जाएगा ... यह एक सुंदरता है।
हालांकि, अगर प्रत्येक नैनोसेकंड को फायर करने वाले ईवेंट हैंडलर एक बड़ी मंदी के रूप में निकलते हैं, तो मैं इसे हटा दूंगा और लूप दृष्टिकोण के साथ जाऊंगा।
विचार?
मैंने नोटिस किया था। यह एक छोटी सी छोटी दुनिया है। – FlySwat