पाइग्लैट

From Vigyanwiki

pygletपायथन (प्रोग्रामिंग भाषा) प्रोग्रामिंग लैंग्वेज के लिए एक पुस्तकालय (कम्प्यूटिंग) है जो गेम और अन्य मल्टीमीडिया अनुप्रयोग प्रक्रिया सामग्री के निर्माण के लिए ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग | ऑब्जेक्ट-ओरिएंटेड अप्लिकेशन प्रोग्रामिंग अंतरफलक प्रदान करती है। pyglet Microsoft Windows, macOS और Linux पर चलता है; यह बीएसडी लाइसेंस के अनुसार जारी किया गया है। pyglet सबसे पहले एलेक्स होल्कनर द्वारा बनाया गया था।

यह विंडो और फुल-स्क्रीन ऑपरेशंस के साथ-साथ मल्टीपल मॉनिटर्स को सपोर्ट करता है। छवियों, वीडियो और ध्वनि फ़ाइलों को कई स्वरूपों में मूल रूप से किया जा सकता है, वैकल्पिक द्वारा प्रदान की जाने वाली अतिरिक्त क्षमताओं के साथ AVbin प्लगइन, जो उपयोग करता है Libav सहित ऑडियो प्रारूपों के लिए समर्थन प्रदान करने के लिए पैकेज MP3, Ogg/Vorbis, और विंडोज मीडिया ऑडियो, और वीडियो प्रारूप जैसे DivX, MPEG-2, H.264, WMV, और XviD.

का एक फायदा pyglet कई अन्य पुस्तकालयों पर यह है कि इसके लिए किसी बाहरी निर्भरता की आवश्यकता नहीं है, और Ctypes (भाषा बंधन) का उपयोग करता हैctypesलाइब्रेरी, एक शुद्ध-पायथन C संकलक। यह ओपनजीएल पर बनाता है।

अन्य पुस्तकालयों से तुलना

पायगम

pygame एक अन्य पुस्तकालय है जिसका उपयोग गेम बनाने के लिए किया जाता है और यह इससे कहीं अधिक व्यापक रूप से जाना जाता है pyglet. उदाहरण में दिखाई गई विंडो को प्रदर्शित करने में यही लगेगा। यह कोड की अधिक पंक्तियाँ लेता है और समझने में भी कठिन होता है।

की तुलना में pyglet, pygame वस्तु-उन्मुख नहीं है और इसकी कार्यक्षमता कम है। उदाहरण के लिए, कोई समृद्ध और स्वरूपित पाठ नहीं है, तेज़ ड्राइंग कमांड इत्यादि। ग्राफिक्स और छवियों को बार-बार खींचा जाना है और कैश नहीं किया जा सकता है। यह ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग की प्रदर्शन विशेषताओं में से एक है, जहां अधिकांश चरणों को दोहराना नहीं पड़ता है

pygame आयात करें

स्क्रीन = pygame.display.set_mode ((640, 480))

pygame.display.set_caption (हैलो वर्ल्ड!)

दौड़ना = सत्य

दौड़ने के दौरान:
    pygame.event.get() में ईवेंट के लिए:
        यदि pygame.QUIT में event.type:
            दौड़ना = झूठा

pygame.quit ()

</वाक्यविन्यास हाइलाइट>

== सुविधाएँ ==
मल्टीमीडिया लाइब्रेरी के रूप में, <code>pyglet</code> शामिल बैटरी के साथ आता है ओपनजीएल का उपयोग करने से इसे गति लाभ मिलता है, और यह पूरी तरह से पायथन में भी लिखा गया है, जिसका अर्थ है कि कोई बाहरी निर्भरता स्थापित नहीं की जानी है <code>ffmpeg</code> अधिक ऑडियो प्रारूपों का समर्थन करने के लिए > पुस्तकालय को वैकल्पिक रूप से स्थापित किया जा सकता है

पाठ प्रदर्शन और स्वरूपण

* रिच टेक्स्ट फॉर्मेटिंग (बोल्ड, ''इटैलिक'', <u>अंडरलाइन</u>, कलर चेंज, बैकग्राउंड कलर, इंडेंट, लिस्ट) (<code>pyglet.text.formats</code>)
* संपादन योग्य पाठ का समर्थन करने के लिए अंतर्निहित लेआउट
* केयर (<code>pyglet.text.caret.Caret</code>)
* एचटीएमएल समर्थन (<code>pyglet.text.layout.IncrementalTextLayout</code>)

छवि और स्प्राइट काम करते हैं

* फास्ट इमेज प्रोसेसिंग और रेंडरिंग
* बिल्ट-इन स्प्राइट्स (<code>pyglet.sprite</code>)
* एनिमेटेड छवियां (<code>*.gif</code>)

GRAPHICS

* ओपनजीएल शेडर्स समर्थित
* सरल अंतर्निर्मित आकृतियाँ (आयताकार, वृत्त, त्रिकोण) (<code>pyglet.shapes</code>)
* बैच प्रतिपादन (<code>pyglet.graphics.Batch</code>)
* 3 डी मॉडल प्रतिपादन

घटनाक्रम और फाइल सिस्टम

* संसाधन प्रबंधन (<code>pyglet.resource</code>)
* प्रसंस्करण घटनाओं और समय के लिए घड़ी (<code>pyglet.clock.Clock</code>)
* विंडो इवेंट्स (<code>pyglet.window.Window</code>)
* आपके अपने ईवेंट डिस्पैचिंग के लिए इवेंट डिस्पैचर (<code>pyglet.event.EventDispatcher</code>)
* संदर्भ प्रबंधन
ये सुविधाएँ बनाती हैं <code>pyglet</code> कई अन्य मल्टीमीडिया पुस्तकालयों की तुलना में बहुत तेज बैचेड रेंडरिंग एक ही समय में कई वस्तुओं को खींचने की तकनीक है बैच समर्थन करते हैं <code>Sprite</code>एस, चित्र, और <code>TextLayout</code>एस, जो सभी लेबल और टेक्स्ट के लिए आधार हैं पाठ कार्यों को भी कार्यान्वित किया जाता है बहु-स्तरीय सूचियाँ समर्थित हैं, और HTML का उपयोग करके बनाई जा सकती हैं प्रदर्शित दस्तावेज़ के विभिन्न भागों में विभिन्न शैलियाँ हो सकती हैं पाठ संपादित करने के लिए समर्थन के लिए एक कैरेट अंतर्निहित है यह UI टेक्स्ट इनपुट कैरेट की कई विशेषताओं से मिलता जुलता है

== उदाहरण ==
<वाक्यविन्यास लैंग = पायथन लाइन = 1>
pyglet.window आयात विंडो से
pyglet.app आयात रन से

विंडो = विंडो (कैप्शन = हैलो वर्ल्ड! , चौड़ाई = 640, ऊंचाई = 480)

दौड़ना()

इस उदाहरण में, पंक्तियाँ 1-2 आयात करती हैं pyglet मॉड्यूल के आवश्यक घटक। लाइन 4 एक विंडो बनाती है, और लाइन 6 कॉल करती है pyglet इसके इवेंट लूप को चलाने के लिए। वैकल्पिक रूप से एक अद्यतन दर (फ़्रेम प्रति सेकंड में) निर्दिष्ट की जा सकती है a rate पैरामीटर।

यह भी देखें

बाहरी संबंध