gameover.blog.ir

نویسنده:بیسواد



شکل کلی:


public static bool SphereCast(Vector3 origin, float radius, Vector3 direction, out RaycastHit hitInfo, float maxDistance = Mathf.Infinity, int layerMask = DefaultRaycastLayers, QueryTriggerInteraction queryTriggerInteraction = QueryTriggerInteraction.UseGlobal);



origin:مرکز کره در آغاز جارو کردن(اسکن)

radius:شعاع کره(محوطه ی جستجوی کروی)

direction:جهت جاور کردن (sweep ) کروی

hitInfo: اگر true باشد ، hitInfo  اطلاعات بیشتری از نقطه ی برخورد را برگشت می دهد.(RaycastHit رو هم ببینید)

maxDistance:حداکثر طول cast(پرتاب اشعه برای بررسی برخورد با اجسام دیگر)

layerMask : یک Layer mask برای نادیده گرفتن کلایدرهای انتخابی وقتی از یک کپسول cast می کنند.

queryTriggerInteraction:تعیین جایی که این دستور (SphereCast)  باید با  Triggerها برخورد(hit) کند.(تریگر به کلایدرهای قابل عبور می گیم)


خروجی: true  اگر برخوردی در ناحیه ی کره ای با هر کلایدری داشته باشیم، وگرنه false .


مثال :


using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { CharacterController charCtrl;

void Start() { charCtrl = GetComponent<CharacterController>(); }

void Update() { RaycastHit hit;

Vector3 p1 = transform.position + charCtrl.center; float distanceToObstacle = 0;

// Cast a sphere wrapping character controller 10 meters forward // to see if it is about to hit anything. if (Physics.SphereCast(p1, charCtrl.height / 2, transform.forward, out hit, 10)) { distanceToObstacle = hit.distance; } } }



مشخصات

تبلیغات

محل تبلیغات شما

آخرین مطالب این وبلاگ

محل تبلیغات شما محل تبلیغات شما

آخرین وبلاگ ها

برترین جستجو ها

آخرین جستجو ها

کاسِت بیست ُ یکم ! عَدَم حمیدرضا جنگی پنجره چوبی مهندسی نساجی گیلان:. گیل تکس Talal Mine Monse نماي کامپوزيت ترجمه فوری اندیشه های دکتر محمد ازگلی