⭕️ #دانلود #آبجکت های وسایل نوشتن قدیمی 📜🖋🕯
👈 مناسب برای قرار دادن روی میز و یا استفاده برای آبجکت دو بعدی 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💢
Random_Position.js
526 B
⭕️اسکریپت قرار دادن آبجکت به صورت تصادفی روی محیط بازی
👈این اسکریپت دو پارامتر کلی به عنوان آرایه دریافت می کند که شامل آبجکت ها و موقعیت آن هاست اما برای سادگی هر دو از نوع Transform هستند.
👈این اسکریپت دو پارامتر کلی به عنوان آرایه دریافت می کند که شامل آبجکت ها و موقعیت آن هاست اما برای سادگی هر دو از نوع Transform هستند.
⭕️ دوستان گرامی و همراهان عزیز، هرگونه حمایت مالی از کانال از طریق لینک زیر قابل انجام است.
https://idpay.ir/unitylearning
🔹لطفا از کانال خود حمایت کنید.
@UnityLearning
https://idpay.ir/unitylearning
🔹لطفا از کانال خود حمایت کنید.
@UnityLearning
⏰ #دانلود #آبجکت کامل ساعت دیواری به همراه اسکریپت حرکت عقربه برای نمایش ساعت جاری
👈 #برای_اولین_بار
🔴کلیه حقوق محفوظ است.
@UnityLearning
👈 #برای_اولین_بار
🔴کلیه حقوق محفوظ است.
@UnityLearning
Clock.7z
82.3 KB
🕰کلیه فایل های #آبجکت ساعت دیواری به صورت پک شده در یک فایل فشرده برای استفاده در یونیتی
➕به همراه راهنمای استفاده
⚪️ آماده برای استفاده (Prefab شده)
@UnityLearning
➕به همراه راهنمای استفاده
⚪️ آماده برای استفاده (Prefab شده)
@UnityLearning
‼️ #نکته مهمی در مورد اسکریپت های آماده به زبان #سی_شارپ که در کانال قرار میگیرد.
⚪️ همانطور که میدانید در یونیتی نام کلاسِ تعریف شده در اسکریپت باید با نام اسکریپت یکی باشد. این موضوع در اسکریپت های آماده #سی_شارپ کاملا ً رعایت میشود.
🔸در هنگام دانلود اسکریپت از یونیتی باید آن را در دانلود ها ذخیره کنید (با گزینه Save to download) و آن را با نام واقعی از پوشه دانلود به محل پروژه خود کپی کنید. اگر اسکریپت را بعد از دانلود بدون Save to download از پوشه Telegram Document کپی کنید، این فایل نام اصلی که ما قرار دادیم را ندارد و مثلا با نام یک عدد و پسوند cs هست، اگر شما این فایل را به پروژه کپی کنید و بخواهید از آن استفاده کنید با خطای زیر مواجه خواهید شد/👇
❌ Script Class not found
▫️بنابراین توصیه میشود همواره اسکریپت ها و فایل هایی که در کانال قرار میدهیم را Save to Download کنید و سپس برای مراجعه و کپی آن به سیستم از پوشه Download استفاده کنید.
#دانلود_صحیح_از_تلگرام
〰〰〰〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
⚪️ همانطور که میدانید در یونیتی نام کلاسِ تعریف شده در اسکریپت باید با نام اسکریپت یکی باشد. این موضوع در اسکریپت های آماده #سی_شارپ کاملا ً رعایت میشود.
🔸در هنگام دانلود اسکریپت از یونیتی باید آن را در دانلود ها ذخیره کنید (با گزینه Save to download) و آن را با نام واقعی از پوشه دانلود به محل پروژه خود کپی کنید. اگر اسکریپت را بعد از دانلود بدون Save to download از پوشه Telegram Document کپی کنید، این فایل نام اصلی که ما قرار دادیم را ندارد و مثلا با نام یک عدد و پسوند cs هست، اگر شما این فایل را به پروژه کپی کنید و بخواهید از آن استفاده کنید با خطای زیر مواجه خواهید شد/👇
❌ Script Class not found
▫️بنابراین توصیه میشود همواره اسکریپت ها و فایل هایی که در کانال قرار میدهیم را Save to Download کنید و سپس برای مراجعه و کپی آن به سیستم از پوشه Download استفاده کنید.
#دانلود_صحیح_از_تلگرام
〰〰〰〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
⭕️ #دانلود #آبجکت جنگنده اف 16
🔹با کیفیت عالی
📍با فرمت های 3ds و obj به همراه تکسچر های جداگانه
🔸دانلود در پست بعدی
@UnityLearning
🔹با کیفیت عالی
📍با فرمت های 3ds و obj به همراه تکسچر های جداگانه
🔸دانلود در پست بعدی
@UnityLearning
Airplane_F16_FIN.7z
610 KB
⭕️ #دانلود #آبجکت جنگنده F16
🔸به همراه تکسچر های جداگانه
(شما باید به تک تک اعضای آبجکت تکسچر مورد نظر را بدهید)
@UnityLearning
🔸به همراه تکسچر های جداگانه
(شما باید به تک تک اعضای آبجکت تکسچر مورد نظر را بدهید)
@UnityLearning
⭕ مقدار دهی پیش فرض برای متغیرها در یونیتی
🔸 اگر بخواهید متغیرهای یک اسکریپت را که به صورت سراســـری برای مقدار دهـــی در یونیتی تعریف شده اند، به صورت پیش فرض یک مقدار هم بدهید، باید به این نحو که در ادامه بیان خــواهد شد، عمل کنید.
🔹 اگر متغیر شما به صورت عددی (یا به طور کلی غیر آبجکتی) است، همانطور که در اسکریپت های قبلی هم دیده اید، مقدار پیش فرض آن را در هنگام تعریف به آن می دهیم. مثلا برای تعریف یک متغیر عددی با مقدار اولیه 4 در یونیتی به این شکل متغیر را تعریف می کنیم/
👇
#جاوا
var i=4;
#سی_شارپ
public int i=4;
▫ این کار باعث می شود، i یک متغیر قابل مقدار دهی در یونیتی باشد، اما هر بار که اسکریپت را استفاده می کنیم، مقدار اولیه 4 در آن قــرار گیرد.
🔸 اما اگر متغیر مورد نظر یک متغیر از نوع آبجکتی (مثلاً Texture2D) بود، باید به این شکــل عمل کرد. (تصویر gif نیز در پست بعدی قرار خواهد گرفت)
🔹 برای این که متغیری از نوع آبجکت مثل (Transform، Texture2D و...) را بخواهیم مقدار دهی اولیه و پیش فرض کنیم، باید در پنجره Project اسکریپت را انتخاب کنیم. با این کار مشخصات اسکریپت به همراه کلیه متغیر های قابل مقدار دهی آن در پنجره Inspector نمایش داده می شود. اگر این متغیرها را در اینجا مقدار دهی کنید، این مقادیر به عنوان مقادیر پیش فرض آن اسکریپت در نظر گرفته خواهند شــد و اگر شما اسکریپت را به آبجکت های مختلف بدهید دیگر نیازی به مقدار دهی پارامتر های ورودی نیست و آن ها به طور #پیش_فرض مقدار دهی شده اند. /همانطور که تاکید شد تصویر این کار نیز در پست بعدی قـــرار خواهد گرفت.
#مقدار_دهی_اولیه_متغیر_ها_در_یونیتی
#اسکریپت_نویسی #کد_نویسی #نکته
〰〰〰〰〰〰〰
⭕ کانال یونیتی لرنینگ⭕
💢 @UnityLearning💢
🔸 اگر بخواهید متغیرهای یک اسکریپت را که به صورت سراســـری برای مقدار دهـــی در یونیتی تعریف شده اند، به صورت پیش فرض یک مقدار هم بدهید، باید به این نحو که در ادامه بیان خــواهد شد، عمل کنید.
🔹 اگر متغیر شما به صورت عددی (یا به طور کلی غیر آبجکتی) است، همانطور که در اسکریپت های قبلی هم دیده اید، مقدار پیش فرض آن را در هنگام تعریف به آن می دهیم. مثلا برای تعریف یک متغیر عددی با مقدار اولیه 4 در یونیتی به این شکل متغیر را تعریف می کنیم/
👇
#جاوا
var i=4;
#سی_شارپ
public int i=4;
▫ این کار باعث می شود، i یک متغیر قابل مقدار دهی در یونیتی باشد، اما هر بار که اسکریپت را استفاده می کنیم، مقدار اولیه 4 در آن قــرار گیرد.
🔸 اما اگر متغیر مورد نظر یک متغیر از نوع آبجکتی (مثلاً Texture2D) بود، باید به این شکــل عمل کرد. (تصویر gif نیز در پست بعدی قرار خواهد گرفت)
🔹 برای این که متغیری از نوع آبجکت مثل (Transform، Texture2D و...) را بخواهیم مقدار دهی اولیه و پیش فرض کنیم، باید در پنجره Project اسکریپت را انتخاب کنیم. با این کار مشخصات اسکریپت به همراه کلیه متغیر های قابل مقدار دهی آن در پنجره Inspector نمایش داده می شود. اگر این متغیرها را در اینجا مقدار دهی کنید، این مقادیر به عنوان مقادیر پیش فرض آن اسکریپت در نظر گرفته خواهند شــد و اگر شما اسکریپت را به آبجکت های مختلف بدهید دیگر نیازی به مقدار دهی پارامتر های ورودی نیست و آن ها به طور #پیش_فرض مقدار دهی شده اند. /همانطور که تاکید شد تصویر این کار نیز در پست بعدی قـــرار خواهد گرفت.
#مقدار_دهی_اولیه_متغیر_ها_در_یونیتی
#اسکریپت_نویسی #کد_نویسی #نکته
〰〰〰〰〰〰〰
⭕ کانال یونیتی لرنینگ⭕
💢 @UnityLearning💢
This media is not supported in your browser
VIEW IN TELEGRAM
⭕ مقدار دهی اولیه متغیرهای آبجکتی در یونیتی
🔹 بعد از انتخاب اسکریپت «در پنجره Project» و نمایش خصوصیات آن به این شکل پارامترهای آن را مقدار دهی کنید.
(اینجا مقدار دهی Texture2D به طور مثال)
🔹 بعد از انتخاب اسکریپت «در پنجره Project» و نمایش خصوصیات آن به این شکل پارامترهای آن را مقدار دهی کنید.
(اینجا مقدار دهی Texture2D به طور مثال)
This media is not supported in your browser
VIEW IN TELEGRAM
⭕ #آموزش ساخت نوار پیمایش برای مقدار دهی یک متغیر عددی در #یونیتی (مانند gif بالا👆 )
👈 آموزش در پست بعدی قرار خواهد گرفت.
@UnityLearning
👈 آموزش در پست بعدی قرار خواهد گرفت.
@UnityLearning
⭕️آموزش ساخت نوار پیمایش برای مقدار دهی ساده به متغیر های عددی (int و float)
👈این کار علاوه بر سادگی باعث می شود، کاربر نتواند مقداری بیش از آنچه شما انتظار دارید به اسکریپت بدهد و باعث بروز مشکلات شود.
🔹برای اینکه برای یک متغیر عددی یک نوار پیمایش بسازیم، به شکل زیر عمل می کنیم(نام متغیر همانی اســت که در gif پست قبل قرار گرفته است/👇 ( #سی_شارپ )
[Range(0, 1000)]
public int enemyCount;
🔸دقت کنید، این دستور هم یک دستور تغییر در ساختار یونیتی یا Unity Editor اســت به همین دلیل در [] نوشته شده و آخر دستور ; (سمی کالن) ندارد. همچنین برای اینکه این نوار پیمایش برای متغیر مورد نظر باشد، باید دقیقا یک خط قبل از تعریف سراســری آن متغیر نوشته شود(دستور Range)
🔸این دستور یک نوار پیمایش از صفر تا 1000 برای مقدار دهی متغیر در یونیتی(دقیقا مطابق gif بالا) درست می کند. محل نوشتن این دستور در هنگام تعریف متغیرهای سراسری-قابل مقدار دهی در یونیتی است. (بعد از تعریف کلاس-قبل از شروع اولین تابع)
🔹برای نوشتن دستورات Unity Editor attribute در #جاوا اسکریپت نیز باید به این شکل عمل کرد که ابتدای دستور علامت @ قرار میگیرد و دستور در [] نخواهد بود، حالت مثال قبل در زبان جاوا به این شکل خواهد بود/👇
@Range(0,1000)
var enemyCount:int;
▫️همانطور که مشاهده میکنید، در جاوا هم نباید آخر دستور range سمی کالن ; گذاشت. در جاوا هم محل نوشتن دستور ابتدای اسکریپت و دقیقا یک خط قبل از متغیری است که میخواهیم برای آن نوار پیمایش درست کنیم.
〰〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
👈این کار علاوه بر سادگی باعث می شود، کاربر نتواند مقداری بیش از آنچه شما انتظار دارید به اسکریپت بدهد و باعث بروز مشکلات شود.
🔹برای اینکه برای یک متغیر عددی یک نوار پیمایش بسازیم، به شکل زیر عمل می کنیم(نام متغیر همانی اســت که در gif پست قبل قرار گرفته است/👇 ( #سی_شارپ )
[Range(0, 1000)]
public int enemyCount;
🔸دقت کنید، این دستور هم یک دستور تغییر در ساختار یونیتی یا Unity Editor اســت به همین دلیل در [] نوشته شده و آخر دستور ; (سمی کالن) ندارد. همچنین برای اینکه این نوار پیمایش برای متغیر مورد نظر باشد، باید دقیقا یک خط قبل از تعریف سراســری آن متغیر نوشته شود(دستور Range)
🔸این دستور یک نوار پیمایش از صفر تا 1000 برای مقدار دهی متغیر در یونیتی(دقیقا مطابق gif بالا) درست می کند. محل نوشتن این دستور در هنگام تعریف متغیرهای سراسری-قابل مقدار دهی در یونیتی است. (بعد از تعریف کلاس-قبل از شروع اولین تابع)
🔹برای نوشتن دستورات Unity Editor attribute در #جاوا اسکریپت نیز باید به این شکل عمل کرد که ابتدای دستور علامت @ قرار میگیرد و دستور در [] نخواهد بود، حالت مثال قبل در زبان جاوا به این شکل خواهد بود/👇
@Range(0,1000)
var enemyCount:int;
▫️همانطور که مشاهده میکنید، در جاوا هم نباید آخر دستور range سمی کالن ; گذاشت. در جاوا هم محل نوشتن دستور ابتدای اسکریپت و دقیقا یک خط قبل از متغیری است که میخواهیم برای آن نوار پیمایش درست کنیم.
〰〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
This media is not supported in your browser
VIEW IN TELEGRAM
ذخیره حالت انتخاب آبجکت ها در #پنجره Hierarchy
برای اینکه نوع انتخابی که انجام میدهید ذخیره شود تا بعدا با یک کلیک بتوانید آن آبجکت(ها) را مجدد انتخاب کنید، از این روش استفاده کنید.
@UnityLearning
برای اینکه نوع انتخابی که انجام میدهید ذخیره شود تا بعدا با یک کلیک بتوانید آن آبجکت(ها) را مجدد انتخاب کنید، از این روش استفاده کنید.
@UnityLearning
This media is not supported in your browser
VIEW IN TELEGRAM
⭕️ با انتخاب پیام هایی که در Console ظاهر میشود(دوبار کلیک) آبجکت تولید کننده آن پیغام(❌خطا، ⚠️هشدار یا 💬پیام) در #پنجره Hierarchy نمایش داده خواهد شد.
@UnityLearning
@UnityLearning
This media is not supported in your browser
VIEW IN TELEGRAM
⭕️ حذف یکی از اعضای آرایه مقدار دهی شده در یونیتی
👈بعد از انتخاب عضو آرایه کلید های Shift + Delete را بزنید تا عضو مورد نظر حذف شود و سایر اعضا به جای آن جایگزین شوند(شیفت داده شوند)
@UnityLearning
👈بعد از انتخاب عضو آرایه کلید های Shift + Delete را بزنید تا عضو مورد نظر حذف شود و سایر اعضا به جای آن جایگزین شوند(شیفت داده شوند)
@UnityLearning
⌨با زدن کلید Shift ➕ F میتوانید دوربین پنجره Scene را روی آبجکت انتخاب شده قفل کنید.
(با جابجایی آبجکت دوربین هم جابجا خواهد شد)
🖱زدن کلید F فقط باعث فوکوس دوربین روی آبجکت میشود.
@UnityLearning
(با جابجایی آبجکت دوربین هم جابجا خواهد شد)
🖱زدن کلید F فقط باعث فوکوس دوربین روی آبجکت میشود.
@UnityLearning
This media is not supported in your browser
VIEW IN TELEGRAM
🎨برای اینکه یک رنگ را کپی کنید و آن را روی پارامتر دیگری قرار دهید مانند تصویر بالا عمل کنید.
Copy Paste Color
@UnityLearning
Copy Paste Color
@UnityLearning
This media is not supported in your browser
VIEW IN TELEGRAM
⭕️ اگر حالت نمایش را در پنجره Scene از حالت Global به Local Mode تغییر دهید محور های حرکتی همیشه در جهت چرخش آبجکت قرار میگیرند(در شکل کاملا مشهود است)
@UnityLearning
@UnityLearning
animation.gif
2.5 KB
⭕️تغییر پنجره Scene از حالت Global به Local
👆با استفاده از دکمه مذکور می توانید این عمل را انجام دهید.
@UnityLearning
👆با استفاده از دکمه مذکور می توانید این عمل را انجام دهید.
@UnityLearning