1) 键盘控制角色,不管是赛车那种第三人称跟随弹性视角还是fps游戏,做起来都不难.
但是鼠标控制就要难一些,因为涉及到2D坐标转换到3D坐标,新的运动轨迹,以及方向等等
2) 碰撞的话只做了高度检测,没有做path寻路,所以我可以上房,飞崖之类
由于我的地形是实体,所以要自己做地形三角面的碰撞,原理就是射线查询到了地形实体
就可以获得地形mesh的数据,再用Math::intersects做三角面的碰撞
MOC就是这么实现
3) 鼠标点地面会有一个标识,用decal来说,做一个manualobject,更新mesh的顶点高度,就可以贴在地形上,
4) 点击地面的时候,只有地面和WCollision有效,点到其他实体无效,所以要自己做查询掩码
OGRE的查询掩码很怪异...不要查询的就设置为0
由于还有些小问题没搞定,弄好了再放相关源码~~~~