ساخت بازی دو بعدی پونگ – توپ دنباله دار

ساخت بازی پینگ پونگ دو بعدی با یونیتی

ساخت بازی دو بعدی پونگ – دنباله دار کردن توپ

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

دنباله دار کردن توپ در یونیتی

خب فکر میکنم متوجه شدین منظورمون از دنباله دار کردن توپ چیه. بنابراین میریم سراغ ساختش .

Trail Renderer چیست ؟

یکی دیگه از امکاناتی که یونیتی در اختیارمون قرار میده تریل رندرر هست . trail renderer یک دنباله چند ضلعی ( مسیرهایی) رو پشت سر شی درست میکنه . که از این قابلیت جاهایی مثل ایجاد حس تاکید روی حرکت جسم ، مشخص کردن مسیر یا موقعیت یک شی استفاده میشه.
یک مثال واقعی که همیشه میبینین میتونه حرکت هواپیما تو اسمون باشه که دنباله سفیدی رو پشت سر خودش ایجاد میکنه.
تو بازی هم جاهایی مثل دود ، اتیش گلوله ها وقتی ازتفنگ خارج میشن و .. کاربرد داره.

بهتره trail renderer تنها رندرر برای شی باشه . بنابراین با ساخت یک شی خالی به عنوان فرزند برای توپ اینکار رو انجام میدیم.

(حتی میتونیم با ساخت چندین فرزند برای شی و تریل دادن به هرکدوم چند دنباله برای شی بسازیم . تو این لینک یک * نمونه * میتونین ببینین. )

توپ رو انتخاب کنین و از گزینه : GameObject / Create Empty Child یک فرزند برای توپ بسازید .اسم دلخواهی بهش بدین . ( ما اسمشو trail میذاریم) . بنابراین چیزی که الان تو پنل سلسله مراتبمون داریم این شکلیه :

ساخت فرزند برای شی در یونیتی

با انتخاب فرزند ، در اینسپکتورAdd Component / Trial Renderer اضافه میکنیم. بنابراین داریم :

تریل افکت چیست؟

با اجرای بازی همراه توپ خط ببنفش زشتیو میبینین . پس اولین کاراضافه کردن متریال به این دنباله هستش.

متریال در تریل رندرر (Materials)

از گزینه Materials ، Element 0 رو انتخاب کنین . همچین صفحه ای رو میبینید :

متریال تریل افکت

دو تا از رایجترین متریال ها ، Sprites Default Material و Default Particleهست.

با انتخاب اولی میبینین که قیافه تیز و خشکی داره که برای بازی های کارتونی جالبتره و دومی یکم نرم تره و جاهایی مثل دود و بخار خوبه . خب ما اولی رو انتخاب میکنیم .

زمان ماندگاری روی صفحه (Time )

دومین تنظیماتی که میشه انجام داد زمانه. نشون میده دنباله شما چه مدت ( چند ثانیه ) رو صفحه بمونه. بنابراین هرچی این زمان کمتر باشه بخش هایی که زودتر ساخته شدن سریعتر محو میشن. ما 3 ثانیه رو انتخاب میکنیم .

حداقل فاصله تا راس (Min Vertix Distance )

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

مخرب اتوماتیک (AutoDestruct)

در صورتی که این گزینه فعال باشه بعد از زمانی که توسط time تعیین کردین شی از بین میره و از صفحه ناپدید میشه.  پس تو این بازی باید غیر فعال باشه.

عرض دنباله ( Width )

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

(برای ایجاد شکستگی تو نمودار کافیه تو محل مورد نظرتون دوبار کلیک کنید تا یک کلید (key) بسازه.)

نمودار اندازه دنباله تریل افکت در یونیتی

رنگ ( Color )

رنگ دنباله در طول حرکت توسط این گزینه انتخاب میشه. میتونین رنگ های gradient بهش بدین. ( یعنی یک طیف رنگی برای ابتدا تا انتهاش )

رنگ های گرادیانت در تریل افکت یونیتی

قسمت 1 وضوح نباله در هر لحظه رو مشخص میکنه و میتونین با دوبار کلیک کردن رو یک قسمت وضوح مثلا وسط رو زیاد یا کم کنین.

قسمت 2 هم طیف رنگ هارو میشخص میکنه و بازم میتونین با دوبار کلیک کردن رو یک قسمت خاص رنگشو از گزینه color پایین زیاد یا کم کنین.

اگر هم دوست ندارین رنگ ها بصورت طیفی عوض بشن یا یک رنگ خاص باشه فقط میتونین از گزینه mode ، Fixed رو انتخاب کنید.

راس های گوشه (Corner Vertices)

این گزینه مشخص میکنه چند راس برای گوشه ها بکار برن. با افزایش این عدد میتونین گوشه های گردی داشته باشین. حداکثر مقداری که میشه بهش داد 90 هست.

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

خلاصه

تو این اموزش با تریل رندرر اشنا شدیم . فهمیدیم چجوری باید ازش استفاده کنیم و همینطور به توپمون در بازی پونگ دنباله دادیم. تو مقاله بعدی قصد داریم با رابط کاربری  (UI) در محیط یونیتی اشنا بشیم و باهاش کار کنیم. پس با ما همراه باشین .