Cave: शुरूआती मार्गदर्शिका

Back to Learn

Cave: शुरुआत करने की मार्गदर्शिका

Lesson 11 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.

Entity Templates Cave का पुन: उपयोग योग्य entity सिस्टम हैं।

वे आपको एक बार entity सेटअप बनाने, इसे asset के रूप में सहेजने, और इसे विभिन्न scenes में instances के रूप में रखने देते हैं।

image.png

यदि आप किसी अन्य engine से आ रहे हैं, तो आप Entity Templates को Cave के prefab-जैसे वर्कफ़्लो के रूप में सोच सकते हैं। यदि आप game engines में नए हैं, तो इन्हें पुन: उपयोग योग्य वस्तु व्यंजनों के रूप में सोचें

हर बार एक ही door, enemy, pickup, या UI widget को फिर से बनाने के बजाय, आप एक बार से इसे बनाते हैं और जहां भी ज़रूरत हो वहां पुनः उपयोग करते हैं।

Entity Templates क्या हैं?

Entity Template एक asset है जो entity संरचना को संग्रहीत करता है।

यह शामिल कर सकता है:

  • एक root entity (हर Template में एक और केवल एक Root Entity होना आवश्यक है)।
  • Child entities।
  • Components।
  • Component सेटिंग्स।
  • Asset संदर्भ।
  • Properties।
  • Tags।

जब आप एक template को scene में रखते हैं, तो Cave उस template की एक instance बनाता है।

यह instance template asset को अपने आधार के रूप में उपयोग करता है, जिसका मतलब है कि यह उसी आंतरिक संरचना को बनाए रखते हुए एक विशिष्ट scene में रखा गया object होता है।

Entity Templates महत्वपूर्ण क्यों हैं

कई game objects केवल एक mesh नहीं होते।

एक pickup में हो सकता है:

  • एक दृश्यमान मॉडल।
  • एक trigger।
  • एक light।
  • एक particle effect।
  • एक sound।
  • लॉजिक जो पुरस्कार देता है।

एक template आपको पूरा सेटअप एक साथ रखने देता है।

Entity Templates का उपयोग करें जैसे:

  • Player characters।
  • Enemies।
  • Pickups।
  • Doors।
  • Bullets।
  • Vehicles।
  • Portals।
  • Damage volumes।
  • Props।
  • UI pieces।
  • पुन: उपयोग योग्य gameplay objects।

Templates समय बचाते हैं, और साथ ही बार-बार इस्तेमाल होने वाले objects को सुसंगत रखते हैं। यदि हर health pickup एक ही template से आता है, तो आप template को एक बार सुधार सकते हैं और प्रोजेक्ट को व्यवस्थित रख सकते हैं।

Entity Template बनाना

आप Asset Browser से Entity Template बना सकते हैं, या Scene Graph में किसी मौजूदा scene entity पर राइट क्लिक कर उसे Ctrl + T दबाकर template में परिवर्तित कर सकते हैं।

एक सामान्य वर्कफ़्लो है कि आप पहले scene में object बनाएं, टेस्ट करें, और जब setup उपयोगी लगे तभी उसे template में बदलें। यह इस तरह दिखता है:

  1. Scene में एक entity बनाएं।
  2. आवश्यक components और children जोड़ें।
  3. इसके सेटिंग्स को ठीक करें।
  4. इसे Entity Template में परिवर्तित करें।
  5. उस template को उसी या अन्य scenes में पुनः उपयोग करें।

लेकिन जैसे ही आप निश्चित हों कि आप किसी चीज़ जैसे player, enemies, power-ups, आदि को पुन: उपयोग करेंगे, तो तुरंत इसे बनाना अच्छा अभ्यास है, या तो asset browser में या ऊपर सुझाए अनुसार प्रमोट करके।

Scene Graph में, त्वरित संपादन मेनू आपको entity को template में परिवर्तित करने का विकल्प देता है। इसके लिए शॉर्टकट है Ctrl + T

Template Asset बनाम Template Instance

