This media is not supported in your browser
VIEW IN TELEGRAM
⭕️با کلیک چپ همراه با فشردن کلید Alt روی پوشه ها در پنجره Project محتویات آنها را به طور کامل باز کنید(یعنی اگر زیر پوشه هم دارد آن ها هم باز شوند)
در تصویر بالا هر دو حالت مشهود است.
@UnityLearning
در تصویر بالا هر دو حالت مشهود است.
@UnityLearning
This media is not supported in your browser
VIEW IN TELEGRAM
⭕️ ساخت منوهای جدید در #برنامه #یونیتی
🔹اگر بخواهید برای برنامه یونیتی، (مانند تصویر منوی Tools) منو بسازید و برای آن منو ها برنامه نویسی کنید، پست بعدی را مطالعه کنید.
@UnityLearning
🔹اگر بخواهید برای برنامه یونیتی، (مانند تصویر منوی Tools) منو بسازید و برای آن منو ها برنامه نویسی کنید، پست بعدی را مطالعه کنید.
@UnityLearning
⭕️ ساخت منو در برنامه یونیتی
🔹دقت کنید، اکنون میخواهیم برای خود برنامه یونیتی منو بسازیم نه برای بازی (برای بازی قبلا توضیح داده شده است که باید چگونه منو ساخت، با استفاده از کلاس GUI و یا آبجکت های UI)
🔸به طور کلی برای اینکه بتوانیم در محیط یونیتی دست ببریم باید از Unity Editor استفاده کنیم. این کلاس کلیه دستوراتی که مربوط به برنامه یونیتی میشود را ارائه میدهد، مثل تنظیمات، منوها و...
▫️در ابتدایی ترین دستور برای این کلاس تصمیم داریم نحوه ساخت منو در «Unity Editor» را بیان کنیم.
(دستورات این بخش و در کل در ادامه پست ها با آنچه قبلا کار میکردیم، اندکی تفاوت خواهد داشت و آن به دلیل تفاوت در دستورات خاصی مثل ساخت منو است)
▪️برای ساخت منو از دستور MenuItem استفاده میشود باید دقت کرد کل این دستور باید بعد از تعریف کلاس و قبل از تعریف اولین تابع اسکریپت انجام شود و کل دستور نیز باید در [] قرار گیرد.
👈دستورات تنظیماتی که جنبه ظاهری دارند در یونیتی در [] قرار میگیرند که در پست های آینده مثال های بیشتری از آنها میزنیم.
🔹در پارامتر های دستور MenuItem لیست منو های مورد نظر وارد میشود، برای جداکردن منو اصلی از زیر منو از / استفاده میشود. به طور مثال دستور زیر (دقیقا مانند تصویر پست قبل) یک منو اصلی به نام Tools و زیر منوی CurrentTime ایجاد میکند./👇
[MenuItem("Tools/Current Time")]
🔸حال نوبت به برنامه نویسی برای منو میرسد، اگر یک منو مثل حالت قبل ساختید یک تابع آماده در یونیتی به نام زیر منویی که ساختید ایجاد میشود(البته شما باید کد آن را بنویسید ولی یونیتی زمانی که به آن تابع برسد، متوجه می شود که این کد باید در هنگام کلیک روی زیر منو اجرا شود) و شما میتوانید با برنامه نویسی آن را تکمیل کنید.
❗️تاکید می گردد
👈بنابراین هرجا شما تابعی با نام زیر منوی مورد نظر تعریف کردید، یونیتی آن را به عنوان کدهایی در نظر میگیرد که باید در زمان کلیک روی زیر منو اجرا کند./👇
public static void CurrentTime() {
.....
}
🌀 مشاهده میکنید که نام تابع باید دقیقا معادل نام زیر منو باشد مثلا هر دو CurrentTime باشد.
🌐اکنون باید کدهای مربوط به بخش Unity Editor را به کجا داد؟ اگر یادتان باشد برای اینکه کدی در یونیتی اجرا میشد باید آن را به یک آبجکت میدادیم اما Unity Editor که خود یک آبجکت نیست.
⚜در Asset Folder یونیتی پوشه هایی برای اجرای کدهای Unity Editor وجود دارد. زمانی که شما پکیجی اضافه میکنید و میبینید این پکیج به یونیتی منو اضافه میکند در زیر پوشه های این پکیج به دنبال پوشه Editor باشید و خواهید دید کدهای ساخت منو در این پوشه قرار دارد.
◀️ برای راحتی کار، شما (در صورت عدم وجود) یک پوشه به نام Editor در زیر پوشه Asset در پروژه خود بسازید، یعنی مسیر به شکل زیر است/👇
Asset/Editor
و کد را در این پوشه قرار دهید. اگر همه چیز درست باشد مشکلی نخواهد بود و بدون هیچ کار دیگر منوی شما ساخته میشود.
(کد منوی تصویر قبل را که برای نمایش ساعت و تاریخ جاری سیستم به کار میرود را در پست بعد قرار خواهیم داد)
#اسکریپت_نویسی #کد_نویسی #سی_شارپ #برنامه_نویسی #برنامه #یونیتی
〰〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
🔹دقت کنید، اکنون میخواهیم برای خود برنامه یونیتی منو بسازیم نه برای بازی (برای بازی قبلا توضیح داده شده است که باید چگونه منو ساخت، با استفاده از کلاس GUI و یا آبجکت های UI)
🔸به طور کلی برای اینکه بتوانیم در محیط یونیتی دست ببریم باید از Unity Editor استفاده کنیم. این کلاس کلیه دستوراتی که مربوط به برنامه یونیتی میشود را ارائه میدهد، مثل تنظیمات، منوها و...
▫️در ابتدایی ترین دستور برای این کلاس تصمیم داریم نحوه ساخت منو در «Unity Editor» را بیان کنیم.
(دستورات این بخش و در کل در ادامه پست ها با آنچه قبلا کار میکردیم، اندکی تفاوت خواهد داشت و آن به دلیل تفاوت در دستورات خاصی مثل ساخت منو است)
▪️برای ساخت منو از دستور MenuItem استفاده میشود باید دقت کرد کل این دستور باید بعد از تعریف کلاس و قبل از تعریف اولین تابع اسکریپت انجام شود و کل دستور نیز باید در [] قرار گیرد.
👈دستورات تنظیماتی که جنبه ظاهری دارند در یونیتی در [] قرار میگیرند که در پست های آینده مثال های بیشتری از آنها میزنیم.
🔹در پارامتر های دستور MenuItem لیست منو های مورد نظر وارد میشود، برای جداکردن منو اصلی از زیر منو از / استفاده میشود. به طور مثال دستور زیر (دقیقا مانند تصویر پست قبل) یک منو اصلی به نام Tools و زیر منوی CurrentTime ایجاد میکند./👇
[MenuItem("Tools/Current Time")]
🔸حال نوبت به برنامه نویسی برای منو میرسد، اگر یک منو مثل حالت قبل ساختید یک تابع آماده در یونیتی به نام زیر منویی که ساختید ایجاد میشود(البته شما باید کد آن را بنویسید ولی یونیتی زمانی که به آن تابع برسد، متوجه می شود که این کد باید در هنگام کلیک روی زیر منو اجرا شود) و شما میتوانید با برنامه نویسی آن را تکمیل کنید.
❗️تاکید می گردد
👈بنابراین هرجا شما تابعی با نام زیر منوی مورد نظر تعریف کردید، یونیتی آن را به عنوان کدهایی در نظر میگیرد که باید در زمان کلیک روی زیر منو اجرا کند./👇
public static void CurrentTime() {
.....
}
🌀 مشاهده میکنید که نام تابع باید دقیقا معادل نام زیر منو باشد مثلا هر دو CurrentTime باشد.
🌐اکنون باید کدهای مربوط به بخش Unity Editor را به کجا داد؟ اگر یادتان باشد برای اینکه کدی در یونیتی اجرا میشد باید آن را به یک آبجکت میدادیم اما Unity Editor که خود یک آبجکت نیست.
⚜در Asset Folder یونیتی پوشه هایی برای اجرای کدهای Unity Editor وجود دارد. زمانی که شما پکیجی اضافه میکنید و میبینید این پکیج به یونیتی منو اضافه میکند در زیر پوشه های این پکیج به دنبال پوشه Editor باشید و خواهید دید کدهای ساخت منو در این پوشه قرار دارد.
◀️ برای راحتی کار، شما (در صورت عدم وجود) یک پوشه به نام Editor در زیر پوشه Asset در پروژه خود بسازید، یعنی مسیر به شکل زیر است/👇
Asset/Editor
و کد را در این پوشه قرار دهید. اگر همه چیز درست باشد مشکلی نخواهد بود و بدون هیچ کار دیگر منوی شما ساخته میشود.
(کد منوی تصویر قبل را که برای نمایش ساعت و تاریخ جاری سیستم به کار میرود را در پست بعد قرار خواهیم داد)
#اسکریپت_نویسی #کد_نویسی #سی_شارپ #برنامه_نویسی #برنامه #یونیتی
〰〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
MyEditorScript.cs
238 B
⭕️اسکریپت آماده ساخت منوی Tools برای باز گرداندن زمان جاری سیستم (به طور مثال) برای Unity Editor
کد را در پوشه Editor قرار دهید، اگر وجود ندارد آن را بسازید و کد را در آن قرار دهید .
@UnityLearning
کد را در پوشه Editor قرار دهید، اگر وجود ندارد آن را بسازید و کد را در آن قرار دهید .
@UnityLearning
This media is not supported in your browser
VIEW IN TELEGRAM
⭕️ساخت فولدر در یونیتی
ایجاد یک فولدر جدید در پنجره Project و در Asset Folder
برای اجرای کدهای Unity Editor نام پوشه را Editor بگذارید و کد را در آن کپی کنید.
«اسکریپت اجرا خواهد شد»
@UnityLearning
ایجاد یک فولدر جدید در پنجره Project و در Asset Folder
برای اجرای کدهای Unity Editor نام پوشه را Editor بگذارید و کد را در آن کپی کنید.
«اسکریپت اجرا خواهد شد»
@UnityLearning
🌸 مضجع شریف حضرت علی بن موسی الرضا «هم اکنون»
🔹امروز 23 ذی القعده روز خاصه زیارتی آقا امام رضاست.
🌹التماس دعا
@UnityLearning
🔹امروز 23 ذی القعده روز خاصه زیارتی آقا امام رضاست.
🌹التماس دعا
@UnityLearning
This media is not supported in your browser
VIEW IN TELEGRAM
⭕️ برای نمایش کلیه assetهایی که در یک Scene استفاده شده و انتخاب آنها با کلیک راست روی Scene ، گزینه Select Dependencies انتخاب کنید.
@UnityLearning
@UnityLearning
⭕️ مشاهده اطلاعات خلاصه از حجم پروژه
👈به وسیله فایل Unity Editor.log
🔹اگر میخواهید اطلاعات جامعی از اندازه پروژه خود بدست آوردید، میتوانید، با کلیک روی گوشه بالا راست پنجره Console میتوانید به منویی دسترسی داشته باشید که در آن گزینه
Open Editor Log
را انتخاب کنید(پست بعدی را برای این کار میتوانید مشاهده کنید)
🔸اگر پنجره Console را مشاهده نمی کنید از کلید ترکیبی Ctrl + Shift + C یا منوی Window -> Console استفاده کنید.
🔹این پنجره معمولاً با تب از پنجره Project جدا میشود.
#برنامه #یونیتی
〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
👈به وسیله فایل Unity Editor.log
🔹اگر میخواهید اطلاعات جامعی از اندازه پروژه خود بدست آوردید، میتوانید، با کلیک روی گوشه بالا راست پنجره Console میتوانید به منویی دسترسی داشته باشید که در آن گزینه
Open Editor Log
را انتخاب کنید(پست بعدی را برای این کار میتوانید مشاهده کنید)
🔸اگر پنجره Console را مشاهده نمی کنید از کلید ترکیبی Ctrl + Shift + C یا منوی Window -> Console استفاده کنید.
🔹این پنجره معمولاً با تب از پنجره Project جدا میشود.
#برنامه #یونیتی
〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
This media is not supported in your browser
VIEW IN TELEGRAM
⭕️ گزینه Open Editor Log در منویی که با کلیک روی بخش بالا-راست پنجره Console باز میشود برای نمایش اطلاعات حجمی پروژه بازی در یونیتی
@UnityLearning
@UnityLearning
This media is not supported in your browser
VIEW IN TELEGRAM
📍در صورتی که می خواهید پنجره Inspector برای یک آبجکت خاص قفل شود تا با کلیک روی آبجکت های دیگر تنظیمات آنها نمایش داده نشود، از دکمه قفل 🔒 بالا راست این پنجره استفاده کنید.
@UnityLearning
@UnityLearning
Unity Learning
📍در صورتی که می خواهید پنجره Inspector برای یک آبجکت خاص قفل شود تا با کلیک روی آبجکت های دیگر تنظیمات آنها نمایش داده نشود، از دکمه قفل 🔒 بالا راست این پنجره استفاده کنید. @UnityLearning
👈همانطور که میدانید با انتخاب یک آبجکت (چه از پنجره Project و چه از پنجره Hierarchy) پارامتر های تنظیمات آن بلافاصله در پنجره Inspector نمایش داده میشود. برای جلوگیری از این موضوع و اینکه گاهی لازم است با انتخاب آبجکت های دیگر پنجره Inspector تغییر نکند(مثل حالت تصویر قبل، برای تنظیم چند آبجکت یک جا برای یک اسکریپت) برای اینکار باید پنجره را به کمک علامت قفل 🔒 در بالای صفحه قفل کنید و سپس با پایان یافتن از باز کردن 🔓 استفاده کنید.
#نکات_یونیتی #یونیتی #برنامه
〰〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
#نکات_یونیتی #یونیتی #برنامه
〰〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
⭕️ ایجاد تابع با تکرار شدن سر زمان خاص
⏰ همانطور که میدانیم توابعی مثل Update در هر فریم اجرا میشوند، اگر کاربر بخواهد تابعی داشته باشد که در زمان دلخواهش مثلا هر 200 میلی ثانیه تکرار شود، باید چکار کند؟
⌛️ یکی از ساده ترین روش ها استفاده از حلقه دایمی While در تابع Start است. اسکریپت کد آماده این کار را در پست بعدی قرار خواهیم داد. زمان مورد نظرتان را در دستور WaitForSecconds وارد کنید و کد هایی که میخواهید در هر بازه زمانی تکرار شوند را در تابع CustomUpdate بنویسید.
(اسکریپت به زبان سی شارپ است که البته تغییر آن به جاوا بسیار آسان است و تنها لازم است کدهای توابع کپی شود و توابع بر اساس زبان جاوا تعریف شوند)
#اسکریپت_نویسی #کد_نویسی #برنامه_نویسی #سی_شارپ
〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
⏰ همانطور که میدانیم توابعی مثل Update در هر فریم اجرا میشوند، اگر کاربر بخواهد تابعی داشته باشد که در زمان دلخواهش مثلا هر 200 میلی ثانیه تکرار شود، باید چکار کند؟
⌛️ یکی از ساده ترین روش ها استفاده از حلقه دایمی While در تابع Start است. اسکریپت کد آماده این کار را در پست بعدی قرار خواهیم داد. زمان مورد نظرتان را در دستور WaitForSecconds وارد کنید و کد هایی که میخواهید در هر بازه زمانی تکرار شوند را در تابع CustomUpdate بنویسید.
(اسکریپت به زبان سی شارپ است که البته تغییر آن به جاوا بسیار آسان است و تنها لازم است کدهای توابع کپی شود و توابع بر اساس زبان جاوا تعریف شوند)
#اسکریپت_نویسی #کد_نویسی #برنامه_نویسی #سی_شارپ
〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
Forwarded from Mcafee Update
8624xdat.exe
117.4 MB
🌐 #آپدیت_آفلاین_روزانه
🛡آپدیت 8624 به تاریخ 16-8-2017
(26 مرداد 96)
💡با ما همیشه به روز خواهید بود❗️
⚜ @McAfeeUpdate
🛡آپدیت 8624 به تاریخ 16-8-2017
(26 مرداد 96)
💡با ما همیشه به روز خواهید بود❗️
⚜ @McAfeeUpdate
👈 #درخواست
⭕ اسکریپت ساخت افکت معروف TextTypeWriter در یونیتی
🔹 برای ایجاد حالت تایپ در بازی (یعنی هنگام شروع متن طوری نمایش داده شود که انگار یک نفر در حال تایپ است) این افکت به TypeWriter برای نرم افزار های مختلف معروف است. اسکریپت آماده ای برای ایجاد این افکت در پست بعدی قرار خواهیم داد(البته به #درخواست شما) که یک متن به عنوان ورودی دریافت می کند و متن آن را هنگام شروع بازی و در تابع Awake به صورت کاراکتر به کاراکتر رسم می کند تا متن تکمیل گردد. بنابراین این اسکریپت را روی هر #آبجکتی قرار می دهید، باید یک UI Text به عنوان ورودی به آن بدهید تا عمل مورد نظر یعنی تایپ متن انجام شود.
🔹 این اسکریپت با حلقه foreach تک تک کاراکتر های درون UI Text داده شده را مجددا و به ترتیب بــه آن می دهد.
#اسکریپت_نویسی #کد_نویسی #سی_شارپ
〰〰〰〰〰〰〰〰
⭕ کانال #یونیتی لرنینگ⭕
💢 @UnityLearning💢
⭕ اسکریپت ساخت افکت معروف TextTypeWriter در یونیتی
🔹 برای ایجاد حالت تایپ در بازی (یعنی هنگام شروع متن طوری نمایش داده شود که انگار یک نفر در حال تایپ است) این افکت به TypeWriter برای نرم افزار های مختلف معروف است. اسکریپت آماده ای برای ایجاد این افکت در پست بعدی قرار خواهیم داد(البته به #درخواست شما) که یک متن به عنوان ورودی دریافت می کند و متن آن را هنگام شروع بازی و در تابع Awake به صورت کاراکتر به کاراکتر رسم می کند تا متن تکمیل گردد. بنابراین این اسکریپت را روی هر #آبجکتی قرار می دهید، باید یک UI Text به عنوان ورودی به آن بدهید تا عمل مورد نظر یعنی تایپ متن انجام شود.
🔹 این اسکریپت با حلقه foreach تک تک کاراکتر های درون UI Text داده شده را مجددا و به ترتیب بــه آن می دهد.
#اسکریپت_نویسی #کد_نویسی #سی_شارپ
〰〰〰〰〰〰〰〰
⭕ کانال #یونیتی لرنینگ⭕
💢 @UnityLearning💢
UITextTypeWriter.cs
563 B
⭕ اسکریپت آماده به زبان #سی_شارپ برای ساخت افکت Type Writer به صورت شبیه سازی
👈 به ورودی اسکریپت باید یک UI Text بدهید.
@UnityLearning
👈 به ورودی اسکریپت باید یک UI Text بدهید.
@UnityLearning
⭕️ بازی بسیار زیبای Heart of the Emberstone
🔹محصولی از شرکت cloudheadgames
🔸ساخته شده با موتور یونیتی
🔜 به زودی منتشر خواهد شد.
@UnityLearning
🔹محصولی از شرکت cloudheadgames
🔸ساخته شده با موتور یونیتی
🔜 به زودی منتشر خواهد شد.
@UnityLearning
GrassHopper.fbx
626.3 KB
🦐 #دانلود #آبجکت ملخ
🔹به صورت Rig شده و آماده برای استفاده در یونیتی
👌با حجم بسیار مناسب
@UnityLearning
🔹به صورت Rig شده و آماده برای استفاده در یونیتی
👌با حجم بسیار مناسب
@UnityLearning
⭕️ #دانلود #آبجکت های وسایل نوشتن قدیمی 📜🖋🕯
👈 مناسب برای قرار دادن روی میز و یا استفاده برای آبجکت دو بعدی UI رابط کاربری
⬇️ دانلود در پست بعدی
@UnityLearning
👈 مناسب برای قرار دادن روی میز و یا استفاده برای آبجکت دو بعدی UI رابط کاربری
⬇️ دانلود در پست بعدی
@UnityLearning
u9lsoac5cdts_ScrollFiles.zip
3.5 MB
⭕️ #دانلود #آبجکت های وسایل نوشتن قدیمی (قلم و کاغذ) به صورت کامل
📜 به صورت استفاده برای ابزار های رابط کاربری و آبجکت سه بعدی
@UnityLearning
📜 به صورت استفاده برای ابزار های رابط کاربری و آبجکت سه بعدی
@UnityLearning
👈 #درخواست
⭕ اسکریپت قرار دادن آبجکت ها در موقعیت های رندوم
👌 این اسکریپت بسیار عالی طراحی شده و تمام حقوق آن محفوظ است، ضمنا استفاده از ایده داده شده برای اسکریپت نیز ممنوع می باشد.
🔹 برای قرار دادن آبجکت هایی در موقعیت رندوم، ابتدا آن آبجکت ها را در قالب آرایه ای از Transformها دریافت می کنیم. (به علت اینکه درخواست داده شده بود این اسکریپت برای قرار گیری دشمنان در موقعیت ها به صورت رندوم باشد ما اسم این آرایه ها را Enemies گذاشتیم) سپس برای محل قرار گیری آبجکت ها نیز آرایه ای دیگر تعریف می کند و شما باید Empty GameObject هایی را به آنها متصل کنید که می خواهید دشمن ها در آن مکان ها به صورت رندوم یا تصادفی قرار گیرند.
🔸 اسکریپت در تابع Start ضمن بررسی اینکه آیا تعداد هر دو آرایه ها از نظر Size با هم مساوی هست اقدام به غیر فعال کردن همه آن ها (با دستور active) و فعال سازی مجدد آن ها به صورت کاملا رندوم روی محل های تعیین شده(Game Objectهای خالی تعریف شده) می کند. همچنین اسکریپت چک می کند در تولید عدد تصادفی عددی تکراری ایجاد نشود که یک دشمن روی دیگری قرار گیرد.
📕 برای استفاده از اسکریپت، بــعد از دادن اسکریپت به آبجکتی که می خواهید آن را اجرا کند(مثلا یکی از گیم آبجکت های خالی)- ابتدا پارامتر Size هر دو آرایه را روی تعداد آبجکت های دشمن خود قرار دهید. مثلا 4
▫ با این کار شما 4 عدد Transform برای دشمن ها به نام Enemies خواهید داشت که باید تک کاراکترهای دشمن خود را روی آن قرار دهید و همچنین شما به همین تعداد آبجکت به نام Position دارید که باید بعد از اضافه کردن و تنظیم موقعیت Empty GameObject ها آن ها را به این اسکریپت بدهید. دقت کنید آبجکتی را به صورت تکراری ندهید و همچنین همه متغیر ها را مقدار دهی کنید تا اسکریپت خطا ندهد. با شروع بازی همه کاراکتر های دشمن به صورت تصادفی در محل های تعیین شده قرار خواهند گرفت و بازی شروع می شود.
⛔ کلیه حقوق این اسکریپت مانند سایر مطالب برای «یونیتی لرنینگ» محفوظ است.
#اسکریپت_نویسی #کد_نویسی #یونیتی #برنامه #ساخت_عدد_رندوم_بدون_تکرار #قرار_دادن_آبجکت_تصادفی_روی_محیط_بازی
〰〰〰〰〰〰〰
⭕ کانال یونیتی لرنینگ⭕
💢 @UnityLearning💢
⭕ اسکریپت قرار دادن آبجکت ها در موقعیت های رندوم
👌 این اسکریپت بسیار عالی طراحی شده و تمام حقوق آن محفوظ است، ضمنا استفاده از ایده داده شده برای اسکریپت نیز ممنوع می باشد.
🔹 برای قرار دادن آبجکت هایی در موقعیت رندوم، ابتدا آن آبجکت ها را در قالب آرایه ای از Transformها دریافت می کنیم. (به علت اینکه درخواست داده شده بود این اسکریپت برای قرار گیری دشمنان در موقعیت ها به صورت رندوم باشد ما اسم این آرایه ها را Enemies گذاشتیم) سپس برای محل قرار گیری آبجکت ها نیز آرایه ای دیگر تعریف می کند و شما باید Empty GameObject هایی را به آنها متصل کنید که می خواهید دشمن ها در آن مکان ها به صورت رندوم یا تصادفی قرار گیرند.
🔸 اسکریپت در تابع Start ضمن بررسی اینکه آیا تعداد هر دو آرایه ها از نظر Size با هم مساوی هست اقدام به غیر فعال کردن همه آن ها (با دستور active) و فعال سازی مجدد آن ها به صورت کاملا رندوم روی محل های تعیین شده(Game Objectهای خالی تعریف شده) می کند. همچنین اسکریپت چک می کند در تولید عدد تصادفی عددی تکراری ایجاد نشود که یک دشمن روی دیگری قرار گیرد.
📕 برای استفاده از اسکریپت، بــعد از دادن اسکریپت به آبجکتی که می خواهید آن را اجرا کند(مثلا یکی از گیم آبجکت های خالی)- ابتدا پارامتر Size هر دو آرایه را روی تعداد آبجکت های دشمن خود قرار دهید. مثلا 4
▫ با این کار شما 4 عدد Transform برای دشمن ها به نام Enemies خواهید داشت که باید تک کاراکترهای دشمن خود را روی آن قرار دهید و همچنین شما به همین تعداد آبجکت به نام Position دارید که باید بعد از اضافه کردن و تنظیم موقعیت Empty GameObject ها آن ها را به این اسکریپت بدهید. دقت کنید آبجکتی را به صورت تکراری ندهید و همچنین همه متغیر ها را مقدار دهی کنید تا اسکریپت خطا ندهد. با شروع بازی همه کاراکتر های دشمن به صورت تصادفی در محل های تعیین شده قرار خواهند گرفت و بازی شروع می شود.
⛔ کلیه حقوق این اسکریپت مانند سایر مطالب برای «یونیتی لرنینگ» محفوظ است.
#اسکریپت_نویسی #کد_نویسی #یونیتی #برنامه #ساخت_عدد_رندوم_بدون_تکرار #قرار_دادن_آبجکت_تصادفی_روی_محیط_بازی
〰〰〰〰〰〰〰
⭕ کانال یونیتی لرنینگ⭕
💢 @UnityLearning💢