mirror of
https://git.mirrors.martin98.com/https://github.com/syoyo/tinygltf.git
synced 2025-09-23 16:43:17 +08:00
Simple Alembic to glTF converter example
Features
- Node hierarchy(Xform).
- Polygon mesh.
- Curves(as an extension)
Limitations
- Alembic data with Ogawa backend only
- Simple poly mesh only
- Simple curve only
- Static mesh only(Use first time sample. no animation)
Compile
OpenEXR(ilmbase), and Alembic 1.6 or later are equired to compile the converter.
Edit include and lib paths for Alembic OpenEXR(ilmbase) in Makefile
, then simply:
$ make
Alembic data
I am testing with Alembic data using Blender's Alembic exporter(feature available from Blender 2.78)
Extensions
Curves
Curves are reprenseted as point primitive(mode = 0) in glTF level for the backward compatibility of existing glTF specification.
The number of vertices per curve information is aded to NVERRTS
attribute.
"ext_mode" extra property is added and set it to "curves" string to specify the object as curves primitive.
Here is an example JSON description of curves primitive.
"meshes": {
"curves_1": {
"primitives": [
{
"attributes": {
"POSITION": "accessor_vertices",
"NVERTS": "accessor_nverts",
},
"material": "material_1",
"mode": 0,
"extras" {
"ext_mode" : "curves"
}
}
]
}
},
TODO
- Support facevarying normals and texcoords/facevarying texcoords.
- Support animation(time samples)
- Support Point and SubD?