Cave: शुरुआत गाइड
इंजिन आर्किटेक्चर और शब्दावली
Lesson 5 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.
Cave को सरलता से सीखने के लिए डिज़ाइन किया गया है, लेकिन इसमें कुछ महत्वपूर्ण अवधारणाएँ हैं जिन्हें आपको समझना आवश्यक है।
यह पाठ उन मुख्य शब्दों को समझाता है जिन्हें आप संपादक में हर जगह देखेंगे: दृश्य, इकाई, घटक, सामग्री, इकाई टेम्पलेट, ट्रांसफॉर्म, कठोर शरीर, चरित्र घटक, पायथन घटक, लॉजिक ब्रिक, समयरेखा, और रनटाइम।
यह एक शीर्ष स्तर की समीक्षा है, और यह प्रत्येक शब्द के विशेष विवरण में नहीं जाती है, लेकिन इंजन की आपकी समझ को बढ़ाने के लिए यह महत्वपूर्ण है। जब ये शब्द समझ में आते हैं, तो इंजन का बाकी हिस्सा पढ़ना बहुत आसान हो जाता है।
बड़ा चित्र
अधिकांश Cave परियोजनाएँ कुछ दोहराए गए विचारों से बनाई जाती हैं:
| अवधारणा | सरल अर्थ |
|---|---|
| दृश्य | एक स्तर, मेनू, परीक्षण क्षेत्र, याPlayable Space. |
| इकाई | दृश्य के अंदर का एक ऑब्जेक्ट। |
| घटक | इकाई से जुड़े एक विशेषता। |
| सामग्री | एसेट ब्राउज़र में संग्रहीत पुनः उपयोग योग्य परियोजना सामग्री। |
| इकाई टेम्पलेट | एक पुनः उपयोग योग्य इकाई सेटअप, पूर्ववर्ती के समान। |
उदाहरण के लिए, एक स्तर में एक लकड़ी का बक्सा सोचिए:

