Skip to content
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

Who's working on open-source glTF 2.0 projects? #867

Closed
1 task
pjcozzi opened this issue Mar 10, 2017 · 44 comments
Closed
1 task

Who's working on open-source glTF 2.0 projects? #867

pjcozzi opened this issue Mar 10, 2017 · 44 comments
Labels

Comments

@pjcozzi
Copy link
Member

pjcozzi commented Mar 10, 2017

Please leave a comment on what you are working on so the community can best focus our efforts on rolling out glTF 2.0!

Contributions to all projects are welcome and much appreciated. Please coordinate with the devs listed below, and we'll keep this issue updated.

Tools

Project Devs Status Notes
COLLADA2GLTF @lasalvavida In progress, KhronosGroup/COLLADA2GLTF#20 Code review and testing appreciated
obj2gltf @lilleyse Not started, CesiumGS/obj2gltf#35 Contributions encouraged
gltf-pipeline @lasalvavida, @moneimne In progress, CesiumGS/obj2gltf#35
glTF Validator @lexaknyazev and @BeardedGnome In progress
batchgltf @feiss In progress Batch COLLADA conversion
wetzel @HowardWolosky In progress, CesiumGS/wetzel#4

Blender

Project Devs Status Notes
Khronos Blender exporter https://github.com/KhronosGroup/glTF-Blender-Exporter
Blender exporter https://github.com/Kupoman/blendergltf
Blender importer @ksons In progress, https://github.com/ksons/gltf-blender-importer

Unity

Project Devs Status Notes
Unity exporter @AurL, @PadreZippo, and Microsoft In progress (original) https://github.com/tparisi/Unity-glTF-Exporter, (fork) https://github.com/sketchfab/Unity-glTF-Exporter,
Unity importer @robertlong In progress Seeking collaborators

Unreal

Project Devs Status Notes
Unreal exporter @cedricpinson / Sketchfab Not started?

JavaScript engines

Project Devs Status Notes
three.js @takahirox, @donmccurdy Stable
BabylonJS @bghgary Stable, https://github.com/BabylonJS/Babylon.js/tree/master/loaders/src/glTF
Cesium @lasalvavida In progress, CesiumGS/cesium#4808
instant3Dhub / instantUV @mlimper In progress
xeogl @xeolabs In progress
PEX @vorg In progress
grimoirejs-gltf @kyasbal-1994 In progress, GrimoireGL/grimoirejs-gltf#13
osg.js @cedricpinson, @jtorresfabra In progress

C/C++, C#, and Vulkan Loaders

Project Devs Status Notes
tinygltfloader (renamed to tinygltf) @cedricpinson, @AurL, and Microsoft In progress, https://github.com/sketchfab/tinygltfloader syoyo/tinygltfloader#16
C# Loader @BeardedGnome In progress KhronosGroup/glTF-CSharp-Loader#1
VulKan ToolS @McNopper In progress Also Blender -> VKTS -> glTF
Laugh Engine @jian-ru In progress
yocto-gl @xelatihy In progress Included OBJ to/from glTF
AssetKit @recp In progress Import/export/render with libgk
glTF2-loader in Lugdunum3D @Sumenia and @saveman71 In progress
gltfpp @mmha In progress Plans for WebAssembly

Rust

Project Devs Status Notes
gltf loader @alteous In progress
gltf-viewer @bwasty In progress

Ada 2012

Project Devs Status Notes
Orka @onox In progress OpenGL 4.5 rendering engine

Samples, docs, and other goodness

Project Devs Status Notes
Sample models @lasalvavida In progress Contributions encouraged
WebGL-PBR @moneimne In progress, moneimne/WebGL-PBR#1 Code review and testing appreciated
Overview / Reference Card @javagl In progress, #761
Tutorial series @javagl Draft Please review
PBR tutorial @moneimne Draft Please review
gltf-typescript-generator @robertlong In progress
TGen @mlimper In progress Simple C++ Tangent Generator
gltf-vscode @emackey In progress #867 (comment)
gltf-test 2.0 @cx20 In progress How well do engines support glTF 2.0?

TODO


Also, see

@pjcozzi pjcozzi added the 2.0 label Mar 10, 2017
@lexaknyazev lexaknyazev mentioned this issue Mar 10, 2017
17 tasks
@McNopper
Copy link
Contributor

You can add VulKan ToolS to the list of exporters as well:
Exporting from Blender to own VKTS scene format. From this proprietary format, the library can encode to glTF 2.0.

@xelatihy
Copy link
Contributor

If you want you can add yocto_gltf to the C++ tools. Already support current 2.0 Draft, but I would not like to call it "released" till the spec is.

