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 via @my_btnplusbot
Dark_Days(Beta_v0.9).exe
🔹 با تشکر از همه عزیزانی که بازی Dark Days را دانلود کردند. این بازی با هدف بالا بردن انگیزۀ بازیکنان و بازی سازان برای ساخت بازی و نمایش آنچه می توان با موتور یونیتی در سبک اول شخص ساخت و به منظور «اجرا و پیاده سازی یک روش پیشنهادی برای ساخت بازی در ایران»، طراحی گردیده است. لطفاً در صورت دانلود و استفاده از بازی حتماً فرم زیر در گوگل را برای ما پر کنید و نظرات، پیشنهادات و مشکلاتی که مشاهده می کنید را به ما گزارش کنید./

💡برای تکمیل فرم نظر سنجی روی لینک زیر کلیک کنید/🔻
https://goo.gl/forms/3FJypG1jlqlg8trT2

@UnityLearning
UnityDownloadAssistant-5.6.4f1.exe
719.2 KB
⭕️ #دانلود ابزار یونیتی برای نصب کلیه آپدیت ها، ماژول ها و برنامه های جانبی مربوط به #یونیتی

مخصوص نسخه 5.6.4

👇راهنمای استفاده👇
Unity Learning
#ادامه #آموزش دستورات #کلاس Physics مطلب قبلی/👇 https://t.me/UnityLearning/466 🔙 قبلا بیان کردیم زمانی که می خواهیم یک لیزر با هر کاربردی به یک محل مستقیم شکلیک شود و دستورات Reycast کلاس Physics بهره می بریم. امروز یکی از این دستورات را با هم بررسی…
⭕️ سایر دستورات مربوط به تیر اندازی

👈 در مطلب قبلی مطالبی در مورد ارسال لیزر با استفاده از #کلاس Physics بیان گردید.
▶️ https://t.me/UnityLearning/471

🔹دستور Raycast از کلاس Physics می تواند آبجکتی که لیزر به آن برخورد می کند را در یک متغیر از نوع RaycastHit قرار می دهد. حال برای بررسی و استفاده از این متغیر چگونه می توان عمل کرد.

🔸با فرض اینکه دستور Physics.Raycast استفاده شده باشد، با if های زیر می توان بخش های مختلف آبجکت را بررسی و به آنها دسترسی داشت.
if (hit.rigidbody)

👈این شرط در صورتی اجرا خواهد شد که آبجکتی که لیزر در آن لحظه به آن برخورد می کند rigidbody داشته باشد. در این صورت مثلا اگر بخواهیم به این آبجکت نیرویی وارد شود، از دستور زیر در بدنه شرط بالا استفاده می شود.
hit.rigidbody.AddForceAtPosition

📍یادآوری: تابع فوق دو پارامتر ورودی دارد اولی بردار جهت و میزان نیرو و دومی محل دقیق وارد شدن نیرو.

🔸به منظور بدست آوردن موقعیت دقیق محل بخورد لیزر با آبجکت از دستور hit.point استفاده می شود. این دستور مانند دستور position از نوع Vector3 بوده و دقیقا موقعیت محل بخورد لیزر با آبجکت را بر می گرداند.

[در تمام دستورات بالا فرض بر این بوده که hit از نوع RaycastHit تعریف شده و تمامی دستورات بالا در شرطی با دستور Physics.Raycast نوشته خواهد شد]

@UnityLearning
📸 #فایل Editor Log در یونیتی

🔹 با استفاده از این فایل به عوامل بسیاری مثل جزئیات حجم نهایی پروژه (مانند تصویر) - مشخصات دستگاه میزبان و... دسترسی داشته باشید.

@UnityLearning
Unity Learning
📸 #فایل Editor Log در یونیتی 🔹 با استفاده از این فایل به عوامل بسیاری مثل جزئیات حجم نهایی پروژه (مانند تصویر) - مشخصات دستگاه میزبان و... دسترسی داشته باشید. @UnityLearning
📸 نحوه دسترسی به Editor Log

🔸 به منظور دسترسی ساده به #فایل Editor Log که یک فایل متنی (txt) می باشد، می توانید از منوی Console استفاده کنید. فایل همیشه نمایش دهندۀ آخرین رویدادهای پروژه است.
Unity Learning
📸 #فایل Editor Log در یونیتی 🔹 با استفاده از این فایل به عوامل بسیاری مثل جزئیات حجم نهایی پروژه (مانند تصویر) - مشخصات دستگاه میزبان و... دسترسی داشته باشید. @UnityLearning
⭕️ راهکار هایی مهم در جهت کاهش حجم پروژه

