opensourceBIM / BIMserver

The open source BIMserver platform
GNU Affero General Public License v3.0
1.54k stars 608 forks source link

Create gltf serializer #105

Closed berlotti closed 9 years ago

berlotti commented 10 years ago

Now that geometry is stored in the database, please create a gltf export serializer.

dlabz commented 10 years ago

Integrate json-schema in a way similar to how IFC is implemented, or just makes serializer that exports model in a glTF format?

berlotti commented 10 years ago

Yes, creating a JSON schema similar to IFC. We want a viewer with semantics. Also preferably integrate the binaries into the JSON using data URIs https://developer.mozilla.org/en-US/docs/data_URIs The overall goal is to create a WebGL viewer (BIM Surfer) based on ThreeJS with streaming connection to BIMserver data.

dlabz commented 10 years ago

Right. Exactly what I'm working on for my work project. I've discussed with my employer, and have his approval to opensource this part of the code. My idea was to use http://www.jsonschema2pojo.org/ to generate the JAVA classes. I don't have much experience with generated classes, but hopefully @rubendel will be able to provide some guidance.

berlotti commented 10 years ago

Serializers from BIMserver are open source by definition: http://bimserver.org/license/ Please respect the open source license for derived products. If you make it public and for free or not is your decision.

bountysource-support commented 10 years ago

Bountysource

lirmont commented 10 years ago

To the best of my knowledge, this is solved over in: https://github.com/lirmont/BIMserver/tree/master/Collada

The pull request just needs to be accepted so that it's integrated into the master branch.

berlotti commented 10 years ago

Hi Lirmont,

We noticed "The glTF is dependent upon the program collada2gltf being available on the path of the server operating system of the BIMServer."

The plugin needs to include this to run smootly. It is also not clear under what license collada2gltf is published.

lirmont commented 10 years ago

I will include and rewrite the code to look for pre-packaged binaries. That may make it more difficult to just upgrade that component, since the plugin would need to be re-released with every new version of those binaries.

Licenses

The "example glTF code" (collada2gltf) is BSD License (http://en.wikipedia.org/wiki/BSD_licenses), and its third-party library licenses are listed here: https://github.com/KhronosGroup/glTF/blob/master/LICENSE.md

The Open3DGC codec is MIT license: https://github.com/amd/rest3d/tree/master/server/o3dgc -> https://github.com/amd/rest3d/blob/master/LICENSE.md

lirmont commented 10 years ago

The latest pull request includes pre-packaged binaries for the collada2gltf exporter (Windows & MacOSX), and it places a copy of the license for the collada2gltf program next to the binaries. The readme for the Collada plugin has also been updated with information accurate to this pull request.