در این مطلب، ویدئو آموزش پایتون / Pygame: ایجاد سطوح و مستطیل (همچنین جابجایی وسایل) با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:18:21
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,030 –> 00:00:01,530
در این آموزش قصد داریم در
2
00:00:01,530 –> 00:00:03,179
مورد اصول اولیه pikey صحبت
3
00:00:03,179 –> 00:00:05,460
کنیم، قرار نیست روی هیچ نوع
4
00:00:05,460 –> 00:00:06,990
پروژه قابل ارائه کار کنیم، فقط
5
00:00:06,990 –> 00:00:08,910
در مورد نحوه عملکرد pygame در سطح پایه صحبت
6
00:00:08,910 –> 00:00:10,920
خواهیم کرد و ما چیزهای اساسی را ترسیم خواهیم
7
00:00:10,920 –> 00:00:13,110
کرد هیچ چیز جالب است، اما اگر دوباره با pi تازه وارد هستید،
8
00:00:13,110 –> 00:00:14,580
این باید یک راه واقعاً خوب
9
00:00:14,580 –> 00:00:17,039
برای شروع باشد، دو مفهوم وجود دارد
10
00:00:17,039 –> 00:00:18,600
که شما واقعاً برای
11
00:00:18,600 –> 00:00:20,220
انجام هر کاری نیاز دارید و کیت PI
12
00:00:20,220 –> 00:00:22,470
، اولی سطوح و
13
00:00:22,470 –> 00:00:25,260
دومی بازی هایی است که سطوح را انجام می دهید. آیا
14
00:00:25,260 –> 00:00:27,359
قسمت سادهتر سطح است که اساساً
15
00:00:27,359 –> 00:00:29,670
فقط یک لایه است که چیزها را روی آن قرار میدهید،
16
00:00:29,670 –> 00:00:31,859
میتواند یک تصویر یا یک رنگ جامد باشد
17
00:00:31,859 –> 00:00:33,329
، واقعاً مهم نیست میتواند
18
00:00:33,329 –> 00:00:35,670
چیزهای دیگری را نیز روی آن بکشد، اما به خودی خود
19
00:00:35,670 –> 00:00:37,350
فقط یک لایه خالی است که چیزها را روی آن قرار میدهید.
20
00:00:37,350 –> 00:00:40,050
و سپس پرداخت GIMP ما دو
21
00:00:40,050 –> 00:00:42,149
نوع لایه مختلف داریم که اولی
22
00:00:42,149 –> 00:00:43,800
به نام سطح نمایشگر و سپس
23
00:00:43,800 –> 00:00:45,899
یک سطح منظم داریم، تنها
24
00:00:45,899 –> 00:00:47,940
تفاوت این است که سطح صفحه نمایش
25
00:00:47,940 –> 00:00:50,309
به کاربر نشان داده می شود و تمام
26
00:00:50,309 –> 00:00:52,020
سطوح دیگر فقط در صورتی نشان داده می شوند که
27
00:00:52,020 –> 00:00:54,600
آنها روی صفحه نمایش قرار می گیرد اما
28
00:00:54,600 –> 00:00:56,160
علاوه بر آن اساساً
29
00:00:56,160 –> 00:00:58,620
یکسان هستند و ما می خواهیم یکی را
30
00:00:58,620 –> 00:01:00,899
در یک ثانیه بسازیم، اما قبل از آن
31
00:01:00,899 –> 00:01:02,489
باید در مورد چیز دیگری نیز صحبت کنیم
32
00:01:02,489 –> 00:01:04,799
و آن حلقه بازی است و
33
00:01:04,799 –> 00:01:06,420
اساساً هر نوع بازی ویدیویی
34
00:01:06,420 –> 00:01:08,640
اساساً کار می کند ما قرار است
35
00:01:08,640 –> 00:01:10,830
حلقه را اجرا کنیم و در هر چرخه این حلقه
36
00:01:10,830 –> 00:01:13,560
بازی خود را به روز می کنیم،
37
00:01:13,560 –> 00:01:15,030
فرض کنید یک تصویر روی صفحه نمایش خود داریم و
38
00:01:15,030 –> 00:01:17,070
می خواهیم آن را در هر چرخه حلقه خود به سمت راست حرکت
39
00:01:17,070 –> 00:01:18,509
دهیم. قرار است آن
40
00:01:18,509 –> 00:01:20,520
را 5 پیکسل به سمت راست حرکت دهید و از آنجایی که
41
00:01:20,520 –> 00:01:22,860
این چند بار اتفاق می افتد،
42
00:01:22,860 –> 00:01:24,509
تصویر بسیار آهسته به
43
00:01:24,509 –> 00:01:27,240
سمت راست حرکت می کند و این اساساً
44
00:01:27,240 –> 00:01:29,280
واضح است که می توانید چیزهای بیشتری را به
45
00:01:29,280 –> 00:01:31,079
این اضافه کنید تا یک بازی واقعی بسازید. و
46
00:01:31,079 –> 00:01:33,270
انیمیشن های قابل ارائه بسازید، اما به خودی خود
47
00:01:33,270 –> 00:01:34,829
مفهوم دشواری نیست،
48
00:01:34,829 –> 00:01:37,229
بنابراین بیایید در واقع یک
49
00:01:37,229 –> 00:01:40,740
طرح کلی برای لوله کشی ایجاد کنیم، اولین چیزی
50
00:01:40,740 –> 00:01:44,430
که به آن نیاز داریم این است که pygame را وارد
51
00:01:44,430 –> 00:01:45,930
کنیم، اگر می خواهید
52
00:01:45,930 –> 00:01:48,360
از PI game unity importe استفاده کنید، این بخش باید کاملاً واضح باشد. بدیهی است که
53
00:01:48,360 –> 00:01:49,860
قبل از اینکه بتوانید از آن استفاده کنید، باید
54
00:01:49,860 –> 00:01:51,420
آن را نصب کنید، کارهایی را که می توانید در
55
00:01:51,420 –> 00:01:53,220
کنسول در پاور شاپ انجام دهید و علاوه بر
56
00:01:53,220 –> 00:01:55,799
افزونه، ما همچنین باید sis را وارد کنیم که
57
00:01:55,799 –> 00:01:57,840
به ما امکان دسترسی به برخی از دستورات سیستم را می دهد
58
00:01:57,840 –> 00:02:00,060
، تنها چیزی که به آن نیاز داریم، خاموش کردن آن است.
59
00:02:00,060 –> 00:02:01,439
در پایان وقتی بازی را به پایان میرسانیم
60
00:02:01,439 –> 00:02:03,420
61
00:02:03,420 –> 00:02:05,250
و زمانی که این کار را انجام میدهیم، باید
62
00:02:05,250 –> 00:02:07,830
یک تنظیمات کلی ایجاد کنیم، اما اجازه دهید یک
63
00:02:07,830 –> 00:02:09,780
نظر در اینجا اضافه کنم و اولین چیزی که ما
64
00:02:09,780 –> 00:02:12,660
نیاز داریم این است که نقطه بازی PI در آن وجود دارد، در
65
00:02:12,660 –> 00:02:14,760
واقع چند مورد را انجام میدهد. چیزهای خاصی
66
00:02:14,760 –> 00:02:16,110
که برای این آموزش نیازی به نگرانی در مورد
67
00:02:16,110 –> 00:02:20,040
آنها نیستید و چیزی که
68
00:02:20,040 –> 00:02:22,620
ما به آن نیاز داریم ساعت است و ما به
69
00:02:22,620 –> 00:02:26,220
جمع نقطه ساعت بازی Pi می رسیم و
70
00:02:26,220 –> 00:02:28,080
مراقب باشید
71
00:02:28,080 –> 00:02:29,820
حرف اول ساعت که مهم است را بزرگ کنید. و
72
00:02:29,820 –> 00:02:32,340
این مورد اساساً زمان را در مورد
73
00:02:32,340 –> 00:02:34,440
سرعت اجرای بازی ما ردیابی می کند و ما
74
00:02:34,440 –> 00:02:36,000
بعداً از آن برای کنترل
75
00:02:36,000 –> 00:02:38,640
سرعت اجرای بازی خود استفاده خواهیم کرد و فقط
76
00:02:38,640 –> 00:02:41,100
برای تنظیم کلی بعدی است که
77
00:02:41,100 –> 00:02:44,280
باید سطح نمایش ایجاد شده را ایجاد کنیم.
78
00:02:44,280 –> 00:02:51,660
صفحه نمایش an d برای ایجاد یک
79
00:02:51,660 –> 00:02:53,310
سطح نمایشگر باید ابتدا آن را در متغیری قرار دهیم که
80
00:02:53,310 –> 00:02:56,459
من معمولاً آن را صفحه نمایش می نامم،
81
00:02:56,459 –> 00:02:57,720
اما واقعاً مهم نیست که آن را چه می نامید
82
00:02:57,720 –> 00:03:00,450
و برای ایجاد سطح نمایشگر
83
00:03:00,450 –> 00:03:04,470
به بازی pi نیاز داریم که حالت نمایش خدا تنظیم شود
84
00:03:04,470 –> 00:03:07,019
و تنها آرگومان شما واقعاً به
85
00:03:07,019 –> 00:03:08,640
یک تاپل با عرض و
86
00:03:08,640 –> 00:03:11,640
ارتفاع صفحه در مورد من نیاز دارید، من فقط می خواهم
87
00:03:11,640 –> 00:03:16,380
800 ضربدر 800 قرار دهم که این یکی
88
00:03:16,380 –> 00:03:18,750
کار است و این یکی
89
00:03:18,750 –> 00:03:20,519
ارتفاع صفحه است و اکنون ما سطح اصلی خود را
90
00:03:20,519 –> 00:03:23,489
با آن یکی داریم. انجام شد، میتوانیم
91
00:03:23,489 –> 00:03:26,220
به حلقه واقعی بازی برسیم و این حلقه
92
00:03:26,220 –> 00:03:28,200
تقریباً فقط یک حلقه while است که
93
00:03:28,200 –> 00:03:31,709
همیشه به خوبی اجرا میشود درست به این معنی نیست
94
00:03:31,709 –> 00:03:33,900
که این بازی اجرا میشود، مگر اینکه
95
00:03:33,900 –> 00:03:36,540
آن را از داخل متوقف کنیم، اگر آن را متوقف نکنیم.
96
00:03:36,540 –> 00:03:37,920
درون آن قرار است برای
97
00:03:37,920 –> 00:03:40,019
همیشه اجرا شود و تنها کاری که
98
00:03:40,019 –> 00:03:43,590
در اینجا آماده انجام آن هستیم این است که رویداد و
99
00:03:43,590 –> 00:03:49,470
رویداد بازی را بررسی کنیم و اجازه دهید
100
00:03:49,470 –> 00:03:52,019
ابتدا تایپ این را تمام کنم و سپس
101
00:03:52,019 –> 00:03:55,650
توضیح میدهم که همه اینها به چه معناست که PI
102
00:03:55,650 –> 00:03:57,370
نقطه بازی که
103
00:03:57,370 –> 00:03:59,080
[موسیقی]
104
00:03:59,080 –> 00:04:11,270
اما مانند یک جادوگر و خواهر از
105
00:04:11,270 –> 00:04:15,590
بنابراین تمام این دو خط به ما این
106
00:04:15,590 –> 00:04:17,510
امکان را می دهند که پس از اتمام برنامه، برنامه
107
00:04:17,510 –> 00:04:20,839
را ببندیم، بنابراین اساساً در هر
108
00:04:20,839 –> 00:04:23,630
چرخه از این، در حالی که حلقه ما به دنبال
109
00:04:23,630 –> 00:04:25,880
نوعی رویداد و رویداد هستیم و pygame
110
00:04:25,880 –> 00:04:27,460
به معنای واقعی کلمه فقط ورودی هایی از کاربر
111
00:04:27,460 –> 00:04:30,110
این ممکن است فشار دادن یک دکمه ماوس یا
112
00:04:30,110 –> 00:04:32,660
حرکت دادن ماوس باشد یا ممکن است فشار دادن
113
00:04:32,660 –> 00:04:34,070
یک دکمه صفحه کلید
114
00:04:34,070 –> 00:04:36,080
متفاوت باشد و تنها موردی که ما به
115
00:04:36,080 –> 00:04:38,840
دنبال آن هستیم بازی PI LUT خروج است، ما
116
00:04:38,840 –> 00:04:40,370
فقط دکمه X را در بالا
117
00:04:40,370 –> 00:04:42,620
سمت چپ فشار می دهیم. از روی صفحه نمایش و اگر اینطور است
118
00:04:42,620 –> 00:04:44,710
که می خواهید بازی را خاموش کنید و
119
00:04:44,710 –> 00:04:47,690
PI گام خارج شد برعکس
120
00:04:47,690 –> 00:04:50,690
بازی Pi است کاملاً کل برنامه را شروع نکرده
121
00:04:50,690 –> 00:04:52,940
و سپس از
122
00:04:52,940 –> 00:04:55,490
خروجی خواهر برای بسته شدن مطمئن بازی استفاده می کنیم
123
00:04:55,490 –> 00:04:56,960
. اما این
124
00:04:56,960 –> 00:04:59,540
راه امنتر برای بستن بازی است، بنابراین همه
125
00:04:59,540 –> 00:05:01,070
اینها فقط به ما امکان میدهد تا
126
00:05:01,070 –> 00:05:03,500
زمانی که بتوانیم برنامه را جابجا کنیم، آن را ببندیم و اگر
127
00:05:03,500 –> 00:05:05,240
این کار را انجام نمیدادیم، باید به یک
128
00:05:05,240 –> 00:05:07,940
مدیر وظیفه برویم تا برنامه را به عنوان
129
00:05:07,940 –> 00:05:09,229
دو مورد ببندیم. چیزهایی که ما نیاز داریم و اولین مورد
130
00:05:09,229 –> 00:05:16,940
بازی PI Geor است ge فقط God look را بازی کرد و
131
00:05:16,940 –> 00:05:19,040
تنها چیزی که من فقط میخواهم این است که هر چیزی را
132
00:05:19,040 –> 00:05:21,110
که در این حلقه while کشیده شده است میگیرد
133
00:05:21,110 –> 00:05:24,080
و آن را میکشد تا کاربر
134
00:05:24,080 –> 00:05:26,750
واقعاً آن را ببیند، بنابراین چگونه بازی
135
00:05:26,750 –> 00:05:29,000
بعداً اجرا میشود این است که در این
136
00:05:29,000 –> 00:05:31,040
حلقه while ما قرار است چیزهای زیادی ترسیم کنند
137
00:05:31,040 –> 00:05:32,780
و این در هر چرخه این حلقه اتفاق می افتد
138
00:05:32,780 –> 00:05:35,510
و در
139
00:05:35,510 –> 00:05:37,280
پایان هر حلقه با این خط با این
140
00:05:37,280 –> 00:05:39,380
رسم هر آنچه در این چرخه از آنها چاپ شده است
141
00:05:39,380 –> 00:05:41,840
و یک خط دیگر ما
142
00:05:41,840 –> 00:05:45,979
نیاز داریم و آن ساعت تیک ندارد و پس از آن
143
00:05:45,979 –> 00:05:47,990
ما به نرخ فریم خود در مورد خود نیاز داریم، من می
144
00:05:47,990 –> 00:05:51,100
خواهم به سمت 60 فریم در ثانیه برویم
145
00:05:51,100 –> 00:05:53,270
که بتا فقط به این معنی است که ما می
146
00:05:53,270 –> 00:05:55,729
خواهیم این حلقه را 60 بار در
147
00:05:55,729 –> 00:05:59,400
ثانیه اجرا کنیم، بنابراین هر 17 میلی ثانیه
148
00:05:59,400 –> 00:06:02,530
و اگر ما در حال اجرای این بودیم،
149
00:06:02,530 –> 00:06:06,069
150
00:06:06,069 –> 00:06:09,240
151
00:06:09,240 –> 00:06:11,800
اگر این نور
152
00:06:11,800 –> 00:06:13,900
در اینجا واقعاً مهم
153
00:06:13,900 –> 00:06:15,669
باشد، برای آموزش ما اهمیتی ندارد،
154
00:06:15,669 –> 00:06:18,069
اما برای بازیهای پیچیدهتر، باید یک صفحه سیاه و سفید با ابعاد 800 در 800 پیکسل بالا و سفید در کنترل نرخ فریم داشته باشیم.
155
00:06:18,069 –> 00:06:20,349
واقعاً تبدیل خواهد شد البته
156
00:06:20,349 –> 00:06:22,780
دلیل اصلی آن این است که سرعت
157
00:06:22,780 –> 00:06:24,340
انیمیشنهای شما با
158
00:06:24,340 –> 00:06:27,069
سرعت این که چقدر سریع یا چند وقت یکبار
159
00:06:27,069 –> 00:06:29,740
این حلقه while را صدا میزنید تعیین میشود تا فکر کنید که آیا این
160
00:06:29,740 –> 00:06:33,129
چیزی حدود 10 است و شما یک تصویر
161
00:06:33,129 –> 00:06:35,740
را بر حسب پیکسل به سمت راست اینجا منتقل میکنید. 10
162
00:06:35,740 –> 00:06:37,780
بار در ثانیه است،
163
00:06:37,780 –> 00:06:39,610
اگر این کار را انجام دهید با سرعت نسبتاً آهسته ای حرکت می کند، فرض کنید
164
00:06:39,610 –> 00:06:41,830
چیزی شبیه به هزار بار
165
00:06:41,830 –> 00:06:44,169
بسیار سریعتر حرکت می کند و اگر
166
00:06:44,169 –> 00:06:46,180
این خط را مشخص نکرده اید، رایانه شما
167
00:06:46,180 –> 00:06:47,740
بازی را با حداکثر سرعت ممکن اجرا می کند.
168
00:06:47,740 –> 00:06:49,569
در اکثر رایانه ها
169
00:06:49,569 –> 00:06:52,060
احتمالاً چیزی حدود 10000 بار در
170
00:06:52,060 –> 00:06:54,250
ثانیه خواهد بود که ممکن است باعث از بین رفتن برخی از
171
00:06:54,250 –> 00:06:55,840
انیمیشن ها شود زیرا آنها
172
00:06:55,840 –> 00:06:58,479
خیلی سریع بازی می کنند و همچنین بازی را
173
00:06:58,479 –> 00:07:00,699
ناسازگار می کند زیرا برخی از افراد با یک
174
00:07:00,699 –> 00:07:02,169
رایانه سریع ممکن است تجربه متفاوتی با افراد دارای یک رایانه بسیار سریع داشته باشند.
175
00:07:02,169 –> 00:07:03,699
176
00:07:03,699 –> 00:07:06,250
رایانه آهسته است، بنابراین ما فقط آن را روی 60 نگه می داریم
177
00:07:06,250 –> 00:07:09,969
و این معمولاً یک راه بسیار خوب
178
00:07:09,969 –> 00:07:13,060
برای جلو رفتن است و در حال حاضر با
179
00:07:13,060 –> 00:07:15,130
تنظیمات بسیار ابتدایی ما که می توانیم یک
180
00:07:15,130 –> 00:07:17,740
صفحه سیاه نمایش دهیم تا آنچه را که می توانید ببینید. ht
181
00:07:17,740 –> 00:07:20,440
اینجا سطح صفحه نمایش است و
182
00:07:20,440 –> 00:07:23,169
هر 60 میلی ثانیه ترسیم می شود،
183
00:07:23,169 –> 00:07:26,830
بنابراین 60 بار در ثانیه، اما بدیهی است که ما
184
00:07:26,830 –> 00:07:29,020
واقعاً نمی توانیم چیزی ببینیم، بنابراین بیایید
185
00:07:29,020 –> 00:07:31,810
چیزی به آن اضافه کنیم اولین کاری که می
186
00:07:31,810 –> 00:07:33,940
خواهم انجام دهم این است که کل این مورد را با آن پر کنم.
187
00:07:33,940 –> 00:07:36,120
رنگی که می توان با
188
00:07:36,120 –> 00:07:38,800
هدف قرار دادن این متغیر صفحه نمایش انجام داد صفحه نمایش خواهد بود
189
00:07:38,800 –> 00:07:41,529
و سپس ما فقط باید آن را پر کنیم
190
00:07:41,529 –> 00:07:44,529
و اکنون باید یک استدلال
191
00:07:44,529 –> 00:07:46,930
و ساده ترین راه برای اضافه کردن رنگ ها و
192
00:07:46,930 –> 00:07:50,020
محوطه PI با RGB ارائه دهیم – همه این بدان معنی است
193
00:07:50,020 –> 00:07:53,080
که شما به سه عدد نیاز دارم اجازه بدهید بروم 0
194
00:07:53,080 –> 00:07:57,159
0 و 0 اولی X من فقط می
195
00:07:57,159 –> 00:08:01,120
توانم بنویسم RG خیلی گران باشد بهتر است اما ما
196
00:08:01,120 –> 00:08:02,440
در مورد مقدار قرمزی که داریم صحبت می
197
00:08:02,440 –> 00:08:03,879
کنیم سپس مقدار سبزی که داریم
198
00:08:03,879 –> 00:08:06,250
و مقدار آبی که داریم و سپس
199
00:08:06,250 –> 00:08:08,169
ما هر سه را با هم مخلوط می کنیم و به
200
00:08:08,169 –> 00:08:09,340
نتیجه می رسیم
201
00:08:09,340 –> 00:08:12,430
و این از صفر به 255 می رسد
202
00:08:12,430 –> 00:08:13,750
که صفر در صورت عدم وجود رنگ و
203
00:08:13,750 –> 00:08:16,570
255 کامل جام است، بنابراین اگر
204
00:08:16,570 –> 00:08:22,300
کاری مانند 255 0 و 0 انجام می دادیم، قرمز کامل خواهیم داشت،
205
00:08:22,300 –> 00:08:26,680
نه سبز و نه. آبی پس اگر من
206
00:08:26,680 –> 00:08:29,470
بازی را اجرا کنم الان باید هاوی باشیم یک
207
00:08:29,470 –> 00:08:34,990
پسزمینه قرمز بزنید و ما میرویم و در
208
00:08:34,990 –> 00:08:37,479
مورد من فقط یک پسزمینه سفید میخواهم، بنابراین
209
00:08:37,479 –> 00:08:41,169
255 255 255 را اضافه میکنم که رنگهای کامل داریم و
210
00:08:41,169 –> 00:08:44,500
این به ما یک پشت سفید میدهد و
211
00:08:44,500 –> 00:08:47,290
این سادهترین راه برای ادامه مرحله یک است
212
00:08:47,290 –> 00:08:47,910
که
213
00:08:47,910 –> 00:08:50,680
اکنون انجام شده است. برای سطح صفحه نمایش، اما این
214
00:08:50,680 –> 00:08:52,660
هنوز کاملاً اساسی است، بنابراین اجازه دهید یک
215
00:08:52,660 –> 00:08:55,690
سطح دوم به آن اضافه کنیم و من فقط
216
00:08:55,690 –> 00:09:01,900
آن را سطح دوم می نامم و می توانیم
217
00:09:01,900 –> 00:09:04,390
سطوح را به چند روش ایجاد کنیم که ساده
218
00:09:04,390 –> 00:09:07,480
ترین آنها با سطح نقطه pygame است و
21