Unity Learning
2.82K subscribers
602 photos
232 videos
1.06K files
294 links
⭕️کانال آموزش حرفـــه ای موتور بازی سازی یـــونیتی

▪️ @UnityLearning ▫️

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

@UnityLearning_Admin

🔹 کد شامد /👇

1-1-3526-61-3-1

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

@UnityLearning_Ads

✅ لینک گروه تبادل نظر اعضای کانال
@UnityLearning_Group
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
🔖 یک عمر در اشتیاق شهادت

🎞 با رفتن خود داغ سنگینی بر قلوب همگان وارد کردید. شما همیشه مشتاق این عاقبت بودید تا بالاخره حضرت حق آن را در حال تلاوت قرآن کریم در صبحگاه روز دهم رمضان المبارک به شما اعطا فرمودند.

📝 بخشی از اولین پیام رهبر انقلاب اسلامی |
۲۱/اسفند/۱۴۰۴

@UnityLearning
❤61👎42👍1
🎦 مجموعه ای از کلیپ های جلسات مختلف یک ترم درس بازی سازی

🔹 از طریق این پست می توانید به مجموعه ای از کلیپ های آموزشی درس بازی سازی که در ترم اخیر (بهمن 1404-1405) ضبط و منتشر شده است، دسترسی داشته باشید. مبحث این کلیپ ها تقریباً شروعی بر مبحث بازی سازی با کمک یونیتی می باشد که برای کسانی که می خواهند با این موتور بازی سازی آشنا شوند و بازی های ابتدایی ساده ای بسازند، مفید خواهد بود.


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

🎞 برخی از جلسات دو کلیپ داشته است و برخی به صورت تک کلیپ می باشد، کلیپ های هر جلسه در یک سطر قرار گرفته است که دسترسی مشخص باشد. نکته دیگر اینکه، برخی از کلیپ ها در سایت آپارات و برخی در سایت نماشا آپلود شده اند.

@UnityLearning
❤15👍2
⭕️ رشته «طراحی و تولید بازی‌های رایانه‌ای» در مقطع کارشناسی، پس از حدود ۱۰ سال پیگیری و تلاش دانشگاه اصفهان، به تصویب رسید.

🔹 به گزارش روابط عمومی بنیاد ملی بازی‌های ویدیویی،آیین رونمایی از رشته کارشناسی «طراحی و تولید بازی‌های رایانه‌ای» روز ۲۴ تیرماه ۱۴۰۵ با حضور معاون آموزشی وزارت علوم، تحقیقات و فناوری، جمعی از مسئولان کشوری و استانی و فعالان حوزه آموزش عالی در دانشگاه اصفهان برگزار خواهد شد.


🎮 این رشته که پس از حدود ۱۰ سال پیگیری و تلاش دانشگاه اصفهان به تصویب رسیده است، از سال تحصیلی ۱۴۰۵-۱۴۰۶ پذیرش دانشجو خواهد داشت.

📚 تصویب این رشته در راستای اجرای برنامه ملی بازی‌های رایانه‌ای و با هدف تربیت نیروی انسانی متخصص برای صنعت بازی‌سازی کشور انجام شده و می‌تواند زمینه‌ساز توسعه آموزش‌های تخصصی و تحول در این صنعت باشد.

🗓 بر اساس برنامه اعلام‌شده، در این مراسم دبیر شورای عالی انقلاب فرهنگی، دبیر شورای تحول و ارتقای علوم انسانی، استاندار اصفهان و جمعی دیگر از مسئولان نیز حضور خواهند داشت.

🎮 منبع خبر (سایت بنیاد ملی بازی‌های رایانه‌ای)

@UnityLearning
❤35👍4👎1
زیارت اربعین درشت خط.pdf
6 MB
🔹 متن زیارت اربعین امام حسین علیه السلام (هر دو زیارت وارد شده)

🏴 اربعین شهادت امام حسین علیه السلام را تسلیت می‌گوییم.

