BRF文件数据结构
2024-01-07 17:12:55
一.BRF-文件头数据结构
type_mesh = "mesh" 网格
type_material = "material" 材质
struct brf_header{
int type_length; //4个字节, type字符串对应长度
char* type_name; //根据type_length获取
int type_content_num; //4个字节,对应类型所含个数,例如含有模型6个
}
例如一个包含2个模型的BRF文件,对应的BRF文件头应该是:
二.BRF-mesh数据结构
int 对应4个字节
float 对应4个字节
struct mesh{
int name_length;//模型名长度
char* name;//模型名
const int material_flag = 0;//标志位
int material_cnt;//材质名长度
int material_name_length;//材质名长度
char* material_name;//材质名
int vertex_num;//顶点数量(Normal格式顶点) x, y, z三个坐标float类型数值
vertex_normal[];
int vertex_fvf_num;//顶点数量(FVF格式顶点)顶点数量
vertex_fvf[];
int triangle_num;//三角面数量
triangle[];
}
struct vertex_normal{
float x;
float y;
float z;
};
struct vertex_fvf{
int vertex_fvf_index;
const int vertex_uv_flag = -1;//标志位
float x;
float y;
float z;
float u;
float v;
float vnx;
float vny;
float vnz;
};
struct triangle{
int v1_index;
int v2_index;
int v3_index;
}
文章来源:https://blog.csdn.net/qq_35829452/article/details/135363611
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!