Unity3D-碰撞測试
碰撞測试这个再游戏的开发中是非常有必要的。当敌人的攻击的时候,发生碰撞这时候就会造成一定的伤害,因此我们须要依据受到的伤害对用户的生命值进行控制,因此碰撞的測试是 我们在游戏的开发过程中须要的一种比較重要的数据。
在Unity中的碰撞測试有两种,一种是碰撞,一种是触发。一种属于物理碰撞。一种属于非物理碰撞。
个人理解为一种是真是的碰撞。一种仅仅是一种靠近后所触发的碰撞!
当然对于这些的使用也是见仁见智啦!
你认为怎么样会比較好就怎么用啦。
好啦!如今我们来介绍这两种吧。
1.Collision检測:在碰撞的过程中有三种状态各自是OnCollisionEnter;OnCollosionStay;OnCollisionExit;相信通过也能大概了解到他们的大体作用。各自是碰撞開始,碰撞持续。碰撞结束;
2,.Trigger检測:使用这个之前须要勾选IsTrigger属性并用到三种方法:OnTriggerEnter;OnTriggerStay;OnTriggerExit;和上面的类似。
ok,以下我们来分析下两种碰撞測试吧!
一,Collision检測:
void OnCollisionEnter(Collision mCollision)
{
Debug.Log("OnCollisionEnter");
}
void OnCollisionStay(Collision mCollision)
{
Debug.Log("OnCollisionStay");
}
void OnCollisionExit(Collision mCollision)
{
Debug.Log("OnCollisionExit");
}
二,Trigger检測:
void OnTriggerEnter(Collider mCollision)
{
Debug.Log("OnTriggerEnter");
}
void OnTriggerStay(Collider mCollision)
{
Debug.Log("OnTriggerStay");
}
void OnTriggerExit(Collider mCollision)
{
Debug.Log("OnTriggerExit");
}
ok,事实上函数也就这样。只是更重要的是对函数内部的操作,比方说我们碰撞啦。这是后我们须要知道的碰撞的物体是什么东西。这时候我们就须要用到Collision这个对象啦!
以下我们来讨论Collision这个东东吧!
这里本人用到的比較多的是gameObject这样我们能够获得那个碰撞的对象,这样我们能够通过获得的对象来查到很多其它被碰撞到对象的很多其它的属性。这样方便我们来操作。
mCollision.gameObject.name = "hero";
mCollision.gameObject.tag ="hero";
等待,先这样啦!到时候会结合一个详细的样例来阐述,这样会更加便于理解的!
谢谢大家的支持,你的支持是我前进的动力!
Unity3D-碰撞測试的更多相关文章
- Unity3D-RPG项目实战(4):角色性能測试
前言 用一个新的引擎.还是要沉下心来学习.记得2007年用Unreal Engine 3做项目的时候.就有过慘痛的教训:前面话了个把月的时间学习Unreal.认为摸门了.于是就着急忙慌的进入项目正式开 ...
- Qt Quick + OpenGL + Bullet初次測试
Qt Quick + OpenGL + Bullet初次測试 眼下Qt的Quick模块已经表现得很出色,并且可以预留接口来渲染OpenGL场景.一般来说,已经可以满足大部分编程须要了.这次呢.尝试使用 ...
- UnityTestTools測试工具
由于工作关系,要了解Unity上的測试工具,该工具基于Nunit框架.通过查阅资料了解到在Unity5.3中做出了一些改变,自带的仅仅剩下单元測试工具,假设想用其它的工具比方断言.集成測试,就须要前往 ...
- Unityclient通信測试问题处理(一)
Unityclient通信測试问题处理(一) 近期在測试程序的通信模块时.遇到了一个问题:Unity的API函数仅仅能在主线程中调用.而作为client程序,我单独启用了一个监听线程来接收服务端发送的 ...
- Android自己主动化測试解决方式
如今,已经有大量的Android自己主动化測试架构或工具可供我们使用,当中包含:Activity Instrumentation, MonkeyRunner, Robotium, 以及Robolect ...
- java 搭建webservice服务+testclient測试
整理别人的日志: 一.什么是webservice 一种构建应用程序的普遍模型,能够在不论什么支持网络通信的操作系统中执行.一种新的web应用程序分支,能够公布.定位通过web调用.它是一个应用组件,为 ...
- 玩转Bash脚本:test測试语句
总第1篇test就是測试的意思,经常使用在流程控制语句中作为条件.以下做一下介绍. 关于真值 与其它语言不同,Bash(包含其它Shell)中,是用0表示真,非0表示假的.之所以用0表示成功,而不是1 ...
- MYSQL BLOB 字段大小以及个数的限制測试。
測试结论 mysql版本号 5.1 表类型: innodb, row_format=compact (这是默认的行格式) 插入超过10个blob, blob的数据量非常小(<76 ...
- python第三方库系列之十九--python測试使用的mock库
一.为什么须要mock 在写unittest的时候,假设系统中有非常多外部依赖,我们不须要也不希望把全部的部件都执行一遍.比方,要验证分享到微博的功能,假设每次測试的时候都要真实地把接 ...
随机推荐
- 如何利用sql注入进行爆库
SQL注入能做什么 在<SQL注入基础>一文介绍了SQL注入的基本原理和实验方法,那接下来就要问一下,SQL注入到底能什么? 估计很多朋友会这样认为:利用SQL注入最多只能获取当前表中的所 ...
- 对SNL语言的解释器实现尾递归优化
对于SNL语言解释器的内容可以参考我的前一篇文章<使用antlr4及java实现snl语言的解释器>.此文只讲一下"尾递归优化"是如何实现的--"尾递归优化& ...
- 华硕(ASUS)X554LP笔记本在64位win7下无线网络连接问题
还是那台华硕(ASUS)X554LP笔记本,无线网卡为 Qualcomm Atheros AR956x,某天换了个环境,WIFI(此处简称为WIFI网A)就连不上网了.手机.其它笔记本用无线连接都没问 ...
- Django之auth登录认证
前言:我们在开发一个网站的时候,无可避免的需要设计实现网站的用户系统.此时我们需要实现包括用户注册.用户登录.用户认证.注销.修改密码等功能,这还真是个麻烦的事情呢. Django作为一个完美主义者的 ...
- (转)Oracle数据库DBA必备基本技能
[Oracle数据库DBA必备基本技能] shutdown Normal 需要等待所有的用户断开连接 Immediate 等待用户完成当前的语句 Transactional 等待用户完成当前的事 ...
- Ansible基于playbook批量修改主机名实战
Ansible基于playbook批量修改主机名 安装Ansible,相信这里也不用多说,大家都知道 说一下环境:这里的主机名是修改之后的,我先把其他两台的主机名改为别的 192.168.30.21 ...
- bzoj2693 jzptab 莫比乌斯反演|题解
Description Input 一个正整数T表示数据组数 接下来T行 每行两个正整数 表示N.M Output T行 每行一个整数 表示第i组数据的结果 Sample Input 1 4 5 ...
- 19异常和file部分笔记
19异常和file部分笔记-2018/09/041.异常 1.1 throwable()几个常见方法 * getMessage()获取异常信息,返回字符串 * toString()获取异常类名和异常 ...
- 04StringBuffer相关知识、Arrays类、类型互换、正则、Date相关
04StringBuffer相关知识.Arrays类.类型互换.正则.Date相关-2018.7.12 1.StringBuffer A:StringBuffer的构造方法: public Strin ...
- (C/C++学习)20.基于C++改进的单目标遗传算法
说明:在学习生活中,经常会遇到各种各样的最优问题,其中最常见的就是求某个多维(多个自变量)函数在各个自变量各取何值时的最大值或最小值:例如求函数 f(x) = (x-5)2+(y-6)2+(z-7)2 ...