求助,怎么实现把物体捡起来?
疯啦哈哈哈
疯啦哈哈哈 11131 6
脚本 2016-01-09 16:58
初学求问:我用的是unity自带的第一人称视角,然后往这个控制器下面放了一个空物体做子物体,比如说当我碰到一个球的时候,按鼠标摧毁这个球,然后在空物体的位置克隆这个球,再扔出去。现在可以摧毁这个球了,但是不能克隆,我想的是在空物体上加一个代码将这个空物体的坐标传送给控制器,然后控制器在这个位置上克隆新的球,或者控制器把球体的信息传递给空物体,空物体新建,但是这两个方法都没实现,求解决方法.
这是代码:控制器:

图片:5.png


球体:

图片:6.png


ps:不清楚传递球体信息的类型是什么,反正我用的object报错了。
分享:
游客
要评论请先登录 或者 注册
疯啦哈哈哈 学徒 2016-01-11 13:15 1楼
啊哈,是我想的太复杂了,应该是射线碰撞到物体,就把物体的位置改成子物体(empty)的位置:

先定义一个叫touchGame的gameobject,要把empty拖进去
然后在射线检测里面写:if(hit.collider.gameObject.tag=="touch"&&Input.GetKeyDown(KeyCode.E)){
 hit.collider.gameObject.transform.position=touchGame.gameObject.transform.position;
 }
但是这个时候又出错了,就是按一下E,物体能拿起来一下,然后又掉了回去,还是有问题,求解
ishare 学徒 2016-01-11 13:56 2楼
function OnTriggerEnter (other : Collider) {
Debug.Log(other.gameObject);
}
这可以接收到碰撞对象。
木鱼。 学徒 2016-01-15 13:49 3楼
疯啦哈哈哈:啊哈,是我想的太复杂了,应该是射线碰撞到物体,就把物体的位置改成子物体(empty)的位置:

先定义一个叫touchGame的gameobject,要把empty拖进去
然后在射线检测里面写:if(hit.collider.game...
回到原帖
射线是一直发射的吧,位置一直在改变;直接销毁看见的克隆一个到想要的位置
peng575908502 学徒 2016-12-15 19:58 4楼
直接进行碰撞检测,碰撞之后将该物体设置成为你人物的子物体就好了  这样就能够跟随移动,模拟“拿起”这一动作了
oanh201079 学徒 2017-04-21 22:07 5楼
cool tips
taonima 新手 2018-02-07 16:18 6楼
damage.transform.setparents(transform);
damage.transform.possition=new vectory3(0,0);
返回顶部