template asset को placed instance से अलग करना मदद करता है।

अवधारणा अर्थ
Template asset Asset Browser में संग्रहीत पुन: उपयोग योग्य object सेटअप।
Template instance किसी scene के अंदर उस template की रखी गई कॉपी।

Asset पुन: उपयोग योग्य संरचना को परिभाषित करता है।

Instance वह जगह है जहां वह पुन: उपयोग योग्य संरचना विशिष्ट scene में प्रकट होती है।

Entity Template संपादित करना

Templates को उनकी अपनी asset के रूप में संपादित किया जाता है।

जब आप template को संपादन के लिए खोलते हैं, तो Cave एक template संपादन scene में स्विच करता है ताकि आप template की आंतरिक entity संरचना को सीधे संपादित कर सकें।

महत्वपूर्ण बात यह है:

> Template अपनी आंतरिक hierarchy का मालिक होता है।

Scene instances उस hierarchy का उपयोग करते हैं, लेकिन वे उसके हर child के सीधे मालिक नहीं होते। इससे सभी instances एक ही पुन: उपयोग योग्य setup से जुड़े रहते हैं।

यह उल्लेखनीय है कि जब गेम शुरू होता है, तो यह सच नहीं रहता, क्योंकि गेम शुरू होने पर template की पूरी hierarchy तुरंत आपके कस्टमाइज़ेशन के लिए उपलब्ध हो जाती है। इसलिए अपने गेम लॉजिक प्रोग्राम करते समय, आप entity template instance, children आदि के साथ इंटरैक्ट करने की उम्मीद कर सकते हैं।

उदाहरण के लिए, यदि आप एक Enemy template खोलते हैं और इसमें एक नया Health Bar child जोड़ते हैं, तो उस enemy template का हर instance अपडेटेड संरचना का लाभ उठा सकता है।

Template के Children को सीधे Scene में क्यों संपादित नहीं किया जाता

जब एक template instance scene में रखा जाता है, तो आंतरिक children अभी भी template के हैं। इसलिए Cave template children को सीधे scene संपादन से बचाता है।

उदाहरण के लिए, यदि enemy template में यह शामिल है:

Enemy
  Body Mesh
  Detection Area
  Health Bar

आपको उन आंतरिक children को template के अंदर ही संपादित करना चाहिए, न कि अलग scene-स्वामित्व वाली वस्तुओं के रूप में।

यह हर instance को सुसंगत बनाए रखता है। यदि हर रखे हुए enemy अपनी आंतरिक children को स्वतंत्र रूप से बदल सकता, तो template विश्वसनीय पुन: उपयोग योग्य वस्तु नहीं रह जाता।

Scene में Template की Instance बनाना

एक template मौजूद होने के बाद, आप इसे scene में रख सकते हैं।

उदाहरण के लिए, आप Asset Browser से template को 3D View में ड्रैग कर सकते हैं।

जब template रखा जाता है:

  • यह Scene Graph में template instance के रूप में दिखाई देता है।
  • Cave instance के लिए एक अलग template रंग (हरा) उपयोग करता है।
  • Instance अपने template asset के साथ कनेक्शन रखता है।

image.png

वर्कफ़्लो के दृष्टिकोण से, यह स्तर बनाने के सबसे तेज़ तरीकों में से एक है। आप एक reusable door, pickup, enemy, या prop एक बार बनाते हैं, फिर जहां जहा लेवल को जरूरत हो वहां instances रखते हैं।

Local Template Customization

Template instances अभी भी स्थानीय रूप से अनुकूलित किए जा सकते हैं:

image.png

मुख्य तरीका है root template entity द्वारा प्रदर्शित properties के माध्यम से।

यह आपको उपयोगी संतुलन देता है:

  • संरचना पुन: उपयोग योग्य रहती है।
  • हर रखी हुई instance के अपने मान हो सकते हैं।

उदाहरण के लिए, कई enemies एक ही enemy template का उपयोग कर सकते हैं, जबकि हर instance की अलग health, speed, patrol सेटिंग्स, या व्यवहार विकल्प हो सकते हैं।

