यदि आप वास्तविक दुनिया कैसे काम करती है, इसके आधार पर एक गेम सिमुलेशन को प्रोग्राम करने की कोशिश करते हैं तो आप कुछ बड़ी समस्याओं में भाग लेने जा रहे हैं जब यह आता है कि कंप्यूटर कितनी सूचनाओं को संसाधित कर सकता है।
उदाहरण के लिए निम्न पृष्ठ को लें, जो यह गणना करने का प्रयास है कि रेत के एक दाने में कितने परमाणु हैं।
http://www.thenakedscientists.com/forum/index.php?topic=6447.0
मैंने केमिस्ट्री और फिजिक्स की पढ़ाई से लेकर इस तरह की बहुत सारी समस्याओं को देखा है और इस पृष्ठ पर जो व्यक्ति आया है वह विभिन्न शिक्षकों और पाठ्यपुस्तकों के साथ आई बॉल पार्क में है। -> 78 000 000 000 000 000 000
यहां तक कि अगर यह रास्ता बंद है और आप उन शून्य में से 6 को हटाते हैं, तो आपके पास अभी भी एक संख्या होगी जो औसत कंप्यूटर के लिए इंटरैक्टिव दरों पर संभालने के लिए बहुत बड़ी है। खासतौर से तब जब किसी समय में इनमें से 1000 लेनदेन हो रहे हों।
हम संभवतः एक समुद्र तट पर रेत के हर अनाज में प्रत्येक परमाणु के गति, स्थिति, वेग, तात्कालिक त्वरण, क्षेत्र शुल्क आदि की गणना और ट्रैक कर सकते हैं, अगर सिर्फ एक अनाज में 78 000 000 000 000 000 000 व्यक्तिगत घटक हैं। (या इससे भी अधिक यदि आप उप-परमाणु घटकों पर विचार करते हैं।)
मैंने एक बार एक nVidia ग्राफ़िक्स प्रोग्रामिंग दस्तावेज़ पढ़ा, जिसमें निम्न जैसा कुछ कहा गया था।
क्या करें जो सबसे अच्छा लगने का सबसे अच्छा अनुमान देता है क्योंकि कोई भी वास्तव में यह बताने में सक्षम नहीं होगा कि क्या सिमुलेशन 100% सटीक नहीं है। दक्षता को ध्यान में रखना होगा।
यह हर प्रकार के गेम सिमुलेशन के लिए लागू होता है, भले ही इसका ग्राफिक्स के साथ कोई लेना-देना न हो। आपको शायद केवल नंगे न्यूनतम करना चाहिए जो काम करने के लिए लेता है। यदि आप यहां से बाहर जाते हैं तो आप कंप्यूटर को उस जटिलता से भर देंगे, जिसे वह संभाल नहीं सकता।
आपको इस जटिलता का कोड लिखना और प्रयास करना होगा।
आप मुद्रा की प्रत्येक इकाई को अद्वितीय सीरियल नंबर दे सकते हैं लेकिन आप कंप्यूटर के सभी संसाधनों का उपयोग इस एक विस्तार से करेंगे।
शायद इसे संभालने का एक बेहतर तरीका प्रत्येक लेनदेन के लिए केवल 1 विशिष्ट पहचान देना है।
तो खिलाड़ी # 1 खिलाड़ी # 2 $ 1000000 का भुगतान करता है।
यदि आप प्रत्येक डॉलर को एक विशिष्ट पहचानकर्ता देते हैं, तो कई लोगों के कंप्यूटरों में बड़ी समस्याएं होने लगेंगी, न कि सभी नेटवर्क ट्रैफ़िक और इस कारण होने वाले अंतराल का उल्लेख करने के लिए।
या आप केवल एक मूल्य बना सकते हैं जो पूरे लेनदेन का प्रतिनिधित्व करता है।
uint transferFunds_Player1ToPlayer2 = 1000000;
यहां तक कि एक 20 वर्षीय पॉकेट कैलकुलेटर कुछ इस तरह से संभाल सकता है।