8个版本
0.2.3 | 2022年9月12日 |
---|---|
0.2.2 | 2021年3月1日 |
0.2.1 | 2021年2月24日 |
0.1.3 | 2020年12月19日 |
0.1.2 | 2020年9月11日 |
#1616 in 解析器实现
543 每月下载次数
26KB
498 代码行
Wavefront
一个Wavefront OBJ解析器和实用工具包。
[dependencies]
wavefront = "x.y.z"
示例
let model = wavefront::Obj::from_file("tests/ship.obj").unwrap();
for [a, b, c] in model.triangles() {
// No index lookup required: wavefront handles this for you!
println!("{:?} {:?} {:?}", a.position(), b.position(), c.position());
}
特性
-
用于从文件和读取器解析OBJ的直观API。
-
包装类型会自动执行索引并隐藏OBJ格式的一些烦恼,如果您只想获取一些三角形...
-
...但如果需要,也允许您深入了解OBJ的细节。
-
正确处理复杂多边形。
-
无依赖
路线图
-
材料和MTL支持。
-
对象、组、多边形、顶点和顶点属性插入
-
保存
-
任意几何支持。
为什么不选择[替代方案]?
wavefront
诞生于一种普遍的感觉,即现有OBJ解析器的API要么过于冗长,要么没有正确处理OBJ格式的层次结构。wavefront
旨在将正确处理格式功能与干净、简洁的API相结合,使您可以直接跳转到您想要做的事情:渲染您的模型。
许可证
wavefront
根据用户的意愿在以下许可证下分发:
-
Apache License,版本2.0,(LICENSE-APACHE或http://www.apache.org/licenses/LICENSE-2.0)
-
MIT许可证 (LICENSE-MIT或http://opensource.org/licenses/MIT)
用户自行决定。
依赖关系
~1MB
~13K SLoC