ہر قسم کے میپ چپ کے لئے ہٹ ڈیٹیکشن نافذ کریں

جب صفحے کی تازہ کاری :
صفحہ تخلیق تاریخ :

تصدیق کا ماحول

Windows
  • ونڈوز 11
یونٹی ایڈیٹر
  • 2021.3.3f1
ان پٹ سسٹم پیکیج
  • 1.3.0

اس ٹوٹکے کے لئے ضروری شرائط

مندرجہ ذیل ترتیبات اس ٹپ کی وضاحت کے لئے بنیاد کے طور پر پیشگی بنائی گئی ہیں۔

اس ٹوٹکے کے لئے کیا شرائط ہیں؟

قرض لینے والے نقشے کے مواد کے بارے میں

ہم مندرجہ ذیل سائٹوں سے قرض لینے پر عمل کرتے ہیں.

سب سے پہلے

اس بار ، میپ چپس کو ایک ٹائل میپ میں رکھا گیا ہے ، اور یہ فیصلہ کیا جاتا ہے کہ آیا رکھے گئے میپ ٹپ کی قسم کے مطابق ہٹ کا تعین کرنا ہے یا نہیں۔

چونکہ یہ ٹپ بڑی حد تک ایک اور ٹپ "ٹائل میپس کے ساتھ ہٹ ڈیٹیکشن کو نافذ کریں" کی طرح ہے، براہ مہربانی تفصیلی وضاحت کے لئے وہاں کا حوالہ دیں. یہاں ، صرف ایک ہی مواد کے لئے طریقہ کار کی وضاحت کی گئی ہے ، اور صرف اختلافات شامل کیے گئے ہیں۔

چلنے والے کرداروں کا نفاذ

سب سے پہلے ، ایک اسپرائٹ امیج تیار کریں جسے پلیئر ہٹ ڈیٹیکشن آپریشن انجام دینے کے لئے کنٹرول کرے گا اور اسے اپنے منصوبے میں شامل کرے گا۔ اس بار ، میپ ٹپ کا سائز 32 پکسل ہے ، لہذا میں تصویر کو اسی سائز میں بناؤں گا۔

میں اس بار چہل قدمی کی حرکت پذیری کو چھوڑ دوں گا کیونکہ اگر اس پر عمل درآمد ہوتا ہے تو طریقہ کار طویل ہوگا۔ اگر آپ اسے نافذ کرنا چاہتے ہیں تو، براہ مہربانی مندرجہ ذیل تجاویز کا حوالہ دیں.

وہ تصویر منتخب کریں جو آپ نے اپنے پروجیکٹ میں شامل کی ہے۔ چونکہ ہم یونٹ کو نقشہ چپ کے ساتھ میچ کرنا چاہتے ہیں ، لہذا "فی یونٹ پکسلز کی تعداد" کو "32" پر سیٹ کریں۔

ایک بار تشکیل پانے کے بعد ، ذیل میں "لاگو کریں" بٹن پر کلک کریں۔

ایک بار تصویر سیٹ ہونے کے بعد ، تصویر کو ویو میں چھوڑ دیں اور آبجیکٹ شامل کریں۔

کردار کی نقل و حرکت کے عمل کو سیٹ کریں۔ اسکرپٹ شامل کریں اور اس کا نام Player چھوڑ دیں۔

اسکرپٹ اس طرح نظر آتا ہے: یہ ایک سادہ حرکت کا عمل ہے جو کی بورڈ کے ساتھ اسپرائٹ کو حرکت دیتا ہے۔

using UnityEngine;
using UnityEngine.InputSystem;

public class Player : MonoBehaviour
{
  // 一定時間ごとに呼ばれます
  void FixedUpdate()
  {
    // キーボードの情報を取得
    var keyboard = Keyboard.current;

    // スプライトの移動処理
    if (keyboard.leftArrowKey.isPressed)
    {
      transform.Translate(-0.1f, 0, 0, Space.World);
    }
    if (keyboard.rightArrowKey.isPressed)
    {
      transform.Translate(0.1f, 0, 0, Space.World);
    }
    if (keyboard.upArrowKey.isPressed)
    {
      transform.Translate(0, 0.1f, 0, Space.World);
    }
    if (keyboard.downArrowKey.isPressed)
    {
      transform.Translate(0, -0.1f, 0, Space.World);
    }
  }
}

آپ جو اسکرپٹ تخلیق کرتے ہیں وہ کردار آبجیکٹ سے منسلک ہوتا ہے۔

گیم چلائیں اور چیک کریں کہ کیا کردار کی بورڈ کے ساتھ حرکت کرتا ہے۔

میپ ٹپس کی تیاری

