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的时候,假设系统中有非常多外部依赖,我们不须要也不希望把全部的部件都执行一遍.比方,要验证分享到微博的功能,假设每次測试的时候都要真实地把接 ...
随机推荐
- js文件中引用其他js文件
这一个功能的作用是做自己的js包时,可以通过引入一个整体的js文件而引入其他js. 只需要在总体的js加上这一句话 document.write("<script type='text ...
- 【Python-2.7】换行符和制表符
在Python中换行符“\n”表示接下来的内容将会换到下一行显示,制表符“\t”表示下面的内容显示时在前面留出空白,如打印如下内容: Dear: I love you forever! 上面的一段话分 ...
- cgroup代码浅析(2)
info include/linux/memcontrol.h memcg相关的函数 数据结构 mem_cgroup在每个node下,都有一个lruvec, 这个lruvec保存在mem_cgroup ...
- Socket中BufferedReader.readLine()的阻塞特性导致的数据无法多次发送的问题
https://blog.csdn.net/shenpibaipao/article/details/70236657
- MarkDown语法和使用
MarkDown语法: Markdown在线编辑器 MdEditor Markdown 语法整理大集合2017 MarkDown 数学公式 在Markdown中输入数学公式(MathJax) \(\l ...
- Humidex POJ - 3299 (数学)
题目大意 给定你三个变量中的两个输出剩下的那一个 题解 没有什么,就是把公式推出来即可,完全的数学题 代码 #include <iostream> #include <cmath&g ...
- java.lang unsupported classversion解决方法
设置编译的jdk和运行的jdk环境版本是否一致.一般都是jdk导致的.刚开始用jdk1.6编译运行,死活不行,换成jdk1.7运行也是1.7,ok
- 自定义属性Attribute的运用
有时候需要一个枚举类,能够承载更多的信息,于是可以利用attribute这个特性. 首先编写自己业务需求类 [AttributeUsage(AttributeTargets.Field)] publi ...
- 每日命令:(11)nl
nl命令在linux系统中用来计算文件中行号.nl 可以将输出的文件内容自动的加上行号!其默认的结果与 cat -n 有点不太一样, nl 可以将行号做比较多的显示设计,包括位数与是否自动补齐 0 等 ...
- 虚拟机下Linux网络配置
之前配置好了linux系统,在网络这块我用的是桥接模式. 现在分享一下使用虚拟机桥接模式配置Linux网络的过程. 一.首先配置外网的本地Ip地址. 二.配置Linux 网络链接 1.打开linux网 ...