January 31st, 2022 Darmstadt, Germany
Our mission is to fully automate the transformation of 3D data into interactive experiences. Essential enabler are modern transport standards and efficient hardware and GPU interfaces. For both areas, Khronos provides critical and important building blocks with GLTF, KTX and WebGL/OpenGL/Vulkan.
Threedy has now joined the Khronos Group to contribute to open standards aiming towards improvement of 3D data virtualisation and device and GPU interfacing.
The Khronos Group is an open, non-profit, member-driven consortium of over 150 industry-leading companies creating advanced, royalty-free interoperability standards for 3D graphics, augmented and virtual reality, parallel programming, vision acceleration and machine learning. Khronos standards include Vulkan®, Vulkan® SC, OpenGL®, OpenGL® ES, OpenGL® SC, WebGL™, SPIR-V™, OpenCL™, SYCL™, OpenVX™, NNEF™, OpenXR™, 3D Commerce™, ANARI™, and glTF™.
Fraunhofer IGD has been a member since many years and the instant3Dhub development team, at that time part of IGD, is and was actively using and contributing to various Khronos standards.
Threedy has now officially joined the Khronos Group to contribute to open standards aiming towards improvement of 3D data virtualisation, provisioning and automation for instant3Dhub applications and services.
Many modern service layer provide 3D data using the GLTF standard, a format also supported by the instant3Dhub architecture. We proposed two major extensions to GLTF over the last years to ease the integration even further:
FRAUNHOFER_materials_pbr: "A unified GLTF/X3D extension to bring physically-based rendering to the web", ACM, PDF (Pull Request): Now officially part of GLTF 2.0.
FRAUNHOFER_external_model:"Distribution of 3d data into more than one resource" (Pull Request): Not yet part of the official standard.
The current gltf version 2.0 supports two encodings, JSON and binary, supported by instant3Dhub and actively used by customers.
Models are stored in the newly introduced models array, similar to the existing images. The uri can be any combination of URN/URL values with multistage data and content negotiation.
"models": [
{
"uri": "urn:plmdomain:BOMconfig:UUID:223423243983450983454234"
},
{
"uri": "https://datalake.local/part/AF93M0343N.CATPart"
},
{
"uri": "https://s3server.awsgate/object/343431",
"mimeType" : "model/gltf-binary"
}
]
A model is instantiated by node.model property. The same model could be used by many nodes, which could have different transformations.
"nodes": [
{
"name": "Untransformed External Model",
"model": 2
},
{
"name": "Transformed External Model",
"model": 1,
"translation": [ 20, 0, 0 ]
}
]
Additional information can be found in the current extension proposal and gltf spec.
Terms