Cave: शुरूआती मार्गदर्शिका
Cave: आरंभिक मार्गदर्शिका
Lesson 14 of 19 • 10 XP
Keep your place in this quest
Log in or sign up for free to subscribe, follow lesson progress, and access more learning content.
Logic Bricks Cave का visual scripting सिस्टम है।
यह आपको Python कोड सीधे लिखने के बजाय नोड्स को कनेक्ट करके गेमप्ले व्यवहार बनाने देता है।

यह पाठ Logic Bricks क्या हैं, वे कहाँ रहते हैं, वे कैसे चलते हैं, और आपको उन्हें कब उपयोग करना चाहिए के बारे में परिचय देता है। आप बाद के गहरे पाठों में पूरे सिस्टम को सीखेंगे, लेकिन यह अवलोकन आपको समझने में मदद करेगा कि Logic Bricks Cave के वर्कफ़्लो में कहाँ फिट होते हैं।
वीडियो ट्यूटोरियल
हमारे पास Logic Bricks के साथ शुरू करने के लिए एक पूरा वीडियो ट्यूटोरियल है। हम सुझाव देते हैं कि आप इसे देखें।
YouTube पर देखें
यह उन्हें गहराई से सीखने का बेहतर तरीका होगा।
लेकिन यदि आप यहाँ जारी रखना चाहते हैं, तो आइए एक त्वरित परिचय देते हैं:
Logic Bricks क्या हैं?
Logic Bricks दृश्य तार्किक ग्राफ हैं जो आपको वास्तविक कोड लिखे बिना त्वरित रूप से दृश्य रूप से लॉजिक बनाने देते हैं।

यदि आप Unreal Engine के Blueprints जैसे अन्य visual scripting तरीकों से परिचित हैं, तो प्रत्येक Brick मूल रूप से एक नोड होता है। लेकिन Cave के नामकरण अनुसार, उन्हें Bricks कहा जाता है। Bricks कई प्रकार के लॉजिक का प्रतिनिधित्व कर सकते हैं:
- इवेंट्स।
- क्रियाएं।
- मान।
- गणित।
- स्ट्रिंग्स।
- इंजन उपकरण।
- Entity ऑपरेशन्स।
- Component ऑपरेशन्स।
- Asset संदर्भ।
- फ़ंक्शंस।
आप Bricks को एक साथ कनेक्ट करके व्यवहार बनाते हैं।
यदि आप प्रोग्रामिंग में नए हैं, तो Logic Bricks इंटरैक्शन बनाने का एक दोस्ताना तरीका हो सकता है क्योंकि आप व्यवहार को एक ग्राफ के रूप में देख सकते हैं।
उदाहरण के लिए, एक सरल ग्राफ का मतलब हो सकता है:
जब खिलाड़ी इस ट्रिगर को छूता है:
एक दरवाज़ा खोलो।
एक ध्वनि चलाओ।
ट्रिगर को अक्षम करो।
ऐसे इंटरैक्शन को एक लंबे स्क्रिप्ट की तुलना में दृश्य रूप से समझना आसान होता है जब आप अभी सीख रहे हों।
यह पूरा Logic Bricks कोर्स नहीं है
यह पाठ केवल एक अवलोकन है।
Logic Bricks इससे कहीं अधिक गहरा हो सकते हैं:
- फ़ंक्शंस।
- फ्लो कंट्रोल।
- वैल्यू सॉकेट्स।
- रनटाइम डिबगिंग।
- टिप्पणियाँ।
- एसेट हैंडलर Bricks।
- पुन: प्रयोज्य ग्राफ।
- State Machine इंटीग्रेशन।
ये विषय बाद में केंद्रित पाठों के हकदार हैं।
फिलहाल, लक्ष्य है Logic Bricks की भूमिका को समझना: वे व्यवहार बनाने, सिस्टम कनेक्ट करने, इंटरैक्शन का प्रोटोटाइप बनाने, और गेम ऑब्जेक्ट्स को इवेंट्स के प्रति प्रतिक्रिया देने का एक दृश्य तरीका हैं।
यदि आप पूरा Logic Bricks ट्यूटोरियल चाहते हैं, कृपया इसे देखें।
Logic Brick Assets
Logic Bricks का ग्राफ एक asset होता है। आप इसे Asset Browser में बनाते हैं, जैसे आप scenes, Python scripts, timelines, materials, या entity templates बनाते हैं।
क्योंकि यह एक asset है, इसे आप:
- नामित कर सकते हैं।
- फ़ोल्डर्स में व्यवस्थित कर सकते हैं।
- Asset Browser में सेलेक्ट कर सकते हैं।
- Properties टैब में संपादित कर सकते हैं।
- कई entities द्वारा पुन: उपयोग कर सकते हैं।
- प्रोजेक्ट के साथ सेव कर सकते हैं।
यह महत्वपूर्ण है: ग्राफ खुद प्रोजेक्ट कंटेंट होता है।
उदाहरण के लिए, आप एक Door Logic asset बना सकते हैं और इसे कई दरवाज़ों पर इस्तेमाल कर सकते हैं। बाद में, यदि आप ग्राफ में सुधार करते हैं, तो वे दरवाज़े अपडेट किए गए व्यवहार को साझा कर सकते हैं, यह इस बात पर निर्भर करता है कि आप पुन: उपयोग योग्य सेटअप को कैसे संरचित करते हैं।
Logic Bricks Component
गेम में Logic Bricks asset चलाने के लिए, इसे एक entity के साथ Logic Bricks Component के रूप में संलग्न करें।

