越来越感觉一个引擎真不是一个人应付的了的。但是现在的情况只能先应着头皮去弄。
看了GB的静态碰碰撞这个例子。看得头都大了。引申出来的东西太多了。从GB本身的概念。再到GB和maya.max等的结合。现在依然还是没全通。但是先记录着吧。不然怕明天又忘了.
GB的碰撞流程。
1.首先美术需要在DCC里面用GB的插件选择产生ABV,或者ABV proxy或者OBB等碰撞元素。然后输出到nif才能有数据。
2.ABV我称呼他是交叉碰撞体。ABV proxy 代理交叉碰撞提.
3.看了一下貌似用OBB就够了。他是对每一个part产生一个包围盒。国产游戏难道还需要更细的。。
4.在他自己的使用里。把碰装分为了Colliders(移动中的碰撞) Collidees (静止的碰撞).
NiCollisionData 是碰撞数据的基本单位
NiCollisionData::SetCollideCallback(Callback)
NiCollisionData::SetCollideCallbackData(this) 通过设置回调和自定义数据可以在碰撞发生时又反映.
NiCollisionGroup把有关系的一些碰撞数据集合在一起。方便快速分类和加速碰撞检测结果的得到。
虽然写出来没多少。看起来可费劲了。哎。速度招人啊。