पैनिंग, ज़ूमिंग और स्केलिंग क्रियाओं के साथ अपने गेम के व्यूपोर्ट को नियंत्रित करना सीखें।
एक अच्छी तरह से डिज़ाइन किया गया कैमरा सिस्टम खिलाड़ियों को खेल की दुनिया में डुबोने और स्थान की बेहतर जानकारी देने में मदद कर सकता है। कैमरा खिलाड़ी की आंखों के रूप में कार्य करता है, जो उन्हें खेल की दुनिया में नेविगेट करने और बातचीत करने में सक्षम बनाता है।
गोडोट में कैमरा सिस्टम बनाना सरल लेकिन शक्तिशाली है। आप आसानी से खिलाड़ी का अनुसरण करने के लिए कैमरा सेट कर सकते हैं, उसकी गतिविधियों को खेल क्षेत्र तक सीमित कर सकते हैं, और यहां तक कि खेल में घटनाओं के आधार पर गतिशील ज़ूमिंग और स्केलिंग भी जोड़ सकते हैं।
एक सरल गेम बनाना
शुरू करने से पहले, आपको एक 2डी गेम की दुनिया और अपने अंदर एक चरित्र बनाना होगा गोडोट गेम इंजन जिसे कैमरा फॉलो कर सके.
एक नया 2डी दृश्य बनाएं और एक जोड़ें कैरेक्टरबॉडी2डी नोड. यह हमारे खिलाड़ी चरित्र के रूप में काम करेगा। कैरेक्टरबॉडी2डी के अंदर, एक जोड़ें CollisionShape2D और इसका आकार सेट करें आयत आकार2डी दुनिया में खिलाड़ी की भौतिक उपस्थिति प्रदान करना।
इस आलेख में प्रयुक्त कोड इसमें उपलब्ध है
गिटहब रिपॉजिटरी और यह आपके लिए एमआईटी लाइसेंस के तहत उपयोग करने के लिए निःशुल्क है।इसके अलावा, कैरेक्टरबॉडी2डी के अंदर, एक जोड़ें स्प्राइट2डी नोड बनाएं और उसमें अपनी प्लेयर स्प्राइट छवि असाइन करें। कैरेक्टरबॉडी2डी नोड से जुड़ी एक नई स्क्रिप्ट बनाएं और निम्नलिखित कोड जोड़ें:
extends CharacterBody2D
var speed = 200
func _physics_process(delta):
var velocity = Vector2()if Input.is_action_pressed('ui_right'):
velocity.x += 1if Input.is_action_pressed('ui_left'):
velocity.x -= 1if Input.is_action_pressed('ui_down'):
velocity.y += 1if Input.is_action_pressed('ui_up'):
velocity.y -= 1
velocity = velocity.normalized() * speed
move_and_collide(velocity * delta)
इस कोड के साथ, खिलाड़ी का चरित्र अब चारों दिशाओं में घूम सकता है और प्लेटफार्मों से टकराएगा।
फॉलो कैमरा सिस्टम लागू करना
अगला कदम एक ऐसा कैमरा बनाना है जो खिलाड़ी की गतिविधियों पर नज़र रखे। एक जोड़ना कैमरा2डी आपके बच्चे के रूप में नोड कैरेक्टरबॉडी2डी नोड. यह सुनिश्चित करता है कि कैमरा हमेशा प्लेयर का अनुसरण करेगा। गतिविधि को सुचारू बनाने के लिए, स्थिति को सुचारू करने वाले गुण को सक्षम करें कैमरा2डी नोड.
$Camera2D.enabled = true
$Camera2D.position_smoothing_enabled = true
कैमरा सीमाएँ और प्रतिबंध लागू करना
खिलाड़ी के दृष्टिकोण को खेल क्षेत्र तक ही सीमित रखना अक्सर महत्वपूर्ण होता है। हालाँकि, यदि आप इसे ठीक से नहीं संभालते हैं, तो कैमरा उन क्षेत्रों को प्रकट कर सकता है जो गेम के दायरे से बाहर हैं। इनमें रिक्त स्थान या अधूरे क्षेत्र शामिल हो सकते हैं।
गोडोट कैमरा सीमा निर्धारित करने और खेल क्षेत्र के भीतर उसकी गतिविधियों को प्रतिबंधित करने का एक आसान तरीका प्रदान करता है।
में कैमरा2डी नोड गुण, चार चर हैं: सीमा_बाएं, सीमा_शीर्ष, सीमा_सही, और सीमा_नीचे. ये कैमरे की सीमाएँ निर्धारित करते हैं। आप इन मानों को अपने खेल जगत के आकार के अनुसार सेट कर सकते हैं।
$Camera2D.limit_left = 0
$Camera2D.limit_top = 0
$Camera2D.limit_right = your_game_area_width
$Camera2D.limit_bottom = your_game_area_height
प्रतिस्थापित करें आपका_गेम_क्षेत्र_चौड़ाई और आपके_खेल_क्षेत्र_की_ऊंचाई आपके खेल की दुनिया की चौड़ाई और ऊंचाई के साथ। यह स्क्रिप्ट वांछित क्षेत्र के भीतर कैमरे को प्रभावी ढंग से प्रतिबंधित करती है, जिससे खिलाड़ी को एक स्वच्छ और केंद्रित गेमप्ले अनुभव मिलता है।
कैमरा ज़ूमिंग और स्केलिंग को संभालना
गतिशील ज़ूमिंग और स्केलिंग खेल में प्रभावशाली क्षण बनाने में सहायक हो सकते हैं। उदाहरण के लिए, हो सकता है कि आप किसी शक्तिशाली कार्रवाई के दौरान खिलाड़ी के चरित्र पर ज़ूम इन करना चाहें या किसी बड़े दुश्मन या खेल की दुनिया के मनोरम दृश्य को प्रकट करने के लिए ज़ूम आउट करना चाहें।
गोडोट ज़ूमिंग और स्केलिंग को आसान बनाता है ज़ूम की संपत्ति कैमरा2डी नोड. यह प्रॉपर्टी एक वेक्टर2 है, जिसमें (1,1) डिफ़ॉल्ट ज़ूम स्तर है। उच्च मान ज़ूम आउट हो जाएंगे, जिससे देखी गई वस्तुएं छोटी दिखाई देंगी, जबकि कम मान ज़ूम इन हो जाएंगे, जिससे वस्तुएं बड़ी दिखाई देंगी।
ज़ूम इन करने के लिए, आप इसका उपयोग कर सकते हैं:
$Camera2D.zoom = Vector2(0.7, 0.7)
और ज़ूम रीसेट करने के लिए, उपयोग करें:
$Camera2D.zoom = Vector2(1, 1)
आपके द्वारा वेक्टर2() को दिए गए मान X और Y अक्षों पर ज़ूम स्तर निर्धारित करते हैं। (0.7, 0.7) के ज़ूम मान का मतलब है कि कैमरा ज़ूम इन करेगा, जबकि (1.5, 1.5) के मान का मतलब है कि कैमरा ज़ूम आउट होगा।
पहलू अनुपात को बनाए रखने के लिए आपको आमतौर पर दोनों अक्षों के लिए समान मान रखना चाहिए, लेकिन अद्वितीय प्रभाव प्राप्त करने के लिए आप विभिन्न मानों के साथ प्रयोग कर सकते हैं।
अतिरिक्त सुविधाओं सहित
अपने गेम के लिए कैमरा सिस्टम बनाते समय, अनुभव को बढ़ाने के लिए आप कई अतिरिक्त सुविधाएँ शामिल कर सकते हैं।
कैमरा हिल रहा है
विशेषकर कई खेलों में उपयोग किया जाने वाला एक सामान्य प्रभाव प्लेटफ़ॉर्मर गेम, कैमरा शेक है. इसका उपयोग आम तौर पर खेल में कुछ क्षणों के दौरान प्रभाव या तीव्रता को व्यक्त करने के लिए किया जाता है, जैसे विस्फोट या किसी पात्र का शक्तिशाली हमला।
आप इस फ़ंक्शन को आसानी से बनाकर गोडोट में जोड़ सकते हैं हिलाना() समारोह। आप विशिष्ट इन-गेम इवेंट के अनुसार शेक प्रभाव की अवधि और तीव्रता निर्दिष्ट कर सकते हैं।
ध्वनियाँ किसी खेल में स्थान और गति की भावना को बहुत बढ़ा सकती हैं। यह झपट्टा बजाने जितना सरल हो सकता है साउंड इफेक्ट जब कैमरा तेज़ी से चलता या घूमता है, या कैमरे के स्थान या ज़ूम स्तर के आधार पर परिवेशीय ध्वनियों या संगीत ट्रैक की मात्रा या पिच को संशोधित करना जितना जटिल होता है।
उदाहरण के लिए, हो सकता है कि आप दूरी का एहसास कराने के लिए कैमरे के ज़ूम आउट होने पर गाने का वॉल्यूम कम करना चाहें।
गतिबोधक प्रकाश
आप अपने कैमरे में गतिशील प्रकाश प्रभाव भी जोड़ सकते हैं। जैसे ही आपका कैमरा खेल की दुनिया में घूमता है, आप नए वातावरण को प्रतिबिंबित करने या विशिष्ट क्षेत्रों या वस्तुओं को उजागर करने के लिए प्रकाश की स्थिति बदल सकते हैं।
इसमें कैमरे के गुफा में जाने पर दृश्य को धीरे-धीरे अंधेरा करने, या स्पॉटलाइट के साथ किसी मुख्य वस्तु को उजागर करने जैसी चीजें शामिल हो सकती हैं।
कैमरा संक्रमण प्रभाव
कैमरों के बीच स्विच करते समय आप विभिन्न संक्रमण प्रभाव बना सकते हैं। यह एक साधारण कट हो सकता है जहां दृश्य तुरंत एक कैमरे से दूसरे कैमरे में चला जाता है या फीका हो सकता है जहां दृश्य धीरे-धीरे एक कैमरे से दूसरे कैमरे में स्थानांतरित हो जाता है।
आप अतिरिक्त कोडिंग और एनीमेशन के साथ वाइप, स्लाइड या आईरिस जैसे अधिक जटिल बदलावों का उपयोग कर सकते हैं।
कैमरा सिस्टम जोड़ने के लिए सर्वोत्तम अभ्यास
अपने गेम में कैमरा सिस्टम जोड़ते समय, सर्वोत्तम संभव गेमिंग अनुभव सुनिश्चित करने के लिए कई सर्वोत्तम प्रथाओं को ध्यान में रखना चाहिए।
अचानक कैमरा हिलाने से बचें
कैमरे के परिप्रेक्ष्य में अचानक बदलाव खिलाड़ियों के लिए भटकाव वाला हो सकता है और गेमप्ले को बाधित कर सकता है। विसर्जन बनाए रखने के लिए हमेशा सुचारू कैमरा ट्रांज़िशन का लक्ष्य रखें।
कैमरा शेक सीमित करें
जबकि कैमरा शेक कुछ घटनाओं पर प्रभाव डाल सकता है, बहुत अधिक गेम को फॉलो करना कठिन और खेलने में असुविधाजनक बना सकता है। इस प्रभाव का प्रयोग संयमपूर्वक और संयम से करें।
विभिन्न ज़ूम स्तरों का परीक्षण करें
एक गेम के भीतर अलग-अलग गेम और अलग-अलग स्थितियों के लिए अलग-अलग ज़ूम स्तरों की आवश्यकता हो सकती है। प्रत्येक स्थिति के लिए सबसे उपयुक्त ज़ूम स्तर खोजने के लिए गहन परीक्षण करें।
कैमरा सीमा पर सावधानी से विचार करें
कैमरे की सीमाएँ आपके स्तरों के डिज़ाइन के अनुरूप सोच-समझकर निर्धारित की जानी चाहिए। आप नहीं चाहते कि खिलाड़ी खेल की दुनिया से बाहर देखे या ऑफ-स्क्रीन महत्वपूर्ण तत्वों को मिस करे।
खिलाड़ी के अनुभव को प्राथमिकता दें
कैमरा सिस्टम का मुख्य लक्ष्य हमेशा खिलाड़ी के अनुभव को बढ़ाना होना चाहिए। चाहे वह कार्रवाई का सर्वोत्तम दृश्य प्रदान करना हो, महत्वपूर्ण क्षणों पर जोर देना हो, या खिलाड़ी को पर्यावरण को नेविगेट करने में मदद करना हो, कैमरे को हमेशा बेहतर गेमप्ले अनुभव में योगदान देना चाहिए।
कैमरा सिस्टम के साथ गोडोट गेम्स को और अधिक आकर्षक बनाना
एक अच्छी तरह से कार्यान्वित कैमरा सिस्टम समग्र गेम अनुभव को बढ़ा सकता है। यह कार्रवाई पर जोर दे सकता है, कहानी कहने में मदद कर सकता है और अधिक गहन अनुभव प्रदान कर सकता है।
खिलाड़ी क्या देखता है और कब देखता है, इसे नियंत्रित करके, आप खेल की दुनिया में उनकी यात्रा का मार्गदर्शन कर सकते हैं और गेमप्ले को अधिक गतिशील और आकर्षक बना सकते हैं।