- स्तर एक
दृश्यहै। - स्तर में रखी गई बक्सा एक
इकाईहै। - बक्से की स्थिति इसके
ट्रांसफॉर्ममें संग्रहीत होती है। - दृश्य मॉडल को एक
मेश घटकद्वारा संभाला जाता है। - टकराव को एक
कठोर शरीर घटकद्वारा संभाला जा सकता है। - बक्से द्वारा उपयोग की जाने वाली मॉडल, सामग्री, और टेक्सचर
सामग्रीहैं।
यदि आप उस बक्से के सेटअप का कई दृश्यों में पुनः उपयोग करना चाहते हैं, तो आप इसे एक इकाई टेम्पलेट के रूप में सहेज सकते हैं।
दृश्य
एक दृश्य इकाइयों का संग्रह है।
दृश्यों का उपयोग किया जा सकता है:
- गेम स्तर।
- मेनू।
- परीक्षण मानचित्र।
- प्रोटोटाइप कमरे।
- कटसीन स्थान।
केवल सक्रिय दृश्य को मुख्य 3D दृश्य में संपादित किया जाता है। जब आप खेल का परीक्षण करते हैं, तो Cave दृश्य को गेमप्ले के रूप में चलाता है न कि केवल संपादक की सामग्री के रूप में।
जब आप परियोजना को एक रनटाइम के रूप में निर्यात या परीक्षण करते हैं, तो परियोजना सेटिंग निर्धारित करती है कि कौन सा दृश्य प्रारंभिक दृश्य के रूप में उपयोग किया जाएगा। आप इसे सेटिंग्स टैब में जाकर बदल सकते हैं।
इकाई
एक इकाई दृश्य में एक ऑब्जेक्ट है।
इकाइयाँ दृश्य में दृश्य या अदृश्य हो सकती हैं। वे सरल या जटिल हो सकती हैं।
इकाइयों के उदाहरण:
- एक खिलाड़ी पात्र।
- एक दरवाजा।
- एक कैमरा।
- एक रोशनी।
- एक ट्रिगर।
- एक UI बटन।
- एक स्पॉन बिंदु।
- संगठन के लिए प्रयुक्त एक फ़ोल्डर।
एक इकाई अकेले में मुख्यतः एक कंटेनर होती है। यह वास्तव में क्या कर सकती है, यह उस पर संलग्न घटकों पर निर्भर करती है।
घटक
एक घटक एक इकाई को व्यवहार या डेटा जोड़ता है।
हर संभव चीज़ के लिए एक विशाल ऑब्जेक्ट प्रकार होने के बजाय, Cave आपको घटकों को जोड़कर इकाइयों का निर्माण करने देता है। और यही वह तरीका है जिससे आपको अपने खेल के विभिन्न तत्वों का निर्माण करना है, विभिन्न घटक प्रकारों के साथ इकाइयों को जोड़कर।
उदाहरण के लिए:
| इकाई | संभावित घटक |
|---|---|
| स्थिर दीवार | ट्रांसफॉर्म, मेश, कठोर शरीर। |
| खिलाड़ी | ट्रांसफॉर्म, चरित्र, कैमरा, पायथन। |
| दरवाजा | ट्रांसफॉर्म, मेश, कठोर शरीर, पायथन या लॉजिक ब्रिक्स। |
| पॉइंट लाइट | ट्रांसफॉर्म, लाइट। |
| UI बटन | UI तत्व। |
यह Cave में सबसे महत्वपूर्ण विचारों में से एक है: इकाइयाँ कंटेनर हैं। घटक उन्हें विशेषताएँ प्रदान करते हैं।
यहां यह भी उल्लेख करना महत्वपूर्ण है कि आपके विभिन्न वस्तु प्रकारों को संयोजित करने का एक और तरीका यह है कि आप चाइल्ड इकाई पदानुक्रम में कई इकाइयों का उपयोग कर सकते हैं।
इकाई नामकरण
जब आप एक नई इकाई बनाते हैं, तो Cave विभिन्न प्रारंभिक प्रकारों की पेशकश करता है, जैसे फ़ोल्डर, खाली, मेश, पॉइंट लाइट, कैमरा, UI तत्व, टेक्स्ट, और बटन।
ये पूर्ण रूप से अलग-अलग विश्व नहीं हैं। ये सुविधाजनक प्रारंभिक बिंदु हैं।
उदाहरण के लिए:
- एक
खालीएक मूल इकाई है जिसमें एक ट्रांसफॉर्म होता है। - एक
मेशइकाई एक इकाई है जो मेश दिखाने के लिए तैयार होती है। - एक
पॉइंट लाइटइकाई एक इकाई है जो प्रकाश के रूप में व्यवहार करने के लिए तैयार होती है। - एक
कैमराइकाई एक इकाई है जो दृश्य को प्रस्तुत करने के लिए तैयार होती है। - एक
फ़ोल्डरएक इकाई है जिसका उपयोग मुख्यतः संगठन के लिए किया जाता है।
आप आमतौर पर बाद में घटक जोड़ सकते हैं, हटा सकते हैं, या संपादित कर सकते हैं, इसलिए प्रारंभिक प्रकार बस एक सहायक शॉर्टकट है।
ट्रांसफॉर्म
ट्रांसफॉर्म Cave को बताता है कि एक इकाई कहाँ है और यह कैसे उन्मुख है।
इसमें शामिल हैं:
- स्थिति।
- घूर्णन।
- स्केल।
लगभग हर दृश्य इकाई में एक ट्रांसफॉर्म होता है क्योंकि अधिकांश वस्तुओं को दुनिया में कहीं मौजूद रहने की आवश्यकता होती है। जब आप एक इकाई को गिज़्मो के साथ स्थानांतरित, घुमा या स्केल करते हैं, तो आप इसके ट्रांसफॉर्म को संपादित कर रहे होते हैं। जब एक इकाई दूसरी इकाई के लिए पेरेंट की जाती है, तो उसका ट्रांसफॉर्म उस पदानुक्रम के सापेक्ष मूल्यांकन किया जाता है।
सामग्री
एक सामग्री पुनः उपयोग योग्य परियोजना सामग्री है जो एसेट ब्राउज़र में संग्रहित होती है। यह महत्वपूर्ण है यह उल्लेख करना कि जबकि एक इकाई आंतरिक रूप से एक सामग्री मानी जाती है, एक सामग्री इकाई के समान नहीं होती।
उदाहरण के लिए:
- एक मेश सामग्री मॉडल डेटा है। एक मेश इकाई एक ऑब्जेक्ट है जो दृश्य में उस मेश सामग्री का उपयोग करती है।
- एक सामग्री सामग्री एक सतह कैसे दिखती है, इसे परिभाषित करती है। एक मेश इकाई उस सामग्री को संदर्भित कर सकती है।
- एक पायथन स्क्रिप्ट सामग्री में कोड होता है। एक पायथन घटक उस स्क्रिप्ट का उपयोग कर सकता है।
यह विभाजन शक्तिशाली है क्योंकि एक सामग्री का कई बार पुनः उपयोग किया जा सकता है। यदि दस बक्से उसी सामग्री का उपयोग करते हैं, तो सामग्री सामग्री को संपादित करने से सभी को अपडेट किया जा सकता है।
इकाई टेम्पलेट
एक इकाई टेम्पलेट एक पुनः उपयोग योग्य इकाई सेटअप है। नीचे स्क्रीनशॉट देखें। इकाई टेम्पलेट सामग्री उसके थंबनेल के नीचे हरे रंग की रेखा के साथ चिह्नित होती हैं:

यदि आप किसी अन्य इंजन से आते हैं, तो आप इसे पूर्ववर्ती के समान सोच सकते हैं।
एक इकाई टेम्पलेट संग्रहीत कर सकती है:
- एक इकाई पदानुक्रम।
- घटक।
- घटक सेटिंग।
- सामग्री संदर्भ।
- चाइल्ड इकाइयाँ।
यह कुछ भी पुनः उपयोग करने के लिए उपयोगी है:
- दुश्मन।
- पिकअप।
- दरवाजे।
- प्रॉप्स।
- वाहन।
- UI विजेट।
- गेमप्ले ऑब्जेक्ट।
एक ही ऑब्जेक्ट को बार-बार पुनः बनाने के बजाय, आप इसे एक बार एक इकाई टेम्पलेट के रूप में बनाते हैं और इसे आवश्यकतानुसार.instances पर रखते हैं।
कठिन शरीर
एक कठिन शरीर एक इकाई को भौतिक व्यवहार देता है। इसका उपयोग तब किया जाता है जब किसी ऑब्जेक्ट को टकराव या भौतिक गति की आवश्यकता होती है।
उदाहरण:
- एक बक्सा जो खिलाड़ी को रोकता है।
- एक गेंद जो रोल कर सकती है।
- एक दरवाजा जिसमें टकराव होता है।
- एक दीवार जिसे खिलाड़ी पार नहीं कर सकता।
कठोर शरीर इंजन के भौतिक पक्ष का हिस्सा हैं। आप इन्हें तब उपयोग करेंगे जब वस्तुओं को दुनिया के साथ भौतिक रूप से बातचीत करने की आवश्यकता होती है।
चरित्र घटक
एक चरित्र घटक चरित्र-शैली आंदोलन के लिए उपयोग किया जाता है। यह एक नियमित कठिन शरीर से भिन्न होता है क्योंकि एक चरित्र को आमतौर पर विशेष व्यवहार की आवश्यकता होती है:
- चलना।
- दीवारों के साथ फिसलना।
- ढलानों को संभालना।
- कूदना।
- खिलाड़ी के इनपुट का जवाब देना।
किसी खिलाड़ी या NPC के लिए, एक चरित्र घटक आमतौर पर एक बुनियादी भौतिक वस्तु को चरित्र की तरह व्यवहार करने से बेहतर प्रारंभ बिंदु होता है।
जब हम Cave में एक चरित्र घटक की बात करते हैं, तो हम इसके चरित्र भौतिकी का उल्लेख कर रहे हैं, न कि गेम विशिष्ट तर्क (जैसे आंदोलन, आदि)।
टैग और गुण
टैग और गुण आपको इकाइयों की पहचान और कॉन्फ़िगर करने में मदद करते हैं।
- एक टैग एक लेबल है जो स्क्रिप्ट या तर्क को खोजने और वर्गीकृत करने में मदद कर सकता है।
- गुण संपादनीय मान हैं जो संपादक के लिए उजागर होते हैं। ये आपको हर बार कोड को फिर से लिखे बिना व्यवहार को समायोजित करने देते हैं।
उदाहरण के लिए, एक दुश्मन के पास गुण हो सकते हैं:
- चलने की गति।
- स्वास्थ्य।
- हमले की दूरी।
- गश्ती लक्ष्य।
गुणों का अच्छा उपयोग आपके खेल को ट्यून करना आसान बनाता है।
गुण केवल इकाइयों तक ही सीमित नहीं हैं: दृश्य, लॉजिक ब्रिक्स और अन्य सामग्री भी इनमें हो सकती हैं।
जब हम Cave में गुणों के बारे में बात करते हैं, तो हम विशेष रूप से उन गुणों का संदर्भ दे रहे हैं जिन्हें कोड के जरिए पायथन शब्दकोश का उपयोग करके पहुँचा जा सकता है। वे लगभग हमेशा संपादक में उपलब्ध होते हैं।
पायथन घटक
एक पायथन घटक एक इकाई को पायथन तर्क चलाने देता है।
यह उपयोगी है जब आप निम्नलिखित जैसे कस्टम व्यवहार चाहते हैं:
- दरवाजा खोलना।
- एक प्लेटफ़ॉर्म को स्थानांतरित करना।
- खिलाड़ी के इनपुट को संभालना।
- एक वस्तु को स्पॉन करना।
- UI टेक्स्ट को अपडेट करना।
- इवेंट को ट्रिगर करना।
पायथन घटक Cave में गेमप्ले प्रोग्राम करने के मुख्य तरीकों में से एक हैं।
पायथन कोड घटक
एक पायथन कोड घटक का उपयोग तब किया जाता है जब कोड घटक में सीधे संग्रहीत होता है बजाय कि उसे एक अलग स्क्रिप्ट सामग्री के रूप में लिंक किया जाए। यह त्वरित परीक्षण, छोटे व्यवहार, या प्रोटोटाइप के लिए उपयोगी हो सकता है।
बड़े गेमप्ले सिस्टम के लिए, एक अलग पायथन स्क्रिप्ट सामग्री को व्यवस्थित और पुनः उपयोग करना आमतौर पर आसान होता है।
लॉजिक ब्रिक
लॉजिक ब्रिक्स तर्क बनाने के लिए एक दृश्यात्मक तरीका है। ये उस समय उपयोगी हैं जब आप पायथन कोड सीधे लिखे बिना व्यवहार चाहते हैं।
यदि आप अनरियल के ब्लूप्रिंट्स को जानते हैं, तो लॉजिक ब्रिक्स इसी तरह के विचारों के परिवार में हैं: आप तर्क को दृश्य रूप से जोड़ते हैं बजाय कि सब कुछ को पाठ के रूप में लिखने के।
इन्हें किसी भी प्रकार के तर्क बनाने के लिए विशेष रूप से उपयोगी होते हैं जिन्हें पायथन कोड लिखने की आवश्यकता नहीं होती है। उदाहरण के लिए, गेमप्ले घटनाएँ और तर्क, ऑब्जेक्ट व्यवहार, सिस्टम को जोड़ना, ट्रिगर, आदि।
आप बाद में इस गाइड में इनका अध्ययन करेंगे।
समयरेखा
एक समयरेखा एक संपत्ति है जिसका उपयोग प्राधिकृत अनुक्रमों के लिए किया जाता है। समयरेखाएँ समय के साथ एनिमेट या चीजें ट्रिगर कर सकती हैं।
ये उपयोगी हैं के लिए:
- कटसीन।
- कैमरा मूवमेंट।
- स्क्रिप्टेड इवेंट।
- समन्वित गेमप्ले अनुक्रम।
समयरेखाएँ हर खेल के लिए आवश्यक नहीं होती हैं, लेकिन ये उपयोगी होती हैं जब आप चाहते हैं कि कुछ विशिष्ट प्राधिकृत क्रम में हो।
महत्वपूर्ण: समयरेखाएँ व्यक्तिगत एनिमेशन संपादन का साधन नहीं हैं, जैसे कि अपने चरित्र के वॉक साइकिल एनिमेशन को संपादित करना। इस मामले में, आपको एक विशेष DCC सॉफ़्टवेयर का उपयोग करना होगा, जैसे कि ब्लेंडर, फिर इसे Cave में आयात करें।
खिलाड़ी और गेम रनटाइम
- Cave संपादक वह जगह है जहाँ आप परियोजना का निर्माण करते हैं।
- Cave प्लेयर रनटाइम है जो खेल चलाता है।
जब आप संपादक में प्ले पर क्लिक करते हैं, तो Cave आपके दृश्य को संपादक के अंदर गेम-जैसे मोड में चलाता है। जब आप एक स्वायत्त रनटाइम के रूप में परीक्षण करते हैं, तो Cave एक अलग खिलाड़ी विंडो में खेल लॉन्च करता है।
अंतिम निर्यातित खेल एक खिलाड़ी/रनटाइम बिल्ड के रूप में चलता है, संपादक के रूप में नहीं। यह पृथक्करण महत्वपूर्ण है क्योंकि कुछ चीजें केवल संपादक के लिए होती हैं (आपके प्रोजेक्ट को डिबग और/या विकसित करने के लिए), जबकि अन्य वास्तव में खेल का हिस्सा होती हैं।
सबसे महत्वपूर्ण संबंध
यदि आप इस पाठ से केवल एक चीज याद रखते हैं, तो यह याद रखें:
एक दृश्य में एंटिटीज़ होती हैं, एंटिटीज़ में कंपोनेंट होते हैं, और कंपोनेंट अक्सर एसेट्स का उपयोग करते हैं।
यही एक Cave प्रोजेक्ट की रीढ़ है।