@UnityLearning
❤51👎19
Channel photo updated
Media is too big
VIEW IN TELEGRAM
🎦 #کلیپ #آموزش مفهوم Scriptable Object در یونیتی

🔍 مفهوم ScriptableObject (که به اختصار SO هم گفته می‌شود) یکی از مهم‌ترین و کاربردی‌ترین قابلیت‌های موتور بازی‌سازی یونیتی است.
به‌زبان ساده، یک اسکریپت خاص است که فقط برای نگهداری داده‌ها ساخته شده و برخلاف آبجکت‌های معمولی، نیازی به قرار گرفتن روی بازی‌ها (GameObject) در صحنه (Scene) ندارد.

🧩 برخی از ویژگی های آن که شامل مدیریت و بهینه سازی تعریف پارامترهای ورودی اسکریپت در یونیتی است، به همراه یک مثال ساده در این کلیپ ذکر شده است.

🔵 دانلود کلیپ از آپارات 🔵

@UnityLearning
❤14
Unity Learning
🎦 #کلیپ #آموزش مفهوم Scriptable Object در یونیتی 🔍 مفهوم ScriptableObject (که به اختصار SO هم گفته می‌شود) یکی از مهم‌ترین و کاربردی‌ترین قابلیت‌های موتور بازی‌سازی یونیتی است. به‌زبان ساده، یک اسکریپت خاص است که فقط برای نگهداری داده‌ها ساخته شده و برخلاف…
⭕️ مزایای استفاده از ScriptableObject

1️⃣ مدیریت بهینه حافظه (Flyweight Pattern)

به جای اینکه هر دشمن در بازی، یک کپی از داده‌های آماری خود (مثل جان و قدرت) داشته باشد، همه آن‌ها به یک فایل داده مشترک ارجاع می‌دهند. این یعنی تنها یک نسخه از داده در حافظه ذخیره می‌شود و مصرف حافظه به شدت کاهش می‌یابد .

2️⃣ جداسازی داده از منطق (Data-Driven Design)

طراحان بازی و برنامه‌نویسان می‌توانند همزمان و بدون تداخل کار کنند. برنامه‌نویس منطق (Logic) را می‌نویسد و طراح مستقیماً در پنجره Inspector داده‌ها را تغییر می‌دهد، بدون اینکه نیازی به دستکاری کد یا صحنه‌های سنگین داشته باشد .

3️⃣ ذخیره‌سازی و پایداری داده‌ها

تغییراتی که روی یک ScriptableObject در حالت Play Mode اعمال می‌کنید، پس از خروج از این حالت نیز ذخیره می‌شوند و از بین نمی‌روند. این ویژگی برای تنظیم دقیق (Tuning) و بالانس بازی فوق‌العاده کاربردی است.

⭕️ کاربردهای رایج

🔹 مخزن داده (Data Container): ذخیره اطلاعات کاراکترها، آیتم‌ها، سلاح‌ها و تنظیمات سطح .

🔹 متغیرهای سراسری (Global Variables): جایگزینی برای متغیرهای Static و Singleton برای مدیریت داده‌هایی مثل تعداد سکه‌ها یا وضعیت بازی در صحنه‌های مختلف .

🔹 سیستم رویداد (Event Channel): ایجاد یک سیستم پیام‌رسانی کاملاً غیرمتمرکز جهت مقدار دهی در بخش های مختلف

@UnityLearning
❤10
🧩 اسکریپت آماده بازی Minesweeper ویندوز XP برای یونیتی

🔹 اسکریپت بسیار ساده برای طراحی بازی Minesweeper را می توانید از پست بعدی دانلود کنید.

🛡 مین‌یاب (Minesweeper) یک بازی ویدیویی در سبک پازل منطقی است، این بازی دارای شبکه‌ای از کاشی‌های قابل کلیک است که "مین‌های" پنهان (که در بازی اصلی به عنوان مین‌های دریایی نشان داده شده‌اند) در سراسر صفحه پراکنده شده‌اند.

