بازی سازی گرافیکی با پایتون و پای گیم

آموزش بازی سازی با پایتون

آموزش بازی سازی گرافیکی با پایتون ، یک دوره ی بسیار جذاب و هیجانی هست که توسط سایت نابغه‌ها برای شما عزیزان ساخته شده. دوره ای که شاید تو ایران نتونید در هیچ سایت و کانالی پیدا کنید. البته ایده‌ی اصلی خود بازی مال نابغه‌ها نیست و متعلق به شخص دیگه‌ای هست ولی به بهترین شکل ممکن توسط ما آموزش داده شده. از تیتر مطلب مشخصه که قراره این بازی رو با زبان برنامه نویسی پایتون بنویسیم. اسم بازی رو هم گذاشتم ماشین بازی ?. شرمنده، چیز بهتری به ذهنم نمیرسه. شما تو کامنت ها اسم پیشنهاد بدید ?

منطق بازی :

اینجوریه که یه ماشینی داریم که وسط صفحه قرار گرفته و از شی هایی که جلوی راهش سبز میشن باید جا خالی بده که بهش نخوره. رفته، رفته عرض این اشیاء درازتر میشه و همینطور با سرعت خیلی بیشتری حرکت میکنن که کار برای پلیر خیلی سخت میشه. پلیر هر بار که بازی میکنه باید سعی کنه رکورد قبلی خودش رو بشکونه. اینم نمونه ایی از بازی که در نهایت قراره بسازیم :

چرا PYGAME :

برای اینکه دلیل رو مشخص کنیم، اول بدونیم Pygame چی هست؟ کتابخونه‌ی Pygame مجموعه‌ای از ماژول‌های پایتونه که برای نوشتن بازی‌های ویدئویی طراحی شده. Pygame از کتابخونه‌ی SDL استفاده میکنه که مخفف Simple DirectMedia Layer ( این کتابخونه به شما امکان ایجاد یک محیط گرافیکی رو می ده که بسیار سریع هست. چون به جای استفاده از cpu، از کارت گرافیک برای اجرا شدن استفاده می کنه ) برای همین میتونید بازی‌ها و برنامه‌های Multi Media زیادی رو بسازید. یکی از مزایای مهم Pygame اینه که تقریبا بر روی هر پلتفرم و سیستم عاملی ( ویندوز ، لینوکس، مک ) قابل اجراست. حالا متوجه شدید که چرا از پای گیم استفاده میکنیم؟ ?

برای کار با پای گیم، باید پایتون بلد باشیم؟

بله. به دلیل اینکه خود این کتابخونه با زبان برنامه نویسی پایتون نوشته شده. پایتون از اون زبون‌های برنامه‌نویسی قدرتمندی که تو زمینه علم داده‌ها ، یادگیری ماشین، خودکارسازی سامانه‌ها، توسعه وب، واسط‌های برنامه‌ نویسی و … به کار گرفته می‌شه و الانم قراره با استفاده از این زبان برنامه نویسی قوی، بازی سازی هم انجام بدیم. اگه پایتون بلد نیستی، نگران نباش، با همین ویدیوها و با من پیش بیا، بهت یاد میدم این بازی رو بنویسی و بعد اگه دیدی به پایتون علاقه داری، مطمئن باش بهترین جا برای یادگیری برنامه نویسی، همین جاست ?

cover python 344x408 1

آموزش برنامه نویسی پایتون

آموزش بازی سازی گرافیکی با پایتون ، یک دوره ی بسیار جذاب و هیجانی هست که توسط سایت نابغه‌ها برای شم...

مشاهده محصول
قسمت اول : آماده سازی محیط برنامه نویسی

برای اینکه بتونیم این بازی جذاب رو بسازیم، باید محیط برنامه نویسی رو آماده کنیم. مثلا پایتون رو نصب کنیم، نرم افزار vscode رو نصب کنیم و یه عالمه کار دیگه که بهتره ویدیو رو مشاهده کنید :


قسمت دوم : مقدمات پای گیم

این قسمت هم کتابخونه‌ی پای گیم رو نصب میکنیم باهم و یک صفحه بازی خالی رو نمایش میدیم، البته کارهای دیگه ایی هم هست که بهتره خودتون ویدیوها رو مشاهده کنید :