ایک میپ ٹپ تصویر تیار کریں اور اسے اپنے منصوبے میں شامل کریں۔ جیسے جیسے میپ چپس کی تعداد بڑھتی جاتی ہے، سیٹنگ مشکل ہو جاتی ہے، لہذا اس بار ہم نے صرف دو چوک تیار کیے ہیں، ایک جو چل سکتا ہے اور دوسرا جو چل نہیں سکتا.

وہ تصاویر منتخب کریں جو آپ نے اپنے پروجیکٹ میں شامل کی ہیں اور میپ چپس کے لئے ترتیبات تشکیل دیں۔ مزید معلومات کے لئے مندرجہ ذیل تجاویز دیکھیں:

ایک بار تشکیل پانے کے بعد ، اپلائی بٹن پر کلک کریں اور پھر اسپرائٹ ایڈیٹر بٹن پر کلک کریں۔

32 پکسلز سے تقسیم کریں۔

پیلیٹ بنانے کے لئے ٹائل پیلیٹ ٹیب منتخب کریں۔ اگر کوئی ٹیب نہیں ہیں تو ، آپ انہیں "ونڈو > 2 ڈی - > ٹائل پیلیٹ" کے ساتھ مینو سے ظاہر کرسکتے ہیں۔ پیلیٹ کا نام کچھ بھی ہوسکتا ہے ، لیکن یہاں یہ "میپ چپ پیلیٹ" ہے۔

چونکہ ہم اسے فولڈر میں محفوظ کریں گے ، لہذا منظر فولڈر میں ایک نیا "میپ چپ پیلیٹ" فولڈر بنائیں اور اس کی وضاحت کریں۔

پروجیکٹ میں میپ چپ پیلیٹ فولڈر شامل کیا گیا ہے۔

اگلا ، آپ پیلیٹ میں میپ ٹپس شامل کریں گے۔ تقسیم شدہ میپ ٹپ تصویر کو پیلیٹ پر گھسیٹیں اور چھوڑ دیں۔

میپ ٹپس کو پیلیٹ میں شامل کیا گیا ہے۔

نقشہ بنائیں

ہٹ ڈیٹیکشن کی ترتیبات کو ایک طرف چھوڑ دیں اور پہلے نقشہ بنائیں۔ آپ بعد میں ہٹ ڈیٹیکشن ترتیب دے سکتے ہیں۔ سب سے پہلے ، اپنی درجہ بندی میں ٹائل میپ شامل کریں۔

ایک بار شامل ہونے کے بعد ، ٹائل میپ منتخب کریں۔ یہ منظر ایک گرڈ دکھاتا ہے۔

سب سے پہلے ، ایک نقشہ تیار کریں جو نظارے میں دیوار نہ بنے۔

فی الحال، میں نے اسے پوری جگہ رکھ دیا.

اگلا ، پتھر کا نقشہ رکھیں جو دیوار کے طور پر کام کرے گا۔

اس بار کوئی مسئلہ نہیں تھا ، لیکن اگر آپ کا کردار نقشے کے پیچھے ہونے والا ہے تو ، لیئر آرڈر کو ٹائل میپ سے بڑے نمبر پر سیٹ کریں۔

یقینا ، یہاں تک کہ اگر آپ اس مقام پر کھیل کو منتقل کرتے ہیں تو ، آپ دیوار سے پھسل جائیں گے اور چلیں گے۔

MapChip ہٹ ڈیٹیکشن ترتیبات

یہاں سے ، ہم طے کریں گے کہ آیا ہر قسم کے نقشے کی چپ کے لئے ہٹ فیصلہ درج کرنا ہے یا نہیں۔ سب سے پہلے ، "میپ چپ پیلیٹ" فولڈر کھولیں جو آپ نے پیلیٹ بناتے وقت بنایا تھا۔

اندر پیلیٹ میں ایک میپٹائپ سیٹ ہے ، لہذا پہلے ایک میپٹائپ منتخب کریں جس پر آپ چل سکیں۔

انسپکٹر سے ، کولائیڈر ٹائپ کی قیمت کو کسی پر مقرر نہیں کریں۔ بعد میں ، آپ ٹائل میپ میں ٹکراؤ کا پتہ لگانے کی ترتیب شامل کریں گے ، لیکن اسے "کوئی نہیں" پر سیٹ کرنے سے اس میپ چپ کو ٹکرانے سے روکا جاسکے گا۔

دوسرا پتھر کا نقشہ "گرڈ" پر سیٹ کیا گیا ہے۔ چونکہ اس بار یہ ایک شفاف نقشہ نہیں ہے ، لہذا "اسپرائٹ" کے ساتھ کوئی مسئلہ نہیں ہے ، لیکن اگر آپ اسے "اسپرائٹ" پر سیٹ کرتے ہیں تو ، اس کا فیصلہ تصویر کے شفاف حصے کو مار کر نہیں کیا جائے گا۔

میپ ٹپ میں بس اتنا ہی ہے۔ یہ آسان ہے کیونکہ اس بار ان میں سے صرف دو ہیں ، لیکن اگر آپ کے پاس بڑی تعداد میں نقشہ چپس ہیں تو ، آپ کو اتنا سیٹ کرنے کی ضرورت ہے۔

تصادم کا پتہ لگانے کی ترتیبات

یہاں سے ، یہ تقریبا "ٹائل میپ کے ساتھ ہٹ ڈیٹیکشن کو نافذ کریں" کے مواد کے برابر ہے۔

سب سے پہلے ، کردار تصادم کا پتہ لگانے کے لئے ضروری ترتیبات بنائیں۔ ایک جزو کے طور پر "فزکس 2 ڈی - > سرکل کولائیڈر 2 ڈی" شامل کریں۔ اس بار ، اسپرائٹ گول ہے ، لہذا میں نے اسے ایک دائرہ بنایا ، لیکن براہ کرم شکل کے مطابق باکس یا کیپسول منتخب کریں۔

ہم "فزکس 2 ڈی - > سخت باڈی 2 ڈی" بھی شامل کریں گے۔

کشش ثقل کو نیچے گرنے سے روکنے کے لئے کشش ثقل کا پیمانہ 0 پر سیٹ کریں۔ اس کے علاوہ ، اسپرائٹ کو گھومنے سے روکنے کے لئے "فکس گردش" کے لئے زیڈ چیک کریں۔

ٹائل میپ کے لئے ، ٹائل میپ - > ٹائل میپ کولائیڈر 2 ڈی جزو شامل کریں۔

آپ دیکھ سکتے ہیں کہ نظارے میں پتھر کی نقشہ بندی کے ارد گرد ایک سبز لائن شامل کی گئی ہے۔ اس کا مطلب یہ ہے کہ ہٹ کا پتہ لگانا صرف پتھروں کے لئے مقرر کیا گیا ہے۔ آپ دیکھ سکتے ہیں کہ اوپر دیئے گئے پیلیٹ میں میپٹائپ کی کولائیڈر ٹائپ سیٹنگ کی عکاسی ہوتی ہے۔

کھیل کو چلانے اور دیوار کی طرف چلنے کی کوشش کریں. مجھے لگتا ہے کہ آپ اس بات کو یقینی بنا سکتے ہیں کہ کردار دیوار کے سامنے مناسب طریقے سے رک جائے۔ آپ دیکھ سکتے ہیں کہ ہٹ ڈیٹیکشن سے متعلق کسی بھی پروگرام کو لکھے بغیر اسے آسانی سے لاگو کیا جاسکتا ہے۔

میپ چپ ہٹ کا پتہ لگانے کا امتزاج

جیسا کہ نیچے دیئے گئے نکات میں ذکر کیا گیا ہے ، جب آپ واقعی اسے منتقل کرتے ہیں تو ، دیوار سے ٹکرانے کا پتہ لگانے کا طرز عمل تھوڑا سا عجیب ہوتا ہے۔ اس کی وجہ اور طریقہ کار مندرجہ ذیل تجاویز میں بیان کیا گیا ہے۔

تاہم ، نقشے کی چپ کے ہٹ ڈیٹیکشن حصے کو یکجا کرنے سے ، عجیب طرز عمل کو درست کیا جائے گا اور پروسیسنگ لوڈ ایک ہی وقت میں کم ہوجائے گا ، لہذا آئیے اسے کم سے کم کریں۔

سب سے پہلے ، ٹائلمیپ کولائیڈر 2 ڈی میں "کمپوزٹ میں استعمال" چیک کریں۔

ایڈ کمپوننٹ کے تحت فزکس 2 ڈی > کمپوزٹ کولائیڈر 2 ڈی منتخب کریں۔

"رجیڈ باڈی 2 ڈی" بھی شامل کیا جائے گا ، لہذا "باڈی ٹائپ" کو "جامد" میں تبدیل کریں۔

پھر، مجھے لگتا ہے کہ آپ اس بات کی تصدیق کر سکتے ہیں کہ پتھر کا ہٹ فیصلہ ہر نقشے کی چپ کے لئے نہیں ہے اور مشترکہ ہے.

اب کھیل چلائیں اور یقینی بنائیں کہ یہ مناسب طریقے سے کام کر رہا ہے.