https://github.com/xelatihy/yocto-gl

@xelatihy
Copy link
Contributor

My students and I are also working on semantic, full-scene gltf diff/merge tool.

@xeolabs
Copy link
Contributor

xeolabs commented Mar 17, 2017 via email

@xelatihy
Copy link
Contributor

Finally, again in case you care, I have a working OBJ -> glTF and back conversion tool. Again, let us call it work in progress until the glTF 2.0 is finalized and materials are finalized (materials are the real issue here).

@pjcozzi
Copy link
Member Author

pjcozzi commented Mar 17, 2017

Thanks @xelatihy, I added yocto-gl.

My students and I are also working on semantic, full-scene gltf diff/merge tool.

Can't wait to see this!!!


@xeolabs hope you have a great break!


@McNopper I added VulKan ToolS above. Impressive progress by the way!

@recp
Copy link

recp commented Mar 18, 2017

I'm workig on AssetKit (https://github.com/recp/assetkit), not started working on glTF but will asap. It is C (in the future C++ wrappers may be written). It will full support COLLADA, glTF specs and tools for converting them to another formats (runtime + commandline tools). There are also renderer for this lib called libgk (In progress)

/cc @pjcozzi

@pjcozzi
Copy link
Member Author

pjcozzi commented Mar 19, 2017

@recp great project! Added above.

@robertlong
Copy link
Contributor

Just made a quick script to generate a TypeScript interface from the current GLTF 2.0 JSON Schema. It may be of use to someone.

https://github.com/robertlong/gltf-typescript-generator

@pjcozzi
Copy link
Member Author

pjcozzi commented Mar 20, 2017

Thanks @robertlong, added above!

@pjcozzi
Copy link
Member Author

pjcozzi commented Mar 21, 2017

Added TGen by @mlimper above via #812 (comment)

@pjcozzi
Copy link
Member Author

pjcozzi commented Mar 21, 2017

Added gltf-vscode by @emackey above.

@alteous
Copy link

alteous commented Mar 24, 2017

Hi, we're working on a Rust loader for the 2.0 spec as part of the gltf crate.

@pjcozzi
Copy link
Member Author

pjcozzi commented Mar 24, 2017

Thanks @alteous, added above.

@emackey
Copy link
Member

emackey commented Mar 24, 2017

For gltf-vscode, there is currently a branch named gltf2.0 where I have swapped out the JSON schema validation from 1.0 to draft 2.0. When time permits I hope to get a single extension able to auto-detect or at least user-select a schema, without making separate 1.0 and 2.0 extensions that are mutually exclusive.

Update May 2017: The gltf2.0 branch was merged to master and published. See new comment below.

@pjcozzi
Copy link
Member Author

pjcozzi commented Mar 24, 2017

@emackey linked to your comment in the table above.

@donmccurdy
Copy link
Contributor

batchgltf by @feiss would be a good addition here.

@feiss
Copy link

feiss commented Apr 1, 2017

thanks don! Although it is currently using "old" collada2gltf, I will update it as soon as a binary for 2.0 is ready

@pjcozzi
Copy link
Member Author

pjcozzi commented Apr 4, 2017

Thanks @donmccurdy @feiss, added above.

@emackey
Copy link
Member

emackey commented Apr 14, 2017

@pjcozzi The BabylonJS link is broken. The correct link is: https://github.com/sbtron/BabylonJS-glTFLoader

@bghgary
Copy link
Contributor

bghgary commented Apr 14, 2017

@pjcozzi The BabylonJS link is broken. The correct link is: https://github.com/sbtron/BabylonJS-glTFLoader

That's our repo for testing purposes. The BabylonJS loader source is now in BabylonJS master here: https://github.com/BabylonJS/Babylon.js/tree/master/loaders/src/glTF

You can get the compiled version here: https://github.com/BabylonJS/Babylon.js/tree/master/dist/preview%20release/loaders

@pjcozzi
Copy link
Member Author

pjcozzi commented Apr 14, 2017

Thanks @emackey @bghgary! Updated.

@cx20
Copy link

cx20 commented Apr 29, 2017

@pjcozzi I am creating a 2.0 branch of gltf-test repository .
Compare WebGL-based glTF 2.0 loaders from various engines:
https://github.com/cx20/gltf-test/tree/2.0

@pjcozzi
Copy link
Member Author

pjcozzi commented May 2, 2017

Very nice, thanks @cx20. Added above.

@pjcozzi
Copy link
Member Author

pjcozzi commented May 11, 2017

If anyone is looking for a fun glTF 2.0 project, it would be great to update/replace the glTF loader in https://github.com/WebGLSamples/WebGL2Samples with a new or existing glTF 2.0 loader.

