Unity Learning
2.99K subscribers
574 photos
211 videos
1.05K files
280 links
⭕️کانال آموزش حرفـــه ای موتور بازی سازی یـــونیتی

▪️ @UnityLearning ▫️

🔹ارتباط با مدیر کانال/👇

@UnityLearning_Admin

🔹 کد شامد /👇

1-1-3526-61-3-1

💰 تعرفه تبلیغات/👇

@UnityLearning_Ads

لینک گروه تبادل نظر اعضای کانال
@UnityLearning_Group
Download Telegram
Unity Learning
آموزش جامع کار با فایل _بخش سوم.wmv
👈 #توضیحات فیلم

🔹 در این فیلم آموزشی اقدام به استفاده از دستورات #کلاس WWW برای دانلود از اینترنت می شود. سپس محتویات آن(url) در یک فایل txt ذخیره می شود. (به کمک دستورات #کلاس File) به علت استفاده از پارامتر text آدرس Url داده شده باید مربوط به یک متن باشد. سایر آموزش های دانلود و دسترسی به #اینترنت به صورت فیلم آموزشی به زودی در کانال یونیتی لرنینگ قرار خواهد گرفت.

@UnityLearning
📸 اسکریپت آمادۀ ساخت چهار Box در گوشه های صفحه به منظور نمایش متن یا هر کنترل دیگر مانند تصویر

🔹 اسکریپت به هر دو زبان #جاوا اسکریپت و #سی_شارپ در پست بعدی قابل دانلود خواهد بود.

@UnityLearning
⭕️ استفاده از تابع GUIContent برای تغییر محتویات نمایشی کنترل های GUI

🎨با استفاده از تابع GUIContent می توان به حالت های بیشتری برای تعیین محتویات درون کنترل های GUI دسترسی داشت. فرض کنید بخواهیم برای یک Button که توسط کلاس GUI ساخته شده است، علاوه بر نام، آیکن نمایشی نیز قرار دهیم. یا اینکه بخواهیم درون یک Label علاوه بر متن، یک تصویر هم نمایش داده شود، در اینجا دیگر نمی توان بدون استفاده از تابع GUIContent محتویات مذکور را ایجاد کرد. (چون دستورات حالتی برای ایجاد آیکن و نام در کنار هم ندارند)

🎯 برای استفاده از تابع GUIContent آن را به عنوان پارامتر ورودی به دستورات کلاس GUI می دهیم. پارامتر اول که همیشه محل و اندازه نمایش دستورات است، اما پارامتر دوم GUIContent می باشد که ما در آموزش های قبلی از متن های String به جای آن استفاده می کردیم. دستور زیر یک دکمه شامل آیکن نمایشی و متن را روی صفحه می سازد.

