⭕️مفاهیمی از هوش های مصنوعی استاندارد
⭕️ #مقدمه برای #هوش_مصنوعی_متحرک
🔰آبجکت هایی که به عنوان هوش مصنوعی در بازی ها مورد استفاده قرار می گیرند، یک سری ویژگی و رفتار خواهند داشت:
🔸گشت زنی یا Patrol این عمل در واقع مسیری است که آبجکت روی آن حرکت خواهد کرد. این عمل در کد های هوش مصنوعی با یک تابع معروف به همین نام انجام میشود.
🔹این تابع (Patrol) در محل های خواسته شده باعث حرکت آبجکت خواهد شد. (در پست های آینده کد ها توضیح داده میشود)
▪️در صورتی که آبجکت هدف مربوط به هوش مصنوعی(Target) در محدوده خاصی قرار بگیرد. این آبجکت( #هوش_مصنوعی ) به سمت آن می رود، در صورتی که به فاصله ای نسبت به آن برسد ایستاده و به سمت آن شلیک می کند.
▫️تابع این اعمال در کد های #اسکریپت_نویسی استاندارد AttackPlayer میباشد.
🔸حال این اعمال می تواند دقیق تر (واقعی تر) هم شود، که بستگی به نوع هوش مصنوعی استاندارد که استفاده میشود، دارد.
🔹به طور #مثال می توان کاری کرد اگر آبجکت هوش مصنوعی پشت به هدفش است، عمل Attack را انجام ندهد. این عمل نیز به وسیله تابعی به نام CanSeeTarget انجام میشود.
〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
⭕️ #مقدمه برای #هوش_مصنوعی_متحرک
🔰آبجکت هایی که به عنوان هوش مصنوعی در بازی ها مورد استفاده قرار می گیرند، یک سری ویژگی و رفتار خواهند داشت:
🔸گشت زنی یا Patrol این عمل در واقع مسیری است که آبجکت روی آن حرکت خواهد کرد. این عمل در کد های هوش مصنوعی با یک تابع معروف به همین نام انجام میشود.
🔹این تابع (Patrol) در محل های خواسته شده باعث حرکت آبجکت خواهد شد. (در پست های آینده کد ها توضیح داده میشود)
▪️در صورتی که آبجکت هدف مربوط به هوش مصنوعی(Target) در محدوده خاصی قرار بگیرد. این آبجکت( #هوش_مصنوعی ) به سمت آن می رود، در صورتی که به فاصله ای نسبت به آن برسد ایستاده و به سمت آن شلیک می کند.
▫️تابع این اعمال در کد های #اسکریپت_نویسی استاندارد AttackPlayer میباشد.
🔸حال این اعمال می تواند دقیق تر (واقعی تر) هم شود، که بستگی به نوع هوش مصنوعی استاندارد که استفاده میشود، دارد.
🔹به طور #مثال می توان کاری کرد اگر آبجکت هوش مصنوعی پشت به هدفش است، عمل Attack را انجام ندهد. این عمل نیز به وسیله تابعی به نام CanSeeTarget انجام میشود.
〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
#تگ های مطالب کانال تاکنون
▪️بـرای رفتن به پست های دارای هر تگ روی آن کلیک کنید و با دکــمه های بالا و پایین(در بالای صفحه) بین مطالب جابجا شوید.
🔰تـــــگ ها
🔸 #اسکریپت_نویسی
🔹 #هوش_مصنوعی
🔸 #مثال
🔹 #مقدمه
🔸 #درایور
🔹 #نرم_افزار
🔸 #دانلود
🔹 #آبجکت
🔸 #کامپوننت
🔹 #یونیتی
🔸 #صدا
🔹 #جاوا
🔸 #سی_شارپ
🔹 #کد_نویسی
🔸 #آموزش
🔹 #نصب
🔸 #کارت_گرافیک
🔹 #مناسبت
🔰آمــوزش بازی سازی با مــوتور یونیتی در کانال
🔰 @UnityLearning
▫️لطفا ً کانال را به دوستان و آشنایان خود معرفی کنید.
〰〰〰〰〰
⭕️کــانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
▪️بـرای رفتن به پست های دارای هر تگ روی آن کلیک کنید و با دکــمه های بالا و پایین(در بالای صفحه) بین مطالب جابجا شوید.
🔰تـــــگ ها
🔸 #اسکریپت_نویسی
🔹 #هوش_مصنوعی
🔸 #مثال
🔹 #مقدمه
🔸 #درایور
🔹 #نرم_افزار
🔸 #دانلود
🔹 #آبجکت
🔸 #کامپوننت
🔹 #یونیتی
🔸 #صدا
🔹 #جاوا
🔸 #سی_شارپ
🔹 #کد_نویسی
🔸 #آموزش
🔹 #نصب
🔸 #کارت_گرافیک
🔹 #مناسبت
🔰آمــوزش بازی سازی با مــوتور یونیتی در کانال
🔰 @UnityLearning
▫️لطفا ً کانال را به دوستان و آشنایان خود معرفی کنید.
〰〰〰〰〰
⭕️کــانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
⭕️ #مقاله ای «انگلیسی» در رابطه با نحوه ی ساخت موتور یونیتی در حالت شبکه ای با عنوان
▪️Design and development of unity 3D game engine based smart SNG ▫️
▫️▪️▫️▪️▫️▪️▫️▪️
▫️@UnityLearning▪️
▪️▫️▪️▫️▪️▫️▪️▫️
در پست بعدی برای مطالعه بیشتر اعضا قرار می گیرد.
👇👇👇👇👇👇👇👇👇
▪️Design and development of unity 3D game engine based smart SNG ▫️
▫️▪️▫️▪️▫️▪️▫️▪️
▫️@UnityLearning▪️
▪️▫️▪️▫️▪️▫️▪️▫️
در پست بعدی برای مطالعه بیشتر اعضا قرار می گیرد.
👇👇👇👇👇👇👇👇👇
⭕ کار با #زمان در یونیتی
#اسکریپت_نویسی #کد_نویسی #جاوا #آموزش #یونیتی
🔸برای استفاده از مباحـــث مربوط به زمان در یونیتی از کلاس Time به همیــن منظور اســتفاده می شود. در واقع کلاس تایم در یونیتی به منظور بهره گیری و شبیه سازی زمان ایجاد شده است.
🔹 دستورات زیادی مربوط به زمان می شود، مثلا اجرای بازی در یک زمان خاص، بخش بندی زمان، متوقــف کردن بازی (Pause) و...
▫ دستــور Time.timeScale :
در واقـــع این دستور به منظور سرعت بازی را تغییر می دهد. اگر مقدار آن را برابر یک قرار دهیم یعنی سرعت بازی به صــورت طبیعی و عادی باشد، در صــورتی که مقدار آن را بین 0 و 1 قرار دهیم، یعنی سرعت بازی را کاهش داده ایم و اگر مقداری بیشتر از 1 به این دستور بدهیم، به ایــن معنی خواهد بود که سرعت بازی سریع شود.
-▪ به طور #مثال اگر
Time.timeScale=0.5;
باشد، یعنی سرعت بازی نصف (به صورت slowmation) خواهد بود.
▫نکتــه ای کــه در این جا لازم است بیان شود، این است کــه اگر مقدار این دستور برابر 0 شود در واقع بازی شما متوقف یا Pause می شود.
⭕ سایر دستورات و مطالب مربوط به کلاس زمان در پست های بعــدی قرار خواهد گرفت.
❗توجه کنید ❗ با توجه به اضافه شدن هشتگ #زمان به مطالب کانال شما می توانید برای دسترسی به ادامه مطالب مربوط به کلاس Time روی این هشتگ کلیک کنید.
〰〰〰〰〰〰
⭕کانال یونیتی لرنینگ⭕
💢@UnityLearning💢
#اسکریپت_نویسی #کد_نویسی #جاوا #آموزش #یونیتی
🔸برای استفاده از مباحـــث مربوط به زمان در یونیتی از کلاس Time به همیــن منظور اســتفاده می شود. در واقع کلاس تایم در یونیتی به منظور بهره گیری و شبیه سازی زمان ایجاد شده است.
🔹 دستورات زیادی مربوط به زمان می شود، مثلا اجرای بازی در یک زمان خاص، بخش بندی زمان، متوقــف کردن بازی (Pause) و...
▫ دستــور Time.timeScale :
در واقـــع این دستور به منظور سرعت بازی را تغییر می دهد. اگر مقدار آن را برابر یک قرار دهیم یعنی سرعت بازی به صــورت طبیعی و عادی باشد، در صــورتی که مقدار آن را بین 0 و 1 قرار دهیم، یعنی سرعت بازی را کاهش داده ایم و اگر مقداری بیشتر از 1 به این دستور بدهیم، به ایــن معنی خواهد بود که سرعت بازی سریع شود.
-▪ به طور #مثال اگر
Time.timeScale=0.5;
باشد، یعنی سرعت بازی نصف (به صورت slowmation) خواهد بود.
▫نکتــه ای کــه در این جا لازم است بیان شود، این است کــه اگر مقدار این دستور برابر 0 شود در واقع بازی شما متوقف یا Pause می شود.
⭕ سایر دستورات و مطالب مربوط به کلاس زمان در پست های بعــدی قرار خواهد گرفت.
❗توجه کنید ❗ با توجه به اضافه شدن هشتگ #زمان به مطالب کانال شما می توانید برای دسترسی به ادامه مطالب مربوط به کلاس Time روی این هشتگ کلیک کنید.
〰〰〰〰〰〰
⭕کانال یونیتی لرنینگ⭕
💢@UnityLearning💢
⭕️ادامه مطالب #کلاس Time
(شبیه سازی مطالب مربوط به #زمان در #یونیتی )
▫️دستور Time.time :
این دستور زمان بازی از ابتدای شروع آن را بر می گرداند.
توجه گردد که این دستور به صورت Read Only است و فقط برای دسترسی به زمان بازی مورد استفاده قرار میگیرد.
🔹توجه کنید که شمارش زمان بازی توسط این دستور بر اساس هزارم ثانیه است.
▫️دستور Time.deltaTime :
به منظور اجرای یک دستور در بازه ی زمانی خاص مثلا هر ثانیه از این دستور در شرط ها استفاده میشود. این برای زمانی است که بخواهیم بدون ایجاد وقفه در کد یک بازه ی زمانی ایجاد کنیم.
〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
(شبیه سازی مطالب مربوط به #زمان در #یونیتی )
▫️دستور Time.time :
این دستور زمان بازی از ابتدای شروع آن را بر می گرداند.
توجه گردد که این دستور به صورت Read Only است و فقط برای دسترسی به زمان بازی مورد استفاده قرار میگیرد.
🔹توجه کنید که شمارش زمان بازی توسط این دستور بر اساس هزارم ثانیه است.
▫️دستور Time.deltaTime :
به منظور اجرای یک دستور در بازه ی زمانی خاص مثلا هر ثانیه از این دستور در شرط ها استفاده میشود. این برای زمانی است که بخواهیم بدون ایجاد وقفه در کد یک بازه ی زمانی ایجاد کنیم.
〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
⭕ آموزش ایجاد #انیمیشن در #یونیتی
🔹 برای ایجاد #آبجکت های دارای انیمیشن از نرم افزار هایی مثل Maya یا 3D Max استفاده می شود.
🔜 نرم افزار 3D Max برای ایجاد آبجکت های انیمیشن دار در پست های بعدی آموزش داده می شود.
▪ با فرض داشتــن آبجکت دارای ویژگــی انیمیشن در یونیتی، در صورتی که این آبجکت را بعد از اضافه کردن به پنجره Project ، به محیـــط بازی مان اضافه کنیم، این آبجکت بــه صورت خودکار دارای #کامپوننت Animator برای شبیه سازی عملیات ایجاد انیمیشن خواهد بود. در صورتی که آبجکت مورد نظر فاقد این کامپوننت بود، آن را از منوی
Component - Miscellaneous - Animator
به آن اضافه می کنیم.
🔸 آبجکت هایی که دارای انیمیشن هستند، می توانند برای هر انیمیشن خود یک نام انیمیشن داشتــه باشند. به طور مثال آبجکت صندوقچه (که در پست های بعدی برای دانلود قرار خواهد گرفت) دارای انیمیشن Open و Close برای باز و بسته شدن درب آن است.
▫ در این صورت برای اجرا شدن هر انیمیشن نام آن را بــه Animation مربوط به کامپوننت Animator می دهیم.
🔹 در صورتی که بخوهیم این انیمیشن در ابتدای شروع بازی، شروع شود، تیــک گزینه ی Play Automatically را می زنیم. سایر انیمیشن های آبجکت نیز در Animations دیــده می شود.
🔸 اجرای انیمیشن لازم است در زمان اجرای بازی با #کد_نویسی و #اسکریپت_نویسی انجام شود. این آموزش ها در پست های بعدی قرار خواهد گرفـــت.
⭕همانطـــور که بیــان شد، آبجکت های دارای انیمیشن در پست های بعدی برای دانلود شما قرار خواهد گرفــت.
〰〰〰〰〰
⭕ کانال یونیتی لرنینگ⭕
🔹 @UnityLearning🔹
🔹 برای ایجاد #آبجکت های دارای انیمیشن از نرم افزار هایی مثل Maya یا 3D Max استفاده می شود.
🔜 نرم افزار 3D Max برای ایجاد آبجکت های انیمیشن دار در پست های بعدی آموزش داده می شود.
▪ با فرض داشتــن آبجکت دارای ویژگــی انیمیشن در یونیتی، در صورتی که این آبجکت را بعد از اضافه کردن به پنجره Project ، به محیـــط بازی مان اضافه کنیم، این آبجکت بــه صورت خودکار دارای #کامپوننت Animator برای شبیه سازی عملیات ایجاد انیمیشن خواهد بود. در صورتی که آبجکت مورد نظر فاقد این کامپوننت بود، آن را از منوی
Component - Miscellaneous - Animator
به آن اضافه می کنیم.
🔸 آبجکت هایی که دارای انیمیشن هستند، می توانند برای هر انیمیشن خود یک نام انیمیشن داشتــه باشند. به طور مثال آبجکت صندوقچه (که در پست های بعدی برای دانلود قرار خواهد گرفت) دارای انیمیشن Open و Close برای باز و بسته شدن درب آن است.
▫ در این صورت برای اجرا شدن هر انیمیشن نام آن را بــه Animation مربوط به کامپوننت Animator می دهیم.
🔹 در صورتی که بخوهیم این انیمیشن در ابتدای شروع بازی، شروع شود، تیــک گزینه ی Play Automatically را می زنیم. سایر انیمیشن های آبجکت نیز در Animations دیــده می شود.
🔸 اجرای انیمیشن لازم است در زمان اجرای بازی با #کد_نویسی و #اسکریپت_نویسی انجام شود. این آموزش ها در پست های بعدی قرار خواهد گرفـــت.
⭕همانطـــور که بیــان شد، آبجکت های دارای انیمیشن در پست های بعدی برای دانلود شما قرار خواهد گرفــت.
〰〰〰〰〰
⭕ کانال یونیتی لرنینگ⭕
🔹 @UnityLearning🔹
فرا رسیدن سال نو میلادی بر شما مبارک🎉🎈
⭕️کانال یونیتی لرنینگ فرا رسیدن سال 2017 میلادی را به تمام کاربران تبریک عرض میکند.🎉🎊
💢 @UnityLearning 💢
⭕️کانال یونیتی لرنینگ فرا رسیدن سال 2017 میلادی را به تمام کاربران تبریک عرض میکند.🎉🎊
💢 @UnityLearning 💢
⭕ #کد_نویسی ها و #اسکریپت_نویسی های مربوط به کامپوننت صدا در یونیـــتی
◀ #آموزش کار با صدا در #یونیتی
🔹 برای کار با #کامپوننت ها در یونیـــتی و در زمان کد نویسی از این روش کد نویسی استفاده می کنیم
gameObject.GetComponent.<Comp_Name>().Attr();
👈که در این کــد Comp_Name نام کامپوننتی است که می خواهیم به آن دسترسی داشته باشیم و Attr نام ویژگی مورد نظر ما خواهد بود«که می خواهیم به ویژگی ها آن دسترسی داشته باشـــیم»
🔸 برای اجرای (شـــروع پخش) یک صدا از کد زیر استفاده می شود. در واقع این کد صدای متصل شده به Source مربوط بــه کامپوننت Audio را از ابتــــدا پخش می کند، کد خط بعدی هم صدا را قطع خواهد کرد.
gameObject.GetComponent.<AudioSource>().Play();
GetComponent.<AudioSource>().Stop();
▫ نکات این دو خط کد: این کــد ها هر دو به یک معنا هستند، یعنی اگر gameObject نوشته شود یا نشود در هر دو حالت تابع GetComponent کامپوننت های آبجکتی که کد به آن متـــصل شده را بر می گرداند.
🔸 برای تعویض صدای یک کاپوننت نیز باید به ویژگی Source آن دسترسی داشت، به این ترتیب که باید یک موزیک در ورودی کد تعریف کنیم(یعنی یک متغیر از نوع Audio) و آن را به ویژگیِ Source مربوط به AudioSource نسبت بدهیم.
GetComponent.<AudioSource>().Source=AudioM;
👈 در این کد فرض کنید AuidoM یک متغــیر از نوع Audio است که در یونیتی به آن یک موزیک از پنجره پروجکت نسبت می دهیم.
🔷 @UnityLearning🔷
⭕ آنچه برای کد نویسی های مربوط به #صدا در بازی لازم است بدانیم، تغییر دادن گوش کننده ی صدا یا AudioListener است. همانطور که قبلاً نیز توضیح داده شد، در هر بازی باید فقط یک AudioListener داشته باشیم. بنابراین اگر می خواهیم به هر دلیلی(به طور #مثال برای سوار ماشین شدن) گوش کننده صدای بازی تغییر کند، می توانیم به این نحو کد نویسی کنیم.
transform.GetComponent(AudioListener).enabled=true;
و
player.GetComponent(AudioListener).enabled=false;
👈 این کــد ها در واقع جابجا کردن AudioListener از آبجکتِ player به transform که کد به آن متصل شده است، می باشد.
⛔ هر گونــه کپــی برداری از مطــالب کانال غیر مجـــاز است⛔
〰〰〰〰〰〰〰〰
⭕کانال یونیتی لرنینگ⭕
💢@UnityLearning💢
◀ #آموزش کار با صدا در #یونیتی
🔹 برای کار با #کامپوننت ها در یونیـــتی و در زمان کد نویسی از این روش کد نویسی استفاده می کنیم
gameObject.GetComponent.<Comp_Name>().Attr();
👈که در این کــد Comp_Name نام کامپوننتی است که می خواهیم به آن دسترسی داشته باشیم و Attr نام ویژگی مورد نظر ما خواهد بود«که می خواهیم به ویژگی ها آن دسترسی داشته باشـــیم»
🔸 برای اجرای (شـــروع پخش) یک صدا از کد زیر استفاده می شود. در واقع این کد صدای متصل شده به Source مربوط بــه کامپوننت Audio را از ابتــــدا پخش می کند، کد خط بعدی هم صدا را قطع خواهد کرد.
gameObject.GetComponent.<AudioSource>().Play();
GetComponent.<AudioSource>().Stop();
▫ نکات این دو خط کد: این کــد ها هر دو به یک معنا هستند، یعنی اگر gameObject نوشته شود یا نشود در هر دو حالت تابع GetComponent کامپوننت های آبجکتی که کد به آن متـــصل شده را بر می گرداند.
🔸 برای تعویض صدای یک کاپوننت نیز باید به ویژگی Source آن دسترسی داشت، به این ترتیب که باید یک موزیک در ورودی کد تعریف کنیم(یعنی یک متغیر از نوع Audio) و آن را به ویژگیِ Source مربوط به AudioSource نسبت بدهیم.
GetComponent.<AudioSource>().Source=AudioM;
👈 در این کد فرض کنید AuidoM یک متغــیر از نوع Audio است که در یونیتی به آن یک موزیک از پنجره پروجکت نسبت می دهیم.
🔷 @UnityLearning🔷
⭕ آنچه برای کد نویسی های مربوط به #صدا در بازی لازم است بدانیم، تغییر دادن گوش کننده ی صدا یا AudioListener است. همانطور که قبلاً نیز توضیح داده شد، در هر بازی باید فقط یک AudioListener داشته باشیم. بنابراین اگر می خواهیم به هر دلیلی(به طور #مثال برای سوار ماشین شدن) گوش کننده صدای بازی تغییر کند، می توانیم به این نحو کد نویسی کنیم.
transform.GetComponent(AudioListener).enabled=true;
و
player.GetComponent(AudioListener).enabled=false;
👈 این کــد ها در واقع جابجا کردن AudioListener از آبجکتِ player به transform که کد به آن متصل شده است، می باشد.
⛔ هر گونــه کپــی برداری از مطــالب کانال غیر مجـــاز است⛔
〰〰〰〰〰〰〰〰
⭕کانال یونیتی لرنینگ⭕
💢@UnityLearning💢
⭕️پاسخ به #درخواست کاربران
🔰رفع #مشکل #کرک نشدن #یونیتی
‼️گاهی اوقات یونیتی ورژن 5 به بعد، با استفاده از فایل Patch کرک نمیشود.
🔸در این رابطه به نکات زیر توجه کنید.
✔️حتما فایل Patch را Run as administrator کنید.
✔️در صورتی که مورد قبل کار ساز نبود، به پوشه نصب یونیتی دسترسی کامل دهید.
✔️از محیط Safe Mode استفاده کنید.
✔️ممکن است ورژن انتخاب شده با ورژن یونیتی یکی نباشد.
👌فایل Patch قرار داده شده در کانال یکی از پر کاربرد ترین کرک ها برای یونیتی تا کنون است.
⚠️در صورتی که کرک جدیدی برای یونیتی ارایه شود، حتما در کانال قرار خواهد گرفت.
👈به روز ترین آموزش های یونیتی در یونیتی لرنینگ👉
🔰به ما بپیوندید🔰
〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢 @UnityLearning💢
🔰رفع #مشکل #کرک نشدن #یونیتی
‼️گاهی اوقات یونیتی ورژن 5 به بعد، با استفاده از فایل Patch کرک نمیشود.
🔸در این رابطه به نکات زیر توجه کنید.
✔️حتما فایل Patch را Run as administrator کنید.
✔️در صورتی که مورد قبل کار ساز نبود، به پوشه نصب یونیتی دسترسی کامل دهید.
✔️از محیط Safe Mode استفاده کنید.
✔️ممکن است ورژن انتخاب شده با ورژن یونیتی یکی نباشد.
👌فایل Patch قرار داده شده در کانال یکی از پر کاربرد ترین کرک ها برای یونیتی تا کنون است.
⚠️در صورتی که کرک جدیدی برای یونیتی ارایه شود، حتما در کانال قرار خواهد گرفت.
👈به روز ترین آموزش های یونیتی در یونیتی لرنینگ👉
🔰به ما بپیوندید🔰
〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢 @UnityLearning💢
🔹میلاد با سعادت حضرت امام حسن عسکری پدر بزرگوار امام زمان علیها السلام را به همه مسلمانان جهان تبریک عرض میکنیم.
السلام علیک یا امام حسن عسکری
〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢 @UnityLearning 💢
السلام علیک یا امام حسن عسکری
〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢 @UnityLearning 💢
⚫️درگذشت حضرت آیت اله رفسنجانی، رییس مجمع تشخیص مصلحت نظام را تسلیت عرض می کنیم.
❗️تنها خبر صحیح و تایید شده❗️
🔰طبق اطلاعیه های قبلی راجع به درگذشت حضرت آیت اله هاشمی رفسنجانی(ره) دولت سه شنبه، روز تشییع پیکر ایشان را تعطیل اعلام کرد.
⭕️لینک خبر در پایگاه شبکه بین المللی خبر
▫️▪️▫️▪️▫️▪️▫️▪️▫️
http://irinn.ir/news/219521/هیئت-دولت-سه-روز-عزای-عمومی-اعلام-کرد-سه-شنبه-تعطیل-عمومی-است
▪️▫️▪️▫️▪️▫️▪️▫️▪️
🔰طبق اطلاعیه های قبلی راجع به درگذشت حضرت آیت اله هاشمی رفسنجانی(ره) دولت سه شنبه، روز تشییع پیکر ایشان را تعطیل اعلام کرد.
⭕️لینک خبر در پایگاه شبکه بین المللی خبر
▫️▪️▫️▪️▫️▪️▫️▪️▫️
http://irinn.ir/news/219521/هیئت-دولت-سه-روز-عزای-عمومی-اعلام-کرد-سه-شنبه-تعطیل-عمومی-است
▪️▫️▪️▫️▪️▫️▪️▫️▪️
🔰به #درخواست کاربران کانال به زودی یک سری #تکسچر کاملا استاندارد، مربوط به بازی معروف IGI برای دانلود در کانال قرار می گیرد.
〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
⭕ #اسکریپت_نویسی و #کد_نویسی مربـــوط به حرکــــت یک #آبجکت به صــــورت خودکــــار روی مســــیر تعیین شده
◀ این کد بــه #درخواست کاربران در کانال قرار می گیرد.
▫ برای این کار از روش های خـــاص هوش مصنوعی (عمل Patrol کـــه در کدهای گذاشته بیان شد) انجام می شود. در واقع عمل پاترول دقیقا همین کار را برای یک آبجکـــت هوش مصنـــوعی شبیه سازی می کند.
🔹 این کـــد نیاز به آبجکت هایی برای تعیین مسیر حرکت آبجکت (در گوشه های مسیر حرکت دارد. که این کار توسط اسکریپت دیگری به نام Autowaypoint انجام میشود. این اسکرپیت را به آبجکت های مورد نظر می دهید و کد مسیر را برای شما مشخص می کند(به صورت کاملاً بصری در زمان طراحی بازی با استفاده از روش های Gizmo و GUI) - تصویر مسیر ایجاد شده توسط این کد در مرحله طراحی بازی، در عکس (پست های بعدی) برای تان ارسال می شود، تا کارکرد آن را ببنید.
❗ سپس این مسیر ها توسط کد اصلی انتخاب شده و آبجکت روی آن حرکت خواهد کرد. (این کد برای شما در پست بعدی قرار خواهد گرفـــت، اما برای استفاده از آن به کد Autowaypoint نیاز خواهید داشت)
💲 این کد که کاملا کاربردی و صحیح نوشته شده است و اعمال گفته شده را کاملا صحیح انجام میدهد به قیمت 2000 تومان و توضیحات عملکرد توابع آن نیز به قیمت 3000 تومان در اختیار شما قرار خواهد گرفت.
🔸 شما کاربر عزیز برای خرید این کد و سایر کدهای #فروش کانال می توانید به آی دی فروش یونیتی لرنینگ پیام بدهید.
@UnityLearning_Shop
✅ کد حرکت روی مسیر (AI_Move) در پست بعدی برای دانلود و مشاهده شما قرار خواهد گرفت.
❗ کد های زیادی برای عمل Waypoint نوشته شده است. می توانید سایر نمونه ها را از اینتنرت دانلود کنید. (عملکرد کد فروشی کانـــال در یک عکس برای تان ارسال می شود)
〰〰〰〰〰〰
⭕کانال یونـــیتی لرنینگ⭕
▫@UnityLearning▫
◀ این کد بــه #درخواست کاربران در کانال قرار می گیرد.
▫ برای این کار از روش های خـــاص هوش مصنوعی (عمل Patrol کـــه در کدهای گذاشته بیان شد) انجام می شود. در واقع عمل پاترول دقیقا همین کار را برای یک آبجکـــت هوش مصنـــوعی شبیه سازی می کند.
🔹 این کـــد نیاز به آبجکت هایی برای تعیین مسیر حرکت آبجکت (در گوشه های مسیر حرکت دارد. که این کار توسط اسکریپت دیگری به نام Autowaypoint انجام میشود. این اسکرپیت را به آبجکت های مورد نظر می دهید و کد مسیر را برای شما مشخص می کند(به صورت کاملاً بصری در زمان طراحی بازی با استفاده از روش های Gizmo و GUI) - تصویر مسیر ایجاد شده توسط این کد در مرحله طراحی بازی، در عکس (پست های بعدی) برای تان ارسال می شود، تا کارکرد آن را ببنید.
❗ سپس این مسیر ها توسط کد اصلی انتخاب شده و آبجکت روی آن حرکت خواهد کرد. (این کد برای شما در پست بعدی قرار خواهد گرفـــت، اما برای استفاده از آن به کد Autowaypoint نیاز خواهید داشت)
💲 این کد که کاملا کاربردی و صحیح نوشته شده است و اعمال گفته شده را کاملا صحیح انجام میدهد به قیمت 2000 تومان و توضیحات عملکرد توابع آن نیز به قیمت 3000 تومان در اختیار شما قرار خواهد گرفت.
🔸 شما کاربر عزیز برای خرید این کد و سایر کدهای #فروش کانال می توانید به آی دی فروش یونیتی لرنینگ پیام بدهید.
@UnityLearning_Shop
✅ کد حرکت روی مسیر (AI_Move) در پست بعدی برای دانلود و مشاهده شما قرار خواهد گرفت.
❗ کد های زیادی برای عمل Waypoint نوشته شده است. می توانید سایر نمونه ها را از اینتنرت دانلود کنید. (عملکرد کد فروشی کانـــال در یک عکس برای تان ارسال می شود)
〰〰〰〰〰〰
⭕کانال یونـــیتی لرنینگ⭕
▫@UnityLearning▫
AI_Move.js
2.2 KB
⭕️اسکریپت کامل مربوط به حرکت یک آبجکت در مسیر تعیین شده توسط Autowaypoint
#اسکریپت_نویسی #کد_نویسی
🔰توضیحات کامل🔰
http://Telegram.me/UnityLearning/243
⭕️کانال یونیتی لرنینگ⭕️
@UnityLearning
#اسکریپت_نویسی #کد_نویسی
🔰توضیحات کامل🔰
http://Telegram.me/UnityLearning/243
⭕️کانال یونیتی لرنینگ⭕️
@UnityLearning
⭕ خطوط رســم شده با استفاده از اسکرپیت Autowaypoint
🔰اطلاعات بیشتر🔰
http://Telegram.me/UnityLearning/243
〰〰〰〰〰
⭕ کانال یونیتی لرنینگ⭕
💢 @UnityLearning💢
🔰اطلاعات بیشتر🔰
http://Telegram.me/UnityLearning/243
〰〰〰〰〰
⭕ کانال یونیتی لرنینگ⭕
💢 @UnityLearning💢
⭕ آمـــوزش پخش یک موزیک در هنگام وارد شدن بازیکـــن به تریگر یک آبجکت
این #آموزش به #درخواست کاربران کانال در اختیار شما قرار می گیرد. در واقـــع این یک مثال از آموخته های قبلی است.
▫ برای این کار روش های بسیاری وجود دارد، که چندتای آن ها را با هم بررسی می کنیم. یک روش می تواند، دادن آهنگ به یک آبجکت و Instantiate کردن آن در هنگام Destroy شــدن آبجکت دیگر است(مطالب گفته شده یعنی چگونگی کار با دستورات بیان شده، به همراه کد در پست های اولیه کانال موجود است)
🔹 روشی که قصـــد داریم، در این پست توضیح دهیم، که در اصل کار با کد های قبلاً توضیـــح داده شده است، این است که، ابتدا #صدا ی مورد نظـــر را به #آبجکت می دهیم. بعد از تنظـــیم کردن Collider و سایر موارد گفته شده ی لازم در #کامپوننت کالیدر (مثل زدن تیک گزینه Trigger) مربـــوط به آبجکت، می توانیم با نوشتن یک اسکریپت کد عمل خواسته شده را انجام دهیم.
🔸 کد به این صورت خواهد بود که، در تابع OnTriggerEnter خواهیم نوشت
GetComponent.<AudioSource>().Play();
🔹 این کد، در پســـت های قبـــل کاملا توضیح داده شده اســـت.
▪ در صورتی که بخواهیم بعد از گذشت چند لحظه آهنگ پخش شده را قطع کنیم نیز می توانیم از دستور ایجاد #وقفه در یونیتی (به زبان جاوا) کمک بگیریم. سپس کد Pause شدن موزیک را که در بخش کد نویسی #صدا کاملاً توضیح داده شد، برای کامپوننت AudioSource می نویسیم.
🕛 دستور کار با #زمان ایجاد یک وقفه زمانی و بر حسب ثانیه به شکــل زیر در یونیتی و در #اسکریپت_نویسی و #کد_نویسی نوشته خواهد شد. دقت کنید زبان این کد #جاوا است.
yield WaitForSeconds(Num);
👈 به جای عبارت Num عدد بر حسب ثانیه قرار خواهد گرفت به طور #مثال دستور زیر یک وقفه 8 ثانـــیه ای ایجاد و دستور بعد از آن بعد از هشت ثانیه اجرا می شود.
yield WaitForSeconds(8);
🔺این دستــــور در یونیتی کاربرد بسیار دارد، شما در کدهای استاندارد که دانلود می کنید، حتما بسیار با این دستور مواجه شده اید.
▫ روش دیگر برای این کار جابجا کردن سورس اصلی مربوط به بازیکن بازی است، برای این کار آهنگ مورد نظر را به اسکریپت می دهیم و آن را در FPC یا هر پلیر دیگری که برای بازی خود داریم، پخش می کنیم.
〰〰〰〰〰〰
⭕کانال یونـــیتی لرنینگ⭕
▫@UnityLearning▫
این #آموزش به #درخواست کاربران کانال در اختیار شما قرار می گیرد. در واقـــع این یک مثال از آموخته های قبلی است.
▫ برای این کار روش های بسیاری وجود دارد، که چندتای آن ها را با هم بررسی می کنیم. یک روش می تواند، دادن آهنگ به یک آبجکت و Instantiate کردن آن در هنگام Destroy شــدن آبجکت دیگر است(مطالب گفته شده یعنی چگونگی کار با دستورات بیان شده، به همراه کد در پست های اولیه کانال موجود است)
🔹 روشی که قصـــد داریم، در این پست توضیح دهیم، که در اصل کار با کد های قبلاً توضیـــح داده شده است، این است که، ابتدا #صدا ی مورد نظـــر را به #آبجکت می دهیم. بعد از تنظـــیم کردن Collider و سایر موارد گفته شده ی لازم در #کامپوننت کالیدر (مثل زدن تیک گزینه Trigger) مربـــوط به آبجکت، می توانیم با نوشتن یک اسکریپت کد عمل خواسته شده را انجام دهیم.
🔸 کد به این صورت خواهد بود که، در تابع OnTriggerEnter خواهیم نوشت
GetComponent.<AudioSource>().Play();
🔹 این کد، در پســـت های قبـــل کاملا توضیح داده شده اســـت.
▪ در صورتی که بخواهیم بعد از گذشت چند لحظه آهنگ پخش شده را قطع کنیم نیز می توانیم از دستور ایجاد #وقفه در یونیتی (به زبان جاوا) کمک بگیریم. سپس کد Pause شدن موزیک را که در بخش کد نویسی #صدا کاملاً توضیح داده شد، برای کامپوننت AudioSource می نویسیم.
🕛 دستور کار با #زمان ایجاد یک وقفه زمانی و بر حسب ثانیه به شکــل زیر در یونیتی و در #اسکریپت_نویسی و #کد_نویسی نوشته خواهد شد. دقت کنید زبان این کد #جاوا است.
yield WaitForSeconds(Num);
👈 به جای عبارت Num عدد بر حسب ثانیه قرار خواهد گرفت به طور #مثال دستور زیر یک وقفه 8 ثانـــیه ای ایجاد و دستور بعد از آن بعد از هشت ثانیه اجرا می شود.
yield WaitForSeconds(8);
🔺این دستــــور در یونیتی کاربرد بسیار دارد، شما در کدهای استاندارد که دانلود می کنید، حتما بسیار با این دستور مواجه شده اید.
▫ روش دیگر برای این کار جابجا کردن سورس اصلی مربوط به بازیکن بازی است، برای این کار آهنگ مورد نظر را به اسکریپت می دهیم و آن را در FPC یا هر پلیر دیگری که برای بازی خود داریم، پخش می کنیم.
〰〰〰〰〰〰
⭕کانال یونـــیتی لرنینگ⭕
▫@UnityLearning▫
⭕بررسی مقدار دهی متغیر های سراسری در #یونیتی
#آموزش نکات #برنامه_نویسی و #اسکریپت_نویسی به زبان #جاوا
🔹 برای بررسی این که، آیا متغیری که به صورت سراسری(بـــرای مقدار دهی در #برنامه یونیـــتی) مقدار دهـــی شده است یا خیر؟ از این روش و تکنــــیک برنامــه نویسی استفاده می کنیم.
🔸 فرض کنید، متغیر test را به صورت سراسری (در ابتدا و بیرون همه توابع) تعریف کرده ایم، یعنــــــی:
# pragma strict
var Test:GameObject;
.....
👈فرض می شود نوع متغیر GameObject یا هر نوع دیگری است، در این جا برای بررسی این که آیا Test در برنامه یونیتی مقدار دهی شده است یا خیر، از کد نویسی به شکل زیر استـــفاده می کنیم.
if (Test)
{....}
👈در واقع با این کار بررسی میکنیم اگر متغیر مورد نظر در یونیتی مقدار دهی شده است، اعمال شرط انجام شود.
⚪ این نحوه کد نویسی برای جلو گیری از خطا های انسانی که ممکن است در فراموش کردن مقدار دهی در یونیتی ایجاد شود، استفاده میشود.
〰〰〰〰〰〰
⭕کانال یونیتی لرنینگ⭕
⚪ @UnityLearning⚪
#آموزش نکات #برنامه_نویسی و #اسکریپت_نویسی به زبان #جاوا
🔹 برای بررسی این که، آیا متغیری که به صورت سراسری(بـــرای مقدار دهی در #برنامه یونیـــتی) مقدار دهـــی شده است یا خیر؟ از این روش و تکنــــیک برنامــه نویسی استفاده می کنیم.
🔸 فرض کنید، متغیر test را به صورت سراسری (در ابتدا و بیرون همه توابع) تعریف کرده ایم، یعنــــــی:
# pragma strict
var Test:GameObject;
.....
👈فرض می شود نوع متغیر GameObject یا هر نوع دیگری است، در این جا برای بررسی این که آیا Test در برنامه یونیتی مقدار دهی شده است یا خیر، از کد نویسی به شکل زیر استـــفاده می کنیم.
if (Test)
{....}
👈در واقع با این کار بررسی میکنیم اگر متغیر مورد نظر در یونیتی مقدار دهی شده است، اعمال شرط انجام شود.
⚪ این نحوه کد نویسی برای جلو گیری از خطا های انسانی که ممکن است در فراموش کردن مقدار دهی در یونیتی ایجاد شود، استفاده میشود.
〰〰〰〰〰〰
⭕کانال یونیتی لرنینگ⭕
⚪ @UnityLearning⚪
⭕️آموزش های جدید و حرفه ای در کانال یونیتی لرنینگ
🔰آموزش ساخت بازی های ویدیویی با موتور قدرتمند یونیتی، به صورت گام به گام و گرافیکی
▫️دانلود مقالات
▪️دانلود تکسچر.
▫️کدهای آماده
▪️مدل های گرافیکی
▫️آخرین تغییرات یونیتی
▪️آموزش برنامه های مرتبط با بازی سازی
ـ🔰🔰🔰🔰🔰🔰🔰🔰🔰
▫️همه در یونیتی لرنینگ▪️
💢 @UnityLearning 💢
🔹کانال ما را به دوستان و آشنایان خود معرفی کنید.
https://t.me/joinchat/AAAAAD7sAY7DK1rrihLJ8w
🔰آموزش ساخت بازی های ویدیویی با موتور قدرتمند یونیتی، به صورت گام به گام و گرافیکی
▫️دانلود مقالات
▪️دانلود تکسچر.
▫️کدهای آماده
▪️مدل های گرافیکی
▫️آخرین تغییرات یونیتی
▪️آموزش برنامه های مرتبط با بازی سازی
ـ🔰🔰🔰🔰🔰🔰🔰🔰🔰
▫️همه در یونیتی لرنینگ▪️
💢 @UnityLearning 💢
🔹کانال ما را به دوستان و آشنایان خود معرفی کنید.
https://t.me/joinchat/AAAAAD7sAY7DK1rrihLJ8w
⭕ #آموزش فعال/غیر فعال کردن یک آبجکت
آموزش #یونیتی #برنامه #اسکریپت_نویسی #کد_نویسی
🔹 در یونیتی کلیه #آبجکت ها دارای خاصیتی به نام Active هستند، این خاصیت در واقع مشخص کننده ی فعال یا غیر فعال بودن آبجکت است.
❗فعال بودن یک آبجکــت به این معناست که در حال حاضر همه ی کامپونتت ها و زیر مجموعه های یک آبجکت(کلیه آبجکت ها و #کامپوننت هایی که به آن متصل کردیم) فعال و در حال اجرا هستند. در مقابل غیر فعال بودن یک آبـــجکت نیز به این معنی است که آن آبجکت به همراه کلیه موارد غیر فعال (بدون فعالیت-در حالت عدم اجرا-عدم دیده شدن و...) است.
برای تست فعال/غیر فعال بودن یک آبجکت حتما در حالت طراحی بازی (زمان Stop بودن) با استفاده از تیک بالای پنجره Inspector برای هر آبجکت، آن را تست کنید. مشاهده کنید، در حالت غیر فعال بودن یک آبجکت چه اتفاقاتــی در بازی تان نسبت به آن آبجکت میافتد. در واقع همین اعمال نیاز است در هنگام اجرا بازی اتفاق بیافتند.
توجه کنید، کلیه Asset ها در یونیتی (شامل Transformها، GameObjectها، Componentها و...) دارای خاصیت Active هستند. بنابراین شما می توانید برای غیر فعال کردن یک Asset از این خاصیت استفاده کنید.
▫ در حالت کد نویسی برای دسترسی به خاصیــت ذکر شده از شکل زیر استـــفاده می کنیم
AssetName.active=false;
AssetName.active=true;
🔹 #مثال هایی از خاصیت Active به این صورت است.
▪ گاهی اوقات لازم است، برای بازی چند Camera داشته باشیم. چون دوربین یک کامپوننت است، با کد زیر یکی را فعال و دیگری را غیر فعال می کنیم//
کد غیر فعال کردن کامپوننتِ دوربین متصل شده به یک آبجکت
transform.GetComponent.<Camera>().active=false;
👈 دستور GetComponent کــه در پست های قبلی توضیح داده شده است.
❕ مثال دیگر برای این خاصیت تغییر در کاراکتـــر اصلی بازی است، گاهی اوقات بازیکن تغییر می کند، مثلاً سوار یک وسیله دیگر می شود، که باید ماهیت آن (مثل سرعت و ...) عوض شود. در این جا نیز از این خاصیت برای غیر فعال کردن کاراکتر جاری و فعال کردن کاراکتر دیگر استفاده می شود.
‼ نکــــته بسیــار مهم در اینجـــا این است که، با غیر فعال کردن یک آبجکت، کلیه کامپوننت های متصل به آن نیز غیر فعال می شود. این یعنی اگر کاراکتر جاری (آبجکت که کد به آن متصل شده است) را غیر فعال کنیم، در کد های بعدی (خط های بعدی کد) دیگر نمی توانیم آن به آن دسترسی داشته باشیم. چون کد هایی که می نویسیم، دیگر اجرا نمی شوند. برای فعال کردن مجدد این آبجکت باید از کدی در جای دیگر استفاده کنیم، تا بتوانیم مجدد آن را فعال کنیم.
transform.active=false;
〰〰〰〰〰
⭕کانال یـــونیتی لرنینگ⭕
⚪@UnityLearning⚪
آموزش #یونیتی #برنامه #اسکریپت_نویسی #کد_نویسی
🔹 در یونیتی کلیه #آبجکت ها دارای خاصیتی به نام Active هستند، این خاصیت در واقع مشخص کننده ی فعال یا غیر فعال بودن آبجکت است.
❗فعال بودن یک آبجکــت به این معناست که در حال حاضر همه ی کامپونتت ها و زیر مجموعه های یک آبجکت(کلیه آبجکت ها و #کامپوننت هایی که به آن متصل کردیم) فعال و در حال اجرا هستند. در مقابل غیر فعال بودن یک آبـــجکت نیز به این معنی است که آن آبجکت به همراه کلیه موارد غیر فعال (بدون فعالیت-در حالت عدم اجرا-عدم دیده شدن و...) است.
برای تست فعال/غیر فعال بودن یک آبجکت حتما در حالت طراحی بازی (زمان Stop بودن) با استفاده از تیک بالای پنجره Inspector برای هر آبجکت، آن را تست کنید. مشاهده کنید، در حالت غیر فعال بودن یک آبجکت چه اتفاقاتــی در بازی تان نسبت به آن آبجکت میافتد. در واقع همین اعمال نیاز است در هنگام اجرا بازی اتفاق بیافتند.
توجه کنید، کلیه Asset ها در یونیتی (شامل Transformها، GameObjectها، Componentها و...) دارای خاصیت Active هستند. بنابراین شما می توانید برای غیر فعال کردن یک Asset از این خاصیت استفاده کنید.
▫ در حالت کد نویسی برای دسترسی به خاصیــت ذکر شده از شکل زیر استـــفاده می کنیم
AssetName.active=false;
AssetName.active=true;
🔹 #مثال هایی از خاصیت Active به این صورت است.
▪ گاهی اوقات لازم است، برای بازی چند Camera داشته باشیم. چون دوربین یک کامپوننت است، با کد زیر یکی را فعال و دیگری را غیر فعال می کنیم//
کد غیر فعال کردن کامپوننتِ دوربین متصل شده به یک آبجکت
transform.GetComponent.<Camera>().active=false;
👈 دستور GetComponent کــه در پست های قبلی توضیح داده شده است.
❕ مثال دیگر برای این خاصیت تغییر در کاراکتـــر اصلی بازی است، گاهی اوقات بازیکن تغییر می کند، مثلاً سوار یک وسیله دیگر می شود، که باید ماهیت آن (مثل سرعت و ...) عوض شود. در این جا نیز از این خاصیت برای غیر فعال کردن کاراکتر جاری و فعال کردن کاراکتر دیگر استفاده می شود.
‼ نکــــته بسیــار مهم در اینجـــا این است که، با غیر فعال کردن یک آبجکت، کلیه کامپوننت های متصل به آن نیز غیر فعال می شود. این یعنی اگر کاراکتر جاری (آبجکت که کد به آن متصل شده است) را غیر فعال کنیم، در کد های بعدی (خط های بعدی کد) دیگر نمی توانیم آن به آن دسترسی داشته باشیم. چون کد هایی که می نویسیم، دیگر اجرا نمی شوند. برای فعال کردن مجدد این آبجکت باید از کدی در جای دیگر استفاده کنیم، تا بتوانیم مجدد آن را فعال کنیم.
transform.active=false;
〰〰〰〰〰
⭕کانال یـــونیتی لرنینگ⭕
⚪@UnityLearning⚪