游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2657|回复: 4

怎样用鼠标选择及拖到物体? 新手求教

[复制链接]

5

主题

7

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2008-7-4 16:09:00 | 显示全部楼层 |阅读模式
我刚学习物理引擎OgreNewt。做了一个地板和一个悬空的物体,当运行程序时,物体自动下落到地板上,碰撞检测正常,当我用场景查询选择并拖动物体时,碰撞检测就不起作用了,物体也不会再自动下落了!我错在哪呢?或是根本就存在概念上的误区?

虚心向各位前辈请教,任何的帮助我都不胜感激!谢谢!

63

主题

181

帖子

181

积分

注册会员

Rank: 2

积分
181
发表于 2008-7-5 09:14:00 | 显示全部楼层

Re:怎样用鼠标选择及拖到物体? 新手求教

是用SceneNode的translate改变的位置吗? 问题可能出在没有改变body的位置,如果用setvelority改变的位置可能没有这个问题。因为不使用物理引擎改变位置的话,物理引擎会把这个物体freeze,而忽视掉对它的处理。可以用setAutoactiveCallback()设置一个callback函数,内容为body->unfreeze。

5

主题

7

帖子

7

积分

新手上路

Rank: 1

积分
7
 楼主| 发表于 2008-7-5 15:47:00 | 显示全部楼层

Re: 怎样用鼠标选择及拖到物体? 新手求教

谢谢,谢谢!
不过setvelority是body的方法吗?我不太了解!
再请教一个弱智点的问题,我对Callback()函数的理解很模糊(其实是英文水平有限看不懂),能否讲解一下?

再次谢谢!

63

主题

181

帖子

181

积分

注册会员

Rank: 2

积分
181
发表于 2008-7-6 13:53:00 | 显示全部楼层

Re:怎样用鼠标选择及拖到物体? 新手求教

恩,setvelority是body的方法。
callback也叫回调函数,就是将函数的指针传过来。简单的说,就是调用某函数。

5

主题

7

帖子

7

积分

新手上路

Rank: 1

积分
7
 楼主| 发表于 2008-7-7 12:27:00 | 显示全部楼层

Re:怎样用鼠标选择及拖到物体? 新手求教

谢谢!
callback函数是由程序自动调用的吧!现在我在原来的代码里加了个键盘操作,按下W键物体往z负方向移动,其中添加了回调函数,但是物体移动之后就没办法停下了!我想要的是像现实世界中推箱子的效果,推一下动一点!难道ogrenewt还能设置地面摩擦力吗?呵呵!有实现的办法吗?另外,对于velority的概念还不是很清楚,可以解答一下吗?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-22 01:40

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表