#mesh #structures #search #obtain #data-structures #steenberg #eskil

bin+lib hxa

用于解析Eskil Steenberg规定的HxA网格数据的函数和结构体

9 个版本

0.2.2 2023年3月23日
0.2.1 2023年3月13日
0.1.5 2023年3月11日

1578解析实现

每月 44 次下载

MIT 许可证

25KB
528

Rust HxA 网格解析器

描述

这是一个对Eskil Steenberg规定的网格格式的解析器的WIP版本。
访问HxA GitHub链接

功能

  • 将HxA文件加载到Rust结构体中
  • 在HxA Rust结构体中搜索以获取数据

示例

要加载hxa文件,请使用from()函数并传递文件路径。

use hxa;
let my_hxa = hxa::HXAFile::from("Cube.hxa");

您可以按原样解析,也可以使用find函数快速获取数据

use hxa::conventions::{hard,soft};

let model_geometry = my_hxa.get_first_geometry()
    .expect("Expected to find a geometry node").0;

let vertex_stack = &model_geometry.vertex_stack;

let vertex_positions = vertex_stack
    .find(hard::BASE_VERTEX_LAYER_NAME)
    .expect("Expected to find a vertex layer")
    .as_vec_f32();

let vertex_normals = vertex_stack
    .find(soft::LAYER_NORMALS)
    .expect("Expected to find a normal layer")
    .as_vec_f32();

缺少的功能

  • 某些解析类型尚未实现,但基本的功能已经具备。

无运行时依赖