⭕️ #تابع 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💢
⭕️ اضافه کردن یک #کامپوننت خاص در زمان اجرا بازی
➕برای اینکه بتوان یک کامپوننت خاص در زمان اجرا (Runtime) بازی به gameobject مورد نظر اضافه شود از تابع AddComponent استفاده میشود.
🔘هر نوع کامپوننتی که در پارامتر به تابع بدهیم را در همان لحظه به گیم #آبجکت مورد نظر اضافه شده و خود آن برای کار های بعدی برگردانده میشود. به طور #مثال دستور زیر یک کامپوننت SphareCollider را به گیم آبجکت جاری(که کد به آن متصل است) اضافه میکند./👇
gameObject.AddComponent(SphereCollider);
👈 #ادامه_دارد
🔜 مطالب تکمیلی در پست های آینده قرار خواهد گرفت.
#اسکریپت_نویسی #کد_نویسی #جاوا
〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
➕برای اینکه بتوان یک کامپوننت خاص در زمان اجرا (Runtime) بازی به gameobject مورد نظر اضافه شود از تابع AddComponent استفاده میشود.
🔘هر نوع کامپوننتی که در پارامتر به تابع بدهیم را در همان لحظه به گیم #آبجکت مورد نظر اضافه شده و خود آن برای کار های بعدی برگردانده میشود. به طور #مثال دستور زیر یک کامپوننت SphareCollider را به گیم آبجکت جاری(که کد به آن متصل است) اضافه میکند./👇
gameObject.AddComponent(SphereCollider);
👈 #ادامه_دارد
🔜 مطالب تکمیلی در پست های آینده قرار خواهد گرفت.
#اسکریپت_نویسی #کد_نویسی #جاوا
〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
👤قابلیت جدید Biography در #تلگرام
🔸به منظور اضافه کردن اطلاعات شخصی (در حد 50 حرف در یک خط) میتوان از این قابلیت جدید در تلگرام استفاده کرد.
@UnityLearning
🔸به منظور اضافه کردن اطلاعات شخصی (در حد 50 حرف در یک خط) میتوان از این قابلیت جدید در تلگرام استفاده کرد.
@UnityLearning
⭕ برخی دستورات مربوط به GameObject
▫ به کمک دستور transform می توان به Transformیی که این گیم #آبجکت به آن متصل است دسترسی داشت و این دستور آن را بر می گرداند. #مثال ساده، برای دسترسی به پارامترهای موقعیتی یک game object باید از دستور transform استفاده کرد (چون همانطور که می دانید position از پارامتــرهای یک Game Object نیست!)
🔸به طور #مثال برای جابجا کردن یک گیم آبجکت می توان از دستور زیر استفاده کرد/👇
other.transform.Translate(1,1,1);
🔘 دقت کنید other از نوع GameObject است یعنی به شکــل زیر تعریف شده است/👇
var other : GameObject;
🔹 برای بدســـت آوردن Scene که یک آبجکت در آن قرار گرفته است از پارامتر scene استفاده می کنیم. خروجی این پارامتر از نوع SceneManagement.Scene است که می توان به عنوان نام به دستورات مربوط به جابجای Scene داد (مثل LoadLevel و...)
GameObject.scene;
👈 این دستور Scene که GameObject در آن قرار گرفته است را بر می گرداند.
👈 #ادامه_دارد
@UnityLearning
▫ به کمک دستور transform می توان به Transformیی که این گیم #آبجکت به آن متصل است دسترسی داشت و این دستور آن را بر می گرداند. #مثال ساده، برای دسترسی به پارامترهای موقعیتی یک game object باید از دستور transform استفاده کرد (چون همانطور که می دانید position از پارامتــرهای یک Game Object نیست!)
🔸به طور #مثال برای جابجا کردن یک گیم آبجکت می توان از دستور زیر استفاده کرد/👇
other.transform.Translate(1,1,1);
🔘 دقت کنید other از نوع GameObject است یعنی به شکــل زیر تعریف شده است/👇
var other : GameObject;
🔹 برای بدســـت آوردن Scene که یک آبجکت در آن قرار گرفته است از پارامتر scene استفاده می کنیم. خروجی این پارامتر از نوع SceneManagement.Scene است که می توان به عنوان نام به دستورات مربوط به جابجای Scene داد (مثل LoadLevel و...)
GameObject.scene;
👈 این دستور Scene که GameObject در آن قرار گرفته است را بر می گرداند.
👈 #ادامه_دارد
@UnityLearning
⭕ برخی دستورات مربوط به GameObject #ادامه
👈دستور tag اسم تگ Game Object مورد نظر را بر می گرداند، اگر برای گیم #آبجکت تگی در نظر گرفته نشده Untagged را بر می گرداند. (خروجی دستور رشته ای است و برای تست آن باید مقدار خروجی را با مقدار رشته ای چک کرد)
gameObject.tag = "Player";
🔸این دستور تگ یک گیم آبجکت را به Player تغییر می دهد، بنابراین کاربرد دیگر این پارامتر در تعیین تگ یک گیم آبجکت است.
⭕️توابع مهم کلاس GameObject
👈کلاس GameObject، کلاسی برای مدیریت گیم آبجکت ها در یونیتی است که دستورات زیادی دارد. در این پست به بررسی تعدادی از آنها می پردازیم و سایر دستورات را نیز در پست های بعدی بیان خواهیم کرد. دقت کنید به کمک تگ #ادامه می توانید به مطالب دنباله دار دسترسی داشته باشید. مطالبی هم که تگ « #ادامه_دارد » دارند، نیز مطالبی هست که در پست های بعدی ادامه مطالب آن قرار گرفته است.
▫️یکی از مهمترین توابع این #کلاس ، دستور Find است، به کمک این دستور می توان به یک گیم آبجکت که اسم آن را داده ایم دسترسی داشت. قوانین استفاده از این دستور زیاد است/ در این پست فقط شکل کلی تابع را بیان می کنیم و قوانین مختلف آن را در پست های بعدی قرار خواهیم داد.
▪️شکل کلی #تابع Find به نحو زیر است/👇
var hand : GameObject;
hand = GameObject.Find("Hand");
👈به طور کلی این دستور آبجکتی که اسم آن Hand است را بر می گرداند و در متغیر hand قرار می دهد و در ادامه برنامه نویس می تواند مانند یک گیم آبجکت مستقل با آن رفتار کند.
(بهترین محل برای استفاده از این دستور تابع Start است)
🔹دستور FindWithTag اولین گیم آبجکتی که دارای تگ داده شده است را بر می گرداند. خروجی آن از نوع یک متغیر GameObject است. اما اگر می خواهیم به مجموعه ای از گیم آبجکت ها که دارای تگ خاصی هستند دسترسی داشته باشیم از دستور FindGameObjectsWithTag استفاده می کنیم که خروجی آن از نوع آرایه ای از GameObject هاست که دارای تگ مورد نظر هستند و برای دسترسی به تک تک آنها باید آرایه را پیمایش کرد.
(به طور مثال اسکریپت ایجاد یک گیم آبجکت در محل کلیه آبجکت هایی که دارای تگ Player هستند در پست بعدی قرار می گیرد، لطفا به این اسکریپت دقت کنید چون دستورات پیمایش آرایه (از نوع GameObject) در آن بیان شده است، سایر دستورات آن را که قبلاً توضیح داده ایم مثل دستور Instantiate برای ایجاد یک گیم آبجکت)
#ادامه_دارد
🔜سایر توابع کلاس GameObject در پست های بعدی قرار خواهد گرفت.
@UnityLearning
👈دستور tag اسم تگ Game Object مورد نظر را بر می گرداند، اگر برای گیم #آبجکت تگی در نظر گرفته نشده Untagged را بر می گرداند. (خروجی دستور رشته ای است و برای تست آن باید مقدار خروجی را با مقدار رشته ای چک کرد)
gameObject.tag = "Player";
🔸این دستور تگ یک گیم آبجکت را به Player تغییر می دهد، بنابراین کاربرد دیگر این پارامتر در تعیین تگ یک گیم آبجکت است.
⭕️توابع مهم کلاس GameObject
👈کلاس GameObject، کلاسی برای مدیریت گیم آبجکت ها در یونیتی است که دستورات زیادی دارد. در این پست به بررسی تعدادی از آنها می پردازیم و سایر دستورات را نیز در پست های بعدی بیان خواهیم کرد. دقت کنید به کمک تگ #ادامه می توانید به مطالب دنباله دار دسترسی داشته باشید. مطالبی هم که تگ « #ادامه_دارد » دارند، نیز مطالبی هست که در پست های بعدی ادامه مطالب آن قرار گرفته است.
▫️یکی از مهمترین توابع این #کلاس ، دستور Find است، به کمک این دستور می توان به یک گیم آبجکت که اسم آن را داده ایم دسترسی داشت. قوانین استفاده از این دستور زیاد است/ در این پست فقط شکل کلی تابع را بیان می کنیم و قوانین مختلف آن را در پست های بعدی قرار خواهیم داد.
▪️شکل کلی #تابع Find به نحو زیر است/👇
var hand : GameObject;
hand = GameObject.Find("Hand");
👈به طور کلی این دستور آبجکتی که اسم آن Hand است را بر می گرداند و در متغیر hand قرار می دهد و در ادامه برنامه نویس می تواند مانند یک گیم آبجکت مستقل با آن رفتار کند.
(بهترین محل برای استفاده از این دستور تابع Start است)
🔹دستور FindWithTag اولین گیم آبجکتی که دارای تگ داده شده است را بر می گرداند. خروجی آن از نوع یک متغیر GameObject است. اما اگر می خواهیم به مجموعه ای از گیم آبجکت ها که دارای تگ خاصی هستند دسترسی داشته باشیم از دستور FindGameObjectsWithTag استفاده می کنیم که خروجی آن از نوع آرایه ای از GameObject هاست که دارای تگ مورد نظر هستند و برای دسترسی به تک تک آنها باید آرایه را پیمایش کرد.
(به طور مثال اسکریپت ایجاد یک گیم آبجکت در محل کلیه آبجکت هایی که دارای تگ Player هستند در پست بعدی قرار می گیرد، لطفا به این اسکریپت دقت کنید چون دستورات پیمایش آرایه (از نوع GameObject) در آن بیان شده است، سایر دستورات آن را که قبلاً توضیح داده ایم مثل دستور Instantiate برای ایجاد یک گیم آبجکت)
#ادامه_دارد
🔜سایر توابع کلاس GameObject در پست های بعدی قرار خواهد گرفت.
@UnityLearning
Findwithtags.js
628 B
⭕ اسکریپت آماده برای ساخت یک Prefab در محل کلیه گیم آبجکت هایی که دارای تگ Player هستند. مثال آموزشی برای استفاده از دستور FindGameObjectsWithTags
@UnityLearning
@UnityLearning
#اصلاحیه
⭕️دوستان گرامی و کاربران عزیز، همانطور که پیشبینی کرده بودیم، یونیتی 2017 با کرک های ارائه شده مشکل دارد(البته برنامه کامل کرک میشود و مشکل از آن نیست اما نسخه کرک شده دارای محدودیت هایی مثل اتصال حتمی به اینترنت حتی در زمان work offline بودن است)
🔹به همین علت یونیتی لرنینگ آموزش ها را تا زمان ارائه یک نسخه پایدار و قابل استفاده از نسخه 2017 با همان نسخه 5.6.2 پیگیری خواهد کرد.
🔹بنابراین برنامه های آموزشی در این کانال تا این لحظه با این نسخه ها هستند.
🔹Unity 5.6.2f1
🔸Autodesk Maya and 3D Max 2017
🔹Blender 2.78
@UnityLearning
⭕️دوستان گرامی و کاربران عزیز، همانطور که پیشبینی کرده بودیم، یونیتی 2017 با کرک های ارائه شده مشکل دارد(البته برنامه کامل کرک میشود و مشکل از آن نیست اما نسخه کرک شده دارای محدودیت هایی مثل اتصال حتمی به اینترنت حتی در زمان work offline بودن است)
🔹به همین علت یونیتی لرنینگ آموزش ها را تا زمان ارائه یک نسخه پایدار و قابل استفاده از نسخه 2017 با همان نسخه 5.6.2 پیگیری خواهد کرد.
🔹بنابراین برنامه های آموزشی در این کانال تا این لحظه با این نسخه ها هستند.
🔹Unity 5.6.2f1
🔸Autodesk Maya and 3D Max 2017
🔹Blender 2.78
@UnityLearning
⭕️ برخی دستورات مربوط به Transformها در یونیتی
👈به کمک دستور childCount میتوان به تعداد گیم آبجکت های متصل شده به یک Transform (در پنجره Hierarchy دسترسی داشت) یعنی مثلا اگر به یک Transform خاص دو گیم آبجکت دیگر متصل باشد این دستور 2 را بر میگرداند./👇
transform.childCount
👈این دستور تعداد گیم آبجکت متصل به ترنسفورمی که کد به آن متصل شده است را بر میگرداند./👇
🔹برای بدست آوردن بردار رو بروی یک ترنسفورم از forward استفاده میشود. این دستور از نوع Vector3 است و معادل بردار سه بعدی با جهت روبروی یک آبجکت است.
🔸با استفاده از دستور root میتوان به ترنسفورم ریشه(بالاترین ترنسفورم در Hierarchy) دسترسی داشت. این دستور هیچگاه مقدار null برنمی گرداند و اگر آبجکت خودش بالاترین سطح باشد(پدری نداشته باشد) خودش را بر می گرداند. بنابراین دقت کنید خروجی این دستور از نوع Transform است.
▫️با دستور rotation میتوان به پارامتر های چرخشی یک ترنسفورم دسترسی داشت. خروجی این دستور از نوع Vector3 برای جهت چرخش آبجکت میباشد. برای دسترسی به مقادیر xyz از شکل زیر(به طور مثال برای x) استفاده میشود./👇
transform.rotation.x;
▪️سایر دستورات و توابع در پست های بعدی قرار خواهد گرفت.
👈 #ادامه_دارد
@UnityLearning
👈به کمک دستور childCount میتوان به تعداد گیم آبجکت های متصل شده به یک Transform (در پنجره Hierarchy دسترسی داشت) یعنی مثلا اگر به یک Transform خاص دو گیم آبجکت دیگر متصل باشد این دستور 2 را بر میگرداند./👇
transform.childCount
👈این دستور تعداد گیم آبجکت متصل به ترنسفورمی که کد به آن متصل شده است را بر میگرداند./👇
🔹برای بدست آوردن بردار رو بروی یک ترنسفورم از forward استفاده میشود. این دستور از نوع Vector3 است و معادل بردار سه بعدی با جهت روبروی یک آبجکت است.
🔸با استفاده از دستور root میتوان به ترنسفورم ریشه(بالاترین ترنسفورم در Hierarchy) دسترسی داشت. این دستور هیچگاه مقدار null برنمی گرداند و اگر آبجکت خودش بالاترین سطح باشد(پدری نداشته باشد) خودش را بر می گرداند. بنابراین دقت کنید خروجی این دستور از نوع Transform است.
▫️با دستور rotation میتوان به پارامتر های چرخشی یک ترنسفورم دسترسی داشت. خروجی این دستور از نوع Vector3 برای جهت چرخش آبجکت میباشد. برای دسترسی به مقادیر xyz از شکل زیر(به طور مثال برای x) استفاده میشود./👇
transform.rotation.x;
▪️سایر دستورات و توابع در پست های بعدی قرار خواهد گرفت.
👈 #ادامه_دارد
@UnityLearning
⭕ غیر فعــال شدن اجرای یک اسکریپت بعد از شروع اجرا
🔸 در صورتی که بخواهید یک اسکریپت بعد از فعال شدن(یا بهتر است بگوییم اجرا شدن) به حالت غیر فعال یا عدم اجرا برود. از دستور this.enabled=false; در تابع Start استفاده می شود و به هر مقدار که می خواهیم زمان بگذرد و بعد از آن اسکریپت غیر فعال شود، از دستور WaitForSecconds استفاده می شود.
🔹 به طور مثال قطعه کد زیر را اگر به اسکریپت خود (به زبان #جاوا اسکریپت) اضافه کنیم، این اسکریپت بعد از گذشت 10 ثانیه از کار خواهد افتاد.
function Start(){
yield WaitForSeconds(10);
this.enabled=false;
}
❗ دقت کنید بعد از دستور this.enabled=false دیگر نباید دستور دیگری باشد چون اجرا نخواهد شد. این دستور بیشتر برای منوها در بازی استفاده می شود.
#اسکریپت_نویسی #کد_نویسی #جاوا #یونیتی
〰〰〰〰〰〰〰〰
⭕ کانال یونیتی لرنینگ⭕
💢 @UnityLearning💢
🔸 در صورتی که بخواهید یک اسکریپت بعد از فعال شدن(یا بهتر است بگوییم اجرا شدن) به حالت غیر فعال یا عدم اجرا برود. از دستور this.enabled=false; در تابع Start استفاده می شود و به هر مقدار که می خواهیم زمان بگذرد و بعد از آن اسکریپت غیر فعال شود، از دستور WaitForSecconds استفاده می شود.
🔹 به طور مثال قطعه کد زیر را اگر به اسکریپت خود (به زبان #جاوا اسکریپت) اضافه کنیم، این اسکریپت بعد از گذشت 10 ثانیه از کار خواهد افتاد.
function Start(){
yield WaitForSeconds(10);
this.enabled=false;
}
❗ دقت کنید بعد از دستور this.enabled=false دیگر نباید دستور دیگری باشد چون اجرا نخواهد شد. این دستور بیشتر برای منوها در بازی استفاده می شود.
#اسکریپت_نویسی #کد_نویسی #جاوا #یونیتی
〰〰〰〰〰〰〰〰
⭕ کانال یونیتی لرنینگ⭕
💢 @UnityLearning💢
⭕️ #آموزش #دانلود ماژول های یونیتی از سایت Unity
🔹روش اول استفاده از پنجره Build Setting
@UnityLearning
🔹روش اول استفاده از پنجره Build Setting
@UnityLearning
⭕️ #آموزش #دانلود ماژول های یونیتی از سایت Unity
🔹روش دوم استفاده از برنامه Unity Download Assistant که لینک های دانلود آن در پست های قبلی هست.
@UnityLearning
🔹روش دوم استفاده از برنامه Unity Download Assistant که لینک های دانلود آن در پست های قبلی هست.
@UnityLearning
🎨 تغییر رنگ های ظاهری محیط یونیتی
🔸 #درخواست داشتیم برای تغییر تم در یونیتی که با این روش از پنجره Performance از منوی Edit امکان پذیر است.
@UnityLearning
🔸 #درخواست داشتیم برای تغییر تم در یونیتی که با این روش از پنجره Performance از منوی Edit امکان پذیر است.
@UnityLearning
⭕️ دستورات و توابع مربوط به Transform در یونیتی #ادامه
▪️با کمک تابع DetachChildren میتوان کلیه فرزندان یک ترنسفورم را از پدرشان(که تابع برای آن نوشته شده است) جدا کرد. به بیان دیگر اگر یک ترنسفورم دارای چندین بچه باشد، با این تابع میتوان آن ها را از این ترنسفورم جدا کرد. به طور مثال فرض کنید لازم باشد بخواهید یک ترنسفورم را Destroy کنید اما نباید بچه هایش حذف گردند، برای این کار به نحو زیر مینویسیم/👇
transform.DetachChildren(); Destroy(gameObject);
👈دستور اول که گیم آبجکت های متصل به ترنسفورم جاری را از آن جدا میکند و دستور دوم نیز آن را حذف میکند.
🔹با کمک تابع GetChild میتوان به بچه iام یک گیم آبجکت(ترنسفورم) دسترسی داشت، یعنی مثلا اگر یک گیم آبجکت 5 زیر مجموعه داشته باشد و بخواهیم به آبجکت سوم دسترسی داشته باشیم و برای آن کد بنویسیم از دستور زیر به طور مثال استفاده میکنیم/👇
transform.GetChild(2);
👈خروجی دستور از نوع Transform است و دقت کنید اندیس ها از صفر شروع میشوند (2 یعنی آبجکت سوم)
🎦 تابع LookAt ، این تابع جهت یک ترنسفورم را به سمت ترنسفورم دیگر می چرخاند (دقیقا بردار Forward را برابر ترنسفورم دوم قرار میدهد)
transform.LookAt(target);
📹 به طور مثال اگر کد بالا را در تابع آپدیت قرار دهیم و این کد را به دوربین بدهیم، دوربین در تمام طول بازی هدف (آبجکت target) را نشان میدهد.
▫️برای طولانی نشدن مطالب ادامه دستورات را در پست های بعد قرار خواهیم داد.
👈 #ادامه_دارد
#اسکریپت_نویسی #کد_نویسی #جاوا #سی_شارپ #یونیتی
〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
▪️با کمک تابع DetachChildren میتوان کلیه فرزندان یک ترنسفورم را از پدرشان(که تابع برای آن نوشته شده است) جدا کرد. به بیان دیگر اگر یک ترنسفورم دارای چندین بچه باشد، با این تابع میتوان آن ها را از این ترنسفورم جدا کرد. به طور مثال فرض کنید لازم باشد بخواهید یک ترنسفورم را Destroy کنید اما نباید بچه هایش حذف گردند، برای این کار به نحو زیر مینویسیم/👇
transform.DetachChildren(); Destroy(gameObject);
👈دستور اول که گیم آبجکت های متصل به ترنسفورم جاری را از آن جدا میکند و دستور دوم نیز آن را حذف میکند.
🔹با کمک تابع GetChild میتوان به بچه iام یک گیم آبجکت(ترنسفورم) دسترسی داشت، یعنی مثلا اگر یک گیم آبجکت 5 زیر مجموعه داشته باشد و بخواهیم به آبجکت سوم دسترسی داشته باشیم و برای آن کد بنویسیم از دستور زیر به طور مثال استفاده میکنیم/👇
transform.GetChild(2);
👈خروجی دستور از نوع Transform است و دقت کنید اندیس ها از صفر شروع میشوند (2 یعنی آبجکت سوم)
🎦 تابع LookAt ، این تابع جهت یک ترنسفورم را به سمت ترنسفورم دیگر می چرخاند (دقیقا بردار Forward را برابر ترنسفورم دوم قرار میدهد)
transform.LookAt(target);
📹 به طور مثال اگر کد بالا را در تابع آپدیت قرار دهیم و این کد را به دوربین بدهیم، دوربین در تمام طول بازی هدف (آبجکت target) را نشان میدهد.
▫️برای طولانی نشدن مطالب ادامه دستورات را در پست های بعد قرار خواهیم داد.
👈 #ادامه_دارد
#اسکریپت_نویسی #کد_نویسی #جاوا #سی_شارپ #یونیتی
〰〰〰〰〰〰〰〰
⭕️کانال یونیتی لرنینگ⭕️
💢@UnityLearning💢
📷 برای ذخیره کلیه اطلاعات و آبجکت های موجود در یک Scene بازی از گزینه Save Scene استفاده میشود. از Scene ها برای مرحله ای کردن بازی استفاده میشود.
@UnityLearning
@UnityLearning
📷 برای ذخیره کامل پروژه که شامل تمام تنظیمات و همچنین کلیه مراحل بازی (Sceneها) از گزینه Save Project استفاده میشود.
@UnityLearning
@UnityLearning
📸 تنظیماتی که در پروژه (Project Setting) در قسمت های مختلف انجام میشود در این فایل ها و در مسیر پروژه ذخیره میشوند.
👈منبع سایت یونیتی
@UnityLearning
👈منبع سایت یونیتی
@UnityLearning
⭕ Canvas چیست؟
📌 در واقع Canvas بخشی از گیم آبجکت های دسته بندی یونیتی ، برای قرار دادن آبجکت های مربوط به به UI است. یعنی کلیه آبجکت های مربوط به Ui مثل دکمه ها و ... در Canvas قرار می گیرند. بنابراین اگر Canvas را غیر فعال کنیم تمامی دستورات UI و آبجکت های آن را نیز غیر فعال کرده ایم. Canvas تنظیماتی برای محل قرار گیری آبجکت های رابط کاربری دارد که در قسمت Rect Transform و بخش Anchors می توانید به آن دسترسی داشــته باشید.
➰ در Canvas سه حالت برای Rendering دارد.
🔹 Screen Space - Overlay
در این حالت کلیه المنت های UI در بالای Scene (صحنه نمایشی) قرار می گیرند و اگر رزولیشن تغییر کند آن ها نیز جابجا خواهند شد.
🔹 ـScreen Space - Camera یکی از بهترین حالتهای Canvas است زیرا به کمک آن می توان کاری کرد از هر جهتی بخواهیم به سمت المنت های UI نگاه کنیم (این کار به کمک یک دوربین انجام خواهد شد که در پارامتر Render Camera مقدار دهی خواهد شد. در واقع ما از جهتی که دوربین نسبت به Canvas قرار گرفته منو ها را میبینیم )
🔹 ـWorld Space در این حالت نیز مانند دوربین است اما با این تفاوت که از هر جهتی که بازی در جریان است به منو نگاه می کنیم (در واقع در این حالت Canvas یعنی المنت های UI به شکل 3D یا سه بعدی به نظر خواهند رسید)
🔸 در صورتی که بخواهیم جهت یک آبجکت خاص از زیر مجموعه های Canvas را تغییر دهیم باید #کامپوننت جدید Rect Transform را برای آن المنت تنظیم کنیم.
▫ برای تغییر اندازه المنت های Canvas (آبجکت های UI مثل Button) از ویژگی جدید Resize استفاده می شود (که دکمه آن در بالای صفحه کنار دکمه های Scale و Rotation است)
➕ کار با Anchor ها ساده است فقط نیاز به تمرین دارد، در واقع تنظیم Anchor باعث می شود که المنت مورد نظر از یک یا چند جهت وابسته باشد، یعنی مثلا اگر به هر دلیل اندازه صفحه بازی از سمت راست جابجا شد آیا دکمه باید همراه با آن جابجا گردد یا خیر؟ و به همین ترتیب برای سایر موقعیت ها.
💎 این المنت ها در یونیتی Visual Components نامیده می شوند که در پست های بعدی به طور کامل تر از قبل مورد بررسی قرار خواهند گرفت. در پست های قبل از نظر برنامه نویسی این کنترل ها را بررسی کردیم و اکنون در نظر داریم به طور کامل تر همراه با توضیح محیط و نحوه استفاده از آن ها مطالبی را بیان کنیم.
🔸 لطفا کانال را به دوستان و آشنایان خود معرفی کنید.
#آموزش #برنامه #یونیتی
〰〰〰〰〰〰〰
⭕ کانال یونیتی لرنینگ⭕
💢 @UnityLearning💢
📌 در واقع Canvas بخشی از گیم آبجکت های دسته بندی یونیتی ، برای قرار دادن آبجکت های مربوط به به UI است. یعنی کلیه آبجکت های مربوط به Ui مثل دکمه ها و ... در Canvas قرار می گیرند. بنابراین اگر Canvas را غیر فعال کنیم تمامی دستورات UI و آبجکت های آن را نیز غیر فعال کرده ایم. Canvas تنظیماتی برای محل قرار گیری آبجکت های رابط کاربری دارد که در قسمت Rect Transform و بخش Anchors می توانید به آن دسترسی داشــته باشید.
➰ در Canvas سه حالت برای Rendering دارد.
🔹 Screen Space - Overlay
در این حالت کلیه المنت های UI در بالای Scene (صحنه نمایشی) قرار می گیرند و اگر رزولیشن تغییر کند آن ها نیز جابجا خواهند شد.
🔹 ـScreen Space - Camera یکی از بهترین حالتهای Canvas است زیرا به کمک آن می توان کاری کرد از هر جهتی بخواهیم به سمت المنت های UI نگاه کنیم (این کار به کمک یک دوربین انجام خواهد شد که در پارامتر Render Camera مقدار دهی خواهد شد. در واقع ما از جهتی که دوربین نسبت به Canvas قرار گرفته منو ها را میبینیم )
🔹 ـWorld Space در این حالت نیز مانند دوربین است اما با این تفاوت که از هر جهتی که بازی در جریان است به منو نگاه می کنیم (در واقع در این حالت Canvas یعنی المنت های UI به شکل 3D یا سه بعدی به نظر خواهند رسید)
🔸 در صورتی که بخواهیم جهت یک آبجکت خاص از زیر مجموعه های Canvas را تغییر دهیم باید #کامپوننت جدید Rect Transform را برای آن المنت تنظیم کنیم.
▫ برای تغییر اندازه المنت های Canvas (آبجکت های UI مثل Button) از ویژگی جدید Resize استفاده می شود (که دکمه آن در بالای صفحه کنار دکمه های Scale و Rotation است)
➕ کار با Anchor ها ساده است فقط نیاز به تمرین دارد، در واقع تنظیم Anchor باعث می شود که المنت مورد نظر از یک یا چند جهت وابسته باشد، یعنی مثلا اگر به هر دلیل اندازه صفحه بازی از سمت راست جابجا شد آیا دکمه باید همراه با آن جابجا گردد یا خیر؟ و به همین ترتیب برای سایر موقعیت ها.
💎 این المنت ها در یونیتی Visual Components نامیده می شوند که در پست های بعدی به طور کامل تر از قبل مورد بررسی قرار خواهند گرفت. در پست های قبل از نظر برنامه نویسی این کنترل ها را بررسی کردیم و اکنون در نظر داریم به طور کامل تر همراه با توضیح محیط و نحوه استفاده از آن ها مطالبی را بیان کنیم.
🔸 لطفا کانال را به دوستان و آشنایان خود معرفی کنید.
#آموزش #برنامه #یونیتی
〰〰〰〰〰〰〰
⭕ کانال یونیتی لرنینگ⭕
💢 @UnityLearning💢
⭕ دانلود کامل بخش Manual یا راهنمای سایت یونیتی برای استفاده همیشگی به صورت آفلاین
🔹 آخرین ویرایش بخش Manual سایت یونیتی را برای دنلود و استفاده به صورت آفلاین در پست بعدی قرار خواهیم داد.
🔸 این فایل با نرم افزار 7-Zip با نرخ 51 درصد فشرده شده است، بنابراین اکسترکت کردن کمی طول خواهد کشید. کلیه مراحل دانلود توسط یونیتی لرنینگ انجام شده است.
📕 راهنمایی: بعد از دانلود فایل و انتقال آن به کامپیوتر، فایل با پسوند .7z را از حالت فشرده خارج کنید، سپس شما یک فایل با پسوند boe خواهید داشت و مربوط به نرم افزار MetaProduct Offline Explorer می باشد با انتخاب گزینه Restore از تب Tools این نــرم افزار و انتخاب فایل مورد نظر می توانید براحتی به کل سایت یونیتی بخش Manual دسترسی داشته باشید. بخش Manual یونیتی به عنوان یک کتابچه راهنما برای معرفی تمام بخش های یونیتی شناخته می شود و بخش های مختلف نرم افزار در آن به طور کامل و به صورت تصویری آموزش داده شده است.
⛔ کلیه حقوق این فایل برای یونیتی لرنینگ محفوظ است. این فایل به علت تحریم بودن ایران و راحتی برای دسترسی به سایت یونیتی در کانال قرار می گیرد.
◀ در پست بعدی این فایل را #دانلود کنید .
@UnityLearning
🔹 آخرین ویرایش بخش Manual سایت یونیتی را برای دنلود و استفاده به صورت آفلاین در پست بعدی قرار خواهیم داد.
🔸 این فایل با نرم افزار 7-Zip با نرخ 51 درصد فشرده شده است، بنابراین اکسترکت کردن کمی طول خواهد کشید. کلیه مراحل دانلود توسط یونیتی لرنینگ انجام شده است.
📕 راهنمایی: بعد از دانلود فایل و انتقال آن به کامپیوتر، فایل با پسوند .7z را از حالت فشرده خارج کنید، سپس شما یک فایل با پسوند boe خواهید داشت و مربوط به نرم افزار MetaProduct Offline Explorer می باشد با انتخاب گزینه Restore از تب Tools این نــرم افزار و انتخاب فایل مورد نظر می توانید براحتی به کل سایت یونیتی بخش Manual دسترسی داشته باشید. بخش Manual یونیتی به عنوان یک کتابچه راهنما برای معرفی تمام بخش های یونیتی شناخته می شود و بخش های مختلف نرم افزار در آن به طور کامل و به صورت تصویری آموزش داده شده است.
⛔ کلیه حقوق این فایل برای یونیتی لرنینگ محفوظ است. این فایل به علت تحریم بودن ایران و راحتی برای دسترسی به سایت یونیتی در کانال قرار می گیرد.
◀ در پست بعدی این فایل را #دانلود کنید .
@UnityLearning
UnityManual_@UnityLearning.7z
62.4 MB
⭕️ فایل کامل حاوی کلیه فایل های بخش Manual در سایت یونیتی
(اطلاعات کامل در پست قبلی)
🔹اندازه بعد از اکسترکت 110 مگابایت
@UnityLearning
(اطلاعات کامل در پست قبلی)
🔹اندازه بعد از اکسترکت 110 مگابایت
@UnityLearning
🌹میلاد با سعادت حضرت علی بن موسی الرضا علیه السلام را به همه مسلمانان جهان به خصوص شما همراهان گرامی تبریک و تهنیت عرض میکنیم.
💐السلام علیک یا ابالحسن علی بن موسی الرضا المرتضی
@UnityLearning
💐السلام علیک یا ابالحسن علی بن موسی الرضا المرتضی
@UnityLearning