पाइग्लैट

From Vigyanwiki

पाइगलेट पायथन प्रोग्रामिंग लैंग्वेज के लिए एक लाइब्रेरी कम्प्यूटिंग होती है, जो गेम और अन्य मल्टीमीडिया अनुप्रयोग की प्रक्रिया सामग्री के निर्माण के लिए ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग

अप्लिकेशन प्रोग्रामिंग इंटरफ़ेस प्रदान करती है। पाइगलेट माइक्रोसॉफ्ट विंडोज, मैकोस और लिनक्स पर चलता है, और यह बीएसडी लाइसेंस के अनुसार जारी किया गया है। पाइगलेट सबसे पहले एलेक्स होल्कनर द्वारा बनाया गया था।

यह विंडो और फुल-स्क्रीन ऑपरेशंस के साथ-साथ मल्टीपल मॉनिटर्स को सपोर्ट करता है। छवियों, वीडियो और ध्वनि फ़ाइलों की एक श्रेणी में कई स्वरूपों में मूल रूप से किया जा सकता है, वैकल्पिक द्वारा प्रदान की जाने वाली अतिरिक्त क्षमताओं के साथ एबिन प्लगइन, जो उपयोग करता है, जो एमपी3, ओजीजी/वोरर्बिस और विंडोज मीडिया ऑडियो और विडियो प्रारूप सहित ऑडियो प्रारूपों का समर्थन प्रदान करने के लिए लिबावपैकेज का उपयोग करता है। जैसे, डिवएक्स, एमपीईजी-2, एच.264, डब्ल्यूएमवी, और एक्सविआईडी.इत्यादि के रूप में होते है

एक अन्य लाइब्रेरी पर पाइगलेट का लाभ यह है कि इसके लिए किसी बाहरी निर्भरता की आवश्यकता नहीं होती है और सीटाइप्स लैंग्वेज लाइब्रेरी एक पायथन C कंपाइलर का उपयोग करता है।यह ओपनजीएल पर बनाता है.

अन्य लाइब्रेरी से तुलना

पीवाईगेम

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

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

import pygame

screen = pygame.display.set_mode((640, 480))

pygame.display.set_caption("Hello world!")

running = True

while running:
    for event in pygame.event.get():
        if event.type in pygame.QUIT:
            running = False

pygame.quit()

सुविधाएँ

मल्टीमीडिया लाइब्रेरी के रूप में, पाइगलेट सम्मलित बैटरी के साथ आता है। ओपनजीएल का उपयोग करने से इसे गति लाभ मिलता है, और यह पूरी तरह से पायथन में भी लिखा गया है, जिसका अर्थ है कि कोई बाहरी निर्भरता स्थापित नहीं की जाती है। एफएफएमपीईजी अधिक ऑडियो प्रारूपों का समर्थन करने के लिए लाइब्रेरी को वैकल्पिक रूप से स्थापित किया जा सकता है।

टेक्स्ट डिस्प्ले फोर्मेटिंग

  • रिच टेक्स्ट फॉर्मेटिंग बोल्ड, इटैलिक, अंडरलाइन, कलर चेंज, बैकग्राउंड कलर, इंडेंट, लिस्ट पाइगलेट.टेक्स्ट.फॉर्मेट इत्यादि के रूप में होता है
  • संपादन योग्य टेक्स्ट का समर्थन करने के लिए अंतर्निहित लेआउट होता है
  • कैरटपाइगलेट.टेक्स्ट.कैरट.कैरट) इत्यादि के रूप में होता है
  • एचटीएमएल समर्थन कैरटपाइगलेट.टेक्स्ट.लेआउट.इंक्रीमेंटल टेक्स्ट लेआउट)इत्यादि के रूप में होता है

छवि और स्प्राइट वर्क

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

GRAPHICS

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

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

  • संसाधन प्रबंधन (pyglet.resource)
  • प्रसंस्करण घटनाओं और समय के लिए घड़ी (pyglet.clock.Clock)
  • विंडो इवेंट्स (pyglet.window.Window)
  • आपके अपने ईवेंट डिस्पैचिंग के लिए इवेंट डिस्पैचर (pyglet.event.EventDispatcher)
  • संदर्भ प्रबंधन

ये सुविधाएँ बनाती हैं पाइगलेट कई अन्य मल्टीमीडिया पुस्तकालयों की तुलना में बहुत तेज। बैचेड रेंडरिंग एक ही समय में कई वस्तुओं को खींचने की तकनीक है। बैच समर्थन करते हैं Spriteएस, चित्र, और TextLayoutएस, जो सभी लेबल और टेक्स्ट के लिए आधार हैं। टेक्स्ट कार्यों को भी कार्यान्वित किया जाता है। बहु-स्तरीय सूचियाँ समर्थित हैं, और HTML का उपयोग करके बनाई जा सकती हैं। प्रदर्शित दस्तावेज़ के विभिन्न भागों में विभिन्न शैलियाँ हो सकती हैं। टेक्स्ट संपादित करने के लिए समर्थन के लिए एक कैरेट अंतर्निहित है। यह UI टेक्स्ट इनपुट कैरेट की कई विशेषताओं से मिलता जुलता है।

उदाहरण

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




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

यह भी देखें

बाहरी संबंध