⭕️مطالبی برای #هوش_مصنوعی
👈همانطور که در پست های قبل اشاره شد یکی از اقداماتی که یک کاراکتر هوش مصنوعی باید انجام دهد، عمل Patrol یا گشت زنی است.
🔸پاترول یعنی آبجکت در یک مسیر تعیین شده اقدام به گشت زنی کند و در صورتی که دشمن خود (target) دید اقدامات بعدی مثل حرکت به سمت آن و تیر اندازی را انجام دهد.
🔹عمل پاترول در هوش مصنوعی تا انتخاب مسیر (بر اساس قوانین ریاضی، احتمالات و هوش مصنوعی) وجود دارد. یعنی کاراکتر مسیری را برای حرکت انتخاب کند که بیشتر احتمال وجود دشمن در آن می رود.
🤖این مطالب دقیقا برای ربات ها نیز به همین شکل است ربات های دستی که ساخته میشوند برای حرکت چند راه دارند، مثلا حرکت روی مسیر تعیین شده، حرکت به سمت توپ(در بازی فوتبال) و...
🌀در یونیتی برای مشخص کردن مسیر های آبجکتِ هوش مصنوعی از Empty GameObject ها می توان استفاده کرد. البته کدهای بسیار پیشرفته ای نیز برای تعیین مسیر حرکت کاراکتر در محیط بازی وجود دارد.
🌐برای حرکت هوش مصنوعی خودتان از گیم آبجکت های خالی استفاده کنید و با استفاده از قوانین محاسبه نزدیک ترین مسیر(و یا بدون استفاده آن) کاراکتر خود را با دستور Translate جابجا کنید و زمانی که کاراکتر به گیم آبجکت هدف رسید مجددا گیم آبجکت بعدی را انتخاب و به سمت آن حرکت کنید. (این اعمال به وسیله توابع بازگشتی یا با استفاده از یک تابع اضافی برای حرکت قابل انجام است)
ℹ️ توضیحات بیان شده در بالا برای نوشتن یک کد برای Patrol یک آبجکت بین گیم آبجکت های خالی کافی است. سعی کنید کدها بنویسید و تست کنید.
🔜دستورات و سایر اعمال هوش مصنوعی به زودی در #یونیتی لرنینگ
〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
👈همانطور که در پست های قبل اشاره شد یکی از اقداماتی که یک کاراکتر هوش مصنوعی باید انجام دهد، عمل Patrol یا گشت زنی است.
🔸پاترول یعنی آبجکت در یک مسیر تعیین شده اقدام به گشت زنی کند و در صورتی که دشمن خود (target) دید اقدامات بعدی مثل حرکت به سمت آن و تیر اندازی را انجام دهد.
🔹عمل پاترول در هوش مصنوعی تا انتخاب مسیر (بر اساس قوانین ریاضی، احتمالات و هوش مصنوعی) وجود دارد. یعنی کاراکتر مسیری را برای حرکت انتخاب کند که بیشتر احتمال وجود دشمن در آن می رود.
🤖این مطالب دقیقا برای ربات ها نیز به همین شکل است ربات های دستی که ساخته میشوند برای حرکت چند راه دارند، مثلا حرکت روی مسیر تعیین شده، حرکت به سمت توپ(در بازی فوتبال) و...
🌀در یونیتی برای مشخص کردن مسیر های آبجکتِ هوش مصنوعی از Empty GameObject ها می توان استفاده کرد. البته کدهای بسیار پیشرفته ای نیز برای تعیین مسیر حرکت کاراکتر در محیط بازی وجود دارد.
🌐برای حرکت هوش مصنوعی خودتان از گیم آبجکت های خالی استفاده کنید و با استفاده از قوانین محاسبه نزدیک ترین مسیر(و یا بدون استفاده آن) کاراکتر خود را با دستور Translate جابجا کنید و زمانی که کاراکتر به گیم آبجکت هدف رسید مجددا گیم آبجکت بعدی را انتخاب و به سمت آن حرکت کنید. (این اعمال به وسیله توابع بازگشتی یا با استفاده از یک تابع اضافی برای حرکت قابل انجام است)
ℹ️ توضیحات بیان شده در بالا برای نوشتن یک کد برای Patrol یک آبجکت بین گیم آبجکت های خالی کافی است. سعی کنید کدها بنویسید و تست کنید.
🔜دستورات و سایر اعمال هوش مصنوعی به زودی در #یونیتی لرنینگ
〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
This media is not supported in your browser
VIEW IN TELEGRAM
⭕️ اسکریپت حرکت خودکار آبجکت در میان Empty GameObjectهای دیگر به زبان #جاوا اسکریپت
🔸ساده ترین عمل Patrol در هوش مصنوعی
🔹به وسیله دستور MoveTowards
(حرکت مانند gif بالا)
@UnityLearning
🔸ساده ترین عمل Patrol در هوش مصنوعی
🔹به وسیله دستور MoveTowards
(حرکت مانند gif بالا)
@UnityLearning
AutoMove.js
306 B
⭕️ #دانلود اسکریپت AutoMove
👈ساده ترین عمل Patrol
▫️هر تعداد گیم آبجکت که خواستید به اسکریپت میتوانید بدهید.
🔹این اسکریپت آبجکتی که به آن متصل شده است را جابجا میکند.
@UnityLearning
👈ساده ترین عمل Patrol
▫️هر تعداد گیم آبجکت که خواستید به اسکریپت میتوانید بدهید.
🔹این اسکریپت آبجکتی که به آن متصل شده است را جابجا میکند.
@UnityLearning
👇👇👇👇
⭕️#توضیحات
🔹در این اسکریپت تنها موردی که نیاز به توضیح دارد این است که برای حرکت آبجکت از دستور جدید MoveTowrds استفاده کردیم.
▫️دستور MoveTowards دو پارامتر اصلی برای موقعیت(position دو آبجکتی که باید حرکت کند) از نوع Vector3 و یک پارامتر از نوع float برای سرعت حرکت دارد. بنابراین شکل کلی آن به این ترتیب است/👇
Vector3.MoveTowards(curPos: Vector3,TargetPosition: Vector3,Speed: float);
خروجی این دستور از جنس Vector3 است که برای حرکت یک آبجکت میتوان آن را مقابل پارامتر position قرار داد.
🍃عمل حرکت توسط این متد به کمک کامپوننت CharacterController انجام میشود. در واقع این دستور عمل چرخش به سمت هدف و حرکت را همزمان انجام میدهد و آبجکت فقط حرکت نمی کند بلکه به سمت هدف می چرخد.
➕در مورد سایر دستورات اسکریپت، یک آرایه از جنس Transform به منظور معرفی Empty Game Objectها تعریف شده است. «که شما میتوانید با تنظیم پارامتر Size برابر تعداد گیم آبجکت ها، این آرایه را مقدار دهی کنید»
◀️ سپس اسکریپت آبجکت جاری را به ترتیب به سمت گیم آبجکت های خالی که در محیط بازی قرار داده اید حرکت می دهد و در صورتی که تعداد گیم آبجکت ها تمام شود این عمل تکرار میشود.
🔘توضیحات بیشتر به همراه اسکریپت های کامل تر در پست های بعدی کانال قرار خواهد گرفت.
@UnityLearning
⭕️#توضیحات
🔹در این اسکریپت تنها موردی که نیاز به توضیح دارد این است که برای حرکت آبجکت از دستور جدید MoveTowrds استفاده کردیم.
▫️دستور MoveTowards دو پارامتر اصلی برای موقعیت(position دو آبجکتی که باید حرکت کند) از نوع Vector3 و یک پارامتر از نوع float برای سرعت حرکت دارد. بنابراین شکل کلی آن به این ترتیب است/👇
Vector3.MoveTowards(curPos: Vector3,TargetPosition: Vector3,Speed: float);
خروجی این دستور از جنس Vector3 است که برای حرکت یک آبجکت میتوان آن را مقابل پارامتر position قرار داد.
🍃عمل حرکت توسط این متد به کمک کامپوننت CharacterController انجام میشود. در واقع این دستور عمل چرخش به سمت هدف و حرکت را همزمان انجام میدهد و آبجکت فقط حرکت نمی کند بلکه به سمت هدف می چرخد.
➕در مورد سایر دستورات اسکریپت، یک آرایه از جنس Transform به منظور معرفی Empty Game Objectها تعریف شده است. «که شما میتوانید با تنظیم پارامتر Size برابر تعداد گیم آبجکت ها، این آرایه را مقدار دهی کنید»
◀️ سپس اسکریپت آبجکت جاری را به ترتیب به سمت گیم آبجکت های خالی که در محیط بازی قرار داده اید حرکت می دهد و در صورتی که تعداد گیم آبجکت ها تمام شود این عمل تکرار میشود.
🔘توضیحات بیشتر به همراه اسکریپت های کامل تر در پست های بعدی کانال قرار خواهد گرفت.
@UnityLearning
CircularMoving.cs
584 B
⭕ #اسکریپت آماده حرکت چرخشی یک آبجکت
➕ به کمک این اسکریپت می توانید کاری کنید آبجکت ها را در هر محلی که هستند، بروی محیط دایره حرکت کنند.
به زبان #سی_شارپ
#توضیحات پست بعدی
@UnityLearning
➕ به کمک این اسکریپت می توانید کاری کنید آبجکت ها را در هر محلی که هستند، بروی محیط دایره حرکت کنند.
به زبان #سی_شارپ
#توضیحات پست بعدی
@UnityLearning
⭕ انجام عملیات #ریاضی
▫ در بازی ها نیاز شدید به استفاده از قوانین ریاضی داریم. این اعمال در برنامه نویسی به کمک #کلاس Mathf انجام می شود. در واقع برای اینکه به خروجی دستورات مثل سینوس/کسینوس، عدد پی و... دسترسی داشته باشیم باید از کلاس مذکور استفاده کرد.
➕ اگر بخواهید از کلاس Mathf در #سی_شارپ استفاده کنید، نیازی به نوشتن using خاصی نیست اما در جاوا باید کتابخانه آن را import کنید. بنابراین دستورات این پست را بر پایه سی شارپ بیان می کنیم و کتابخانه های لازم برای #جاوا اسکریپت را در پست های آتی معرفی می کنیم (البته در پست های قبلی کانال در مورد کلاس Mathf با جاوا اسکریپت توضیحات اندکی داده شده است)
〽 برای محاسبه مقدار سینوس یک زاویه می توانید از دستور زیر استفاده کنید/👇 (دقت کنید متغیر angle به معنای زاویه و از نوع اعشاری است بنابــراین اگر بخواهید مقدار مستقیم بدهید باید آخر عدد حرف f را بنویسید)
Mathf.Sin(Angle);
🔸 برای محاسبه کسینوس یک زاویه نیز به همین شکل عمل می کنیم/👇
Mathf.Cos(Angle);
🔘 برای دسترسی به عدد پی 3.1415.... از دستور زیر استفاده خواهد شد/👇
Mathf.PI;
🔹 دستـــورات در این قسمت به صورت کوتاه بیان می شود.
🔸 دستور Abs قدر مطلق عدد وارد شده را بر می گرداند.
🔸 دستور Tan مقدار تانژانت یک زاویه را بر می گرداند. کلیه دستورات سینوس/کسینوس/تانژانت اگر با حرف a اول نوشته شوند مقدار arc (کمان) را بر می گردانند. «Acos Asin Atan»
🔸 توابع Min/Max بزرگترین/ کوچکترین مقدار وارد شده از بین دو یا بیشتر عدد که در پارامتــر های آن وارد شده است را بر می گرداند.
🔸 برای گرفتن میزان جذر یک عدد از تابع Sqrt استفاده می شود.
🔸 دستور MoveTowards یک مقدار اولیه را به سمت مقدار نهایی (که در پارامترهای اول و دوم وارد شده است) با سرعت داده شده در پارامتر سوم میل می دهد و این مقدار را بر می گرداند.
🔸 با دستور Log نیز می توان لگاریتم یک عدد بر پایه عدد دیگر محاسبه می شود با دستور Log10 لگاریتم مبنای 10 از یک عدد محاسبه می شود. در دستور Log عدد اصلی در پارامتر اول و مبنای محاسبه در پارامتر دوم قرار می گیرد، #مثال/👇
Mathf.Log(6, 2);
◀ دستورات دیگر در پست های بعدی قرار می گیرد، از این دستورات در کد نویسی های #هوش_مصنوعی بسیار استفاده می شود.
#کد_نویسی و #اسکریپت_نویسی در #یونیتی
〰〰〰〰〰〰
⭕ کـانال یونیتی لرنینگ⭕
💢 @UnityLearning💢
▫ در بازی ها نیاز شدید به استفاده از قوانین ریاضی داریم. این اعمال در برنامه نویسی به کمک #کلاس Mathf انجام می شود. در واقع برای اینکه به خروجی دستورات مثل سینوس/کسینوس، عدد پی و... دسترسی داشته باشیم باید از کلاس مذکور استفاده کرد.
➕ اگر بخواهید از کلاس Mathf در #سی_شارپ استفاده کنید، نیازی به نوشتن using خاصی نیست اما در جاوا باید کتابخانه آن را import کنید. بنابراین دستورات این پست را بر پایه سی شارپ بیان می کنیم و کتابخانه های لازم برای #جاوا اسکریپت را در پست های آتی معرفی می کنیم (البته در پست های قبلی کانال در مورد کلاس Mathf با جاوا اسکریپت توضیحات اندکی داده شده است)
〽 برای محاسبه مقدار سینوس یک زاویه می توانید از دستور زیر استفاده کنید/👇 (دقت کنید متغیر angle به معنای زاویه و از نوع اعشاری است بنابــراین اگر بخواهید مقدار مستقیم بدهید باید آخر عدد حرف f را بنویسید)
Mathf.Sin(Angle);
🔸 برای محاسبه کسینوس یک زاویه نیز به همین شکل عمل می کنیم/👇
Mathf.Cos(Angle);
🔘 برای دسترسی به عدد پی 3.1415.... از دستور زیر استفاده خواهد شد/👇
Mathf.PI;
🔹 دستـــورات در این قسمت به صورت کوتاه بیان می شود.
🔸 دستور Abs قدر مطلق عدد وارد شده را بر می گرداند.
🔸 دستور Tan مقدار تانژانت یک زاویه را بر می گرداند. کلیه دستورات سینوس/کسینوس/تانژانت اگر با حرف a اول نوشته شوند مقدار arc (کمان) را بر می گردانند. «Acos Asin Atan»
🔸 توابع Min/Max بزرگترین/ کوچکترین مقدار وارد شده از بین دو یا بیشتر عدد که در پارامتــر های آن وارد شده است را بر می گرداند.
🔸 برای گرفتن میزان جذر یک عدد از تابع Sqrt استفاده می شود.
🔸 دستور MoveTowards یک مقدار اولیه را به سمت مقدار نهایی (که در پارامترهای اول و دوم وارد شده است) با سرعت داده شده در پارامتر سوم میل می دهد و این مقدار را بر می گرداند.
🔸 با دستور Log نیز می توان لگاریتم یک عدد بر پایه عدد دیگر محاسبه می شود با دستور Log10 لگاریتم مبنای 10 از یک عدد محاسبه می شود. در دستور Log عدد اصلی در پارامتر اول و مبنای محاسبه در پارامتر دوم قرار می گیرد، #مثال/👇
Mathf.Log(6, 2);
◀ دستورات دیگر در پست های بعدی قرار می گیرد، از این دستورات در کد نویسی های #هوش_مصنوعی بسیار استفاده می شود.
#کد_نویسی و #اسکریپت_نویسی در #یونیتی
〰〰〰〰〰〰
⭕ کـانال یونیتی لرنینگ⭕
💢 @UnityLearning💢
This media is not supported in your browser
VIEW IN TELEGRAM
🎥 Unity3D - Circular Motion
⭕️ #فیلم #آموزش حرکت دایره ای یک آبجکت در سایت #یونیتی
🎞کیفیت HD 720p
⏰مدت زمان فیلم 5/30 دقیقه
@UnityLearning
⭕️ #فیلم #آموزش حرکت دایره ای یک آبجکت در سایت #یونیتی
🎞کیفیت HD 720p
⏰مدت زمان فیلم 5/30 دقیقه
@UnityLearning
⭕️ روش های ارتباط با ما
👈برای ارتباط با مدیریت کانال روش های زیر موجود است.
⚜آماده دریافت نظرات و سؤالات شما کاربران هستیم.
👈برای ارتباط با مدیریت کانال روش های زیر موجود است.
⚜آماده دریافت نظرات و سؤالات شما کاربران هستیم.
⭕️ #ادامه مطالب #هوش_مصنوعی
📢بیان کردیم عملی که یک کاراکتر هوش مصنوعی باید در حالت طبیعی انجام دهد. Patrol یا گشت زنی است. همچنین گفتیم عمل پاترول با حرکت آبجکت در محل های تعیین شده (یا تصمیم گیری شده) همراه است.
👁🗨 عمل دیگر که یک کاراکتر هوش مصنوعی باید انجام دهد، جستجو به دنبال هدف یا دشمن است. بالاخره این هوش مصنوعی برای نبرد با یک دشمنی ساخته شده است (که target نامیده میشود) برای مثال بازیکن فوتبال در زمان نزدیک شدن توپ به سمت آن حرکت میکند تا آن را تصاحب کند، بنابراین target در هوش مصنوعی بازی فوتبال می تواند توپ باشد.
▪️با همه این تفاسیر برای تکمیل بحث، اعمال ذکر شده (جستجو به دنبال target ) توسط توابعی با نام CanSeeTarget انجام میشود. در واقع این توابع با استفاده از کلاس های Reycast بررسی میکند «آیا هدف در دید من هست یا خیر؟»
برای بررسی این موضوع ابتدا باید بررسی شود آیا هدف در شعاع r از من قرار دارد؟ (با بررسی فاصله target تا کاراکتر هوش مصنوعی) در این صورت آیا از نظر فیزیکی من او را میبینم یا خیر؟ (یعنی از نظر دیداری آبجکتی بین ما قرار دارد یا خیر) اگر تمام این شرط ها درست باشد یعنی کاراکتر میتواند از نظر فیزیکی هدفش را ببینید و تابع CanSeeTatget مقدار true بر میگرداند.
🔘در مراحل بعد بازی ساز باید تصمیم بگیرد اکنون چه اتفاقی بیافتد(آیا به سمت هدف تیر اندازی شود یا به سمت او حرکت کنیم ....)
🔜مطالب تکمیلی در پست های آینده کانال
🙏لطفا با معرفی کانال از ما حمایت کنید.
#ادامه_دارد
〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
📢بیان کردیم عملی که یک کاراکتر هوش مصنوعی باید در حالت طبیعی انجام دهد. Patrol یا گشت زنی است. همچنین گفتیم عمل پاترول با حرکت آبجکت در محل های تعیین شده (یا تصمیم گیری شده) همراه است.
👁🗨 عمل دیگر که یک کاراکتر هوش مصنوعی باید انجام دهد، جستجو به دنبال هدف یا دشمن است. بالاخره این هوش مصنوعی برای نبرد با یک دشمنی ساخته شده است (که target نامیده میشود) برای مثال بازیکن فوتبال در زمان نزدیک شدن توپ به سمت آن حرکت میکند تا آن را تصاحب کند، بنابراین target در هوش مصنوعی بازی فوتبال می تواند توپ باشد.
▪️با همه این تفاسیر برای تکمیل بحث، اعمال ذکر شده (جستجو به دنبال target ) توسط توابعی با نام CanSeeTarget انجام میشود. در واقع این توابع با استفاده از کلاس های Reycast بررسی میکند «آیا هدف در دید من هست یا خیر؟»
برای بررسی این موضوع ابتدا باید بررسی شود آیا هدف در شعاع r از من قرار دارد؟ (با بررسی فاصله target تا کاراکتر هوش مصنوعی) در این صورت آیا از نظر فیزیکی من او را میبینم یا خیر؟ (یعنی از نظر دیداری آبجکتی بین ما قرار دارد یا خیر) اگر تمام این شرط ها درست باشد یعنی کاراکتر میتواند از نظر فیزیکی هدفش را ببینید و تابع CanSeeTatget مقدار true بر میگرداند.
🔘در مراحل بعد بازی ساز باید تصمیم بگیرد اکنون چه اتفاقی بیافتد(آیا به سمت هدف تیر اندازی شود یا به سمت او حرکت کنیم ....)
🔜مطالب تکمیلی در پست های آینده کانال
🙏لطفا با معرفی کانال از ما حمایت کنید.
#ادامه_دارد
〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
org.telegram.messenger.apk
13.2 MB
⭕️ #تلگرام اندروید به نسخه 4.2.1 ارتقا یافت.
🔹دانلود آخرین رسمی نسخه تلگرام
🔸نسخه دانلود شده از گوگل پلی
⚠️برای دانلود تلگرام برای اندروید های پایین تر 4.4 از گوگل پلی استفاده کنید.
@UnityLearning
🔹دانلود آخرین رسمی نسخه تلگرام
🔸نسخه دانلود شده از گوگل پلی
⚠️برای دانلود تلگرام برای اندروید های پایین تر 4.4 از گوگل پلی استفاده کنید.
@UnityLearning
CanSeeTarget.js
476 B
⭕️ کدهای کامل تابع CanSeeTatget
👈توضیح داده شده در پست زیر
▶️ https://t.me/UnityLearning/786
توضیحات بیشتر در پست های بعد
@UnityLearning
👈توضیح داده شده در پست زیر
▶️ https://t.me/UnityLearning/786
توضیحات بیشتر در پست های بعد
@UnityLearning
AudioSource_Enable.js
247 B
⭕️ اسکریپت #درخواست داده شده
🔸برای فعال و غیر فعال کردن #کامپوننت AudioSource با کلیک راست ماوس
🔹البته پیشنهاد ما استفاده از Play/Pause است.
@UnityLearning
🔸برای فعال و غیر فعال کردن #کامپوننت AudioSource با کلیک راست ماوس
🔹البته پیشنهاد ما استفاده از Play/Pause است.
@UnityLearning
Unity Learning
AutoMove.js
⭕️ #درخواست هایی هست برای اینکه حرکت در اسکریپت داده شده (AutoMove) به صورت تصادفی انجام شود. این کار ساده است به کمک کلاس Random و تابع Range میتوان به راحتی این کار را انجام داد. یعنی به جای استفاده از یک متغیر برای شمارش (مثل i) از تابع مذکور استفاده گردد.
🔹با این کار اسکریپت هر بار یک گیم آبجکت را به صورت تصادفی انتخاب و به سمت آن حرکت میکند
▶️ https://t.me/UnityLearning/461
➕اسکریپت های کامل شده هوش مصنوعی به تدریج در کانال قرار خواهند گرفت و آموزش داده خواهند شد.
#هوش_مصنوعی
@UnityLearning
🔹با این کار اسکریپت هر بار یک گیم آبجکت را به صورت تصادفی انتخاب و به سمت آن حرکت میکند
▶️ https://t.me/UnityLearning/461
➕اسکریپت های کامل شده هوش مصنوعی به تدریج در کانال قرار خواهند گرفت و آموزش داده خواهند شد.
#هوش_مصنوعی
@UnityLearning
⭕️ مطالبي در مورد #يونيتي
👈ـUnity يکي از 5 موتور بازي سازيِ ساخته شده در جهان است که آخرين نسخه آن نسخه 5 بتا مي باشد که در سال 2014 ارائه شده است.
▫️5 موتور بازي سازي برتر: Unreal Engine ، Game Maker ، Cry Engine ،Id Tech و Unity هستند که در ميان آن ها Unreal بيشترين هوادار را دارد و بازي هاي حرفه اي با آن ساخته شده است. Unity بعد از Unreal معروف شد و از آن به بعد هواداران خاص خود را پيدا کرد. اين موتور بازي سازي به علت سادگي و قابليت انعطاف بالايي که دارد مورد محبوبيت قرار گرفت.
🔹يک موتور بازي سازي به مجموعه ي نرم افزاري گفته مي شود که به وسيله آن ها مي توان يک بازي کامپيوتري يا هر کنسول ديگري را توليد کرد. منظور از مجموعه نرم افزاري اين است که موتور بازي سازي مي تواند خودش شامل نرم افزار هاي مختلفي از جمله طراحي اشيا گرافيکي،طراحي منظره ها ، و طراحي محيط بازي باشد.
براي مثال 3D MAX نرم افزار ساخت اشياي گرفيکي است،Photoshop CS نرم افزار طراحي منظره ها و Unity نرم افزار طراحي محيط بازي است.
🔹همانطور که بيان شد موتور بازي سازي يونيتي محيط بسيار ساده و کاربر پسندي براي ساخت بازي استفاده کرده است. که کاربران آن به راحتي و با داشتن اندکي اطلاعات قبلي مي توانند با آن کار کنند. در صورتي که کاربر کار برنامه نويسي هم بلد باشد مي توانند بازي هاي خوبي با آن توليد کند. برخي ويژگي هاي اصلي موتور بازي سازي يونيتي را به اين شرح بيان مي کنيم:
▫️برنامه نويسي کم
▪️ارائه بازيکن اول شخص و سوم شخص
▫️پلتفرم هاي خروجي متداول
▪️ورودي از نرم افزار هاي متداول
▫️ويرايشگر اسکريپت متن باز
(نرم افزار MonoDevelop)
▪️پشتيباني از زبان هاي برنامه نويسي مختلف
💲جالب بدونيد قيمت فروش يونيتي در سال 2012 هزار و پونصد دلار براي يک عمر در نظر گرفته شده است اين در حالي است که کاربران ايراني معمولاً از لايسنس کرک شده براي اين برنامه استفاده مي کنند.
🔜 توضيحات تکميلي در مورد معرفي يونيتي به طور کامل توضيح داده مي شود.
📉 آمارهاي يونيتي
🔸 آمار هاي مختلفي از يونيتي منتشر شده است که البته بهترين منبع سايت خود یونیتی است.
[مربوط به سال 2015]
• 600 ميليون Gamer (بازيکن) در حال حاضر
• 829 ميليون بازديد روزانه از صفحه فيسبوک
• تعداد مشتريان يونيتي در سال 2015، 4.5 ميليون مشتري (Developer)
• 45 درصد از سهام يونيتي در بورس
• محبوب ترين موتور در بازي سازي موبايل
🔘سايت Unity3d يک آمار منتشر کرده که مي گويد Game Engine يونيتي محبوب ترين و پر استفاده ترين موتور در بازي هاي موبايل است.
〰〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢 @UnityLearning💢
👈ـUnity يکي از 5 موتور بازي سازيِ ساخته شده در جهان است که آخرين نسخه آن نسخه 5 بتا مي باشد که در سال 2014 ارائه شده است.
▫️5 موتور بازي سازي برتر: Unreal Engine ، Game Maker ، Cry Engine ،Id Tech و Unity هستند که در ميان آن ها Unreal بيشترين هوادار را دارد و بازي هاي حرفه اي با آن ساخته شده است. Unity بعد از Unreal معروف شد و از آن به بعد هواداران خاص خود را پيدا کرد. اين موتور بازي سازي به علت سادگي و قابليت انعطاف بالايي که دارد مورد محبوبيت قرار گرفت.
🔹يک موتور بازي سازي به مجموعه ي نرم افزاري گفته مي شود که به وسيله آن ها مي توان يک بازي کامپيوتري يا هر کنسول ديگري را توليد کرد. منظور از مجموعه نرم افزاري اين است که موتور بازي سازي مي تواند خودش شامل نرم افزار هاي مختلفي از جمله طراحي اشيا گرافيکي،طراحي منظره ها ، و طراحي محيط بازي باشد.
براي مثال 3D MAX نرم افزار ساخت اشياي گرفيکي است،Photoshop CS نرم افزار طراحي منظره ها و Unity نرم افزار طراحي محيط بازي است.
🔹همانطور که بيان شد موتور بازي سازي يونيتي محيط بسيار ساده و کاربر پسندي براي ساخت بازي استفاده کرده است. که کاربران آن به راحتي و با داشتن اندکي اطلاعات قبلي مي توانند با آن کار کنند. در صورتي که کاربر کار برنامه نويسي هم بلد باشد مي توانند بازي هاي خوبي با آن توليد کند. برخي ويژگي هاي اصلي موتور بازي سازي يونيتي را به اين شرح بيان مي کنيم:
▫️برنامه نويسي کم
▪️ارائه بازيکن اول شخص و سوم شخص
▫️پلتفرم هاي خروجي متداول
▪️ورودي از نرم افزار هاي متداول
▫️ويرايشگر اسکريپت متن باز
(نرم افزار MonoDevelop)
▪️پشتيباني از زبان هاي برنامه نويسي مختلف
💲جالب بدونيد قيمت فروش يونيتي در سال 2012 هزار و پونصد دلار براي يک عمر در نظر گرفته شده است اين در حالي است که کاربران ايراني معمولاً از لايسنس کرک شده براي اين برنامه استفاده مي کنند.
🔜 توضيحات تکميلي در مورد معرفي يونيتي به طور کامل توضيح داده مي شود.
📉 آمارهاي يونيتي
🔸 آمار هاي مختلفي از يونيتي منتشر شده است که البته بهترين منبع سايت خود یونیتی است.
[مربوط به سال 2015]
• 600 ميليون Gamer (بازيکن) در حال حاضر
• 829 ميليون بازديد روزانه از صفحه فيسبوک
• تعداد مشتريان يونيتي در سال 2015، 4.5 ميليون مشتري (Developer)
• 45 درصد از سهام يونيتي در بورس
• محبوب ترين موتور در بازي سازي موبايل
🔘سايت Unity3d يک آمار منتشر کرده که مي گويد Game Engine يونيتي محبوب ترين و پر استفاده ترين موتور در بازي هاي موبايل است.
〰〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢 @UnityLearning💢
Mahmood_Jahan_Ahl_e_vatan.mp4
17.8 MB
◼️دانلود آهنگ خاطره انگیز سلام اهل وطن به صورت تصویری
◾️کلیپی که خاطره های زیادی را برای ما زنده میکند.
⚫️درگذشت این خواننده عزیز کشورمان را تسلیت عرض میکنیم.
روحش شاد، یادش گرامی
@UnityLearning
◾️کلیپی که خاطره های زیادی را برای ما زنده میکند.
⚫️درگذشت این خواننده عزیز کشورمان را تسلیت عرض میکنیم.
روحش شاد، یادش گرامی
@UnityLearning
⭕ ری استارت کردن مرحله بازی
🔸 یکی از ساده ترین روش ها برای اجرای مجدد یک بازی استفاده از دستور LoadLevel است. در کلی ترین حالت اگر دستور زیر استفاده شود/ بازی در هر مرحله ای که هست از اول اجرا می شود.
Application.LoadLevel(Application.loadedLevel);
🔹 در صورتی که بخواهید تنها مرحله خاصی مجدداً اجرا شود شماره یا نام آن مرحله را در پارامتر LoadLevel می دهیم . مثلا اجرای مرحله اول (شروع مراحل از صفر است)
Application.LoadLevel(0);
🔸 برای سی شارپ نیز می توانید بعد از اضافه کردن پارامتر زیر /👇
using UnityEngine.SceneManagement;
👈 که برای مدیریت Sceneهای بازی استفاده می شود، از دستور زیر برای لود کردن مرحله خود (که نام آن داده شده است) استفاده کنید /👇
SceneManager.LoadScene(SceneManager.GetActiveScene().name);
#اسکریپت_نویسی #کد_نویسی #جاوا و #سی_شارپ در #یونیتی
〰〰〰〰〰〰〰〰
⭕ کانال یونیتی لرنینگ⭕
💢 @UnityLearning💢
🔸 یکی از ساده ترین روش ها برای اجرای مجدد یک بازی استفاده از دستور LoadLevel است. در کلی ترین حالت اگر دستور زیر استفاده شود/ بازی در هر مرحله ای که هست از اول اجرا می شود.
Application.LoadLevel(Application.loadedLevel);
🔹 در صورتی که بخواهید تنها مرحله خاصی مجدداً اجرا شود شماره یا نام آن مرحله را در پارامتر LoadLevel می دهیم . مثلا اجرای مرحله اول (شروع مراحل از صفر است)
Application.LoadLevel(0);
🔸 برای سی شارپ نیز می توانید بعد از اضافه کردن پارامتر زیر /👇
using UnityEngine.SceneManagement;
👈 که برای مدیریت Sceneهای بازی استفاده می شود، از دستور زیر برای لود کردن مرحله خود (که نام آن داده شده است) استفاده کنید /👇
SceneManager.LoadScene(SceneManager.GetActiveScene().name);
#اسکریپت_نویسی #کد_نویسی #جاوا و #سی_شارپ در #یونیتی
〰〰〰〰〰〰〰〰
⭕ کانال یونیتی لرنینگ⭕
💢 @UnityLearning💢
MCPR.exe
8.3 MB
❌برنامه حذف کننده کلیه فایل های مربوط به کلیه محصولات مکافی
🛡Mcafee Product Remover
💡بعد از حذف آنتی ویروس از Control panel این برنامه را اجرا کنید.
@UnityLearning
🛡Mcafee Product Remover
💡بعد از حذف آنتی ویروس از Control panel این برنامه را اجرا کنید.
@UnityLearning
🔸یونیتی برای Decompression کردن پکیج های خود از نرم افزار های فشرده سازی استفاده میکند، توصیه ما نصب آخرین نسخه از نرم افزار 7Zip است که برای دانلود در کانال قرار گرفته است. این نرم افزار رایگان است اما از سرعت بسیار بالایی برخوردار است. اگر هم نرم افزار winrar و هم 7Zip را نصب کرده باشید، یونیتی از 7Z برای Decompress کردن پکیج های خود استفاده میکند.
📍این نرم افزار فوق العاده است و به کمک آن شما میتوانید هر فایلی را باز کنید، مثلا اگر یک فایل نصبی exe داشته باشید که باز نمیشود با کمک 7Zip می توانید این فایل را باز و به فایل های درون آن دسترسی داشته باشید.
◀️این برنامه در پست های زیر از کانال برای دانلود قرار گرفته است/👇
▶️ https://t.me/UnityLearning/757
▶️ https://t.me/UnityLearning/758
▶️ https://t.me/UnityLearning/759
〰〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
📍این نرم افزار فوق العاده است و به کمک آن شما میتوانید هر فایلی را باز کنید، مثلا اگر یک فایل نصبی exe داشته باشید که باز نمیشود با کمک 7Zip می توانید این فایل را باز و به فایل های درون آن دسترسی داشته باشید.
◀️این برنامه در پست های زیر از کانال برای دانلود قرار گرفته است/👇
▶️ https://t.me/UnityLearning/757
▶️ https://t.me/UnityLearning/758
▶️ https://t.me/UnityLearning/759
〰〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
⭕️توضیحاتی در مورد تابع OnCollisionEnter
🔹این تابع زمانی در یونیتی اجرا میشود که دو جسم دارای Collider/Regidbody یک دیگر را به اصطلاح لمس کنند(به هم برخورد کنند)
🔹پارامتر ورودی این تابع کلاس Collision است که مختصات محل برخورد(لمس) در آن اتفاق اُفتاده است. این مختصات برای هر محل لمس در آرایه ای از کلاس Collision قرار میگیرد. این آرایه contacts نام دارد و از آن می توان به مختصات محل برخورد دسترسی داشت. پارامتری که از contacs در آن مختصات قرار میگیرد point نام دارد که از جنس Vector3 میباشد (دقیقا مثل پارامتر position در کلاس transform)
▪️به طور مثال خط زیر مختصات اولین نقطه برخورد دو آبجکت را به هم بر می گرداند./👇
collision.contacts[0].point;
👈اگر بخواهیم آبجکتی در محل بر خورد ایجاد شود (مثل آتش در محل برخورد موشک) از دستور instantiate استفاده میشود.
🔜 مطالب تکمیلی در پست های آتی قرار خواهد گرفت.
⚖ نحوه محاسبه جهت برخورد نیز در اینجا مهم است، یعنی آبجکت اول ، دومی را از چه جهتی لمس کرده است. برای این منظور از کلاس Quaternion استفاده میشود. آموزش به زودی در کانال به همراه کدهای آماده قرار خواهد گرفت.
👈 #ادامه_دارد
#اسکریپت_نویسی #کد_نویسی به زبان #جاوا و #سی_شارپ در #يونيتي
〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
🔹این تابع زمانی در یونیتی اجرا میشود که دو جسم دارای Collider/Regidbody یک دیگر را به اصطلاح لمس کنند(به هم برخورد کنند)
🔹پارامتر ورودی این تابع کلاس Collision است که مختصات محل برخورد(لمس) در آن اتفاق اُفتاده است. این مختصات برای هر محل لمس در آرایه ای از کلاس Collision قرار میگیرد. این آرایه contacts نام دارد و از آن می توان به مختصات محل برخورد دسترسی داشت. پارامتری که از contacs در آن مختصات قرار میگیرد point نام دارد که از جنس Vector3 میباشد (دقیقا مثل پارامتر position در کلاس transform)
▪️به طور مثال خط زیر مختصات اولین نقطه برخورد دو آبجکت را به هم بر می گرداند./👇
collision.contacts[0].point;
👈اگر بخواهیم آبجکتی در محل بر خورد ایجاد شود (مثل آتش در محل برخورد موشک) از دستور instantiate استفاده میشود.
🔜 مطالب تکمیلی در پست های آتی قرار خواهد گرفت.
⚖ نحوه محاسبه جهت برخورد نیز در اینجا مهم است، یعنی آبجکت اول ، دومی را از چه جهتی لمس کرده است. برای این منظور از کلاس Quaternion استفاده میشود. آموزش به زودی در کانال به همراه کدهای آماده قرار خواهد گرفت.
👈 #ادامه_دارد
#اسکریپت_نویسی #کد_نویسی به زبان #جاوا و #سی_شارپ در #يونيتي
〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
⭕️ #تابع SetActive
🔹این تابع یک گیم آبجکت را فعال یا غیر فعال میکند. در زمان غیر فعال شدن یک گیم آبجکت کلیه کامپوننت های متصل به آن نیز غیر فعال میشود، توابع Update تمام اسکریپت های متصل و موارد مشابه از کار میافتند. به طور #مثال دستور زیر گیم آبجکتی که کد به آن متصل شده است را غیر فعال میکند (دقت کنید که همین اسکریپت که کد را در آن نوشتیم نیز غیر فعال میشود)
gameObject.SetActive (false);
🔸اکتیو بودن یک گیم آبجکت را می توان با دو پارامتر زیر بررسی کرد/👇
GameObject.activeSelf
GameObject.activeInHierarchy
👈این دو پارامتر Read only هستند و فقط مقدار true یا false بر می گردانند.
〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
🔹این تابع یک گیم آبجکت را فعال یا غیر فعال میکند. در زمان غیر فعال شدن یک گیم آبجکت کلیه کامپوننت های متصل به آن نیز غیر فعال میشود، توابع Update تمام اسکریپت های متصل و موارد مشابه از کار میافتند. به طور #مثال دستور زیر گیم آبجکتی که کد به آن متصل شده است را غیر فعال میکند (دقت کنید که همین اسکریپت که کد را در آن نوشتیم نیز غیر فعال میشود)
gameObject.SetActive (false);
🔸اکتیو بودن یک گیم آبجکت را می توان با دو پارامتر زیر بررسی کرد/👇
GameObject.activeSelf
GameObject.activeInHierarchy
👈این دو پارامتر Read only هستند و فقط مقدار true یا false بر می گردانند.
〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