Nape "不动"刚体的碰撞交互
"不动"刚体,这里指的是以下两类刚体:
1.刚体的allowMovement和allowRotation都设false的刚体
2.KINEMATIC类型的刚体
如下代码,测试发现输出面板没有内容输出,侦听不到两者的碰撞。
package {
import nape.callbacks.CbEvent;
import nape.callbacks.CbType;
import nape.callbacks.InteractionCallback;
import nape.callbacks.InteractionListener;
import nape.callbacks.InteractionType;
import nape.phys.Body;
import nape.phys.BodyType;
import com.bit101.components.TextArea; public class Main extends BaseMain { public function Main() {
super({gravity:{x:0,y:0}});
}
private var _textArea:TextArea;
private const C_A:CbType = new CbType();
private const C_B:CbType = new CbType();
override protected function createBodies():void {
var body1:Body=createBox(30,30,80,200);
body1.cbTypes.add(C_A);
body1.allowMovement = body1.allowRotation=false;//不允许移动、旋转
body1.velocity.x=300;
body1.space = _space; var body11:Body=createBox(30,30,50,300);
body11.cbTypes.add(C_A);
body11.type = BodyType.KINEMATIC;//设为KINEMATIC刚体类型
body11.velocity.x=300;
body11.space = _space; var body2:Body = createBox(30,300,400,200);
body2.cbTypes.add(C_B);
body2.type = BodyType.STATIC;
body2.space = _space; _space.listeners.add(new InteractionListener(CbEvent.BEGIN,InteractionType.COLLISION,C_A,C_B,a_bHandler)); _textArea = new TextArea(this);
print("check begin.....");
} private function print(text:String):void{
_textArea.text+=text+"\n"
} private function a_bHandler(cb:InteractionCallback):void{
print("hit");
} } }
源码下载:http://yunpan.cn/cmXEYfHw7DbJF 访问密码 b60d
Nape "不动"刚体的碰撞交互的更多相关文章
- unity3d中 刚体(Rigidbody) 碰撞体(Collider) 触发器(Is Trigger)
刚体(Rigidbody)的官方(摘自Unity3d的官方指导书<Unity4.x从入门到精通>)解释如下: Rigidbody(刚体)组件可使游戏对象在物理系统的控制下来运动,刚体可 ...
- 【Unity3D】刚体与碰撞体以及is Trigger属性的意义
[Unity3D]刚体与碰撞体以及is Trigger属性的意义 刚体:个人理解就是具有物理属性(如:质量),接受物理作用(如:重力)的组件. 碰撞体:个人理解就是计算碰撞后的物理量(如:弹力). 刚 ...
- u3d中刚体与碰撞体的理解以及is Trigger属性的意义
刚体:个人理解就是具有物理属性(如:质量),接受物理作用(如:重力)的组件. 碰撞体:个人理解就是计算碰撞后的物理量(如:弹力). 刚体与碰撞体的关系:个人理解判断碰撞体就是需要计算力,如果碰撞的物体 ...
- 关于Unity中的刚体和碰撞器的相关用法(二)
在关于Unity中的刚体和碰撞器的相关用法(一)的基础上 有一个plane平面,一个ball球体,都挂了碰撞器,ball挂了刚体Rigidbody,写了一个脚本ball挂载在球体上,球体从空中落下装机 ...
- 关于Unity中的刚体和碰撞器的相关用法(一)
1.创建一个3D工程 2.构造项目文件目录 3.保存场景为game_scene到文件夹scenes中 4.创建一个Plane平面类型的GameObject节点和一个Sphere球体类型的GameObj ...
- Unity3D 之防止刚体碰撞导致旋转
有时候两个刚体发生碰撞的时候,其中一个质量小的会有发生旋转的情况 如果遇到这样的情况,只需要给刚体添加一个约束就行了. 添加这个就行了.
- Nape的回调系统 nape.callbacks
在Nape中增加一个回调大致分为三步 1:定义一些标签,并根据需求为不同的Interactor打上不同的标签 2:定义一个监听器,这个监听器定义了哪些标签触发了哪种行为之后做何种回调 3:为Space ...
- 胶囊碰撞体(CapsuleCollider)
胶囊碰撞体 (Capsule Collider) 胶囊碰撞体 (Capsule Collider) 由两个半球体与一个圆柱体相连接而构成.它与胶囊 (Capsule) 基元形状相同. 一堆胶囊碰撞 ...
- 【Unity】第11章 第三人称角色控制器和碰撞体
分类:Unity.C#.VS2015 创建日期:2016-05-02 一.简介 第三人称视角控制器涉及的相关概念有: 1.刚体(Rigidbody). 2.碰撞体(Collider).包括球体碰撞体( ...
随机推荐
- hadoop---wordcount命令
[zznu@master file]$ hadoop jar ~/hadoop-2.5.2/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5.2 ...
- DNS 域名系统 (Domain Name System)
DNS 域名系统 (Domain Name System) 许多应用层软件经常直接使用域名系统 DNS (Domain Name System),但计算机的用户只是间接而不是直接使用域名系统. 因 ...
- 制作、烧写根文件系统,使用NFS,编译使用驱动程序
制作YAFFS2.JFFS2文件系统映象文件制作文件系统映象非常简单.① 制作YAFFS2文件系统映象文件对于YAFFS2,要用到mkyaffs2image工具,它在/work/linux/tools ...
- oracle 存储过程(1)
--建一张user_info表create table user_info (id varchar2(10),name varchar2(20),password varchar2(20),addre ...
- PHP signal 信号
最早写php时,发现在终端执行一个php文件,会一直等待程序执行完成以后,终端才能继续下面的操作,若不小心按了下Ctrl+C会导致php程序退出,闭避免这种情况发生,将会使用php的系统编程,即sig ...
- 总结的git操作命令小抄集
.gitignore 本地仓库主目录下,用于定义提交时忽略的文件 git add <file-name> 将修改或新增的文件存入暂存区 git reset HEAD <fil ...
- iosUISegmentedControl的基本设置
//创建segmentControl 分段控件 UISegmentedControl *segC = [[UISegmentedControl alloc]initWithFrame:CGRectMa ...
- sql server基础学习之引号
create table #(code varchar(20),value int)declare @sql varchar(200) set @sql='insert into # select ' ...
- Underscore.js 的模板功能介绍与应用
Underscore是一个非常实用的JavaScript库,提供许多编程时需要的功能的支持,他在不扩展任何JavaScript的原生对象的情况下提供很多实用的功能,需要了解的朋友可以详细参考下 U ...
- xcode单步调试快捷键
xcode单步调试快捷键f6,但是磨人f6是用来调节键盘亮度的,在系统偏好,键盘设置里面,做如下设置就可以了.