- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Assimp.net 将动画 .dae 文件导入我的 OpenTK 引擎并努力建立可用的分层骨骼结构。
在 tutorial我正在关注,根骨骼或“关节”包含它的子关节列表,以及它们的子关节列表等等。
Assimp 返回每个导入的 Mesh
具有 Bone
列表的对象物体,包裹骨骼的 Name
, OffsetMatrix
和 VertexWeights
,但没有关于它的 child 或 parent 的骨头。Scene
,其中包含 Mesh
,确实有列表总数nodes
(其中一些是骨头)而且这些确实有 parentName
但是通过递归比较检查构建层次结构很快就会变得困惑并且远不能正常工作。
我怎样才能隔离根骨骼,然后是 child ,然后是他们的 child ,等等?
最佳答案
结果是每个节点都包含一个名为 children
的子节点集合。类型 NodeCollection
,从那里我开发了以下解决方案。
寻找根骨 ,迭代每个 node
在 scene
并检查它的名称是否在 bones
中找到mesh
中包含的列表, 那么如果 node
有一个不在 bones
中的父名称list 那么它必须是根骨骼。
构建骨骼层次结构 ,获取 children
从上面找到的“根骨骼”节点,然后在网格中找到匹配的名称 bones
列表,并从中提取所需的顶点权重和偏移矩阵。接下来,使用与上述相同的方法递归搜索这些 child 的 child :迭代每个 node
在场景中直到匹配 bone
找到名称,然后从 bone
中提取数据内bones
列表,然后反向执行,直到没有 child 为止。
如果有更好的方法,我很想听听。
关于c# - 从根开始构建 Assimp 骨骼层次结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51225072/
因此,除了索引之外,当我创建一个新项目并选择 conda 解释器时,还会启动更多需要数小时的进程。下面是一个快照。这些过程是什么?完成后它们会占用空间吗? 最佳答案 PyCharm 运行 genera
我是一名优秀的程序员,十分优秀!