قسمت سوم : اضافه کردن ماشین (کفشدوزک)

قسمت چهارم : به حرکت درآوردن کفشدوزک

قسمت پنجم : نمایش صفحه‌ی بازنده شدن

قسمت ششم : اضافه کردن مانع برای کفشدوزک

قسمت هفتم : پیاده سازی برخورد با مانع

قسمت هشتم : آموزش پای گیم و نقاشی کردن

قسمت نهم : ساخت صفحه شروع بازی

قسمت دهم : اضافه کردن آهنگ به بازی

امتیاز شما به مقاله

4.6 / 5. 84

84 رای 4.6
4.6
(84)

دانلود باکس

قوانین ارسال دیدگاهمتوجه شدم
  • توصیه میکنم قبل از ارسال کامنت این آموزش را مشاهده فرمایید.
  • برای ثبت نظر، حتما اسم و فامیل خود را به فارسی وارد کنید.
  • حتما ایمیل صحیح را وارد کنید تا در صورت بررسی کارشناسان، پاسخ برای شما ایمیل شود.
  • داخل متن کامنت کدهای برنامه نویسی قرار ندهید.
  • برای ارسال کدهای برنامه نویسی از این سایت استفاده کنید و فقط لینک را داخل کامنت بگذارید.
  • اگر اروری در برنامه‌ها دریافت کردید، متن ارور را در این سایت وارد کنید و بعد لینک را داخل کامنت بگذارید.
  • حسی فول
    حسی فول 26 فروردین 1401 جمعه

    سلام من بازی درست کردم خودم قبللا ۵۰۰۰۰ هزار تومن می فروشم

    ( 0 )
    • Amir
      Amir 1 اردیبهشت 1401 پنج‌شنبه

      اره میشه فروخت ولی یه بازی ساده رو همه یه مدت نصب میکنن بعد پاک میکنن من دارم یه بازی مثل لجند می سازم که انلاین باشه 5v5 باشه تا هرکی نصب کرد راحت پاکش نکنه اگه خواستید می تونیم با هم یه تیم تشکیل بدیم

      ( 2 )
  • سامان
    سامان 7 مرداد 1398 دوشنبه

    عالی بود خسته نباشین لطفا فقط در آموزش های بعدی صفحه رو بیشتر زوم کنین تا بهتر دیده بشه چون اثرا بچه ها همزمان که ویدیو باز هست در یک طرف صفحه هم vs coder رو باز میکنن و اونجوری خیلی ریز میشه و دیده نمیشه

    ( 0 )
    • سامان
      سامان 7 مرداد 1398 دوشنبه

      الان تو این آموزش نصف صفحه ویدیو فقط بک گراند ویندوز هس.. چی می شد فول اسکرین میکردین

      ( 0 )
  • نیما
    نیما 8 فروردین 1398 پنج‌شنبه

    سلام ببخشید من یه اسکریپت نوشتم اگه لینک گیت هابم رو براتون بفرستم ویدیوی اموزشی براش می سازید ؟

    ( 0 )
    • حسین
      حسین 4 خرداد 1398 شنبه

      سلام ببخشید کد مربوط به اینکه مربع ها رندوم بیان پایین چیه هرکاری میکنم نمیتونم انجام بدم ممنون میشم کمک کنید

      ( 0 )
  • نیما
    نیما 8 فروردین 1398 پنج‌شنبه

    سلام ببخشید من یه اسکریپت نوشتم اگه لینک گیت هابم رو براتون بفرستم ویدیوی اموزشی براش می سازید ؟

    ( 0 )
    • ادمین سایت
      ادمین سایت 8 فروردین 1398 پنج‌شنبه

      سلام . بله حتما بررسی میشه با تشکر

      ( 0 )
  • آریا
    آریا 1 مهر 1397 یکشنبه

    سلام ، به نظرم خوب میشه اگه یه قسمت دیگه درباره ساخت یه فایل exe از همین بازی که ساختید ضبط کنید . مرسی

    ( 0 )
    • کاربر
      کاربر 26 تیر 1400 شنبه

      میشه exe کرد با ابزار pyinstaller

      ( 0 )
  • ارتا
    ارتا 4 اسفند 1397 شنبه

    سلام من وقتی کلمه fill یا blit رو میزنم ابی نمی شه باید چیکار کنم؟

    ( 0 )
    • پای
      پای 27 بهمن 1399 دوشنبه

      indent گذاریت مشکل داره دوست عزیز

      ( 0 )
  • احسان
    احسان 16 بهمن 1397 سه‌شنبه

    سلام چطور میتونم فیلم هارو دانلود کنم یکجا

    ( 0 )
    • متین
      متین 16 آذر 1400 سه‌شنبه

      با استفاده از ریکوئست و وب اسکرپینگ

      ( 0 )
  • دیمن
    دیمن 14 بهمن 1397 یکشنبه

    سلام داداچ عجب سایته خوبی دارین خوشم اومد میتونین لینک دانلود کالی لینکوس رو به من بدید لدفن؟

    ( 1 )
    • ادمین سایت
      ادمین سایت 8 فروردین 1398 پنج‌شنبه

      سلام ، مرسیkali.org

      ( 1 )
  • محدثه
    محدثه 10 بهمن 1397 چهارشنبه

    کارتون عااالیه خیلی خیلی ممنونم ? فقط یه مشکلی من دارم و یک سوال این ک باید pygame رو دانلود و نصب کنیم؟ و مشکلم هم اینه ک وقتی کد رو توی cmder اجرا میکنم(قسمت دوم ویدیو) اون صفحه ی مشکی رنگ ک بازی روباید نشون بده رو نمیاره و ارور میده ک همچین فایلی رو نمیشناسه:( دقیقااا هم همه چیو طبق چیزی ک نشون دادید اجرا کردم حتی سورس کد رو هم اجرا کردم اما نمیاره صفحه رو.. واقعا نمیدونم باید چیکار کنم خواااااااهش میکنم کمکم کنید???

    ( 3 )
    • مانی نصرتی
      مانی نصرتی 15 بهمن 1399 چهارشنبه

      منم نتونستم مال منم نمیشهههههههههههههههههههههههههه

      ( 0 )
  • محدثه
    محدثه 10 بهمن 1397 چهارشنبه

    کارتون عااالیه خیلی خیلی ممنونم ? فقط یه مشکلی من دارم و یک سوال این ک باید pygame رو دانلود و نصب کنیم؟ و مشکلم هم اینه ک وقتی کد رو توی cmder اجرا میکنم(قسمت دوم ویدیو) اون صفحه ی مشکی رنگ ک بازی روباید نشون بده رو نمیاره و ارور میده ک همچین فایلی رو نمیشناسه:( دقیقااا هم همه چیو طبق چیزی ک نشون دادید اجرا کردم حتی سورس کد رو هم اجرا کردم اما نمیاره صفحه رو.. واقعا نمیدونم باید چیکار کنم خواااااااهش میکنم کمکم کنید???

    ( 3 )
    • مانی نصرتی
      مانی نصرتی 2 بهمن 1399 پنج‌شنبه

      منم همین مشکل رو دارم خدایی عجیبه

      ( 0 )
  • سجاد وفایی
    سجاد وفایی 8 دی 1397 شنبه

    سلام داش دمت گرم برا این فیلم ها من یه سوال داشتم با پایتون میشه سایت هم نوشت ؟

    ( 0 )
    • ادمین سایت
      ادمین سایت 8 فروردین 1398 پنج‌شنبه

      سلام بله میشهاین ویدیو رو مشاهده کنید :https://www.aparat.com/v/yVSbB

      ( 0 )
  • رضا
    رضا 30 مهر 1397 دوشنبه

    سلام توی قسمت شش به جای مربع ، عکس دلخواهمون بیاد باید چیکار کرد !؟ تازه برنامه نویسی پایتونو شروع کردم :(

    ( 0 )
    • ariya
      ariya 18 دی 1397 سه‌شنبه

      سلام / خیلی عجیبه مستر امیر حسین که من وقتی کد هایی که تو همون قسمت اول درس دادید / یعنی یه مربع سیاه میسازه و تو کنسول لاگ میندازه رو اجرا میکنم ویندوز هنگ میکنه و فعالیت های حیاتی ویندوز متوقف میشه و صفحه سیاه میشه ://// کل سایتای دنیارو گشتم نتونستم چیزی پیدا کنم ممنون میشم طبق تجربتون یچیزی بگید D=مشخصات سیستمم : i7 6500u 3GHz RAM 16 gig graph gtx 960 4gig win 10 ویندوزمم آپدیته آپدیته / وقتی مینویسم python game.py توی کنسول مینویسه به جامعه py-game خوشامدید و بعد هنگ...

      ( 0 )
  • هادی
    هادی 8 آبان 1397 سه‌شنبه

    سلام من چطور پایگیم رو نصب کنم؟

    ( 0 )
    • ادمین سایت
      ادمین سایت 14 آبان 1397 دوشنبه

      اولین ویدیو رو مشاهده بفرمایید

      ( 0 )
  • رضا
    رضا 30 مهر 1397 دوشنبه

    سلام توی قسمت شش به جای مربع ، عکس دلخواهمون بیاد باید چیکار کرد !؟ تازه برنامه نویسی پایتونو شروع کردم :(

    ( 0 )
    • پارسا
      پارسا 20 اسفند 1398 سه‌شنبه

      man inkaro kardam...bayad mesl hamun morabe ha kar konid vali vase aks yek tabe besazin

      ( 0 )
  • رضا
    رضا 30 مهر 1397 دوشنبه

    سلام توی قسمت شش به جای مربع ، عکس دلخواهمون بیاد باید چیکار کرد !؟ تازه برنامه نویسی پایتونو شروع کردم :(

    ( 0 )
    • ادمین سایت
      ادمین سایت 14 آبان 1397 دوشنبه

      قسمت های بعدی درباره اش صحبت شده

      ( 0 )
  • آریا
    آریا 1 مهر 1397 یکشنبه

    سلام ، به نظرم خوب میشه اگه یه قسمت دیگه درباره ساخت یه فایل exe از همین بازی که ساختید ضبط کنید . مرسی

    ( 0 )
    • همایون
      همایون 4 اردیبهشت 1398 چهارشنبه

      یعنی به پایتون نمیشه فایل های ایگزه نوشت ؟

      ( 0 )
  • آریا
    آریا 1 مهر 1397 یکشنبه

    سلام ، به نظرم خوب میشه اگه یه قسمت دیگه درباره ساخت یه فایل exe از همین بازی که ساختید ضبط کنید . مرسی

    ( 0 )
    • محمد مهدی
      محمد مهدی 17 اسفند 1397 جمعه

      سلام اگه بخوایم رو سیستم دیگری ببریم باید چه کنیم؟!

      ( 0 )
  • آریا
    آریا 1 مهر 1397 یکشنبه

    سلام ، به نظرم خوب میشه اگه یه قسمت دیگه درباره ساخت یه فایل exe از همین بازی که ساختید ضبط کنید . مرسی

    ( 0 )
    • همایون
      همایون 4 اردیبهشت 1398 چهارشنبه

      اره موافقم خیلی ها اشاره خوبی بود ،،ممنون

      ( 0 )
  • آریا
    آریا 1 مهر 1397 یکشنبه

    سلام ، به نظرم خوب میشه اگه یه قسمت دیگه درباره ساخت یه فایل exe از همین بازی که ساختید ضبط کنید . مرسی

    ( 0 )
    • ادمین سایت
      ادمین سایت 16 مهر 1397 دوشنبه

      سلام بازی پایتونی هست . قرار باشه exe کنیم که با زبان دیگه ایی مینوشتیم

      ( 0 )
  • ارسلان
    ارسلان 25 شهریور 1397 یکشنبه

    با سلام. خیلی دوره خوبی بود. تا حالا دوره ای از این بهتر ندیده بود. یه چند تا مشکل داشت ولی: 1- بازی را خروجی نگرفتیم یعنی کاری نکردیم که مثل خیلی از بازی ها ، بازی یک آیکون و اسم داشته باشه که وقتی کاربر بر روی آن کلیک کرد وارد بازی بشه و نیاز به نصب برنامه ای دیگه نشه ( خودم انجام دادم آموزششو داخل یک کامنت میزارم ) 2- برای دکمه F1 متن راهنما را بازی را مثل تمام برنامه ها و بازی ها توضیح ندادیم.ولی در کل دوره خوبی بود. بعدا خودم این کار هارو انجام دادم داخل یک کامنت آموزششو میزارم.ممنون از سایت خوب شما

    ( 0 )
    • محمد
      محمد 11 اردیبهشت 1398 چهارشنبه

      سلام خوبین میشه آموزش این روش رو برای منم بفرستین؟؟لطفا به ایمیلم بفرسیتن

      ( 0 )
  • علی
    علی 14 شهریور 1397 چهارشنبه

    سلام دمت گرم که انقدر وقت گذاشتی و خیلی و خیلی با حوصله درس میدی و یه نکته ی مهم که خودت رو نمیگیری و خیلی خوبه که وسط فیلمات شوخی می کنی و اگه سوتی ای بدی قبولش می کنی بسیار سپاسگذارم

    ( 0 )
    • pouyan
      pouyan 26 اردیبهشت 1399 جمعه

      اره منم این طور فکر می کنم من 11 سالمه دارم کار می کنم حرفه ای دمت گگرم نابغه ها ... I LOVE YOU

      ( 0 )
  • علی اکبر
    علی اکبر 14 شهریور 1397 چهارشنبه

    سلام.... تو قسمت هفتم یه ایرادی که برنامه داشت این بود که بعد رد شدن مربع از کفشدوزک، اگه سریع کفشدوزک رو میاوردیم بالای مربع قبل اینکه خارج بشه برنامه crash() میشد..... علتشم این بود که فقط گفتین اگه خط پایین مربع از خط بالایی کفشدوزک رد شد بیاد شرایط محور x هارو بررسی کنه..... ولی نگفتین که سطح بالایی مربع از سطح پایینی کفشدوزک رد شد دیگه کاری نداشته باشه..... شاید یکم بد و پیچیده گفتم... کد if رو به شکل زیر تغییر دادم و کار درست در اومد:. if y > stuff_starty + stuff_height and stuff_starty < car_width + y: فکر کنم همه چیز تو کد معلومه...... البته منظور از car_width همون car_height بود که چون طول و عرض یکی بودن دیگه الکی چیزی تعریف نکردم..... با تشکر از برنامه عالیتون :)

    ( 0 )
    • یوحنا
      یوحنا 31 خرداد 1398 جمعه

      آقا دمت گرم داشتم دنبال الگوریتم برای حل این باگ میگشتم تا اینکه اینو دیده....

      ( 0 )
  • آریا
    آریا 13 شهریور 1397 سه‌شنبه

    کد تولید اعداد تصادفی در پایتون میتونید مربع هاتون رو به صورت رندوم رنگ دهی کنید البته فقط از بین 6 تا رنگ :cho=['r','b','g','v','o','y'] #red , blue , green , violet , orenge , yellow choice=random.choice(cho) if choice=='r': stuff_color=redif choice=='b': stuff_color=(0,0,255) if choice=='g': stuff_color=(0,255,0) if choice=='v': stuff_color=(128,0,128) if choice=='o': stuff_color=(255,86,4) if choice=='y':

    ( 0 )
    • محمدامین
      محمدامین 8 آبان 1399 پنج‌شنبه

      سلام بله درسته ولی این کد های که نوشتی یک کتابخانه داره که می تونه عداد تصدفی تولید کنه اونم *form random import هست

      ( 0 )
  • آریا
    آریا 13 شهریور 1397 سه‌شنبه

    کد تولید اعداد تصادفی در پایتون میتونید مربع هاتون رو به صورت رندوم رنگ دهی کنید البته فقط از بین 6 تا رنگ :cho=['r','b','g','v','o','y'] #red , blue , green , violet , orenge , yellow choice=random.choice(cho) if choice=='r': stuff_color=redif choice=='b': stuff_color=(0,0,255) if choice=='g': stuff_color=(0,255,0) if choice=='v': stuff_color=(128,0,128) if choice=='o': stuff_color=(255,86,4) if choice=='y':

    ( 0 )
    • Anonymous
      Anonymous 10 آبان 1398 جمعه

      می تونی از مازول random هم استفاده کنی

      ( 0 )
  • علی اکبر
    علی اکبر 10 شهریور 1397 شنبه

    سلام.... دم شما گرم.... من هرسه تا پکیج شما رو گرفتم و استفاده کردم... واقعا عالی بودن..... این سری آموزش هم واقعا خوب و کامله و نمونه فارسی مثل این ندیدم.... فقط یه سوال...... حدودا چند قسمت میشه این آموزش ها؟ چون بدونم برای چندتا باید منتظر بمونم انتظار راحت تر میشه :) با تشکر.... اگرهم وقت کردین فریمورک جنگو هم بگین عالی میشه.... پولی و رایگان بودنش دیگه برام مهم نیست چون میدونم کار شما درسته :)

    ( 0 )
    • PyBlack
      PyBlack 29 اسفند 1398 پنج‌شنبه

      قسمت دهم رو یادتون رفته تو یوتیوب بزارید

      ( 0 )
  • علی اکبر
    علی اکبر 10 شهریور 1397 شنبه

    سلام.... دم شما گرم.... من هرسه تا پکیج شما رو گرفتم و استفاده کردم... واقعا عالی بودن..... این سری آموزش هم واقعا خوب و کامله و نمونه فارسی مثل این ندیدم.... فقط یه سوال...... حدودا چند قسمت میشه این آموزش ها؟ چون بدونم برای چندتا باید منتظر بمونم انتظار راحت تر میشه :) با تشکر.... اگرهم وقت کردین فریمورک جنگو هم بگین عالی میشه.... پولی و رایگان بودنش دیگه برام مهم نیست چون میدونم کار شما درسته :)

    ( 0 )
    • ادمین سایت
      ادمین سایت 12 شهریور 1397 دوشنبه

      سلام 10 قسمت هست

      ( 0 )
  • امیرحسین
    امیرحسین 8 شهریور 1397 پنج‌شنبه

    اقا امیرحسین سلام میگم که من هر کاری میکنم که با cmder بازی رو باز کنم اصلا نمیره توش مثلا وقتی میخوام وارد پوشه users بشم تا u رو نوشتم یه تب بزنم میشناسه ولی اسم برنامه رو نه و حتی یه پوشم ساختم بردمش تو پوشه اونجوریم باز فقط میرفت تو پوشه و تو برنامه یا همون بازی نمیرفت لطفا راهنمایی کنید ممنونم.

    ( 0 )
    • محمد رضا
      محمد رضا 13 اردیبهشت 1398 جمعه

      سلام وست عزیز حتما مسیری که desktop هست یا هر مسیر دیگه رو اشتباه میدی منم همین مشکل رو داشتم واسه من هم نمی اورد بعد دیدم با میرفتم تو پوشه oneDrive دسکتاپم اونجا بود مسیر رو چک کن

      ( 0 )
  • امیرحسین
    امیرحسین 8 شهریور 1397 پنج‌شنبه

    اقا امیرحسین سلام میگم که من هر کاری میکنم که با cmder بازی رو باز کنم اصلا نمیره توش مثلا وقتی میخوام وارد پوشه users بشم تا u رو نوشتم یه تب بزنم میشناسه ولی اسم برنامه رو نه و حتی یه پوشم ساختم بردمش تو پوشه اونجوریم باز فقط میرفت تو پوشه و تو برنامه یا همون بازی نمیرفت لطفا راهنمایی کنید ممنونم.

    ( 0 )
    • ادمین سایت
      ادمین سایت 8 شهریور 1397 پنج‌شنبه

      سلام لطفا ویدیو رو با دقت مشاهده کنید

      ( 0 )
  • فردوسی
    فردوسی 6 شهریور 1397 سه‌شنبه

    عالی عالی ادامه بده دمت گرم

    ( 0 )
    • عین غین
      عین غین 14 شهریور 1398 پنج‌شنبه

      آقا ی فردوسی شما کجا اینجا کجا؟ می خوای بازی شاهنامه را بسازی؟ دمت گرم چه سخت کوش!

      ( 0 )
+ ارسال دیدگاه به عنوان مهمان دیدگاه ارسال نمایید

51 + = 61

خبرنامه نابغه‌ها

خبرنامه نابغه‌ها

دریافت جدیدترین‌ها با عضویت در خبرنامه

نابغه‌ها در شبکه‌های اجتماعی

با عضویت در شبکه‌های اجتماعی سریعتر از دیگران با خبر شوید