1.投射目标是否需要附加刚体,是否可忽略触发器?

默认既支持触发器,也支持刚体。投射的最后一个参数queryTriggerInteraction可以设置,是否包含触发器事件。

2.非射线投射,是否有接触点信息?

投射物刚好相交则会返回接触点信息(hits.point)法线信息等,如果是包含则没有,返回(0,0,0)。

即使设置了投射方向,投射距离也是如此。安全的做法还是用射线投射

3.NonAlloc系列方法注意事项

你建立的缓存数组可以重复用,但需要每次使用时手动清除之前的状态,这个方法并不会帮你清除。

或者通过返回值的数量来遍历。

4.发射的投射方向为Vector3.zero,为无效方向,此时不会返回结果。

5.发射的投射大小不能用Vector3.one*float.MaxValue,或者极大的数,否则检测无效。

(但int.MaxValue倒是可以)

var hits = Physics.BoxCastAll(Vector3.zero, Vector3.one * , Vector3.zero, Quaternion.identity, );
Debug.Log("Hits length: " + hits.Length); foreach (var item in hits)
{
Debug.Log(item.transform.name);
}

打印:Hits length: 0

6.是否存在被一个更大的Collider包裹而无法返回正确结果

2017/5/23 - 重新测试之后,更正下测试结果,之前有误

使用Check系列API,比如Physics.CheckBox(...) 是可以检测到的

使用Overlap系列API,比如Physics.OverlapBox(...)也是可以检测到的

而使用Cast系列API,比如Physics.Raycast。则检测不到,必须在包裹Collider的外面。

无论是Box,Capsule还是Ray,Line都不行。

另外对于MeshCollider,如果一定要用cast来检测,可以用脚本做成双面的MeshCollider

http://www.cnblogs.com/hont/p/6628841.html

以上测试版本是unity5.5.2 f1

Unity物理投射相关问题整理的更多相关文章

  1. Unity中各类物理投射性能横向比较

    最近在优化摄像机部分代码,抽了个时间对物理投射这块进行了系统性的测试,发现了不少东西 测试工程下载地址: http://files.cnblogs.com/files/hont/RaycastTest ...

  2. latch相关视图整理

    latch相关视图整理(原创) V$LATCH V$LATCH视图在选取X$KSLLT记录时,进行了Group By及SUM运算,从而得出了一个汇总信息,保存了自实例启动后各类栓锁的统计信息.常用于当 ...

  3. Unity 物理引擎动力学关节

    Unity物理引擎中的各个动力学关节 Hinge Joint (铰链关节) Fixed Joint (固定关节) Spring Joint (弹簧关节) Character Joint(角色关节) C ...

  4. 转:基于IOS上MDM技术相关资料整理及汇总

    一.MDM相关知识: MDM (Mobile Device Management ),即移动设备管理.在21世纪的今天,数据是企业宝贵的资产,安全问题更是重中之重,在移动互联网时代,员工个人的设备接入 ...

  5. EasyUI相关知识点整理

    EasyUI相关知识整理 EasyUI是一种基于jQuery.Angular..Vue和React的用户界面插件集合.easyui为创建现代化,互动,JavaScript应用程序,提供必要的功能.也就 ...

  6. 基于IOS上MDM技术相关资料整理及汇总

    (转自:http://www.mbaike.net/special/1542.html) 一.MDM相关知识:MDM (Mobile Device Management ),即移动设备管理.在21世纪 ...

  7. [Cxf] cxf 相关知识整理

    ① 请求方式为GET @GET @Path(value = "/userAddressManage") @Produces( { MediaType.APPLICATION_JSO ...

  8. DBGrid相关技术整理

    DBGrid相关技术整理: 注:对于DBGrid相关属性.方法的学习融入到技术整理过程中 一,多选 设置属性: Options->dgMultiSelect = True; ->dgRow ...

  9. libmodbus相关资料整理

    /****************************************************************************** * libmodbus相关资料整理 * ...

随机推荐

  1. https协议

  2. [transferred] javascript exception handling.

    my error handling clause: window.onerror = function (errorMessage, scriptURI, lineNumber, columnNumb ...

  3. 【你吐吧c#每日学习】11.10 C# Data Type conversion

    implicit explicit float f=12123456.213F int a = Convert.ToInt32(f); //throw exception or int a = (in ...

  4. [原创]java WEB学习笔记73:Struts2 学习之路-- strut2中防止表单重复提交

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  5. C#控件:TabControl

    tabcontrol在切换页面的时候经常用到 这里讲下如何让tabcontrol更好看 ref:http://blog.csdn.net/conmajia/article/details/759671 ...

  6. paper 11:matlab中fix函数,floor函数,ceil函数,round函数的区分

    1)fix(n)朝零方向取整,这是一类应用在整数取值上的函数,就如同以前我们所研究的求整问题,例如,fix(pi)=3;fix(-1.3)=-1; fix(1.3)=1; 2)round(n):四舍五 ...

  7. json和字符串/数组/集合的互相转换の神操作总结

    一:前端字符串转JSON的4种方式 1,eval方式解析,恐怕这是最早的解析方式了. function strToJson(str){ var json = eval('(' + str + ')') ...

  8. C语言初学者代码中的常见错误与瑕疵(1)

    曾在豆瓣上看到过一个小朋友贴出他自己的代码(http://www.douban.com/group/topic/40293109/),当时随口指点了几句.难得这位小朋友虚心修正.从善如流,不断地改,又 ...

  9. Oracle体系结构总览(整理)

    先让我们来看一张图  这张就是Oracle 9i的架构全图.看上去,很繁杂.是的,是这样的.现在让我们来梳理一下:一.数据库.表空间.数据文件1.数据库数据库是数据集合.Oracle是一种数据库管理系 ...

  10. [置顶] 一个懦弱的IT人

    对自己近来的学习和工作做一个总结,规划一下未来. 还是从大三暑假说起,稀里糊涂的被拉去参加电子设计大赛,熬过了一段痛苦的时间.原本我是学计算机的,对硬件不太熟悉.不过经过一段时间痛苦的断断续续的学习, ...