glTF exporter: Draco: fix normalized draco accessors
Fix exporting normalized accessor with Draco enabled. json was ok, but accessor data itself was not flagged as normalized Pull Request: https://projects.blender.org/blender/blender/pulls/122224
This commit is contained in:
committed by
Julien Duroure
parent
105463e28a
commit
1e802d971a
4
extern/draco/src/encoder.cpp
vendored
4
extern/draco/src/encoder.cpp
vendored
@@ -222,7 +222,7 @@ draco::DataType getDataType(size_t componentType)
|
||||
}
|
||||
|
||||
API(uint32_t)
|
||||
encoderSetAttribute(Encoder *encoder, char *attributeName, size_t componentType, char *dataType, void *data)
|
||||
encoderSetAttribute(Encoder *encoder, char *attributeName, size_t componentType, char *dataType, void *data, bool normalized)
|
||||
{
|
||||
auto buffer = std::make_unique<draco::DataBuffer>();
|
||||
uint32_t count = encoder->mesh.num_points();
|
||||
@@ -232,7 +232,7 @@ encoderSetAttribute(Encoder *encoder, char *attributeName, size_t componentType,
|
||||
|
||||
draco::GeometryAttribute::Type semantics = getAttributeSemantics(attributeName);
|
||||
draco::GeometryAttribute attribute;
|
||||
attribute.Init(semantics, &*buffer, componentCount, getDataType(componentType), false, stride, 0);
|
||||
attribute.Init(semantics, &*buffer, componentCount, getDataType(componentType), normalized, stride, 0);
|
||||
|
||||
auto id = static_cast<uint32_t>(encoder->mesh.AddAttribute(attribute, true, count));
|
||||
auto dataBytes = reinterpret_cast<uint8_t *>(data);
|
||||
|
||||
2
extern/draco/src/encoder.h
vendored
2
extern/draco/src/encoder.h
vendored
@@ -53,7 +53,7 @@ API(void)
|
||||
encoderSetIndices(Encoder *encoder, size_t indexComponentType, uint32_t indexCount, void *indices);
|
||||
|
||||
API(uint32_t)
|
||||
encoderSetAttribute(Encoder *encoder, char *attributeName, size_t componentType, char *dataType, void *data);
|
||||
encoderSetAttribute(Encoder *encoder, char *attributeName, size_t componentType, char *dataType, void *data, bool normalized);
|
||||
|
||||
API(uint32_t)
|
||||
encoderGetEncodedVertexCount(Encoder *encoder);
|
||||
|
||||
Reference in New Issue
Block a user