HeadlinesBriefing HeadlinesBriefing.com

Lukas Vogel ने SQL डेटाबेस में Doom रेंडर किया

Ars Technica •
×

Lukas Vogel ने एक लंबी ब्लॉग पोस्ट में लिखा है कि कैसे उन्होंने SQL डेटाबेस का उपयोग करके Doom रेंडर किया। SQLDoom प्रोजेक्ट इनपुट और आउटपुट को संभालने, गेम के टाइमिंग को चलाने और प्रत्येक फ्रेम को प्रदर्शित करने के लिए एक छोटे Python क्लाइंट का उपयोग करता है। इसके पीछे, Cedar DB तालिकाओं की एक श्रृंखला गेम ज्यामिति और स्थिति को ट्रैक करती है, जबकि लगभग 1300 लाइनें SQL क्वेरीज़ 89 सामान्य तालिका अभिव्यक्तियों में गेम लॉजिक लागू करती हैं और प्रति सेकंड 35 बिटमैप फ्रेमबफर उत्पन्न करती हैं।

SQLDoom, Vogel के पिछले Doom QL प्रोजेक्ट की तुलना में एक बड़ा सुधार है, जिसने "पूरी तरह से SQL में एक मल्टीप्लेयर Doom-जैसी शूटर" बनाया लेकिन ग्रेस्केल ASCII ग्राफिक्स के साथ समाप्त हुआ। नया SQLDoom पूर्ण-रंग 640×480 फ्रेम उत्पन्न करता है जो मूल Doom निष्पादन योग्य के समान हैं।

Vogel कहते हैं, Doom के क्लासिक WAD फ़ाइलों को रिलेशनल डेटाबेस में बदलना सीधा था, क्योंकि गेम ने स्तरों को वर्टिस, लाइन्स और सेक्टरों में तोड़ दिया। Doom के बाइनरी-स्पेस पार्टीशन ट्री को प्रत्येक स्थिति के लिए पूर्व-गणना की गई sort_key का उपयोग करके SQL में तोड़ा जा सकता है। इसके साथ, एक सरल "ORDER BY" स्टेटमेंट यह निर्धारित करता है कि प्रत्येक फ्रेम में दीवारों के कौन से हिस्से प्रदर्शित हों।

मुख्य संस्थाएं: कंपनियां: Ars Technica | लोग: Lukas Vogel

स्रोत: Ars Technica · HeadlinesBriefing द्वारा सारांशित