Update PrimitiveData.hpp

This commit is contained in:
张曾 2019-02-07 10:55:48 +08:00 committed by GitHub
parent 5ec3184a8a
commit 74aa6afb05
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 10 additions and 6 deletions

View File

@ -49,15 +49,19 @@ struct PrimitiveData {
componentCount * draco::DataTypeLength(attribute.dracoComponentType),
0);
const int dracoAttId = dracoMesh->AddAttribute(att, true, attribArr.size());
const int dracoAttId = dracoMesh->AddAttribute(att, false, attribArr.size());
draco::PointAttribute* attPtr = dracoMesh->attribute(dracoAttId);
std::vector<uint8_t> buf(sizeof(T));
for (uint32_t ii = 0; ii < attribArr.size(); ii++) {
uint8_t* ptr = &buf[0];
attribute.glType.write(ptr, attribArr[ii]);
attPtr->SetAttributeValue(attPtr->mapped_index(draco::PointIndex(ii)), ptr);
//std::vector<uint8_t> buf(sizeof(T));
//for (uint32_t ii = 0; ii < attribArr.size(); ii++) {
// uint8_t* ptr = &buf[0];
// attribute.glType.write(ptr, attribArr[ii]);
// attPtr->SetAttributeValue(draco::AttributeValueIndex(ii)), ptr);
//}
for (uint32_t ii = 0; ii < attribArr.size(); ii++) {
attPtr->SetAttributeValue(draco::AttributeValueIndex(ii), attribArr[ii].data_);
}
dracoAttributes[attribute.gltfName] = dracoAttId;
}