Pygame – تطوير الألعاب

مدرب بايثون أونلاين للمبتدئين

تعلم Python بسهولة دون إرهاق نظري. حل مهام عملية مع التحقق التلقائي واكتب الكود مباشرة في المتصفح.

ابدأ الدورة

تطوير الألعاب بلغة Python باستخدام مكتبة Pygame: دليل شامل

مقدمة في Pygame

تطوير الألعاب — هو أحد أكثر تطبيقات Python إثارة. بفضل مكتبة Pygame، يمكن إنشاء لعبة ثنائية الأبعاد (2D) مع رسومات وصوت وواجهة مستخدم في غضون أيام. توفر هذه المكتبة القوية وصولاً سهلاً للتحكم في الرسومات والأحداث والأصوات والنصوص، وهي مثالية للتعلم والنماذج الأولية ومشاريع الهوايات.

Pygame هي مجموعة وحدات Python متعددة المنصات، مبنية على أساس مكتبة SDL (Simple DirectMedia Layer). وهذا يجعلها متوافقة مع Windows وmacOS وLinux وحتى بعض المنصات المحمولة.

تاريخ وميزات Pygame

تم إنشاء Pygame بواسطة بيت شينرز في عام 2000 كبديل لـ PySDL. منذ ذلك الحين، تم تطوير المكتبة بنشاط من قبل مجتمع المطورين وأصبحت المعيار الفعلي لإنشاء ألعاب ثنائية الأبعاد (2D) بلغة Python.

المزايا الرئيسية لـ Pygame:

  • سهولة الاستخدام — الحد الأدنى من الكود لإنشاء نافذة أساسية
  • التعددية المنصية — تعمل على جميع أنظمة التشغيل الرئيسية
  • وظائف غنية — دعم الرسومات والصوت والإدخال والـ sprites
  • مجتمع نشط — العديد من الدروس التعليمية والأمثلة والمكتبات
  • مصدر مفتوح — ترخيص مجاني LGPL

تثبيت وإعداد Pygame

التثبيت الأساسي

pip install pygame

التثبيت مع إمكانيات إضافية

pip install pygame[optional]

التحقق من التثبيت

import pygameprint(f"إصدار Pygame: {pygame.version.ver}")print(f"إصدار SDL: {pygame.version.SDL}")

# التحقق من الوحدات المتاحةprint("الوحدات المتاحة:")for module in ['display', 'mixer', 'font', 'image']: try: exec(f"pygame.{module}.get_init()") print(f"✓ {module}") except: print(f"✗ {module}")

هندسة Pygame

الوحدات الرئيسية

تتكون Pygame من عدة وحدات رئيسية، كل منها مسؤولة عن وظيفة محددة:

  • pygame.display — إدارة النافذة والشاشة
  • pygame.event — معالجة الأحداث (لوحة المفاتيح، الفأرة)
  • pygame.image — تحميل ومعالجة الصور
  • pygame.mixer — العمل مع الصوت والموسيقى
  • pygame.font — عرض النصوص
  • pygame.sprite — نظام الـ sprites والمجموعات
  • pygame.time — إدارة الوقت ومعدل الإطارات
  • pygame.math — العمليات الحسابية للألعاب

الإعداد والتهيئة الأساسيان

التهيئة البسيطة

import pygameimport sys

# تهيئة جميع وحدات pygamepygame.init()

# إنشاء نافذةscreen = pygame.display.set_mode((800, 600))pygame.display.set_caption("لعبتي الأولى على Pygame")

# إنشاء كائن للتحكم بالوقتclock = pygame.time.Clock()

print("تمت تهيئة Pygame بنجاح!")

التهيئة المتقدمة مع التحقق من الأخطاء

import pygameimport sys

def init_pygame(): """تهيئة pygame مع التحقق من الأخطاء""" try: pygame.init() # التحقق من تهيئة الوحدات الفردية if not pygame.get_init(): raise Exception("Pygame لم يتم تهيئتها") if not pygame.display.get_init(): raise Exception("وحدة display لم تتم تهيئتها") print("تمت تهيئة Pygame بنجاح")

توصيات