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
BrickMessy0175_5_S.jpg
127.1 KB
⭕️ #تکسچر مناسب دیوار های سنگی

🔹با کیفیت عادی

🔸این تکسچر باید پشت سر هم تکرار شود.

@UnityLearning
🔹 نکاتی در رابطه با ساخت بازی

معرفی چند نکته برای برنامه نویسی بهتـــر و کاراتـــر در #یونیتی

🔹 همیشه سعی کنید، کدهایی که عملکرد اجرایی برای آبجکت خاصی ندارند را به Empty GameObject هایی با نام صحیح بدهید، منظور از این اسکریپت ها، اسکریپت هایی هستند که کاری روی آّبجکت خاصی انجام نمی دهند (مثل اسکریپت ساخت منو)- زیاد شدن این اسکریپت ها و عدم رعایت این موضوع باعث سردرگمی بازی ساز برای پیدا کردن آنها می شود.

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

🔹 در اکثر مواقع سعی کنید، آبجکت های خود را دسته بندی کنید، برای دسته بندی یک سری آبجکت بعد از انتخاب آنها در #پنجره Hierarchy آنها را روی یک GameObject خالی درگ کنید، با این کار همه آبجکت ها به عنوان زیر مجموعه آبجکت مذکور خواهند شد و عملیاتی مثل جابجایی، چرخش و بزرگ کردن آن روی همه آبجکت های زیر مجموعه (فرزند-Child) اعمال می شود. حسن اصلی این کار شلوغ نشدن Hierarchy و دسترسی آسان به آبجکت هاست.

🔸 به برخی Warning هایی که در پنجره Debug نوشته می شود، توجه کنید. همه این هشدار ها قابل چشم پوشی نیستند و عمل کردن به آنها می تواند سرعت زیادی به انجام بازی بدهد.

🔹 همانطور که قبلا هم توضیح داده ایم ، سعی کنید در برنامه نویسی از توابعی که همیشه در حال اجرا هستند کمتر استفاده کنید (البته در برخی شرایط استفاده از آنها اجتناب ناپذیر است، اما سعی کنید تا جایی که می شود از آنها استفاده نگردد)

🔸 سعی کنید کدهایی که می نویسید، به صورت بهینه شده باشد. کد بهینه شده از نظر اشغال کردن منابع (مثل CPU پردازشی- Ram حافظه و...) کمترین میزان را برای بهترین نتیجه انتخاب می کنند. یعنی مثلا در آنها از انجام حلقه های بی مورد جلوگیری شده است که سرعت پردازش کد را بالا می برد یا میزان متغیرهای لازم برای اسکریپت را به حداقل رسانده که این حافظه رم مصرفی بازی را کاهش می دهد.

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

#اسکریپت_نویسی #نکته #برنامه #یونیتی


کانال یونیتی لرنینگ
💢 @UnityLearning💢
اسکریپت آماده حرکت یک آبجکت به سمت محل لمس شده

#درخواست

🔹 دستورات مربوط به بررسی Touch در #کلاس Input را قبلاً مورد بررسی قرار دادیم، اکنون قصد داریم اسکریپت آماده ای برای آن قرار دهیم. البته این اسکریپت درخواست برخی کاربران نیز بوده است.

🔸 اسکریپتی که در پست بعدی برای #دانلود قرار می گیرید، برای حرکت یک آبجکت در محیط «دو بعدی» به سمت محل لمس شده در بازی است، این اسکریپت همچنین سرعت حرکت آبجکت را نیز از ورودی دریافت می کند. برای بدست آوردن موقعیت لمس در این اسکریپت از پارامــــتر deltaPosition مربوط به Input.GetTouch استفاده شده است. حرکت آبجکت به سمت نقطه XY است که کاربر روی آن کلیک کرده (لمس کرده) است. (دقت کنید حرکت سه بعد داشته و موقعیت محل لمس در صفحه گوشی دو بعد- بنابراین برای این تبدیل به این صورت عمل شده است)

👈 اسکریپت آماده در پست بعدی قابل دانلود است.



کانال یونیتی لرنینگ
💢 @UnityLearning💢
GetTouchPos.js
539 B
اسکریپت آماده برای بررسی محل لمس در گوشی ها

حرکت ساده در محور های XY نسبت به موقعیت لمس شده در صفحه گوشی

@UnityLearning
#بردار عمود بر دو بردار

🔹 در ریاضیات تعریف خاصی برای بردار عمود بر دو بردار (قوانین فیزیک در محاسبه جهت میدان مغناطیسی) وجود دارد. این بردار کاربردهای خاصی نیز در طراحی بازی دارد. طبق تعریف در ریاضیات، تنها یک بردار جهت دارد عمود بر دو بردار دیگر می تواند وجود داشته باشد.

🔸 در یونیتی با استفاده از #کلاس Vector3 می توان این بردار را محاسبه کرد. خروجی تابع Cross از این تابع یک بردار دیگر است که بر هر دو بردار ورودی عمود خواهد بود.

👈 #سی_شارپ
Vector3 perp = Vector3.Cross(s1, s2);

👈 #جاوا
var perp:Vector3 = Vector3.Cross(s1, s2);

در اینجا متغیر perp بردار عمود بر دو بردار S1 و S2 خواهد بود.

#اسکریپت_نویسی


کانال یونیتی لرنینگ
💢 @UnityLearning💢
⭕️جهت بردار عمود بر دو بردار دیگر (بردار Result عمود بر دو بردار a و b)

🔸برای محاسبه این بردار از دستور Vector3.Cross استفاده می شود.

@UnityLearning
This media is not supported in your browser
VIEW IN TELEGRAM
آیا می‌دانید بازی معروف Tetris که در سال 1984 ارائه شد، همچنان پر فروش ترین بازی تاریخ صنعت بازی سازی است.

این بازی تا کنون 170 میلیون دلار فروش داشته است که هیچ بازی تا کنون به این رقم نرسیده است❗️
بررسی حالات مختلف لمس (وضعیت های خاص در Touch) صفحه گوشی

🔸 همانطور که می دانید در #کلاس Input بـــرای بررسی حالت لمس صفحه از پارامتر Touch استفاده می شود. در این پست می خواهیم وضعیت های خاص مربوط به این پارامتر را بررسی کنیم.

🔹 منظور از وضعیت، حالت های مختلفی است که ممکن است برای لمس اتفاق بیافتد ( ابتدای لمس - جابجایی انگشت روی صفحه - برداشتن انگشت و...) کلیه این وضعیت ها در پارامتری به نام phase از Input.Toach قرار می گیرد.

این حالت ها را در زیر بررسی می کنیم/👇

🔹 حالت Began: زمانی رخ می دهد که یک انگشت صفحه را لمس کند.

🔹 حالت Moved: زمانی رخ می دهد که انگشت همچنان با حفظ حالت لمس صفحه روی آن حرکت کند.

🔹 حالت End: زمانی اتفاق خواهد افتاد که انگشت از روی صفحه برداشته شود.

🔹 حالت خاص Canceled: این حالت زمانی رخ می دهد که برنامه به هر دلیل نتواند بررسی ها را انجام دهد، مثلا اینکه 5 انگشت با هم صفحه را لمس کنند و یا اینکه گوشی به صورت و یا قسمتی از بدن برخورد کند که فقط یک نقطه از گوشی لمس نمی شود.

🔰 مثال اگر در تابع Update یک اسکریپت عبارت شرطی زیر نوشته شود/👇
if (touch.phase == TouchPhase.Began)

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

👈 ضمنا همانطور که می دانید، دستور بالا باید در یک حلقه for قرار گرفته باشد تا هر لمس صفحه را بررسی کند (به علت اینکه برخی گوشی ها حالت پشتیبانی از چند لمسی را دارند و ممکن است در یک هم زمان چند انگشت صفحه را لمس کند که باید برای تک تک آنها بررسی انجام شود)

for (var touch : Touch in Input.touches)

این حلقه تمامی لمس هایی که از صفحه صورت گرفته است را در متغیری به نام touch (شمارنده حلقه) قرار می دهد و می توانیم روی آن در بدنه حلقه بررسی های مورد نظر را انجام دهیم.

#اسکریپت_نویسی #کد_نویسی #جاوا

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


کانال یونیتی لرنینگ
💢 @UnityLearning💢
Touch_Screen.js
492 B
اسکریپت آماده ساخت یک آبجکت در محل آبجکت دیگری که کد را به آن متصل کرده ایم، در زمــــان هر بار لمس صفحـــه

@UnityLearning
⭕️ منوی Mobile Input برای تست دستورات ورودی در موبایل

🔹 فعال و غیر فعال کردن حالت اجرای کد های Input.Touch در PC

@UnityLearning
⭕️ آموزش استفاده از اپلیکیشن Unity Remote برای تست مستقیم بازی روی گوشی

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

▫️منظور از تست مستقیم این است که زمانی که در یونیتی دکمه ▶️ (اجرای بازی) زده می‌شود بدون مشکل بازی روی گوشی (همزمان با کامپیوتر) اجرا شود و تست بازی در بهترین حالت انجام شود. اکثر نرم افزارهای قدرتمند که پلتفرم های مربوط به گوشی را پشتیبانی می‌کنند، از این قابلیت نیز پشتیبانی می‌کنند تا برنامه نویس بهترین نتیجه را بگیرد و مدام مجبور نباشد برنامه اش را Build کرده، به گوشی کپی کرده و در نهایت نصب کند تا تازه بتواند ایرادات آن را حل کند.

▪️برای استفاده از این قابلیت در یونیتی ابتدا حالت Debug Mode را در گوشی خود فعال کنید، بسته به نوع گوشی لازم است برنامه متناظر آن را نصب کنید. (مثلا نرم افزار HiSuite برای گوشی های هواوی یا Samsung PC Studio برای گوشی های سامسونگ)

🔸این برنامه معمولا در هنگام اولین اتصال گوشی به کامپیوتر برای نصب پیشنهاد داده می‌شود و می‌توان آن را به راحتی نصب کرد.

👈حال برنامه Unity Remote را در گوشی اجرا و گوشی خود را با کابل به کامپیوتر متصل کنید و منتظر بمانید تا گوشی به طور کامل به کامپیوتر متصل گردد.
(کلیه پیغام های صبر کنید...، در حال اتصال و... باید از روی گوشی برداشته شود)

▪️◾️◼️در نهایت نوبت به انجام تنظیمات در #برنامه یونیتی است. برای انتخاب دستگاهی که باید بازی روی آن اجرا شود به پنجره Editor Settings بروید /👇
Edit > Project Settings > Editor

🔹در قسمت Unity Remote دستگاه مورد نظر(گوشی) خود را انتخاب کنید. همه چیز تمام است با انتخاب گزینه ▶️ (Play) بازی همزمان روی گوشی نیز اجرا خواهد شد.

#تست_مستقیم_روی_گوشی #یونیتی

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


⭕️ کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
⭕️ #پنجره Editor Setting بخش Unity Remote برای انتخاب دستگاه تلفن موبایل(متصل شده به کامپیوتر) در حالت Debug Mode باز بودن اپلیکیشن Unity Remote در آن

@UnityLearning
⭕️ اطلاعاتی که از گوشی در زمان اجرای بازی با Unity Remote به اسکریپت های بازی ارسال می‌شود، بدین شرح است /👇

🔹Touch and stylus input
🔹Accelerometer
🔹Gyroscope
🔹Device camera streams
🔹Compass
🔹GPS
🔹Joystick names and input

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


⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
com.unity3d.genericremote.apk
19.4 MB
👆دانلود👆
آخرین نسخه اندروید ارائه شده از Unity Remote در گوگل پلی

🔸برای اجرای مستقیم حالت Play در برنامه روی گوشی

👇دانلود نسخه iOS 👇
بررسی اتصال به اینترنت (ادامه مطالب مربوط به اتصال بازی به #اینترنت)

👈 همانطور که بیان شد، متغیرهای تعریف شده از #کلاس WWW یک پارامتر بسیار کاربردی برای بررسی خطاها دارد. نام این پارامتر error اســـت و برای بررسی نوع خطا، در آن قرار می گیرد.

🔸 قبلا بیان کردیم باید دستورات مربوط به دانلود را زمانی نوشت که متغیر isDown برابر true شده است. اما ممکن است در هنگام دانلود خطایی رخ دهد مثل اینکه به سیستم (یا گوشی) به نت متصل نباشد، در این صورت باید محتویات پارامتر error را بررسی کرد. در صورتی که این کار را انجام ندهیم و در هنگام داتلود خطایی رخ داده باشد و ما برای انجام کار خود پارامتر error را بررسی نکرده باشیم با خطای کامپایلری مواجه خواهیم شد. این خطا بدترین حالت ایجاد خطا در بازی هایی است که به طور کامل ساخته شده اند و باعث بسته شدن بازی خواهد شد. بنابراین همیشه قبل از استفاده از متغیر www (کـــه از کلاس WWW تعریـــف شده است) این پارامتر چک شود. در این پارامتر انواع خطاها قرار می گیرد که در پست های بعدی به زودی مورد بررسی قرار خواهند گرفت. راحت ترین کار برای عدم مواجهه با این خطا ها به راحتی تست error به شکل زیر است/👇

if(www.error==null)

🔹 این حالت بررسی می کند آیا دانلود با خطا مواجه شده است یا خیر؟ (بررسی پارامتر error با مقدار null یعنی هیچ خطایی رخ نداده باشد) - بنابراین اگر می خواهید اسکریپت های قبل را تکمیل کنید، خط مشخص شده را به اسکریپت خود اضافه کنید. (این اسکریپت قرار دادن تکسچر دانلود شده برای آبجکت جاری است- که حتما متوجه شدید 👈 وقتی به اینترنت متصل نیستید، این اسکریپت خطا می دهد، بـــرای رفع این مشکل خط مشخص شده را در بین دو دستور قرار دهید)

while(!www.isDone);
🔹 if(www.error==null) 🔹
renderer.material.mainTexture = www.texture;

(فرض کنید متغیر www از نوع کلاس WWW است)

#بررسی_اتصال_به_اینترنت #دانلود #برنامه #یونیتی #اسکریپت_نویسی


کانال یونیتی لرنینگ
💢 @UnityLearning💢
⭕️ بررسی میزان حجم دانلود شده توسط کلاس WWW

📈 در صورتی بخواهیم بررسی کنیم دستور دانلود در کلاس WWW چه میزان حجمی را دانلود کرده است از پارامتر bytesDownloaded استفاده می‌کنیم. /👇

net.bytesDownloaded

🔹بنابراین اگر درخواست دانلود سایتی مثل گوگل را داشته باشیم و بخواهیم بررسی کنیم تا کنون چه حجمی از این سایت دانلود شده است مثل زیر عمل خواهیم کرد /👇

WWW net = new WWW("https://google.com");

if ( net.bytesDownloaded .....

👈این پارامتر یک متغیر عددی integer است که میزان حجم دانلود شده از url مورد نظر را بر حسب بایت در خود ذخیره می‌کند.

❗️ #نکته قابل ذکر: در زمان عدم اتصال رایانه (یا هر دستگاه دیگر که بازی روی آن اجرا می شود) ، به اینترنت این پارامتر برابر صفر ( 0 ) خواهد بود. بنابراین از سایر روش های بررسی اتصال به اینترنت چک کردن «صفر نبودن» این پارامتر است /👇

while (net.isDone);

if (net.bytesDownloaded == 0)
{
Debug.Log("No Internet Connection");
return;
}

#بررسی_اتصال_به_اینترنت #دانلود #اینترنت #اسکریپت_نویسی #سی_شارپ


⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
Textures_TilesBroken0024_1_seamless_S.jpg
1.1 MB
⭕️ #تکسچر کاشی مربعی، مناسب برای دیوارها و کف

🔹اندازه تکسچر نیز به صورت مربعی (1024*1024) است.

🔸برای دریافت بهترین نتیجه تکسچر را تکرار کنید. (یعنی برای یک دیوار چند تکسچر را کنار هم قرار دهید)
⭕️ ارسال اطلاعات به سرور

🔹تاکنون در مورد دریافت اطلاعات از #اینترنت مطالبی را قرار دادیم، اکنون لازم است مطالب مربوط به ارسال فرم اطلاعاتی به سرور را بیان کنیم.

▪️برای ارسال اطلاعات به سرور از کلاس WWWForm استفاده می‌شود، این کلاس با توابع خاصی که دارد اطلاعاتی که باید به سرور ارسال شود را دریافت می‌کند و سپس به کمک کلاس WWW این اطلاعات به سرور ارسال خواهد است.

WWWForm form = new WWWForm();

▫️توابعی که برای ارسال اطلاعات به این متغیر استفاده می‌شود به شرح زیر است. (این توابع در پست های بعدی مفصلا توضیح داده خواهند شد)

form.AddField

form.AddBinaryData

👈با دستور زیر که متغیری از #کلاس WWW تعریف می‌کند، آنچه در متغیر form است به سرور که آدرس آن در پارامتر اول داده شده است ارسال می‌شود/👇

WWW w = new WWW(ServerURL, form);

(بنابراین دقت نمایید اگر دستور فوق 👆 با یک پارامتر آدرس سایت نوشته شود، اطلاعات را از آن سایت دریافت می‌کند و اگر به نحو بالا با دو پارامتر نوشته شود اطلاعات موجود در پارامتر دوم از نوع WWWForm را به سرور با آدرس پارامتر اول ارسال می‌کند)

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

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

#سی_شارپ #اسکریپت_نویسی #یونیتی


⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
SendScreenShotToServer.js
1.2 KB
اسکریپت آماده ارسال یک اسکرین شات از صفحه بازی به سروری که در ابتدا وارد می شود. (url باید آدرس فایلی باشد که آپلود می شود و یا اینکه فرمی باشد که اطلاعات به آن ارسال می گردد)

به زبان #جاوا اسکریپت
درخواست اتصال شبکه (دستور Network.Connect)

🔹 در بازی اگر بخواهیم سیستم به سرور خاصی متصل شود از دستور Network.Connect استفاده می شود. این دستور هم برای اتصال به یک سرور در اینترنت و هم برای اتصال به سرور شبکه استفاده می شود. بنابراین هم در پارامتر اول می توان URL سرور و یا آدرس IP وارد کرد.

🔸 #کلاس Network در یونیتی برای مدیریت شبکه تعریف شده است. اعمالی مثل اتصال به سرور و... توسط این کلاس انجام می شود. این کلاس از کلاس های اصلی #یونیتی است و به کمک آن می توان به خیلی از دستورات و توابع دسترسی داشت. همچنین توابع آماده ای برای این کلاس تعریف شده است که در زمان های خاص اجرا شوند. به طور #مثال تابع OnConnectedToServer زمانی اجرا می شود که سیستم به یک شبکه خاص به طور موفق اتصال پیدا کند. مانند تابع Update ، Start و... که هر کدام در زمان خاصـــی اجرا می شوند، توابع این کلاس نیز هر کدام در زمان خاصی اجرا خواهند شد. در این پست می خواهیم ابتدایی ترین دستور این کلاس یعنی اتصال به یک سرور را توضیح دهیم، به این علــــت که این دستورات برای اتصال به سرور و ارسال اطلاعات لازم است.

قالب ساده از دستور Network.Connect به شکل زیر است/👇

Network.Connect (address[, port, password]);

🔹 پارامتر اول تنها پارامتر اجباری این دستور آدرس آی پی و یا نام دامنه سروری است که قصد اتصال به آن را داریم.

🔹 پارامتر دوم همانطور که مشاهده می شود (که در [] قرار گرفته است) اختیاری بوده و شمـــاره پورتی است که اتصال از طریق آن انجام می شود.

🔹 پارامتر سوم نیز در صورتی که برای اتصال پسوردی لازم باشد، پارامتر سوم پسورد در قالب یک رشته String است. مثلا اگر بخواهیم به سروری با آدرس IP = 127.0.0.1 و با پورت 25000 و همچنین با پسورد 12345678 متصل شویم دستور زیر را به شکـــل زیر می نویسیم.

Network.Connect ("127.0.0.1", 25000,"12345678");

🔸 ساخت بازی های آنلاین و آفلاینِ شبکه ای از طریق این دستور (ها) انجام می شود. اولین کار لازم هم اتصال به یک شبکه است که از طریق دستور بالا امکان پذیر است.

👈 #ادامه_دارد

#اسکریپت_نویسی #اتصال_به_شبکه #اینترنت #برنامه


کانال یونیتی لرنینگ
💢 @UnityLearning💢
⭕️ قطع اتصال انجام شده در #کلاس Network

🔹اگر با دستور Connect به سرور(host) متصل شده باشیم، در مقابل با دستور Disconnect می توانیم این اتصال و همچنین کلیه اتصلات شبکه ای سیستم را قطع کرد (به این اصطلاحا خاموش کردن رابط شبکه سیستم نیز می گویند) /👇

Network.Disconnect();

⭕️ آماده سازی یک سیستم به عنوان سرور

🔸تاکنون برای اتصال و قطع اتصال در کلاس Network مطالبی را بیان کردیم. اکنون برپایی یک سرور را توضیح می دهیم. (مطالبی که در این بخش ها بیان می‌شود صرفا آموزش یونیتی است و اگر شما در مورد شبکه آشنایی ندارید لطفا مطالب ابتدایی شبکه را از اینترنت مطالعه کنید)

👈 برای برپایی یک شبکه از دستور
Network.InitializeServer
استفاده می‌شود، مطالب این دستور مهم است. مثلا آدرس Ip که در دستور انتخاب می‌شود که باید همان آدرس سیستمی باشد که کد روی آن اجرا می‌شود.

🔹همچنین این دستور تعداد کانکشنی که می توانند به این سرور متصل شوند را مشخص می‌کند، در این دستور هم باید توجه داشت عددی انتخاب شود که بیشتر تعدادی که از نظر فیزیکی می توانند به این سیستم متصل شوند نباشد (به طور مثال در یک مودم وای فای قدیمی قابلیت اتصال نهایتا 8 دستگاه وجود دارد) .
▫️ دستورات تکمیلی را در پست های بعدی بیان خواهیم کرد. لطفا کانال را به دوستان تان معرفی کنید.

#اسکریپت_نویسی #اینترنت


⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