یونیتی (Unity) یک موتور بازی سازی است که با آن می توانید بازی های ویدئویی برای اندروید، IOS، وب سایت ، کنسولها و کامپیوترهای شخصی بسازید. یونیتی از زبان های برنامه نویسی معروف مانند برنامه نویسی سی شارپ ، جاوا اسکریپت پشتیبانی می کند و شما به راحتی می توانید با زبان سی شارپ در یونیتی کدنویسی کنید. با ویژگی های مختلفی که Unity دارد میتوان گفت برای یادگیری یونیتی نباید لحظه صبر کرد و وارد دنیای بازی سازی نشد. در دورهی آموزش سی شارپ در یونیتی ، بازی سازی با Unity را از صفر آموزش خواهید دید.
نقطه صفر بازی سازی با یونیتی یادگیری کدنویسی سی شارپ در یونیتی است. در ادامه سرفصل کامل آموزش سی شارپ در یونیتی ویدیویی 2025، که اولین دوره آکادمی لرن فایلز برای شروع دوره های آموزش پلتفرم یونیتی است، آمده است. در ادامه این دوره، می توانید سراغ سایر دوره های لرن فایلز در زمینه بازی سازی با موتور Unity بروید زیرا ما مجموعه کاملی از مباحث مبتدی و حرفه برای یک توسعه دهنده بازی با یونیتی را فراهم کرده ایم.
کاربرد سیشارپ در یونیتی
سیشارپ (C#) یکی از زبانهای اصلی برنامهنویسی مورد استفاده در یونیتی (Unity) است. این زبان برای توسعه بازیهای دوبعدی، سهبعدی و واقعیت مجازی کاربرد دارد و ابزار بسیار قدرتمندی برای بازیسازان و توسعهدهندگان ارائه میدهد. در ادامه به کاربردهای اصلی سیشارپ در یونیتی میپردازیم:
1. اسکریپتنویسی بازیها
- سیشارپ در یونیتی برای نوشتن اسکریپتها استفاده میشود که رفتارهای اشیا در بازی را تعیین میکنند. به عنوان مثال:
- حرکت دادن شخصیتها.
- ایجاد سیستمهای هوش مصنوعی برای دشمنان.
- مدیریت ورودیهای کاربر (مانند کیبورد، موس، یا دسته بازی).
- ایجاد تعامل بین اشیا (مانند باز کردن درها، انفجارها و غیره).
2. مدیریت چرخه حیات اشیا
- سیشارپ برای مدیریت چرخه حیات GameObjectها (اشیای موجود در صحنه) استفاده میشود. متدهای مهمی مانند Start، Update، FixedUpdate و OnDestroy به شما امکان میدهند تا بر اساس نیاز بازی کدهای خود را اجرا کنید.
3. طراحی رابطهای کاربری (UI)
- برای ایجاد و مدیریت سیستمهای رابط کاربری مانند منوها، دکمهها، پنجرههای تنظیمات و دیگر عناصر گرافیکی، از اسکریپتهای سیشارپ استفاده میشود.
4. مدیریت سیستمهای رویداد (Event)
- سیشارپ ابزارهایی برای مدیریت رویدادها در اختیار شما قرار میدهد. برای مثال:
- کلیک روی یک دکمه.
- برخورد دو شی (Collision).
- پایان یافتن یک انیمیشن یا رویداد خاص.
5. سیستمهای فیزیکی و شبیهسازی
- از سیشارپ برای کنترل سیستم فیزیکی یونیتی مانند گرانش، برخوردها (Collisions) و نیروها (Forces) استفاده میشود.
- میتوانید رفتارهای فیزیکی اشیا مانند شتابدهی، لغزش و چرخش را کنترل کنید.
6. ایجاد هوش مصنوعی (AI)
- با استفاده از سیشارپ میتوانید الگوریتمهای هوش مصنوعی بسازید. به عنوان مثال:
- ایجاد دشمنانی که بازیکن را دنبال میکنند.
- مسیریابی با استفاده از NavMesh.
- طراحی سیستمهای تصمیمگیری.
7. مدیریت فایلها و دادهها
- سیشارپ به شما امکان میدهد دادههای بازی را بخوانید و ذخیره کنید. مانند:
- ذخیره تنظیمات و پیشرفت بازیکن (Save/Load).
- خواندن و نوشتن فایلهای JSON یا XML برای دادهها.
8. ایجاد سیستمهای چندنفره
- سیشارپ ابزارهای لازم برای ایجاد بازیهای چندنفره را فراهم میکند. با استفاده از یونیتی و کتابخانههای مرتبط، میتوانید بازیهایی طراحی کنید که بازیکنان از طریق شبکه به آن متصل شوند.
9. استفاده از پلاگینها و کتابخانههای خارجی
میتوانید کتابخانهها و پلاگینهای سیشارپ را به پروژه یونیتی خود اضافه کنید. این ویژگی امکانات یونیتی را بسیار گسترش میدهد.
مزایای سیشارپ در یونیتی
- سادگی و خوانایی بالا: یادگیری و استفاده از سیشارپ نسبت به زبانهای دیگر آسانتر است.
- ابزارهای قدرتمند در محیط یونیتی: یونیتی امکاناتی مانند Intellisense و Debugging را برای اسکریپتهای سیشارپ فراهم کرده است.
- چندمنظوره بودن: علاوه بر بازیسازی، سیشارپ برای کاربردهای دیگری مثل توسعه اپلیکیشنهای ویندوز و وب نیز استفاده میشود.
سرفصل های دوره جامع آموزش سی شارپ در یونیتی:
فصل 1 (مقدمه ای بر یونیتی)
مقدمه و معرفی دوره
نصب و دانلود یونیتی
نصب و دانلود ویژوال استودیو
تنظیمات یونیتی و یکپارچه سازی با ویژوال استودیو
ساخت پروژه در یونیتی
کامپوننت ها و ساخت اسکریپت کامپوننت
فصل 2 (زبان سی شارپ، مقدماتی)
فصل 3 (اسکریپت نویسی یونیتی، مقدماتی)
تابع start و awake
تابع update و fixedupdate
بردار های ریاضی
فعال و غیر فعال کردن کامپوننت هافعال کردن گیم آبجکت ها
چرخش و جابجا کردن اشیاء
تابع Look At
درون یابی خطی – Lerp
نابود کردن گیم آبجکت
گرفتن ورودی ها
کار کردن با تابع GetComponent
Delta Time
ایجاد گیم آبجکت با تابع Instantiate
تابع Invoke
فصل 4 (پیشرفته)
Properties
عملگرهای سه تایی
استاتیک ها
اورلود کردن متد
جنریک ها
ارث بری
چند فرمی
پنهان کردن عضو
اورراید کردن
اینترفیس ها
متدهای توسعه یافته
فضای اسمی
لیست ها و دیکشنری ها
Coroutines
Quaternions
Delegate
ویژگی ها – Attributes
رویدادها
فصل 5 (نتیجه گیری) :
ساخت پروژه 1 (آموزش پروژه محور یونیتی)
ساخت پروژه 2 (آموزش پروژه محور یونیتی)
ساخت پروژه 3 (آموزش پروژه محور یونیتی)
جمع بندی دوره آموزش سی شارپ در یونیتی و قدم بعدی
- از مقدماتی تا پیشرفته – همراه با انجام پروژه های متعدد
- ویدیویی و به زبان فارسی: آموزش در قالب 53 ویدیوی فارسی به مدت 8 ساعت مفید تهیه شده است.
- تایم مفید: علاوه بر پوشش مطالب بیشتر، زمان آموزش “یک سوم” آموزش های مشابه است!
- سرفصل استاندارد: سرفصل به صورت جامع، بروز و اختصاصی توسط آکادمی تدوین شده است.
- تضمین کیفیت: آموزش با استاندارد های کیفی سختگیرانه و متفاوت در لرن فایلز تهیه شده است.
- ویژه ورود به بازار کار: آموزش به صورت ویژه جهت ورود به بازارکار و کسب درآمد تدریس شده است!
- تایید شده توسط واحد کنترل کیفیت: سطح علمی، صدا و تصویر، بیان و سایر موارد تایید شده است.
- این آموزش تئوری نیست! آموزش کاملاً عملی بوده و در حد نیاز به موارد تئوری پرداخته شده است.
- دسترسی مادام العمر: در هر زمان و مکان با وارد شدن به حساب کاربری تان به آموزش ها دسترسی دارید!
- یادگیری آنلاین: نیاز به دانلود ندارید! می توانید آنلاین با بالاترین سرعت و ترافیک نیم بها یاد بگیرید.
- قابل پخش در تمامی دستگاه ها: در PC، لپ تاپ، تبلت، گوشی، تلویزیون و… آموزش ها را مشاهده کنید.
- ترافیک نیم بها: تماشای آنلاین آموزش ها برای تمامی اپراتورها با ترافیک نیمبها محاسبه میشود.
- سرعت بی نهایت: با سرعتی بی نظیر و بدون افت سرعت، یادگیری آنلاین را تجربه کنید!
- یکپارچگی: در حساب کاربری خود به ویدیو ها، پرسش و پاسخ و هر آنچه نیاز است، دسترسی دارید!
- همراه با فایل های جانبی: سورس و سایر فایل های جانبی به صورت کامل ضمیمه آموزش شده است.
ویدیو های نمونه از این دوره:
تعدادی از ویدیو های این دوره در بخش مربوط به پیش نمایش آموزش (بالا- ستون سمت راست) برای شما قرار داده شده است تا از کیفیت کمی و کیفی آموزش سی شارپ (#C) در یونیتی (Unity) مطمئن شوید و قبل از خرید این دوره آموزشی به خوبی سطح آن را از همه لحاظ ارزیابی کنید.
راهنمای دریافت آموزش سی شارپ (#C) در یونیتی (Unity):
جهت دریافت این آموزش با کلیک بر روی دکمه “دریافت آموزش” (بالا- ستون سمت راست) جهت خرید اقدام کنید. بلافاصله پس از پرداخت آنلاین می توانید وارد پنل کاربری خود در لرن فایلز شده و به ویدیو های آموزشی و سایر امکانات دسترسی داشته باشید.(دسترسی بدون محدودیت در هر زمان و مکان)
جهت مشاهده آموزش سی شارپ (#C) در یونیتی (Unity) نیاز به یادگیری هیچگونه پیشنیازی ندارید و می توانید از همین آموزش یادگیری خود را شروع کنید.
این آموزش تاکنون نیاز به آپدیت نداشته است و کاملاً بروز می باشد!
چنانچه احساس میکنید این آموزش نیاز به آپدیت و بروزرسانی دارد لطفاً این موضوع را با ما در میان بگذارید.
- در آپدیت باکس این آموزش، موردی یافت نشد.
سلام امیدوارم حالتون خوب باشه اول از هرچیزی تشکر میکنم بابت دوره های کاملتون
سوالی که من داشتم این بود که پیشنیاز سخت افزاری برای کار با یونیتی چه چیزی است یعنی چه سیستمی میتونه کارمو راه بندازه
سلام و درود!
تشکر از ارسال نظرتون.
مشخصات سیستم موردنیاز:
windows10
CPU corei7 یا CPU corei5 نسل جدید
Nvidia GeForce GTX 1660
حداقل هارد SSD 500 و HHD 100
RAM16
مشخصات از این کمتر هم امکانپذیره اما توصیه نمیکنیم!
موفق باشید
سلام ببخشید فیلم اموزشی که گذاشتید قسمت دومش نیست از قسمت اول رفته ب سوم ممنون میشم درستش کنید
سلام و عرض ادب
به واحد تیم فنی ارجاع داده شد و تا پایان تایم اداری برطرف می شود.
موفق و پیروز باشید
استاد سلام من کارم تدوین فیلم و افتر و موشن گرافیک کمی هم سینما فوردی بلدم .دوست دارم یونیتی رو یادبگیرم ولی کدنویسیش خیلی ترسناکه انگار و سخت انگلیسی هم زیاد خوب نیست ۳۶ سالمه به نظرتون من میتونم یاد بگیرم ارزش یادگیری داره تو این سن منظورم بازار کارش آخه معمولا به سن بالای ۳۵ سال کم کار میدن.
سلام وقتتون بخیر. از لحاظ سن که هیچ مشکلی نیست و قطعا میتونید یاد بگیرید و من تاحالا توی شرکت های آی تی یا بازی سازی ندیدم که سن رو ملاک استخدام قرار بدهند، و اگر شرکتی هست که بر اساس سن نیرو میگیره خب بهتره که اصلا توی اون محیط کار نکنید. ولی درمورد یادگیری برنامه نویسی و بازی سازی، قطعا نیاز به اختصاص دادن زمان و انرژی لازم داره ولی باید انگیزه لازم برای تغییر دادن رشته تخصصی تون رو داشته باشید. چون شما شاید خیلی راحت تر بتونید در زمینه تدوین و موشن گرافی مهارت تون رو ارتقا بدید تا شروع کردن یه فیلد جدید ولی خب اگر انگیزه لازم برای این مسیر رو دارید و حداقل 6 ماه به خودتون فرصت بدید و تمام وقت تمرین کنید، قطعا نتیجه میگیرید.
سلام
ویژوال استودیو 2019 نصب کردم . یونیتی 2018 هم نصب کردم.
ویژوال استودیو را به یونیتی متصل کردم. اما پنجره مربوط به کدنویسی سی شارپ موجود نیست؟
https://s6.uupload.ir/files/snap1_720u.png
سلام شما طبق آموزش ها پیش رفته و یک اسکریپت داخل یونیتی بسازید و سپس روی آن اسکریپت دوبار کلیک کنید، باید پنجره ادیتور ویژوال استدیو باز شود
سلام، وقت به خیر
یونیتی2021 رو از طریق یونیتی هاب (دانلود از سایت یونیتی) دانلود کردم، برای ایجاد پروژه پیام invalid license میده، باید چی کار کرد؟
سلام باید ابتدا در سایت یونیتی یک حساب کاربری بسازید و با اون حساب داخل یونیتی هاب لاگین کرده باشید، بعد در قسمت بالای یونیتی هاب روی آیکون چرخ دنده کلیک کنید و روی گزینه Licence Management برید و دکمه Activate New Licence رو بزنید و یک لاینس نسخه رایگان برای خودتون بسازید.
البته قبلش از وی پی ان استفاده کرده باشید
سلام
ویژوال استودیو رو دانلود کردم بعد از انتخاب یونیتی به عنوان کامپوننت مورد نظر و دانلودش, vsرو لانچ کردم ولی هیچی نبود که بخوام پروژه ای رو باهاش شروع کنم,دات نت رو دانلود کردم مشکلی نداشت(یعنی بین گزینه برای شروع پروژه consol.appبودش)برعکس یونیتی ؟؟؟
با سلام و عرض ادب
در نظر قبلی به این سوال پاسخ داده شد.
موفق و پیروز باشید
سلام
من vs رو دانلود کردم و تو قسمت انتخاب کامپوننت,تیک یونتی رو زدم و دانلود کردم ولی بعد از لانچ کردنش چیزی نبود.NET.رو هم دانلود کردم ولی اضاف شده بود در صورتی که کامپوننت مربوط به یونیتی نبود؟
با سلام
اون تیک یونیتی برای این نیست که خود موتور یونیتی رو نصب کنه، فقط یه ابزار کمکی مرتبط با یونیتی براتون نصب میکنه. بهتره ابتدا نرمافزار یونیتی رو از سایت یونیتی دانلود کنید، بعد ویژوال استدیو رو نصب کنید و در حین نصبش، تیک یونیتی رو بزنید (که در واقع یه سری ابزار مرتبط با یونیتی داخل محیط ویژوال استودیو بهتون میده)
سلام ببخشید منظورم رو اشتباه متوجه شدید . منظور من این بود که من الان یونیتی رو نصب دارم و تو برنامه کانکشن ارور میده به collaborate وصل نمیشه در نتیجه نمیتونم از سایت unity assets است های مورد نظرمو ایمپورت کنم چون کانکت نمیشه مشکل کجاست؟
سلام
اکثر اوقات اتصال به سرور های یونیتی از ایران اینجور مشکل هایی داره و کانکشن ارور میده. بهتره برای لاگین شدن با اکانتتون با وی پی ان کانکت بشید
سلام استاد علیزاده ممنونم از آموزش و خوب شما.
من آموزشتون رو با دقت نگاه کردم اما یک سوال دارم که نتونستم جوابش رو بگیرم. اون هم اینه که برای ساخت یک بازی اندرویدی که در اون تا وقتی که بازیکن دستش رو روی صفحه نگه داشته آبجکت پلیر به سمت پوزیشن تاچ بیاد و به محض اینکه بازیکن دستش رو از روی صفحه برداشت آبجکت پلیر به سمت آبجکت دیگه ای منحرف بشه چه کدی باید بنویسم؟
در واقع یک مشکل دیگه هم داشتم و اونم اینه که اصلا هر کدی که درباره ی تاچ مینویسم جواب نمیده ، برای اینکه مطمئن بشم مشکل از کد های من نیست کد های دیگران درباره ی تاچ رو هم امتحان کردم اما باز هم کار نکرد. میخواستم بدونم مشکل کار من کجاست؟
آیا اگر به جای کدهای مربوط به تاچ از کد های مربوط به موس استفاده کنیم، بعد از این که خروجی اندروید گرفتیم باز هم بازی ای که ساختیم درست کار میکنه یا نه؟
اگر میشه لطف کنید و کمی من رو راهنمایی کنید ممنونم.
با سلام
خیر کدهای مربوط به موس برای تاچ کار نمیکنند. برای اینکه با تاچ گوشی کار کنید باید از تابع Input.GetTouch و سایر توابع مرتبط با آن استفاده کنید. راه دیگر این است که برای این منظور از دکمه ها در رابط کاربری استفاده کنید و وقتی دکمه ای در UI با موس کلیک شود یا تاچ شود، توابعی که در رویداد OnClick به این رویداد منتصب کرده اید، اجرا خواهند شد.
سلام
وقتتون بخیر
میخواستم بدونم به غیر از مباحث گفته شده چه مباحث دیگه ای توی برنامه نویسی هست (پیشرفته) که برای استخدامی شرکت ها یا تقویت مهارت خودمون باید بلد باشیم؟
سلام
مباحث دیزاین پترن ها رو هم یاد بگیرید. کتاب Game Programming Patterns یا مطالب مشابه میتونه بهتون کمک کنه. در کنارش تجربه تمرین زیاد خیلی کمک میکنه. چون خیلی اوقات توی مصاحبه ها یه سناریویی مطرح میکنند و شما باید مشکل مورد نظر را حل کنید یا بهینه سازی انجام بدید، برای همین تجربه قبلی بهتون خیلی کمک میکنه که سریعا مشکل رو شناسایی و حل کنید.
سلام،جناب علیزاده در بخش 5 پروژه 2 شما physic material اضافه می کنید که یکسری ویژگی داره ولی من که اضافه می کنم طوره دیگه ایه . مشکل چیه؟کلا انتخاب رنگ و اون ویژگی هایی که برای شما داره برای من نداره و یک منو کوتاهه
سلام
اگر آیتمی که روش کار شده، مواردی مثل انتخاب رنگ و شیدر و … داشته پس physic material نبوده و حتما Material بوده. در پنجره Project که راست کلیک میکنید روی Material کلیک کنید تا یک متریلا جدید براتون بسازه و رنگ و بخش های مختلفش رو بتونید تغییر بدید.
سلام من این دوره را خریداری کردم سوالی داشتم خدمتتون ممنون میشم راهنمایی کنید
من مدتی هست که شروع به یادگرفتن یونیتی کردم و خداروشکر تا این مرحله بد پیش نرفتم دنبال ساخت بازی ای در سبک کلمات و دانستنی مثل کوییز آف کینگ هستم که از نظر ساخت بازی در یونیتی چندان سخت نیست تنها می مونه بخش ارتباط با دیتابیس برای سوالات تصادفی و آنلاین کردن بازی. خیلی در اینترنت سرچ کردم روش های زیادی برای انلاین بازی کردن گفته شده بود مثلا گزینه هایی که خود یونیتی در اختیارت میذاشت (که یک نفر هاست میشد که اصلا جالب نیست) تا سرور های گوگل ، Nodejs ،Photon PUN و …
من در زمینه دیتابیس و اتصال بازی به سرور و کدزدن برای این بخش هیچ دانشی ندارم باید بازی طوری طراحی بشه که کاربرا یا با یوزر نیم یابصورت رندوم بسته به Level ی که دارند به هم متصل بشن.
ممنون میشم یک نقشه راه در اختیارم بذارین
با سلام.
خوشحالم که در مسیر یادگیری بازی سازی قرار گرفته اید و امیدوارم با تمرین و تلاش بیش از پیش پیشرفت کنید.
موضوع ارتباط با دیتابیس و آنلاین کردن بازی، تخصصی کاملا مجزاست که مهارت ها ی متفاوتی از برنامه نویسی کلاینت توسط یونیتی نیاز دارد و معمولا در تیم های بازی سازی برنامه نویس سرور و برنامه نویس گیم پلی افراد متفاوتی هستند اما اگر قصد دارید خودتان این مسیر را نیز طی کنید میتوانید برای شروع از پلتفرم گیم اسپارک استفاده کنید. داکیومنت و راهنمای استفاده از این پلتفرم درون وب سایت خودشان موجود است:
gamesparks.com
ولی باز هم داشتن دانش مباحث پایه دیتابیس و معماری های برنامه نویسی تحت شبکه الزامی است و توصیه میکنم در این زمینه جستجو کنید و با متخصصین برنامه نویسی تحت شبکه مشورت کنید.
موفق باشید
سلام خیلی ممنون برنامه مفید و از همه نظر عالی هست