स्टारबाउंड की जल प्रणाली वास्तव में 2D टाइल आधारित सेलुलर ऑटोमेटा है। स्क्रीन पर प्रत्येक टाइल जिसमें सामने टाइल की परत नहीं होती है, पानी को रखने में सक्षम है। पानी की मात्रा की गणना सेलुलर ऑटोमेटा के माध्यम से की जाती है।
इस तकनीक के बारे में अधिक जानकारी यहाँ:
http://www.gamasutra.com/view/feature/134736/an_intro_to_cellular_automation.php
http://www.jgallant.com/2d-liquid-simulator-with-cellular-automaton-in-unity/
बारिश की बूंदों के लिए, वे कण हैं। वे मुख्य रूप से नकली की सेवा करते हैं कि वास्तव में आसमान से पानी गिर रहा है। पानी केवल इसलिए जमा होता है क्योंकि खेल जानता है कि वर्तमान में बारिश हो रही है। व्यक्तिगत बूंदों का पानी के पूल के वास्तविक गठन से कोई लेना-देना नहीं है।
जिस तरह से वे इसे जमा करने के लिए प्राप्त करते हैं, वह यह निर्धारित करके है कि जमीन की शीर्ष परत में छेद कहां हैं। यदि कोई ऐसा क्षेत्र है जो पानी जमा कर सकता है, तो उस क्षेत्र की कोशिकाएं अपने जल स्तर को बढ़ाती हैं।
स्टारबाउंड भी पानी के दबाव से निपटता है, और उनकी प्रतिपादन तकनीक बहुत अद्भुत है। उनके पास सेलुलर ऑटोमेटा का उपयोग करके पानी सिमुलेशन भौतिकी का सबसे अच्छा 2 डी कार्यान्वयन है जो मैंने कभी देखा है।
यहां एक तरल भौतिकी इंजन का एक आदिम दृश्य है, जो उपरोक्त सेलुलर ऑटोमेटा तकनीक का उपयोग करता है। रेंडरिंग भाग थोड़ा अधिक जटिल हो जाता है, क्योंकि आपके पानी को एक संख्यात्मक मूल्य द्वारा दर्शाया जाता है।
http://www.jgallant.com/images/pressuretest.gif
इस उदाहरण में, एक बहुत ही सरल सुधार होगा पानी की कोशिकाओं को छुपाना, जिनकी टाइल में 1 पूर्ण इकाई से कम पानी हो अगर इसके नीचे कोई ठोस टाइल न हो। लेकिन फिर, आप पानी के प्रवाह को छिपा रहे हैं। इसे छिपाने के बजाय, आपको यह निर्धारित करना होगा कि पानी कैसे बह रहा है, और फिर इसके स्थान पर उपयुक्त पानी का छिड़काव करें।