GUI.Button (new Rect (10,10,100,20), new GUIContent("Click me", icon);

👈 در دستور بالا icon از نوع Texture2D می باشد. حالت های مختلفی که تابع GUIContent دارد به همراه تصویر در پست های بعدی قرار خواهد گرفت.

@UnityLearning
📸 #یادآوری : به ترتیب از بالا ، در #کلاس GUI

🔹 یک Label ، یک Box و یک Button رسم شده است.

🔸برای تغییر رنگ پیش فرض می توان از دستور GUI.color استفاده کرد.

@UnityLearning
Unity Learning
📸 #یادآوری : به ترتیب از بالا ، در #کلاس GUI 🔹 یک Label ، یک Box و یک Button رسم شده است. 🔸برای تغییر رنگ پیش فرض می توان از دستور GUI.color استفاده کرد. @UnityLearning
⭕️ #یادآوری کلی از دستورات کلاس GUI

🔹 همانطور که در تصویر مشاهده می شود، یک Label در #یونیتی تنها برای نمایش یک متن یا تصویر استفاده می شود و هیچ پس زمینه ای ندارد (کادر نمایشی)

GUI.Label(new Rect(10, 10, 100, 20), "Hello World!");

🔸 یک Box مانند یک Label است اما برای خود یک کادر نمایشی دارد و متن یا تصویر را دروین این کارد نمایش می دهد. مختصات نمایش این کادر دقیقاً معادل آنچه در Rect بیان شده است می باشد(شامل اندازه و محل رسم)

GUI.Box(new Rect(10, 50, 50, 50), "A BOX");

🎯 یک Button مانند یک Box می باشد اما قابلیت کلیک شدن دارد (یعنی وقتی کاربر روی آن کلیک کند می تواند آن را بررسی نماید )

GUI.Button(new Rect(10, 110, 70, 30), "A button");

🎨 برای تغییر رنگ پیش فرض متن نمایشی کلیه کنترل های کلاس GUI از خاصیت color استفاده می شود. به طور مثال دستور زیر رنگ را به زرد (مانند آنچه در تصویر مشاهده می شود) تغییر می دهد.

GUI.color = Color.yellow;

👈 دستور فوق باید اولین دستور از دستورات در تابع OnGUI باشد تا روی سایر دستورات اعمال شود، در غیر این صورت تغییر رنگ مشاهده نمی شود.

@UnityLearning
📸 با استفاده از دستور backgroundColor از #کلاس GUI می توان رنگ پس زمینۀ کنترل ها را تغییر داد. رنگ پس زمینه روی متن ها اعمال نمی شود.

🎨 #مثال
GUI.backgroundColor = Color.yellow;

@UnityLearning
📸 ساخت کنترل مانند Radio Button در #یونیتی

🎯 این کنترل ها قابلیت انتخاب شدن و تیک خوردن را دارند و برای انجام تنظیمات در بازی مناسب هستند.

@UnityLearning
Unity Learning
📸 ساخت کنترل مانند Radio Button در #یونیتی 🎯 این کنترل ها قابلیت انتخاب شدن و تیک خوردن را دارند و برای انجام تنظیمات در بازی مناسب هستند. @UnityLearning
⭕️ استفاده از دستور Toggle برای ایجاد کنترل های فعال ساز و غیر فعال ساز (مانند Radio Button یا Checkbox) در سایر زبان های برنامه نویسی

🎯 با استفاده از دستور Toggle از #کلاس GUI می توان کنترلی مانند آنچه در تصویر قبل مشاهده می گردد در تابع OnGUI ایجاد کرد. خروجی این دستور مانند دستور Button می باشد و در صورتی که تیک آن زده باشد (توسط کاربر) مقدار True و در غیر این صورت مقدار False را بر می گرداند. نحوۀ استفاده از دستور مانند دستور Button می باشد. (پارامتر اول از نوع Rect برای اندازه و محل نمایش کنترل و سایر پارامترها برای محتویات نمایشی درون کنترل استفاده می شوند)

extended1 = GUI.Toggle(new Rect(20, 20, 130, 20), extended1, "Extended Option 1");

🔹 با فرض اینکه در دستور بالا متغیر extended1 یک پارامتر از نوع bool باشد، دستور بالا یک Toggle در موقعیت داده شده می سازد و اگر کاربر آن را تیک بزند مقدار extended1 برابر true خواهد شد.(که می توان آن را در دستورات بعد بررسی نمود و بر اساس آن تصمیم گیری کرد)

@UnityLearning
Unity Learning
📸 ساخت کنترل مانند Radio Button در #یونیتی 🎯 این کنترل ها قابلیت انتخاب شدن و تیک خوردن را دارند و برای انجام تنظیمات در بازی مناسب هستند. @UnityLearning
⭕️ فعال/غیر فعال کردن کنترل های GUI

🔹 در #یونیتی این امکان وجود دارد که برنامه نویس بتواند کنترل های تعاملی GUI (مثل Button یا Toggle) را غیر فعال کند. (مانند آنچه در تصویر مشاهده می شود-حالت فعال/غیر فعال بودن Toggleها)

👈 برای این منظور می توان از دستور enabled از #کلاس GUI استفاده کرد. این دستور مانند Color می باشد و تنها روی کنترل هایی اعمال خواهد شد که بعد از آن ساخته می شوند. (کنترل هایی که قبل از دستور نوشته شده باشند طبق آخرین مقدار enabled فعال یا غیر فعال خواهند بود)


GUI.enabled = true;
GUI.enabled = false;

🎯 یک کنترل غیر فعال، رنگی تیره (معمولا خاکستری تر) دارد و نمایش داده می شود اما قابلیت انتخاب (کلیک شدن) ندارد و کاربر نمی تواند هیچ گونه تغییری روی آنها را بدهد. آنچه در تصویر فوق نمایش داده شده است، فعال/غیر فعال شدن آبجکت های Toggle بر اساس انتخاب / عدم انتخاب Toggle اول است. در صورتی که کاربر Toggle اول را فعال کند، دو Toggle دیگر هم فعال خواهند شد و بر عکس. اسکریپت کامل آنچه در تصویر مشاهده می شود در پست بعدی قرار خواهد گرفت.

@UnityLearning
npp.7.5.4.Installer.x64.exe
4.3 MB
🔹 #دانلود نرم افزار Notepad ++ به منظور ویرایش اسکریپت ها (ورژن 7.5.4 )

🔸 نسخه 64 بیتی ویندوز

@UnityLearning
npp.7.5.4.Installer.exe
4 MB
🔹 #دانلود نرم افزار Notepad ++ به منظور ویرایش اسکریپت ها (ورژن 7.5.4 )

🔸 نسخه 32 بیتی ویندوز

@UnityLearning
📸 کنترل RepeatButton از #کلاس GUI

🔹 این کنترل از نظر ظاهری شبیه به Button است اما تفاوت آن اجرای دایمی آن در هنگام کلیک روی آن است.

@UnityLearning
Unity Learning
📸 کنترل RepeatButton از #کلاس GUI 🔹 این کنترل از نظر ظاهری شبیه به Button است اما تفاوت آن اجرای دایمی آن در هنگام کلیک روی آن است. @UnityLearning
⭕️ کنترل RepeatButton در #یونیتی

🎯 کدهای نوشته شده برای کنترل Button تنها یک بار در لحظه کلیک شدن اجرا خواهند شد و اگر کاربر بخواهد آن عمل مجدد اجرا شود، باید پشت سر هم روی آن کلیک کند اما به کمک RepeatButton این مشکل رفع می شود.

🔹 کدهای نوشته شده در شرط مربوط RepeatButton
به صورت دایمی تا وقتی که کاربر روی RepeatButton کلیک کرده است، اجرا می شود. مثال بسیار کاربردی برای این نوع Button در بازیهای موبایلی پدال های حرکت خود رو می باشد که وقتی کاربر آنها را فشار می دهد کدهای مربوط (جهت حرکت یا توقف خودرو) باید دائماً اجرا شود. برای ساخت چنین حالتی به راحتی می توان از RepeatButton ها استفاده کرد. حالت کلی دستور دقیقاً مثل Button می باشد و تفاوت آن این است که کد ها در یکی تنها یک بار اجرا خواهند شد (یعنی خروجی دستور Button تنها یک بار در هنگام کلیک شدن true خواهد بود، اما خروجی RepeatButton همیشه تا زمانی که کاربر کلیک را رها نکرده true می باشد)

if (GUI.RepeatButton (new Rect (25, 25, 100, 30), "RepeatButton")) {

@UnityLearning
MainUnityWindows.pdf
486.5 KB
⭕️ آشنایی با پنجره های اصلی یونیتی

🗂به صورت کامل همراه با توضیحات و تصاویر در یک فایل PDF

[سطح #آموزش : #ساده]

@UnityLearning
🔴 #خبر فوری

🔸 [انا لله و انا الیه راجعون]

⚫️ متأسفانه اخبار، حاکی از این است که هواپیمای مسافر بری تهران یاسوج در محدوده سمیرم اصفهان، سقوط کرده است. این هواپیما حاوی 66 مسافر بوده است که از سرنوشت هیچ کدام خبری در دست نیست.

#ایران_تسلیت

@UnityLearning
Mohammad Esfehani - 07 - Maro Ey Doost
Mohammad Esfehani/(www.PlayMusic.Pro)
🎶 آهنگ «مرو ای دوست» از محمد اصفهانی

⚫️ فوت تعدادی از هموطنان عزیزمان در حادثه سقوط هواپیمای مسافربری را #تسلیت می گوییم.

#ایران_تسلیت

@UnityLearning
⭕️ اضافه کردن Tooltip به Buttonهای کلاس GUI

🎯 به منوهای باز شده در هنگام قرار گیری ماوس روی یک کنترل (در پایین اشاره گر ماوس) Tooltip گفته می شود. در صورتی که بخواهیم چنین منوی برای یک Button در #یونیتی باز شود، می توان از دستورات تابع GUIContent برای نمایش یک Tooltip استفاده کرد. این منوی کوچک تنها یک متن نمایشی است که در هنگام قرار گرفتن ماوس روی Button در محل مورد نظر نمایش داده می شود و کاربرد دیگر ندارد. این متن توسط دستور Label از #کلاس GUI نمایش داده می شود و عمل ارتباط بین Button و Label نیز توسط دستورات GUIContent صورت می پذیرد.


GUI.Button (new Rect (10,10,100,20), new GUIContent ("Click me", "This is the tooltip"));

GUI.Label (new Rect (10,40,100,20), GUI.tooltip);

👈 دستورات بالا باعث ایجاد یک Button با متن نمایشی Click me خواهد شد و در صورتی که ماوس روی آن برود نیز متن نمایش داده شده در Label زیرین This is ... خواهد بود.

@UnityLearning
⭕️ باز کردن #فایل به کمک #کلاس WWW در یونیتی

[سطح آموزش: #متوسط]

🔹 تا کنون برای دسترسی به فایل ها در یونیتی از کلاس File که مربوط به کتابخانه System.IO بود استفاده می کردیم. همچنین بیان کرده بودیم برای دسترسی به #اینترنت و شبکه در یونیتی می توان از کلاس WWW استفاده کرد. اکنون کاربرد دیگری از این کلاس را برای دسترسی به فایل ها بررسی می کنیم.

🔸 کلاس WWW می تواند به پروتکل های http https file ftp و... دسترسی داشته باشد، بنابراین کافی است برای دسترسی به فایل ها از file استفاده نماییم.

w = new WWW ("file://fileurlpath");

👈 دستور بالا فایل داده شده (در مسیر fileurlpath) را بازکرده و محتویاتش را در w که متغیری از جنس کلاس WWW می باشد، قرار می دهد. به راحتی با دستورات کلاس (که در پست های قبلی مفصل بررسی کردیم) می توان به محتویات w دسترسی داشت. مثلا برای دسترسی به #تکسچر (فایل تصویری) قرار گرفته در w می توان از دستور زیر استفاده کرد.

w.texture;

@UnityLearning