स्थानीय Template Properties के उदाहरण

उपयोगी स्थानीय properties में शामिल हैं:

Property उपयोग का उदाहरण
Enemy health एक enemy को कमजोर या मजबूत बनाना।
Enemy speed धीमे और तेज़ संस्करण बनाना।
Damage amount एक hazard setup को विभिन्न खतरा स्तरों के साथ पुन: उपयोग करना।
Portal target level प्रत्येक portal को अलग scene पर भेजना।
Pickup value सिक्के, रत्न, या पुरस्कार को विभिन्न मान देना।
Door locked state एक door setup को locked और unlocked दोनों के लिए पुन: उपयोग करना।
UI text एक UI widget को विभिन्न लेबल के साथ पुन: उपयोग करना।

उदाहरण के लिए, एक Portal template को कई जगहों पर इस्तेमाल किया जा सकता है यदि हर रखा गया portal एक स्थानीय property रखता है जो लक्षित scene चुनता है।

Starter Project Template के उदाहरण

स्टार्टर प्रोजेक्ट में आपके चुने हुए विकल्पों के आधार पर कई उपयोगी templates हो सकते हैं।

आप उदाहरण पा सकते हैं जैसे:

  • Player template।
  • Enemy template।
  • Damage template।
  • Portal template।
  • Vehicle template।
  • पुन: उपयोग योग्य gameplay pieces।

इन्हें खोलकर hierarchy को देखें, components की जाँच करें, और देखें कि कौन-सी properties उजागर हैं।

जनरेट किया गया कंटेंट केवल उपयोग के लिए ही नहीं होता, यह आपको सिखाने के लिए भी होता है कि असली Cave objects कैसे बनाए जाते हैं।

Entity Templates के लिए अच्छे उपयोग मामले

जब एक object:

  • कई बार दोहराया जाए।
  • कई scenes में उपयोग किया जाए।
  • कई components से बना हो।
  • कई child entities से बना हो।
  • लगातार व्यवहार करने के लिए बनाया गया हो।
  • पुन: उपयोग योग्य gameplay टुकड़ा हो।

तो उसके लिए template बनाएं।

अच्छे उदाहरण हैं:

  • Enemies।
  • NPCs।
  • Weapons।
  • Bullets।
  • Collectibles।
  • Doors।
  • Checkpoints।
  • Traps।
  • Level portals।
  • Vehicles।
  • Destructible props।
  • UI widgets।
  • पुन: उपयोग योग्य level design टुकड़े।

जितना अधिक आप किसी object का पुन: उपयोग करते हैं, template उतना ही अधिक मूल्यवान हो जाता है।

कब template का उपयोग न करें

हर चीज़ को template बनाने की जरूरत नहीं है।

एक अद्वितीय वस्तु जो एक बार ही दिखाई दे और केवल एक scene में मतलब रखती हो, वह सामान्य scene entity बनी रह सकती है।

उदाहरण के लिए:

  • एक एक बार का cinematic prop।
  • एक विशेष level-विशिष्ट trigger।
  • एक अनोखा सजावट जो कभी पुनः उपयोग नहीं होगा।
  • एक अस्थायी परीक्षण वस्तु।

Templates शक्तिशाली हैं, लेकिन वे सबसे उपयोगी तब होते हैं जब पुन: उपयोग वास्तव में मायने रखता हो। हर छोटी वस्तु को बहुत जल्दी template में बदलना प्रोजेक्ट को प्रबंधित करना मुश्किल बना सकता है।

एक सरल template नियम

यदि आप खुद को एक ही entity सेटअप को एक से अधिक बार कॉपी करते हुए पाते हैं, तो इसे Entity Template बनाने पर विचार करें।

यह एक आदत बहुत समय बचा सकती है और जैसे-जैसे आपका प्रोजेक्ट बढ़ेगा, इसे बहुत साफ़ और व्यवस्थित रखेगी।