💣 توضیحات بیشتر مرتبط با اسکریپت نیز در پست بعدی قرار خواهد گرفت.

@UnityLearning
❤10
MinesweeperXP.zip
59.4 KB
📜 اسکریپت آمادۀ بازی Minesweeper برای استفاده در یونیتی

🧩 برای استفاده از این اسکریپت کافی است آن را به یکی از آبجکت های فعال در محیط بازی متصل کنید سپس متغیرهای اسکریپت را مقدار دهی شود.

🔹 تمام بخش های طراحی روی یک UI Image انجام می شود، بنابراین آبجکت اصلی این محیط UI Image است که می توانید از منوی Game Object - UI به محیط بازی اضافه و اندازۀ آن را تنظیم کنید.

☑️ پارامتر Grid Image به این متغیر اشاره خواهد کرد، پارامتر Grid Size تعداد سلول ها در سطر و ستون و پارامتر Mine Count تعداد مین در کل محیط بازی است.

🔸 تصاویر نمایشی بازی از طریق بخش Sprite برای اسکریپت مشخص می شود، پارامتر Miine Sprite برای تصویر مین و آرایه NumberSprite برای اعداد استفاده می شود. همچنین اسپرایت های دیگری برای Flag و ... همچنین تنظیم رنگ ها 🎨 نیز برای اسکریپت موجود است که می توانید در پنجرۀ Inspector برای اسکریپت تنظیم کنید.

📷 چند فایل Sprite مانند آنچه در تصویر پست قبل بود، نیز در این فایل zip جهت تست قرار گرفته است. شامل تصویر مین، پرچم، اعداد یک تا چهار



@UnityLearning
❤12
This media is not supported in your browser
VIEW IN TELEGRAM
⚫️ فرا رسیدن ایام پایانی ماه صفر، شهادت پیامبر گرامی اسلام، امام حسن مجتبی و امام علی بن موسی الرضا علیهم السلام را تسلیت می‌گوییم.

@UnityLearning
❤55👎12👍1
Update_FixedUpdate.pdf
4.3 MB
📋 مطلب آموزشی در رابطه با توابع Update و FixedUpdate

🔹 هر آنچه در مورد این دو تابع و تفاوت های لازم است بدانیم.

🔸 در این جزوه کاربردها و تفاوت های این دو تابع از توابع چرخه حیات در یونیتی همراه با مثال ذکر شده است.

@UnityLearning
❤6👍4
Unity Learning
Update_FixedUpdate.pdf
Media is too big
VIEW IN TELEGRAM
🎦 کلیپ آموزشی برای توضیح جزوه «معرفی توابع Update و FixedUpdate»

☑️ سعی گردید در این کلیپ به صورت خیلی ساده برخی از نکات ذکر شده در جزوه آموزش داده شود.

@UnityLearning
❤10👍1👎1
Forwarded from UniGame
✅دوره آموزش بازی سازی با یونیتی و سی‌شارپ

📌سرفصل ها:
🔺 مفاهیم پایه و پیشرفته برنامه نویسی#C
🔺 کار با محیط یونیتی و ابزار های آن
🔺 طراحی سیستم های بازی و مکانیک ها
🔺 ساخت صحنه ها، انیمیشن و رابط کاربری
🔺 بهینه سازی در حد مقدماتی

🎥 تمام جلسات ضبط شده و در اختیار شرکت‌کنندگان قرار می‌گیرد.

💻 دوره پروژه محور خواهد بود.

📝15 ساعت محتوای آموزشی
👨‍🏫 مدرس: امیرحسین محمدی پور
🗓  از 30 مرداد ماه تا 27 شهریور ماه ۱۴۰۵
⏰ ساعت 18:00 الی 21:00
📅 به تعداد 5 جلسه
💻 به صورت مجازی

💰 هزینه ثبت‌نام
دانشجویان دانشگاه تهران: 650 هزار تومان
دانشجویان سایر دانشگاه‌ها: 800 هزار تومان
آزاد: 900 هزار تومان

🎮 کانون بازی های رایانه ای دانشگاه تهران


📞 کسب اطلاعات بیشتر و ثبت نام:
🆔 @UniGameSupport


💠BALE
💠TELEGRAM
❤7👎2
Unity Learning
Update_FixedUpdate.pdf
⭕️ تابع Late Update #ادامه_مبحث

🔹 تابع LateUpdate در هر فریم اجرا می‌شود، درست مانند Update ، اما یک تفاوت مهم وجود دارد:
📌تابع LateUpdate همیشه بعد از اجرای تمام Updateها در همان فریم اجرا می‌شود.

📊 ترتیب ساده اجرای آن‌ها به این شکل است:

Update
⬇️
LateUpdate

🎥 مهم‌ترین کاربرد: دنبال کردن بازیکن توسط دوربین

🔹 یکی از بهترین کاربردهای LateUpdate()، کنترل دوربین است. فرض کنید بازیکن در Update حرکت می‌کند:

void Update()
{
transform.Translate(
Vector3.forward * speed * Time.deltaTime
);
}


🔸 حالا دوربین باید موقعیت جدید بازیکن را دنبال کند. اگر دوربین قبل از اعمال حرکت بازیکن موقعیت او را بررسی کند، ممکن است یک فریم تأخیر ایجاد شود. به همین دلیل می‌توانیم دوربین را در LateUpdate حرکت دهیم:

void LateUpdate()
{
transform.position = player.position + offset;
}

👈 در این حالت:

1️⃣ ابتدا بازیکن حرکت می‌کند.
2️⃣ سپس LateUpdate اجرا می‌شود.
3️⃣ دوربین موقعیت جدید بازیکن را دریافت می‌کند.

🎯 نتیجه: حرکت دوربین نرم‌تر و هماهنگ‌تر خواهد بود.

🤔 چرا دوربین را در Update قرار ندهیم؟
🔹 فرض کنید هم بازیکن و هم دوربین در Update حرکت کنند. در این حالت ترتیب اجرای اسکریپت‌ها همیشه چیزی نیست که به‌صورت ساده از روی کد انتظار داریم و ممکن است دوربین قبل از اعمال آخرین تغییر موقعیت بازیکن اجرا شود. در نتیجه، دوربین می‌تواند یک فریم از حرکت واقعی بازیکن عقب بماند. اما با استفاده از LateUpdate مطمئن می‌شویم که ابتدا تغییرات مربوط به Update انجام شده‌اند و سپس دوربین موقعیت نهایی شیء را بررسی می‌کند.

@UnityLearning
❤13👍1
Unity Learning
🌸 ... و مانند سال های گذشته در چنین روزی 🔸 به #مناسبت سالروز شروع امامت امام زمان (عج) ⭐️ آغاز هزار و صد و هشتاد و هفتمین سال امامت حضرت «اباصالح المهدی» را به همه شیعیان و منتظران آن حضرت تبریک و تهنیت عرض می‌کنیم. 🌹السلام علیک یا اباصالح المهدی یا صاحب…
🌸 ... و مانند سال های گذشته در چنین روزی

🔸 به #مناسبت سالروز شروع امامت امام زمان (عج)

⭐️ آغاز هزار و صد و هشتاد و هشتمین سال امامت حضرت «اباصالح المهدی» را به همه شیعیان و منتظران آن حضرت تبریک و تهنیت عرض می‌کنیم.


🌹السلام علیک یا اباصالح المهدی یا صاحب الزمان🌹

🌷اللهم عجل لولیک الفرج🌷

🌸 با آرزوی سلامتی و موفقیت برای همه شما عزیزان 🌸

@UnityLearning
❤48👎11
🌺 فرا رسیدن هفدهم ربیع الاول، میلاد با سعادت حضرت رسول اکرم و امام جعفر صادق علیهماالسلام بر شما همراهان گرامی مبارک.

@UnityLearning
❤53👎10👍5
❤46👎8
⭕️ #پنجره Build Setting #نکات

🔸 پنجرۀ Build Settings (از مسیر File > Build Settings) قلب خروجی‌گرفتن از پروژه‌ یونیتی است. اینکه بازی قرار است، در نهایت روی چه پلتفرمی (ویندوز، موبایل، ....) اجرا گردد.

🔹 کاربردهای اصلی این پنجره

1️⃣ انتخاب پلتفرم (Platform) خروجی بازی
از لیست سمت چپ، پلتفرم هدف رو انتخاب کن (Windows، Android، iOS، WebGL و...). بعد دکمه‌ی Switch Platform رو بزن تا یونیتی پروژه رو برای اون پلتفرم آماده کنه.

2️⃣ نمایش ترتیب اجرای مراحل بازی در Scenes In Build

در این بخش می توان مشخص کرد، Sceneهای بازی با چه ترتیبی در خروجی نهایی نمایش داده شوند. روش اضافه کردن Scene جدید با دِرَگ کردن امکان پذیر است.

3️⃣ تنظیمات مرتبط با پروژه Player Settings


4️⃣ دکمه های Build و Build And Run

🔶🔹 دکمه Build: فقط فایل نهایی بازی ساخته می شود ولی اجرا نخواهد شد.

🔶🔹 دکمه Build And Run: ساخت و اجرای بازی پس از آن

💡 نکته‌ی طلایی: یکی از اقدامات اولیه برای ساخت بازی، انتخاب پلتفرم خروجی بازی است که از طریق این پنجره و گزینه Switch Platform قابل تنظیم می باشد.

@UnityLearning
❤9
🎮 آشنایی با پنجره Hierarchy در Unity

پنجره Hierarchy یکی از بخش‌های اصلی محیط کاربری Unity است که تمامی GameObject‌های موجود در صحنه (Scene) را نمایش می‌دهد.

🔹 کاربردهای مهم پنجره Hierarchy:

• مشاهده تمام GameObjectهای موجود در صحنه
• انتخاب و مدیریت اشیای موجود در بازی
• ایجاد GameObject جدید
• حذف یا تغییر نام اشیا
• ایجاد ساختار والد و فرزند (Parent / Child)
• مرتب‌سازی و سازمان‌دهی اشیای صحنه

📌 ساختار Parent و Child (پدر و فرزندی)

در Hierarchy می‌توان یک GameObject را به‌عنوان Parent و یک یا چند GameObject دیگر را به‌عنوان Child قرار داد. در این حالت، تغییرات Transform مربوط به Parent می‌تواند بر موقعیت، چرخش و مقیاس Childها نیز تأثیر بگذارد.

برای مثال، اگر یک Car را Parent و چهار Wheel را Child آن قرار دهیم، می‌توانیم ساختار منظمی برای مدیریت اجزای خودرو ایجاد کنیم.

💡 نکته مهم:
ساختار مناسب Hierarchy باعث می‌شود مدیریت پروژه، پیدا کردن GameObjectها و کار با صحنه‌های پیچیده بسیار ساده‌تر شود.

@UnityLearning
❤8
Media is too big
VIEW IN TELEGRAM
🌐 کلیپی از رقابت و در نهایت پیروزی حسن پاجانی از ایران در مقابل حریف مالزیایی خود در فینال مسابقات ورزش‌های الکترونیک ESPORT (بازی efootball) در بازی‌های آسیایی ۲۰۲۶ ناگویا آئیچی ژاپن و کسب مدال طلای این مسابقات 🥇 🎮 💻

📅 تاریخ مسابقه: ۱ مهر ماه ۱۴۰۵

@UnityLearning
❤17