|
@@ -732,6 +732,9 @@ void glTF2Exporter::ExportMeshes()
|
|
|
|
|
|
/************** Texture coordinates **************/
|
|
/************** Texture coordinates **************/
|
|
for (int i = 0; i < AI_MAX_NUMBER_OF_TEXTURECOORDS; ++i) {
|
|
for (int i = 0; i < AI_MAX_NUMBER_OF_TEXTURECOORDS; ++i) {
|
|
|
|
+ if (!aim->HasTextureCoords(i))
|
|
|
|
+ continue;
|
|
|
|
+
|
|
// Flip UV y coords
|
|
// Flip UV y coords
|
|
if (aim -> mNumUVComponents[i] > 1) {
|
|
if (aim -> mNumUVComponents[i] > 1) {
|
|
for (unsigned int j = 0; j < aim->mNumVertices; ++j) {
|
|
for (unsigned int j = 0; j < aim->mNumVertices; ++j) {
|
|
@@ -967,7 +970,7 @@ void glTF2Exporter::ExportMetadata()
|
|
|
|
|
|
inline Ref<Accessor> GetSamplerInputRef(Asset& asset, std::string& animId, Ref<Buffer>& buffer, std::vector<float>& times)
|
|
inline Ref<Accessor> GetSamplerInputRef(Asset& asset, std::string& animId, Ref<Buffer>& buffer, std::vector<float>& times)
|
|
{
|
|
{
|
|
- return ExportData(asset, animId, buffer, times.size(), ×[0], AttribType::SCALAR, AttribType::SCALAR, ComponentType_FLOAT);
|
|
|
|
|
|
+ return ExportData(asset, animId, buffer, (unsigned int)times.size(), ×[0], AttribType::SCALAR, AttribType::SCALAR, ComponentType_FLOAT);
|
|
}
|
|
}
|
|
|
|
|
|
inline void ExtractTranslationSampler(Asset& asset, std::string& animId, Ref<Buffer>& buffer, const aiNodeAnim* nodeChannel, float ticksPerSecond, Animation::Sampler& sampler)
|
|
inline void ExtractTranslationSampler(Asset& asset, std::string& animId, Ref<Buffer>& buffer, const aiNodeAnim* nodeChannel, float ticksPerSecond, Animation::Sampler& sampler)
|