You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It contains a GLB with two meshes.
Both meshes contain one primitive.
Both primitives define TEXCOORD_0 attributes
Only the first primitive defines a property texture.
When rendering this with the given sandcastle, this is the result:
It can be seen that it uses the property texture for both primitives, even though it is only assigned to one of them. (One could argue what the behavior should be in this case...)
The tileset in the noTexCoords folder:
This is equal to the one described above, except for the fact that the second primitive does not define a TEXCOORD_0 attribute. It does not need one, because it does not have a texture, and no property texture. Rendering this with the given sandcastle results in...
when just trying to load the data. This might nearly be "expected" at this point (considering the behavior in the first case), but is far more critical, because it causes a hard crash of CesiumJS by just loading a valid input file.
(There are some ... "similarities" ... of this to #11683. Maybe not even on a technical/implementation level, but on the level of the question of ~"What part of a model does metadata belong to?")
The text was updated successfully, but these errors were encountered:
When a property texture is applied to one mesh primitive, then CesiumJS applies it to all mesh primitives (and crashes if it cannot be applied).
The following is an archive that contains the relevant test data:
3d-tiles-tools
- no warranty, just for reference)property textures refer to all meshes.zip
The tileset in the
hasTexCoords
folder:It contains a GLB with two meshes.
Both meshes contain one primitive.
Both primitives define
TEXCOORD_0
attributesOnly the first primitive defines a property texture.
When rendering this with the given sandcastle, this is the result:
It can be seen that it uses the property texture for both primitives, even though it is only assigned to one of them. (One could argue what the behavior should be in this case...)
The tileset in the
noTexCoords
folder:This is equal to the one described above, except for the fact that the second primitive does not define a
TEXCOORD_0
attribute. It does not need one, because it does not have a texture, and no property texture. Rendering this with the given sandcastle results in...when just trying to load the data. This might nearly be "expected" at this point (considering the behavior in the first case), but is far more critical, because it causes a hard crash of CesiumJS by just loading a valid input file.
(There are some ... "similarities" ... of this to #11683. Maybe not even on a technical/implementation level, but on the level of the question of ~"What part of a model does metadata belong to?")
The text was updated successfully, but these errors were encountered: