首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网络游戏 >

游戏场景空间区划后,对于活动的人物实体该怎样处理呢

2013-01-06 
游戏场景空间划分后,对于活动的人物实体该怎样处理呢?1.问题是这样子滴:我的游戏场景是采用的八叉树空间划

游戏场景空间划分后,对于活动的人物实体该怎样处理呢?

1.

问题是这样子滴:我的游戏场景是采用的八叉树空间划分,每个叶子节点子空间对应一个实体列表,记录

这个叶子节点子空间中存在的实体。


划分之后呢,我把那些静态的物体,比如树啊石头啊什么的都加入到这棵八叉树的叶子节点子空间中对

应的实体列表中了,比如说像叶子节点子空间a内存在实体1,2,3、、、、

之后通过遍历这棵八叉树来获取可见列表、需要进行碰撞检测的对象等等。。。



好了,下面我犹豫了,对于那些在场景中活动的人物,是否需要也将其加入到这棵八叉树中呢?


我是这样考虑的,如果加入,那么,当人物在场景中开始行走时,有可能这一帧在叶子子空间A中,下一

帧就会进入到叶子子空间B中,那么就需要逐帧去判断是否在运动时跨越了叶子子空间,进而在前一个子

空间中删除存在记录,在现在的子空间中添加存在记录,(因为在以后的遍历八叉树获取可见列表时需要这

些准确的记录啊,)这样感觉好麻烦啊。。。处理量也太大


如果不加入,专门用一个list存储这些人物实体,自然少了以上的麻烦,但是在获取可见列表时就需要进行

线性遍历不如八叉树高效,而且这样一来八叉树的存在不就只能为那些静态物体工作了么?感觉好笨呀。。。



我的游戏场景属于室外型的,具有自生成的地形,所以想找到一种业内普遍使用的结合着八叉树空间划分的

场景管理方法(特别对于那些动态实体的处理),我还在学校,没接触过业内真正的好技术,还望大侠前辈们

不吝赐教下我这后生小辈哈。。。↖(^ω^)↗



2.

还有个小问题,就是美工在建立游戏中人物模型时高度大概是多少才合适呢?50,100?虽然在max里建模时都一样,

可我想做完导到代码里不用再缩放,我好参照这个大小在max里建模,调动作。。。


小弟能够给的积分不多,还望大侠们赏脸垂青此贴啦。。。O(∩_∩)O







[解决办法]
需要被检测碰撞的物体要加入到8叉树。

比如你只判断人和石头的那些东西的碰撞,而没有人和人的碰撞判断,那么人就可以不用加树

碰撞检测时,根据pos来找到节点,然后判断人和节点间物体碰撞就行了。

另外一个方法
对活动和不活动物体做2个8叉树分别判断。

活动物体相对较少,那么这棵树的跨块时操作代价就会小很多。


每次活动物体移动,需要分别判断2个树

热点排行