我正在尝试使用一个静态的顶点列表,并使用矩阵,将它们弯曲成一个圆,如下图所示。我可以使用基本的几何图形找到新的顶点,但我不确定如何用矩阵实现它,或者它是否可能。我相信,称圆心为C,称顶点到C的距离为d, x' = Cx + d*cos() y' = Cy + d*sin()(Cx和Cy是C的分量)。但是,我不认为它本身可以转换成矩阵。
转换我正在制作一款3D《贪吃蛇》游戏。Snake是由部分组成的,每个部分都应该连接到下一个部分。对于每个片段之间的连接,我都有一个方向和位置,所以我想我可以通过连接每个部分来构建片段,如图所示。然而,计算每帧上每段的顶点是低效的。如果我可以静态列出顶点,然后在模型世界矩阵中进行转换,这将更快,并且适合我目前使用的方法。我在下面附上了一张蛇的简单图(忽略头部)。 蛇如果这是不可能的,是否有任何替代方案,可以使用矩阵,同时给出类似的结果?
是有可能的。
骨骼动画:实际上,你可以为物体添加一系列骨骼,并对骨骼进行旋转,以获得完美的曲线。这是最简单的方法。然而,对你的情况来说,不一定是最快的方法。
Just Matrix &重量:如果弯曲总是按照这个比例,你必须给每个顶点添加权重信息,然后用一个变换/旋转/缩放组合的矩阵相乘。这将给你比骨架动画更好的性能,因为每个顶点只使用一个矩阵相乘,没有层次结构。