| CARVIEW |
gltf-loader: High level GlTF loader
Please see the README on Github at https://github.com/sgillespie/haskell-gltf-loader#readme
[Skip to Readme]
Modules
[Index] [Quick Jump]
Downloads
- gltf-loader-0.3.0.0.tar.gz [browse] (Cabal source package)
- Package description (revised from the package)
Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
- No Candidates
| Versions [RSS] | 0.1.0.0, 0.2.0.0, 0.2.0.1, 0.3.0.0 |
|---|---|
| Dependencies | base (>=4.11 && <10), binary, bytestring, gltf-codec, gltf-loader, linear, microlens, microlens-platform, optparse-simple, rio (>=0.1.12.0), unordered-containers [details] |
| License | MIT |
| Copyright | 2022 Sean Gillespie |
| Author | Sean D Gillespie |
| Maintainer | sean@mistersg.net |
| Uploaded | by sgillespie at 2022-11-28T03:18:22Z |
| Revised | Revision 1 made by sgillespie at 2022-11-28T03:22:13Z |
| Category | Graphics |
| Home page | https://github.com/sgillespie/haskell-gltf-loader#readme |
| Bug tracker | https://github.com/sgillespie/haskell-gltf-loader/issues |
| Source repo | head: git clone https://github.com/sgillespiep/haskell-gltf-loader |
| Distributions | |
| Executables | gltf-loader |
| Downloads | 393 total (18 in the last 30 days) |
| Rating | (no votes yet) [estimated by Bayesian average] |
| Your Rating |
|
| Status | Docs available [build log] Last success reported on 2022-11-28 [all 1 reports] |
Readme for gltf-loader-0.3.0.0
[back to package description]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