👈 همانطور که در تصویر مشاهده می کنید، بیشترین حجم یک پروژه Build شده را #تکسچر ها و Mesh ها اشغال می کنند. البته این موضوع کاملاً طبیعی است، هر آنچه در بازی دیده می شود، همین تکسچرها ، Meshها و انیمیشن ها هستند.

💡 برای کاهش حجم این موارد یونیتی قابلیت های بسیار خوبی را ارائه کرده است. قابلیت Mesh Compression برای کاهش Mesh مربوط به آبجکت ها و قابلیت Compression برای کاهش حجم تکسچرها با حفظ کیفیت آنها.

🔸زمانی که یک آبجکت به بازی خود اضافه می کنید و آن را در پنجره Project انتخاب می نمایید، مشخصات آن در Inspector نمایش داده می شود. گزینۀ Mesh Compression برای کاهش حجم Mesh مربوط به آبجکت به کار می رود، بنابراین می توانید آن را روی یکی از گزینه های Low برای فشرده سازی کم Medium متوسط و High برای انجام بیشترین میزان فشرده سازی ممکن انتخاب کنید.

🔹برای کاهش حجم تکسچرها نیز بخش Compression بعد از انتخاب عکس(تکسچر) در پنجره Inspector تعبیه شده است.

📍این عملیات به نظر ساده تاثیر بسیار زیادی در حجم نهایی پروژه شما خواهند داشت.

@UnityLearning
⭕️ نسخه 0.91 از بازی Dark Days با رفع مشکلات گزارش شده آماده ارائه است.

🔹 با گذشت یک هفته از قرارگیری بازی روزهای تاریک به روی کانال به منظور تست توسط کاربران و بازی سازانِ عزیز و گرامی، مشکلات مهمی از بازی گزارش شد. مشکلات مهم رفع شده در این نسخه شامل موارد زیر است/🔻

1- حجم بالای برنامه 2- رفع مشکل برخی Colliderها و خارج شدن بازیکن از محیط بازی 3- برداشتن اسلحه بدون زدن دکمۀ خاص (با نزدیک شدن به اسلحه مانند IGI اسلحه برداشته خواهد شد) 4- عدم خروج با زدن کلید Esc (کلید Escape برای باز کردن منوی Pause بازی استفاده گردید)
5-رفع مشکل بازنشدن مرحله بعد (مرحله بعد طراحی نشده اما به طور آزمایشی هم در نسخه قبل باز نمی شد که این مشکل رفع گردید) 6-کاهش سرعت اولیۀ اجرای بازی نسبت به نسخه قبل

👈 شاید مهم ترین مشکل ِحل شده، کاهش چشم گیر حجم بازی است. از همه دوستانی تا کنون بازی را به علل مختلف (مثل حجم بالا) دانلود نکرده اند درخواست می کنیم، لطفا با دانلود و استفاده از بازی و اعلام نظر ، ما را در جهت پیاده سازی روش، یاری نمایند.

🔹فرم نظر خواهی👇
▶️ https://goo.gl/forms/3FJypG1jlqlg8trT2

@UnityLearning
Dark_Days(Beta_v0.91).exe
217.1 MB
⭕️ نسخه رفع مشکل شدۀ بازی Dark Days

🔸 در این نسخه مشکل اساسی بازی یعنی حجم بالای آن و پایین بودن سرعت بارگزاری به طور چشم گیری رفع شده است.

🔹 آیا اقدام به دانلود بازی کرده اید؟👇
🎦 #فیلم #آموزش امتیازی کردن بازی با استفاده از تعریف کلاس و دستورات دسترسی اسکریپت ها به یک دیگر (GetComponent) به زبان #سی_شارپ

👈 در این فیلم با استفاده از دستور GetComponent در سی شارپ کاری میکنیم در شرایط خاص یعنی نزدیک شدن بازیکن به یک آبجکت دیگر به امتیازش افزوده شود و یک اتفاق در صورتی که امتیاز کل به یک مقدار خاص رسید، بیافتد. مانند همیشه سعی گردید فیلم با بهترین کیفیت ولی کمترین حجم ممکن قرار گیرد. #دانلود فیلم در پست بعدی امکان پذیر است.

@UnityLearning
Score.mkv
125.2 MB
⭕️ #فیلم آموزش امتیازی کردن بازی

🔸شبیه سازی حالتی که اگر بازیکن به یک آبجکت نزدیک شود، به امتیازش افزوده شود (مانند بازی Subway Surfers)

مدت زمان فیلم 15 دقیقه
🖥 با کیفیت FullHD

@UnityLearning
⭕️ امتیاز گیری با تیر اندازی به آبجکت ها

🔸 در آموزش قبلی (فیلم) نحوه امتیاز گیری را در حالت نزدیک شدن به آبجکت (با دستور محاسبه فاصله) بیان کردیم. در #فیلم آموزشی بعدی اقدام به انجام این کار با تیر اندازی (با دستورات Raycast از کلاس Physics) می‌کنیم. در این فیلم، اسکریپت قبلی را بر اساس شبیه سازی تیز اندازی تغییر می دهیم و ضمنا این کار را به جای استفاده از یک اسکریپت تنها با یک اسکریپت انجام می دهیم.

🔫 تیر(لیزر | Raycast) به هر آبجکتی که تگ مورد نظر را دارد، برخورد کند، به امتیاز کل افزوده خواهد شد.

🔹 #دانلود فیلم در پست بعدی/🔻

@UnityLearning
Score_With_Raycast.mkv
68.7 MB
🎦 #فیلم شبیه سازی امتیازگیری با تیر اندازی به سمت یک سری آبجکت خاص

🔹نمایش یک پیغام در هنگام پیروژی (رسیدن امتیاز به مقداری خاص)

مدت زمان فیلم 11 دقیقه با کیفیت FullHD

@UnityLearning
PNGPIX-COM-Crosshair-PNG-Transparent-Image-1.png
51 KB
⭕️ #تکسچر ساده برای استفاده به عنوان هدف بازیکن

⚙️ برای استفاده از این تکسچر آن را در حالت Transparent و به عنوان Source به UI Image بدهید.

@UnityLearning
🌹 میلاد با سعادت پیغمبر گرامی اسلام حضرت محمد مصطفی (ص) و فرزند بزرگوار ایشان حضرت امام جعفر صادق (ع) را به تمام مسلمین جهان تبریک می‌گوییم.

🌷 اللهم صل علی محمد و آل محمد و عجل فرجهم
@UnityLearning
⭕️ #کامپوننت LineRenderer

🔹 به کمک این کامپوننت می توان یک خط در محیط سه بعدی ایجاد کرد. استفاده از این کامپوننت بسیار ساده است. برای موقعیت های رسم خطوط در کامپوننت پارامتر Positions را می توان روی موقعیت سه بعدی مورد نظر که می خواهیم بین آنها خط رسم شود، تنظیم می گردد. ابتدا پارامتر Size آن را روی تعداد وجه هایی که می خواهیم بین آنها خط کشیده شود گذاشته و سپس به تعداد وارد شده برای ما XYZ در اختیار می گذارد که به کمک آنها می توانیم موقعیت های مکانی را مشخص کنیم.

👈اگر می خواهید کامپوننت LineRenderer یک #تکسچر را روی محل ترسیم خود نمایش دهد، آن تکسچر را مانند سایر آبجکت ها به آن بدهید، ضمنا سعی کنید از EmptyGameObject ها برای بهره گیری از این کامپوننت استفاده کنید. [یک گیم آبجکت خالی بسازید و سپس کامپوننت مذکور را به آن بدهید]

💡مسیر اضافه کردن کامپوننت به شرح زیر است./🔻
Add Component > Effects > LineRenderer

@UnityLearning
📸 #کامپوننت LineRenderer می تواند خطوطی را در محیط سه بعدی ایجاد کند. این خطوط مانند یک آبجکت بوده و می توان مانند یک Mesh Renderer با آن رفتار کرد.

@UnityLearning
Unity Learning
PNGPIX-COM-Crosshair-PNG-Transparent-Image-1.png
Aim_Setting.mkv
11.7 MB
🎦 #فیلم «تنظیم تکسچر به عنوان هدف در وسط صفحه» با استفاده از UI Image و به کمک ویژگی Anchor

مدت زمان: یک دقیقه
❇️کیفیت: HD

@UnityLearning
UnitySetup_Android_Support_for_Editor_5.6.4f1.exe
110 MB
⭕️ #دانلود ماژول اندروید مربوط به نسخه 5.6.4 یونیتی

به #درخواست کاربران

@UnityLearning

🔸دانلود ماژول iOS نیز از طریق لینک زیر امکان پذیر است👇
آموزش استفاده از کامپوننت Image.mkv
57.7 MB
🎦 #فیلم آموزش استفاده از کامپوننت Image مربوط به آبجکت UI Image

فعال و غیر فعال کردن کامپوننت و تغییر تکسچر نمایشی UI Image به زبان #سی_شارپ

🖥 با کیفیت FullHD و مدت 9 دقیقه

@UnityLearning