7个版本

0.2.1 2023年5月6日
0.2.0 2023年5月5日
0.2.0-rc82023年5月4日
0.2.0-rc52023年5月2日

#39数据格式

Download history 22/week @ 2024-03-11 24/week @ 2024-03-18 37/week @ 2024-03-25 47/week @ 2024-04-01 16/week @ 2024-04-08 19/week @ 2024-04-15 26/week @ 2024-04-22 24/week @ 2024-04-29 19/week @ 2024-05-06 23/week @ 2024-05-13 29/week @ 2024-05-20 12/week @ 2024-05-27 19/week @ 2024-06-03 25/week @ 2024-06-10 18/week @ 2024-06-17 24/week @ 2024-06-24

86每月下载量
用于8个crate(5个直接)

MIT/Apache

1MB
20K SLoC

转换

模型分为两类;“作为场景的模型”或“作为单一网格”。我们更喜欢“作为单一网格”,因为它只需要一个实体即可生成,但代价是无法处理动画,并且只支持场景中的单个对象。

作为场景的模型

     [Model entity]
            |
    [(Optional transform node)]
        /              \
[Scene root node 1]  [Scene root node 2] ...

这些模型可以由多个实体组成,并且可能包含动画。为了确保在整个模型转换时动画的一致性,它们需要在根节点插入某种类型的额外“转换”节点。

作为单一网格的模型

[Model entity]

在这种情况下,我们希望生成的实例仅包含一个实体,并附加网格。所有模型转换都将作为 mesh_to_local 转换应用。

坐标系统转换的注意事项

处理模型坐标系统转换和缩放有两种方式:

  1. 尝试在模型加载的每个地方做这件事
  2. 只需放置一个根节点,它对所有执行转换的内容进行包装

我试了1,但无法使其工作。此代码也似乎是这样解决某些导出器的;模型内部可能使用一种系统,然后导出器在根节点放置了一些转换,这使得使用1尝试转换变得更加困难。

依赖项

~50–90MB
~1.5M SLoC