در این مطلب، ویدئو کد نویسی بازی پایتون: مقدمه ای بر تشخیص برخورد با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:11:56
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:01,280 –> 00:00:03,040
بسیار خوب به همه خوش آمدید به تشخیص برخورد اولیه
2
00:00:03,040 –> 00:00:05,359
در پایتون با tokyo edtech
3
00:00:05,359 –> 00:00:06,399
که من هستم
4
00:00:06,399 –> 00:00:08,000
در این ویدیو من قصد دارم به چهار
5
00:00:08,000 –> 00:00:09,599
روش
6
00:00:09,599 –> 00:00:11,920
تشخیص برخورد در مورد نحوه کار آنها صحبت
7
00:00:11,920 –> 00:00:13,200
کنم و کدی را به شما نشان می دهم
8
00:00:13,200 –> 00:00:14,799
که در واقع آن را پیاده سازی می کند به جز
9
00:00:14,799 –> 00:00:15,920
برای آخرین مورد چون من نمی دانم چگونه
10
00:00:15,920 –> 00:00:16,640
11
00:00:16,640 –> 00:00:18,480
با استفاده از ماژول لاک پشت آن را انجام دهم، بنابراین بیایید
12
00:00:18,480 –> 00:00:21,039
نگاهی به آنچه امروز اینجا داریم بیندازیم
13
00:00:21,039 –> 00:00:24,480
اولین روش ما همپوشانی مختصات نامیده می شود،
14
00:00:24,480 –> 00:00:26,960
بنابراین اساساً
15
00:00:26,960 –> 00:00:28,640
این یک روش بسیار ساده
16
00:00:28,640 –> 00:00:30,800
است، اینجا جایی است که ما مقایسه می کنیم مختصات x و y
17
00:00:30,800 –> 00:00:31,760
18
00:00:31,760 –> 00:00:34,000
یک شی با مختصات x و y
19
00:00:34,000 –> 00:00:35,920
یک شیء دیگر
20
00:00:35,920 –> 00:00:39,360
اگر دقیقاً یکسان باشند، می گوییم
21
00:00:39,360 –> 00:00:40,879
که برخوردی وجود دارد که
22
00:00:40,879 –> 00:00:43,040
این کار برای
23
00:00:43,040 –> 00:00:44,079
بازی های شبکه ای یا
24
00:00:44,079 –> 00:00:47,200
بازی های مبتنی بر کاشی که در آن هر جسم
25
00:00:47,200 –> 00:00:48,239
دقیقاً روی آن حرکت می کند بسیار خوب عمل می کند
26
00:00:48,239 –> 00:00:51,120
. کاشیها اما برای بازیهایی که
27
00:00:51,120 –> 00:00:52,480
دقیقاً روی یک کاشی یا
28
00:00:52,480 –> 00:00:53,520
دقیقاً روی یک شبکه
29
00:00:53,520 –> 00:00:55,440
حرکت نمیکند، اصلاً کار نمیکند و بعداً چند نمونه را خواهید دید، بسیار
30
00:00:55,440 –> 00:00:56,800
31
00:00:56,800 –> 00:00:58,719
خوب، روش دوم
32
00:00:58,719 –> 00:01:00,879
بررسی فاصله است، جایی که ما مقدار را اندازهگیری میکنیم.
33
00:01:00,879 –> 00:01:01,520
فاصله
34
00:01:01,520 –> 00:01:03,760
از وسط یا از مختصات x y
35
00:01:03,760 –> 00:01:05,360
یک جسم
36
00:01:05,360 –> 00:01:07,680
تا مختصات x y وسط
37
00:01:07,680 –> 00:01:08,640
جسم دیگر
38
00:01:08,640 –> 00:01:11,040
و فاصله را محاسبه می کنیم از قضیه فیثاغورث استفاده می
39
00:01:11,040 –> 00:01:12,400
کنیم
40
00:01:12,400 –> 00:01:14,640
بنابراین جذر یک مجذور بعلاوه b
41
00:01:14,640 –> 00:01:16,159
مجذور می شود
42
00:01:16,159 –> 00:01:18,720
بنابراین هندسه کمی وجود دارد و اگر
43
00:01:18,720 –> 00:01:19,600
فاصله
44
00:01:19,600 –> 00:01:22,880
کمتر از نیمی از عرض این
45
00:01:22,880 –> 00:01:24,799
جسم
46
00:01:24,799 –> 00:01:27,840
به اضافه نصف عرض این جسم است،
47
00:01:27,840 –> 00:01:30,159
سپس شما یک برخورد دارید اکنون این فقط در
48
00:01:30,159 –> 00:01:30,880
صورتی کار می کند که
49
00:01:30,880 –> 00:01:34,000
هر جسم مربع یا گرد یا بسیار
50
00:01:34,000 –> 00:01:34,400
51
00:01:34,400 –> 00:01:36,159
نزدیک به آن باشد، در غیر این صورت خیلی خوب کار نمی کند
52
00:01:36,159 –> 00:01:37,680
53
00:01:37,680 –> 00:01:40,159
. روش سوم را جعبه مرزی هم تراز با محور می نامند
54
00:01:40,159 –> 00:01:40,799
55
00:01:40,799 –> 00:01:43,840
و در این
56
00:01:43,840 –> 00:01:46,720
روش یک کادر خیالی دور هر
57
00:01:46,720 –> 00:01:47,840
شی
58
00:01:47,840 –> 00:01:50,880
می
59
00:01:50,880 –> 00:01:53,360
کشیم و کاری که انجام می دهد این است که به خوبی انجام می دهیم این است که
60
00:01:53,360 –> 00:01:54,320
61
00:01:54,320 –> 00:01:56,799
اساساً گوشه هایی را که حدس می زنم یا اضلاع
62
00:01:56,799 –> 00:01:59,280
هر جعبه را با اضلاع مقایسه می کنیم. از کادر دیگر،
63
00:01:59,280 –> 00:02:02,799
بنابراین اگر یکی از این
64
00:02:02,799 –> 00:02:06,799
مختصات بین بالا و پایین و
65
00:02:06,799 –> 00:02:08,800
بین چپ و راست باشد، می
66
00:02:08,800 –> 00:02:10,560
دانیم که برخورد داریم، این یک روش بسیار سریع
67
00:02:10,560 –> 00:02:11,599
برای بررسی است
68
00:02:11,599 –> 00:02:13,360
و کاری که به ما اجازه می دهد انجام دهیم این است.
69
00:02:13,360 –> 00:02:15,680
ما با اجسامی با اندازههای مختلف برخورد
70
00:02:15,680 –> 00:02:18,800
میکنیم، بنابراین اگر روش همپوشانی را انجام میدادیم،
71
00:02:18,800 –> 00:02:20,720
این
72
00:02:20,720 –> 00:02:22,080
برخورد فقط زمانی ثبت میشود که
73
00:02:22,080 –> 00:02:24,800
توپ دقیقاً اینجا بود یا اگر روش بررسی فاصله را انجام میدادیم،
74
00:02:24,800 –> 00:02:26,400
75
00:02:26,400 –> 00:02:28,400
میدانید اگر اینجا بود که
76
00:02:28,400 –> 00:02:29,760
واقعاً نزدیک بود. اینجا اما
77
00:02:29,760 –> 00:02:31,840
نزدیک به اینجا نیست تا بتوانید ببینید که
78
00:02:31,840 –> 00:02:33,519
فواصل مختلفی
79
00:02:33,519 –> 00:02:36,239
تا برخوردها وجود دارد و سپس آخرین
80
00:02:36,239 –> 00:02:37,280
مورد،
81
00:02:37,280 –> 00:02:39,440
بررسی برخورد کامل پیکسل نامیده میشود و
82
00:02:39,440 –> 00:02:40,560
کاری که انجام میدهد این
83
00:02:40,560 –> 00:02:43,920
است که در واقع تک تک نقاط
84
00:02:43,920 –> 00:02:46,560
هر پیکسل در تصویر را در برابر
85
00:02:46,560 –> 00:02:48,239
هر پیکسل
86
00:02:48,239 –> 00:02:50,319
در دیگری بررسی میکند. بنابراین این
87
00:02:50,319 –> 00:02:51,760
قدرت پردازش زیادی میگیرد،
88
00:02:51,760 –> 00:02:54,160
زیرا چیزهای زیادی برای بررسی وجود دارد، اما
89
00:02:54,160 –> 00:02:56,560
میتوانید در اینجا ببینید که دقیقتر
90
00:02:56,560 –> 00:02:59,200
از گفتن جعبه مرزی تراز محوری است،
91
00:02:59,200 –> 00:03:00,560
زیرا میتوانید اینجا ببینید اگر از جعبه مرزی تراز دسترسی aabb استفاده میکنید، این یک برخورد خواهد بود.
92
00:03:00,560 –> 00:03:01,760
93
00:03:01,760 –> 00:03:04,000
94
00:03:04,000 –> 00:03:05,280
برخوردها
95
00:03:05,280 –> 00:03:07,599
همانطور که در اینجا می بینید اکنون این جعبه ها با هم همپوشانی دارند
96
00:03:07,599 –> 00:03:09,120
97
00:03:09,120 –> 00:03:11,120
اما همچنین می توانید ببینید که
98
00:03:11,120 –> 00:03:12,640
آنها واقعاً
99
00:03:12,640 –> 00:03:14,800
با هم تماس ندارند و بسته به سرعت
100
00:03:14,800 –> 00:03:16,640
بازی شما و نحوه c از دست دادن یا بزرگی
101
00:03:16,640 –> 00:03:17,440
102
00:03:17,440 –> 00:03:19,040
اشیاء ممکن است واقعاً قابل توجه باشد یا
103
00:03:19,040 –> 00:03:20,480
ممکن است قابل توجه نباشد،
104
00:03:20,480 –> 00:03:22,640
پس بیایید به کدی نگاهی بیندازیم
105
00:03:22,640 –> 00:03:24,560
تا حداقل سه مورد اول را انجام دهیم
106
00:03:24,560 –> 00:03:26,080
و قبل از اینکه به آن برسم، اجازه دهید یک
107
00:03:26,080 –> 00:03:28,879
فریاد بزرگ به صدای خودم بزنم. سه
108
00:03:28,879 –> 00:03:32,400
عضو 16 بیتی اول کانال من، کین
109
00:03:32,400 –> 00:03:34,239
اول پل دوم بود و پیوستن به آنها
110
00:03:34,239 –> 00:03:34,640
111
00:03:34,640 –> 00:03:36,400
بسیار متشکرم است، بنابراین
112
00:03:36,400 –> 00:03:38,239
اگر مایل به حمایت
113
00:03:38,239 –> 00:03:39,840
مستقیم از کانال هستید، لطفاً عضویت
114
00:03:39,840 –> 00:03:42,239
و عضویت را در زیر در نظر بگیرید،
115
00:03:42,239 –> 00:03:45,360
بنابراین من اینجا دارم یک برنامه بسیار ساده
116
00:03:45,360 –> 00:03:49,840
است که چند تصویر دارد و دارای
117
00:03:49,840 –> 00:03:53,120
سه روش مختلف برای تعیین
118
00:03:53,120 –> 00:03:53,840
برخورد
119
00:03:53,840 –> 00:03:55,280
120
00:03:55,280 –> 00:03:57,519
121
00:03:57,519 –> 00:03:57,920
122
00:03:57,920 –> 00:04:00,640
123
00:04:00,640 –> 00:04:02,879
دیگری
124
00:04:02,879 –> 00:04:04,640
و اگر یکسان باشد و مختصات y
125
00:04:04,640 –> 00:04:06,879
یک شی با مختصات y شی دیگر یکسان
126
00:04:06,879 –> 00:04:09,200
127
00:04:09,200 –> 00:04:10,799
باشد درست را برمی گردانیم زیرا این به ما می گوید
128
00:04:10,799 –> 00:04:11,680
که برخورد
129
00:04:11,680 –> 00:04:15,360
داریم در غیر این صورت
130
00:04:15,360 –> 00:04:17,279
روش فاصله را همانطور که ذکر می کنم غلط برمی گردانیم.
131
00:04:17,279 –> 00:04:19,680
یکی قبل از آن جایی است که
132
00:04:19,680 –> 00:04:23,199
ما مجذور تفاوت x را
133
00:04:23,199 –> 00:04:25,440
به اضافه مجذور اختلاف فاصله
134
00:04:25,440 –> 00:04:27,600
در فاصله در y می
135
00:04:27,600 –> 00:04:29,040
گیریم و سپس جذر را می گیریم پس
136
00:04:29,040 –> 00:04:30,960
این دوباره قضیه فیثاغورث است
137
00:04:30,960 –> 00:04:32,800
بنابراین یک مجذور بعلاوه b مجذور برابر با
138
00:04:32,800 –> 00:04:34,400
مجذور c مربع را بگیرید. ریشه هر
139
00:04:34,400 –> 00:04:35,680
ضلع من شما را با ریاضی خسته نمیکنم،
140
00:04:35,680 –> 00:04:37,360
اما اساساً اینطوری کار میکند
141
00:04:37,360 –> 00:04:39,120
و سپس چگونه این کار را اینجا انجام دادم اگر آن
142
00:04:39,120 –> 00:04:41,040
فاصله کمتر
143
00:04:41,040 –> 00:04:42,880
از عرض یک به اضافه عرض طرف
144
00:04:42,880 –> 00:04:44,800
دیگر تقسیم بر دو باشد
145
00:04:44,800 –> 00:04:47,440
که نصف هر یک است. عرض که به ما می گوید
146
00:04:47,440 –> 00:04:48,000
147
00:04:48,000 –> 00:04:51,520
که آنها با هم برخورد کرده اند و سپس آخرین
148
00:04:51,520 –> 00:04:52,000
مورد،
149
00:04:52,000 –> 00:04:54,000
کادر محدود کننده دسترسی تراز است، اکنون
150
00:04:54,000 –> 00:04:55,759
کاملا صادقانه می گویم،
151
00:04:55,759 –> 00:04:59,120
این ریاضی را کاملاً درک نمی کنم، این را در
152
00:04:59,120 –> 00:05:00,320
سرریز پشته
153
00:05:00,320 –> 00:05:01,919
پیدا کردم، ببینم آیا می توانم یک عدد پیدا کنم دوباره پیوند دهید
154
00:05:01,919 –> 00:05:03,440
و آن را در زیر قرار دهید، اما اگر
155
00:05:03,440 –> 00:05:06,000
سرریز پشته را جستجو نکردید و اساساً
156
00:05:06,000 –> 00:05:08,080
شما در حال بررسی برخورد x
157
00:05:08,080 –> 00:05:10,880
هستید و از ماژول ریاضی استفاده میکنید، بنابراین
158
00:05:10,880 –> 00:05:13,759
ضرب را در 2 کم میکنید و
159
00:05:13,759 –> 00:05:16,240
بررسی مقدار مطلق این است که کمتر
160
00:05:16,240 –> 00:05:17,039
161
00:05:17,039 –> 00:05:19,360
از عرض دو شیء و
162
00:05:19,360 –> 00:05:21,520
سپس همان کار را با
163
00:05:21,520 –> 00:05:23,440
y انجام می دهید، من کاملاً آن را نمی فهمم، به نوعی آن را دریافت می
164
00:05:23,440 –> 00:05:24,880
کنم اما کاملاً آن را درک نمی کنم
165
00:05:24,880 –> 00:05:27,600
و سپس x collision و y
166
00:05:27,600 –> 00:05:28,720
collision را برمی گردانید، بنابراین
167
00:05:28,720 –> 00:05:31,600
اگر حذف درست است و برخورد y
168
00:05:31,600 –> 00:05:32,560
درست است،
169
00:05:32,560 –> 00:05:36,560
پس باید یک برخورد کامل،
170
00:05:36,560 –> 00:05:38,560
بله، در واقع خیلی جالب است، پس
171
00:05:38,560 –> 00:05:40,560
بله، این برخورد aabb است،
172
00:05:40,560 –> 00:05:43,360
بنابراین من
173
00:05:43,360 –> 00:05:44,960
کمی کد دارم که در اینجا آن را تست میکنم
174
00:05:44,960 –> 00:05:46,479
و کاری که میخواهم انجام دهم این است که ابتدا
175
00:05:46,479 –> 00:05:48,560
برخورد همپوشانی را
176
00:05:48,560 –> 00:05:50,840
برای همه به شما نشان میدهم سه بیایید نگاهی به آن بیندازیم،
177
00:05:50,840 –> 00:05:52,240
178
00:05:52,240 –> 00:05:54,160
بنابراین می توانید اینجا را ببینید که من یک
179
00:05:54,160 –> 00:05:55,440
جادوگر
180
00:05:55,440 –> 00:05:58,639
و یک گابلین دارم.
181
00:05:58,639 –> 00:05:59,120
182
00:05:59,120 –> 00:0