CC @shrekshao @trungtle

@BeardedGnome
Copy link
Contributor

I've started looking at updating the C# Loader.

@pjcozzi
Copy link
Member Author

pjcozzi commented May 12, 2017

Great news, thanks for sharing, @BeardedGnome!

@Sumenia
Copy link

Sumenia commented May 12, 2017

We decided to use glTF 2.0 in our Vulkan rendering engine. So we created our own c++ loader

@pjcozzi
Copy link
Member Author

pjcozzi commented May 17, 2017

Thanks @Sumenia! I added your work to the list at the top of this issue.

@stevenvergenz
Copy link

@robertlong 's UnityGLTFLoader has been moved and expanded in scope. It's now just UnityGLTF and it does export now too. Still a work in progress, but the basics are down!

@emackey
Copy link
Member

emackey commented May 31, 2017

Update on gltf-vscode. Last night a new version was published with full glTF 1.0 and 2.0 support, and multiple engine selection for the preview window contributed by @HowardWolosky.

screenshot

To try it, install a copy of VSCode and launch the editor, click the "interlocking boxes" icon on the left side for the Extensions panel, and type gltf in the search box there. Currently this extension is the only search result, so just click Install on it and relaunch the editor. Then load any of the glTF files from the sample model repo, and hit ALT + G to pop up the preview window.

@mmha
Copy link

mmha commented Jun 1, 2017

I have started to work on a C++14 glTF 2.0 loader. It is far from complete, but I intend to make it work with WebAssembly, so native applications and libraries can be easily ported to the web.
In the end I hope to allow library users to inject their own data structures (as long as they satisfy a C++ concept), so copies can be minimized.

@pjcozzi
Copy link
Member Author

pjcozzi commented Jun 2, 2017

Very nice, sounds great @mmha, thanks for sharing! I added gltfpp to the list above. Keep us posted on your progress!

@kyasbal
Copy link
Contributor

kyasbal commented Jun 12, 2017

@pjcozzi A plugin of my project now supports glTF2.0. Yesterday I merged to replace old implementation of glTF1.0 loader.
https://github.com/GrimoireGL/grimoirejs-gltf
Some features are not implemented yet(Morphs, sparse accessors ...etc)
Could you include our issue working for glTF 2.0 loader (GrimoireGL/grimoirejs-gltf#13) on the list of projects working on glTF2.0 loader?

@pjcozzi
Copy link
Member Author

pjcozzi commented Jun 13, 2017

Sure thing, added above @kyasbal-1994!

@pjcozzi
Copy link
Member Author

pjcozzi commented Jul 4, 2017

If you are working on a new glTF 2.0 project or have an update to your glTF 2.0, please let us know.

We plan to incorporate all these projects into the main list in this repo's README.md and then close this issue and #1030.

@bwasty
Copy link

bwasty commented Jul 4, 2017

I've started working on a viewer in Rust: bwasty/gltf-viewer. It's still very early and I'm currently waiting for alteous/gltf (loader) to stabilise a little.
And I just noticed the link to the latter one is outdated above - should point to the root of the repository.

@pjcozzi
Copy link
Member Author

pjcozzi commented Jul 10, 2017

Cool, thanks for sharing @bwasty! Updated the table above, and this will be folded into the main README.md soon.

@onox
Copy link

onox commented Jul 11, 2017

I have written a glTF 2.0 loader in Ada 2012 as part of my OpenGL 4.5 rendering engine. It doesn't support morph, sparse, camera's, and textures yet (Blender exporter doesn't seem to export any textures), so you can consider its status to be "In progress".

@donmccurdy
Copy link
Contributor

@onox nice work! Btw the Blender exporter can export textures, but requires either (a) using the glTF Cycles nodes provided with the exporter, or (b) enabling the experimental KHR_materials_cmnBlinnPhong extension. More info here: https://github.com/KhronosGroup/glTF-Blender-Exporter/blob/master/docs/user.md

@onox
Copy link

onox commented Jul 11, 2017

Ah, I'll go for the glTF Cycles nodes then 😄

@pjcozzi
Copy link
Member Author

pjcozzi commented Jul 12, 2017

Very cool @onox! Added to the above list.

@donmccurdy
Copy link
Contributor

Hi all,

I have opened #1039 merging these projects into the main README. When that is merged, this issue will be closed, so please leave comments on that PR for any corrections or updates.

@pjcozzi
Copy link
Member Author

pjcozzi commented Jul 24, 2017

Check out the latest list: https://github.com/KhronosGroup/glTF#gltf-tools

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests