使用PHYSX物理引擎大概有几年了,最近发现一BUG,convex物理实体跟引擎模型对应不上(很惭愧,才发现)。
Physx物理引擎有3DMAX的物理插件,能做刚体。。。还经常出BUG,就不吐槽了,但还是忍不住说一句,烂得一逼,
尤其是布娃娃插件,坑了我一年多,前阵子痛定思痛,和同事做了布娃娃插件。这插件设计上是支持刚体和关节的,但目前
不够完美,刚体制作只能依靠PHYSX的官方插件。
3DMAX的坐标系是右手Z-UP,DX是左手Y-UP。
顶点转换:YZ交换。 (顶点位置)
四元数:YZ交换,W取反。(模型的旋转矩阵以及偏移旋转矩阵)
在这特别说明下,对于旋转矩阵来说,它的转换是2、3行交换,第一行取反(如果我没记错的话)。之所以不用矩阵,
原因有二,一是用矩阵推导这个关系颇为难理解,而四元数的转换很好理解。二是因为PHYSX物理实体的位置设置是用四元数
PxQuat和位置PxVec3,无法设置缩放系数,仅仅从外部对物理刚体旋转90度无法解决这一问题,仔细想想便可理解这一点。
测试了十几个刚体,暂未发现问题。如果发现问题,之后会更新。