在没有 three.js 的情况下为 JSON 个模型制作动画
Animating JSON models without three.js
我知道我们可以在 WebGL 中加载 JSON 模型,但如果我们加载了绑定模型,我不知道如何为它们设置动画。没有 three.js 有没有办法做到这一点?
您可以使用 THREE.js 为装配模型制作动画(但是您似乎不想使用内置功能)。
THREE.js 在后台执行的操作是传递所有矩阵变换(矩阵数组),并将每个顶点的骨骼索引(最多 4 个)和骨骼权重传递给顶点着色器.在顶点着色器中,它根据顶点权重在这些矩阵之间进行混合并平移顶点。所以理论上你可以将值传递给顶点着色器来制作动画。或者只使用 THREE.js 动画例程。
它可以使用2种方法来存储所有这些数据。一种方法使用 "image texture" 来存储所有这些矩阵,并进行一些花哨的操作以在顶点着色器中将图像转换为矩阵。另一种方法是传递统一矩阵数组(对于较新的显卡,这是首选方法)。
我知道我们可以在 WebGL 中加载 JSON 模型,但如果我们加载了绑定模型,我不知道如何为它们设置动画。没有 three.js 有没有办法做到这一点?
您可以使用 THREE.js 为装配模型制作动画(但是您似乎不想使用内置功能)。
THREE.js 在后台执行的操作是传递所有矩阵变换(矩阵数组),并将每个顶点的骨骼索引(最多 4 个)和骨骼权重传递给顶点着色器.在顶点着色器中,它根据顶点权重在这些矩阵之间进行混合并平移顶点。所以理论上你可以将值传递给顶点着色器来制作动画。或者只使用 THREE.js 动画例程。
它可以使用2种方法来存储所有这些数据。一种方法使用 "image texture" 来存储所有这些矩阵,并进行一些花哨的操作以在顶点着色器中将图像转换为矩阵。另一种方法是传递统一矩阵数组(对于较新的显卡,这是首选方法)。