-
Notifications
You must be signed in to change notification settings - Fork 135
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Create example of how to create a gltf file from scratch #138
Comments
Yes this would be useful since the test we have currently doesn't create one from scratch. One strategy is to declare a lot of things on the stack, e.g.: cgltf_image images[3] = {
{(char*)"tile color", (char*)"tile_color.png"},
{(char*)"tile orm", (char*)"tile_orm.png"},
{(char*)"tile normal", (char*)"tile_normal.png"},
};
cgltf_image& color_image = images[0];
cgltf_image& orm_image = images[1];
cgltf_image& normal_image = images[2];
cgltf_texture textures[3] = {
{(char*)"tile color", &color_image},
{(char*)"tile orm", &orm_image},
{(char*)"tile normal", &normal_image},
};
cgltf_texture& color_texture = textures[0];
cgltf_texture& orm_texture = textures[1];
cgltf_texture& normal_texture = textures[2];
cgltf_material materials[4] = {};
cgltf_material& tile_bottom_material = materials[0];
cgltf_material& tile_top_material = materials[1];
cgltf_material& tile_glow_material = materials[2];
cgltf_material& player_material = materials[3];
tile_top_material.name = (char*)"tile top";
tile_top_material.alpha_cutoff = 0.5f;
tile_top_material.has_pbr_metallic_roughness = true;
tile_top_material.pbr_metallic_roughness = {
.base_color_texture = {&color_texture, 0, 1.0f},
.metallic_roughness_texture = {&orm_texture, 0, 1.0f},
.base_color_factor = {1, 1, 1, 1},
.metallic_factor = 1,
.roughness_factor = 1,
};
tile_top_material.occlusion_texture = {&orm_texture, 0, 1.0f};
tile_top_material.normal_texture = {&normal_texture, 0, 1.0f};
etc... |
Here's a more complete example of writing a gltf from scratch: We could add a pointer to this from the README, or we could copy it into a unit test. I'll defer to @jkuhlmann on how best to proceed. |
I'm creating my own mesh and I would like to save the result into a gltf file. There are no examples or documentation about how to do this.
The text was updated successfully, but these errors were encountered: