"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > Pygame प्लेटफ़ॉर्मर गेम्स में चिकनी स्क्रॉलिंग कैसे लागू करें?

Pygame प्लेटफ़ॉर्मर गेम्स में चिकनी स्क्रॉलिंग कैसे लागू करें?

2025-03-22 पर पोस्ट किया गया
ब्राउज़ करें:181

] यह प्रभाव स्क्रॉलिंग के माध्यम से प्राप्त किया जाता है, जो खेल की दुनिया को खिलाड़ी की स्थिति से स्वतंत्र रूप से स्थानांतरित करने की अनुमति देता है। यह ऑफसेट तब सभी गेम संस्थाओं की स्थिति पर लागू होता है जब वे स्क्रीन पर खींचे जाते हैं। def __init __ (self, camera_func, चौड़ाई, ऊंचाई): self.camera_func = camera_func self.state = rect (0, 0, चौड़ाई, ऊंचाई) DEF लागू करें (स्व, लक्ष्य): टारगेट करें। DEF अद्यतन (स्व, लक्ष्य): self.state = स्व। pixels। l, t, _, _ = target_rect # l = बाएं, t = Top _, _, w, h = कैमरा # w = चौड़ाई, h = ऊंचाई रिटर्न रेक्ट (-l हाफ_विड्थ, -t हाफ_हाइट, डब्ल्यू, एच)

How to Implement Smooth Scrolling in Pygame Platformer Games?

स्तर की सीमाओं को बनाए रखना:

x = -target_rect.center [0] win_width/2 y = -target_rect.center [1] win_height/2 camera.topleft = (pygame.vector2 ((x, y)) - pygame.vector2 (camera.topleft)) * 0.06 # कुछ चिकनाई कूल्स जोड़ें camer.x = max (-(camera.width-win_width), min (0, camera.x)) camera.y = max (-(camera.height-win_height), min (0, camera.y)) वापसी कैमरा

स्क्रॉलिंग को संस्थाओं पर लागू करना:

स्क्रॉलिंग को लागू करना, कैमरा क्लास को इंस्टेंट करना और इसके अपडेट को कॉल करना और मुख्य गेम लूप के भीतर विधियों को लागू करना कैमरा = कैमरा (complex_camera, total_level_width, total_level_height) # कैमरा अपडेट करें camera.update (खिलाड़ी) # सभी संस्थाओं पर स्क्रॉलिंग लागू करें संस्थाओं में ई के लिए: scred.blit (e.image, camera.apply (e))

class Camera:
    def __init__(self, camera_func, width, height):
        self.camera_func = camera_func
        self.state = Rect(0, 0, width, height)

    def apply(self, target):
        return target.rect.move(self.state.topleft)

    def update(self, target):
        self.state = self.camera_func(self.state, target.rect)
    अतिरिक्त विचार:
  • जरूरत है।
  • खिलाड़ियों को ऑफ-स्क्रीन जाने से रोकने के लिए स्तर की सीमाओं को संभालना।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3