Commit 85807f9d by Kai Westerkamp

tiles

parent 09fc4422
...@@ -4,3 +4,9 @@ ...@@ -4,3 +4,9 @@
[submodule "glTF"] [submodule "glTF"]
path = glTF path = glTF
url = https://github.com/KhronosGroup/glTF.git url = https://github.com/KhronosGroup/glTF.git
[submodule "glTF-Sample-Models"]
path = glTF-Sample-Models
url = https://github.com/KhronosGroup/glTF-Sample-Models.git
[submodule "3d-tiles-samples"]
path = 3d-tiles-samples
url = https://github.com/AnalyticalGraphicsInc/3d-tiles-samples.git
Subproject commit 1d6b1d28b7750cb6db4a97d614d0e3278fd7c7b9
https://github.com/AnalyticalGraphicsInc/3d-tiles/tree/master/TileFormats
Each tile starts with a 4-byte ANSI string, magic
Batch Table Batch Table
JSON Header (UTF8), Binary Body JSON Header (UTF8), Binary Body
bound to tile fomats (specified , and batch lenght) bound to tile fomats (specified , and batch lenght)
...@@ -5,20 +10,19 @@ Batch Table ...@@ -5,20 +10,19 @@ Batch Table
2 referenc in binary (offset, type..) -> float vec3 -> array 2 referenc in binary (offset, type..) -> float vec3 -> array
Feature Table Feature Table
A Feature Table describes position and appearance properties for each feature in a tile. The Batch Table, on the other hand, contains per-feature application-specific metadata not necessarily used for rendering. A Feature Table describes position and appearance properties for each feature in a tile.
header + binary The Batch Table, on the other hand, contains per-feature application-specific metadata not necessarily used for rendering.
header + binary (siehe batch table)
Batched 3D Model .b3dm Batched 3D Model .b3dm
batchLenght number of features (models) batchtable, featuretable, BinaryGLTF
magic - version - byteLenght - batchTableJSONByteLenght -batchTableBinaryLenght -batchLenght
batchTable, BinaryglTF
Batchtable contains model specific MetaData (styling, ..) Batchtable contains model specific MetaData (styling, ..)
every vertex has a batchID (technique parameter sematic _BATCHID) every vertex has a batchID (technique parameter sematic _BATCHID)
Instanced 3D Model Instanced 3D Model .i3dm
rendering slight variations (position ), same model with properties rendering slight variations (position ), same model with properties
inludes feature table and batch table batchtable, featuretable, BinaryGLTF or url to gltf
maps well to Opengl ANGLED instance arrays https://www.khronos.org/registry/webgl/extensions/ANGLE_instanced_arrays/ maps well to Opengl ANGLED instance arrays https://www.khronos.org/registry/webgl/extensions/ANGLE_instanced_arrays/
Semantics: Semantics:
Position Position
...@@ -26,8 +30,45 @@ Instanced 3D Model ...@@ -26,8 +30,45 @@ Instanced 3D Model
Scale Scale
Batch_ID Batch_ID
x is right, y up, z forward x is right, y up, z forward
unreal kann in irgendeiner weise instancing TODO: unreal Instancing, gibt da wohl was
octet further reading: http://jcgt.org/published/0003/02/01/ TODO: octet further reading: http://jcgt.org/published/0003/02/01/
Point Cloud
featureTable, batch table
jeder punklt ein feature
Sematics: Position, RGBA, Normale, BatchID ...
Composite .cmpt
different tiles into node
tile Array
indentifaction by inner tile header (magic) and leanght
Composites can contain compoites
Vector Data
normal Geometry points, polylines, polygons
no specs, just links to cesium
http://cesiumjs.org/tutorials/Geometry-and-Appearances/
OpenStreetMap
Cesium uses Batched 3D Model
MAssiv Model
heavywight Models in contrat to Batchend 3d Model with large number of individual models
steht och nciht vile dazu das Format
UnrealGLTFLoader
https://github.com/RobertPoncelet/UnrealGLTFLoader
uses Tiny glTF Loader
studium Projekt
funtioniert nicht mit unreal engine 4.14 (implementiert 4.12
Static mesh hat sich verändert
code, naja, Imnport static mesh ist 400 Zeilen lang
Tiny glTF Loader
gltf & binary gltf
currently no skin
uses libraries:
picojson.h
base64
stb_image.h
\ No newline at end of file
...@@ -36,6 +36,7 @@ glTF -GL Transmission Format "JPEG for 3D" ...@@ -36,6 +36,7 @@ glTF -GL Transmission Format "JPEG for 3D"
(Animationen / skinning / bones ) (Animationen / skinning / bones )
glTF/loaders : c# threejs glTF/loaders : c# threejs
Unreal: https://github.com/RobertPoncelet/UnrealGLTFLoader Unreal: https://github.com/RobertPoncelet/UnrealGLTFLoader
https://issues.unrealengine.com/issue/UE-16059
binary gltf binary gltf
3D tiles -> Specification for streaming massive heterogeneous 3D geospatial datasets. 3D tiles -> Specification for streaming massive heterogeneous 3D geospatial datasets.
......
Subproject commit 5cee21ea1191ff8b488be85a7f6e5832cca0d978
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment