@hackage gltf-loader0.3.0.0
High level GlTF loader
Categories
License
MIT
Maintainer
sean@mistersg.net
Links
Versions
Installation
Dependencies (9)
- base >=4.11 && <10
- binary
- bytestring
- gltf-codec
- linear
- microlens Show all…
Dependents (0)
Haskell GlTF Loader
A high level GlTF loader
Prerequisites
In order to build or install you will need
Building
Build the project
stack setup
stack build
Run the tests (if desired)
stack test
API Documentation
To build the documentation, run
stack haddock
API Examples
Use fromFile or fromBytestring to load a GlTF scene
import Text.GLTF.Loader (fromFile)
-- ...
-- Load a GLTF scene from a file
loadGltfFile :: IO (Either Errors Gltf)
loadGltfFile = fromFile "./cube.gltf"
Then you can, for example, get all the vertices:
getVertices :: Gltf -> [V3 Float]
getVertices gltf = concatMap getVertices' (gltf ^. _meshes)
where getVertices' mesh = concatMap (^. _meshPrimitivePositions) (mesh ^. _meshPrimitives)
CLI
This includes a CLI utility to inspect GlTF files
gltf-loader --help
Roadmap
Currently, only geometries and PBR materials are supported, but we hope to support the majority of GlTF features:
- Animations
- Asset
- Cameras
- Images
- Materials
- PBR Metallic Roughness
- Textures
- Meshes
- Positions
- Indices
- Normals
- Texture Coordinates
- Nodes
- Samplers
- Skins
Authors
Sean Gillespie sean@mistersg.net
Acknowledgements
This project is largely based on https://hackage.haskell.org/package/gltf-codec by Alexander Bondarenko
License
This project is licensed under the MIT License. See LICENSE