Unity物理投射相关问题整理
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物理投射相关问题整理的更多相关文章
- Unity中各类物理投射性能横向比较
最近在优化摄像机部分代码,抽了个时间对物理投射这块进行了系统性的测试,发现了不少东西 测试工程下载地址: http://files.cnblogs.com/files/hont/RaycastTest ...
- latch相关视图整理
latch相关视图整理(原创) V$LATCH V$LATCH视图在选取X$KSLLT记录时,进行了Group By及SUM运算,从而得出了一个汇总信息,保存了自实例启动后各类栓锁的统计信息.常用于当 ...
- Unity 物理引擎动力学关节
Unity物理引擎中的各个动力学关节 Hinge Joint (铰链关节) Fixed Joint (固定关节) Spring Joint (弹簧关节) Character Joint(角色关节) C ...
- 转:基于IOS上MDM技术相关资料整理及汇总
一.MDM相关知识: MDM (Mobile Device Management ),即移动设备管理.在21世纪的今天,数据是企业宝贵的资产,安全问题更是重中之重,在移动互联网时代,员工个人的设备接入 ...
- EasyUI相关知识点整理
EasyUI相关知识整理 EasyUI是一种基于jQuery.Angular..Vue和React的用户界面插件集合.easyui为创建现代化,互动,JavaScript应用程序,提供必要的功能.也就 ...
- 基于IOS上MDM技术相关资料整理及汇总
(转自:http://www.mbaike.net/special/1542.html) 一.MDM相关知识:MDM (Mobile Device Management ),即移动设备管理.在21世纪 ...
- [Cxf] cxf 相关知识整理
① 请求方式为GET @GET @Path(value = "/userAddressManage") @Produces( { MediaType.APPLICATION_JSO ...
- DBGrid相关技术整理
DBGrid相关技术整理: 注:对于DBGrid相关属性.方法的学习融入到技术整理过程中 一,多选 设置属性: Options->dgMultiSelect = True; ->dgRow ...
- libmodbus相关资料整理
/****************************************************************************** * libmodbus相关资料整理 * ...
随机推荐
- https协议
- [transferred] javascript exception handling.
my error handling clause: window.onerror = function (errorMessage, scriptURI, lineNumber, columnNumb ...
- 【你吐吧c#每日学习】11.10 C# Data Type conversion
implicit explicit float f=12123456.213F int a = Convert.ToInt32(f); //throw exception or int a = (in ...
- [原创]java WEB学习笔记73:Struts2 学习之路-- strut2中防止表单重复提交
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- C#控件:TabControl
tabcontrol在切换页面的时候经常用到 这里讲下如何让tabcontrol更好看 ref:http://blog.csdn.net/conmajia/article/details/759671 ...
- paper 11:matlab中fix函数,floor函数,ceil函数,round函数的区分
1)fix(n)朝零方向取整,这是一类应用在整数取值上的函数,就如同以前我们所研究的求整问题,例如,fix(pi)=3;fix(-1.3)=-1; fix(1.3)=1; 2)round(n):四舍五 ...
- json和字符串/数组/集合的互相转换の神操作总结
一:前端字符串转JSON的4种方式 1,eval方式解析,恐怕这是最早的解析方式了. function strToJson(str){ var json = eval('(' + str + ')') ...
- C语言初学者代码中的常见错误与瑕疵(1)
曾在豆瓣上看到过一个小朋友贴出他自己的代码(http://www.douban.com/group/topic/40293109/),当时随口指点了几句.难得这位小朋友虚心修正.从善如流,不断地改,又 ...
- Oracle体系结构总览(整理)
先让我们来看一张图 这张就是Oracle 9i的架构全图.看上去,很繁杂.是的,是这样的.现在让我们来梳理一下:一.数据库.表空间.数据文件1.数据库数据库是数据集合.Oracle是一种数据库管理系 ...
- [置顶] 一个懦弱的IT人
对自己近来的学习和工作做一个总结,规划一下未来. 还是从大三暑假说起,稀里糊涂的被拉去参加电子设计大赛,熬过了一段痛苦的时间.原本我是学计算机的,对硬件不太熟悉.不过经过一段时间痛苦的断断续续的学习, ...