यह कंपोनेंट चुनता है कि कौन सा Logic Bricks asset उपयोग करना है। रनटाइम पर, कंपोनेंट अपने संबंधित entity के लिए ग्राफ का एक रनटाइम इंस्टेंस बनाता है।
इसका मतलब है:
- asset साझा व्यवहार को परिभाषित करता है।
- प्रत्येक entity को इसका अपना चल रहा इंस्टेंस मिलता है।
- एक ही ग्राफ कई entities द्वारा पुन: उपयोग किया जा सकता है।
यह इस तरह से है जैसे एक पुन: उपयोग योग्य Python स्क्रिप्ट कई entities पर अलग-अलग चल सकती है।
पुन: उपयोग योग्य Logic Bricks
Logic Bricks पुन: उपयोग योग्य हैं, और यह उनकी सबसे बड़ी ताकतों में से एक है।
उदाहरण के लिए, आप एक Logic Bricks asset बना सकते हैं जिसका नाम Open Door है। फिर कई दरवाज़ा entities उसी ग्राफ का उपयोग कर सकते हैं।
पुन: उपयोग योग्य लॉजिक तब अच्छा काम करता है जब:
- कई ऑब्जेक्ट्स समान व्यवहार साझा करते हैं।
- प्रत्येक ऑब्जेक्ट को थोड़े अलग स्थानीय मानों की आवश्यकता होती है।
- आप व्यवहार को एक स्थान पर बेहतर बनाना चाहते हैं।
- आप प्रोजेक्ट को व्यवस्थित रखना चाहते हैं।
यह इस तरह है जैसे:
| पुन: उपयोग योग्य एसेट | पुन: उपयोग करने वाला |
|---|---|
| Python Script | Python Components |
| Entity Template | Scene instances |
| Material | Mesh entities |
| Logic Bricks | Logic Bricks Components |
बहुत सारे स्थानों पर एक ही ग्राफ कॉपी करने के बजाय, आप एक व्यवहार एसेट रखते हैं और हर entity को ज़रूरत के अनुसार कॉन्फ़िगर करते हैं।
Logic Brick Properties
Logic Bricks प्रॉपर्टीज़ दिखा सकते हैं।
वे Properties Logic Bricks Component में सिंक्रोनाइज़ होते हैं, जहां उन्हें स्थानीय रूप से ओवरराइड किया जा सकता है।
उदाहरण के लिए, एक पुन: उपयोग योग्य damage ग्राफ ये प्रॉपर्टीज़ दिखा सकता है:
- अधिकतम स्वास्थ्य।
- नुकसान की मात्रा।
- नुकसान cooldown।
- लक्ष्य टैग।
- ट्रिगर करने के बाद ऑब्जेक्ट को नष्ट करना है या नहीं।
फिर प्रत्येक entity जिसने ग्राफ का उपयोग किया है उसके अलग-अलग मान हो सकते हैं।
एक spike trap कम नुकसान कर सकता है, जबकि lava volume उसी लॉजिक को अधिक नुकसान के साथ उपयोग कर सकता है।
Flow Events
लॉजिक आमतौर पर इवेंट्स से शुरू होता है।
सामान्य flow events में शामिल हैं:
| इवेंट | कब यह चलता है |
|---|---|
On Start |
जब लॉजिक शुरू होता है। |
On First Update |
शुरू होने के बाद पहली बार अपडेट पर। |
On Update |
गेम के अपडेट होने पर लगातार। |
On Paused Update |
जब paused updates की अनुमति हो। |
On Late Update |
अपडेट साइकल के बाद में। |
On End |
जब लॉजिक समाप्त हो रहा होता है। |
इवेंट्स ग्राफ के प्रवेश बिंदु होते हैं।
इवेंट या कोई ट्रिगर नहीं होने पर, ग्राफ को काम शुरू करने का कारण नहीं मिलता।
Logic Flow
Logic flow यह तय करता है कि क्या होता है और किस क्रम में। Flow sockets इवेंट्स और क्रियात्मक Bricks को कनेक्ट करते हैं।
उदाहरण:

इसका मतलब है कि प्रिंट क्रिया ग्राफ शुरू होने पर होती है।
एक महत्वपूर्ण शुरुआती अंतर है:
| कनेक्शन प्रकार | उद्देश्य |
|---|---|
| Flow कनेक्शन | यह निर्धारित करते हैं कि क्रियाएं कब चलेंगी। |
| वैल्यू कनेक्शन | उन क्रियाओं को डेटा प्रदान करते हैं। |
एक बार यह समझ में आ जाए, Logic Bricks पढ़ना बहुत आसान हो जाता है।
अधिक जटिल ग्राफ शाखाएं बना सकते हैं, देरी कर सकते हैं, शेड्यूल कर सकते हैं, फ़ंक्शंस कॉल कर सकते हैं, मान पढ़ सकते हैं, entities को संशोधित कर सकते हैं, और components के साथ संवाद कर सकते हैं।
रनटाइम डिबगिंग
Logic Bricks परीक्षण के दौरान उपयोगी रनटाइम फीडबैक दिखा सकते हैं।
जब Play Mode में मालिकाना entity चुनी होती है, तो निष्पादित Bricks और लिंक हाइलाइट हो सकते हैं ताकि आप देख सकें कि क्या चला:

रनटाइम डिबगिंग मदद कर सकता है यह देखने में:
- क्या इवेंट चला?
- क्या कंडीशन पास हुई?
- क्या क्रिया निष्पादित हुई?
- क्या ग्राफ सही ऑब्जेक्ट तक पहुंचा?
- क्या कंसोल में कोई त्रुटि छपी?
यदि कोई दरवाजा नहीं खुला, तो यह फीडबैक जांचने में मदद करता है कि क्या ट्रिगर इवेंट चला, कंडीशन पास हुई, और क्रिया दरवाजे तक पहुंची।
खेल का परीक्षण करने के बाद जब आप एक Logic Brick चुनते हैं, तो यह स्क्रीन के निचले बाएँ कोने में भी दिखाता है कि इसे कितनी बार चलाया गया और औसत निष्पादन समय क्या है।
Logic Bricks State Machines में
Logic Bricks केवल standalone components के रूप में उपयोग नहीं होते। इन्हें State Machines के अंदर भी इस्तेमाल किया जा सकता है।
उदाहरण:
- एक State Machine स्टेट अपने व्यवहार के लिए Logic Bricks का उपयोग कर सकता है।
- एक ट्रांजिशन अपनी स्थिति के लिए Logic Bricks का उपयोग कर सकता है।
State Machines बाद में समझाए जाएंगे, लेकिन जानना उपयोगी है कि Logic Bricks बड़े संरचित व्यवहार प्रणालियों का हिस्सा हो सकते हैं।
इसका मतलब है कि आप सरल इंटरैक्शन के लिए visual logic और व्यवस्थित व्यवहारों जैसे enemy states के लिए भी इसका उपयोग कर सकते हैं।
Logic Bricks कब उपयोग करें
Logic Bricks निम्नलिखित के लिए उपयुक्त हैं:
- जो शुरुआती गेमप्ले लॉजिक सीख रहे हैं।
- डिज़ाइनर्स जो दृश्य लॉजिक पसंद करते हैं।
- जल्दी प्रोटोटाइप बनाने के लिए।
- सरल इंटरैक्शन के लिए।
- ट्रिगर्स के लिए।
- UI व्यवहार के लिए।
- पुन: उपयोग करने योग्य गेमप्ले इवेंट्स के लिए।
- सिस्टम को जोड़ने के लिए।
अच्छे शुरुआती उदाहरण:
- एक pressure plate जो एक दरवाज़ा खोलता है।
- एक pickup जो स्वास्थ्य बढ़ाता है।
- एक ट्रिगर जो Timeline शुरू करता है।
- एक UI बटन जो сцен बदलता है।
- एक hazard जो खिलाड़ी को नुकसान पहुंचाता है।
- एक checkpoint जो स्थान सहेजता है।
बहुत बड़े या जटिल सिस्टम के लिए, Python को organize करना आसान हो सकता है। लेकिन कई गेमप्ले इंटरैक्शन के लिए, Logic Bricks तेज़, दृश्य और निरीक्षण में आसान होते हैं।
एक सरल नियम
Cave engine का visual scripting Python API के साथ एक-से-एक समानता रखता है, इसका मतलब है कि कोड के माध्यम से उपलब्ध हर फ़ंक्शन Logic Bricks के माध्यम से भी उपलब्ध होना चाहिए। इसका मतलब है कि आप स्वतंत्र रूप से चुन सकते हैं कि आप अपने गेम का लॉजिक किस माध्यम से बनाना चाहते हैं। अर्थात्:
- जब आप व्यवहार को एक ग्राफ के रूप में देखना चाहते हैं तो Logic Bricks का उपयोग करें।
- जब व्यवहार कोड के रूप में व्यक्त करना आसान हो तो Python का उपयोग करें।
- आप दोनों का संयोजन भी कर सकते हैं!
दोनों तरीके Cave का हिस्सा हैं, और कई प्रोजेक्ट कुछ सिस्टम के लिए visual logic और दूसरों के लिए Python का उपयोग करते हैं।