diff options
6 files changed, 123 insertions, 6 deletions
diff --git a/download.lst b/download.lst index 589321fb1f3e..799900dc84e6 100644 --- a/download.lst +++ b/download.lst @@ -23,8 +23,7 @@ export CLUCENE_TARBALL := 48d647fbd8ef8889e5a7f422c1bfda94-clucene-core-2.3.3.4. export CMIS_TARBALL := 22f8a85daf4a012180322e1f52a7563b-libcmis-0.4.1.tar.gz export COINMP_MD5SUM := 1cce53bf4b40ae29790d2c5c9f8b1129 export COINMP_TARBALL := CoinMP-1.7.6.tgz -export COLLADA2GLTF_MD5SUM := c8a8be5829ceffacfe1d68d078f5c442 -export COLLADA2GLTF_TARBALL := collada2gltf-master-6258611a6a.tar.bz2 +export COLLADA2GLTF_TARBALL := 4b87018f7fff1d054939d19920b751a0-collada2gltf-master-cb1d97788a.tar.bz2 export CPPUNIT_TARBALL := ac4781e01619be13461bb2d562b94a7b-cppunit-1.13.1.tar.gz export CT2N_TARBALL := 451ccf439a36a568653b024534669971-ConvertTextToNumber-1.3.2.oxt export CURL_MD5SUM := e6d1f9d1b59da5062109ffe14e0569a4 diff --git a/external/collada2gltf/GitSHA1.cpp b/external/collada2gltf/GitSHA1.cpp index bd2cffe1f375..af4286061349 100644 --- a/external/collada2gltf/GitSHA1.cpp +++ b/external/collada2gltf/GitSHA1.cpp @@ -1,2 +1,2 @@ -#define GIT_SHA1 "6258611a6a4b4b94b963db5f1fe41c5290be1f87" +#define GIT_SHA1 "cb1d97788a38d2928afb4622f6a25d012f0f8a54" char g_GIT_SHA1[] = GIT_SHA1; diff --git a/external/collada2gltf/patches/wrong_uri_usage.patch.1 b/external/collada2gltf/patches/wrong_uri_usage.patch.1 index f42f435f9c4c..7c688ad97448 100644 --- a/external/collada2gltf/patches/wrong_uri_usage.patch.1 +++ b/external/collada2gltf/patches/wrong_uri_usage.patch.1 @@ -45,11 +45,10 @@ diff -ur collada2gltf.org/GLTF/GLTFAsset.cpp collada2gltf/GLTF/GLTFAsset.cpp std::ofstream f2(outputPath.c_str(), std::fstream::binary); if (this->_converterConfig->boolForKeyPath("verboseLogging")) { -@@ -397,8 +394,8 @@ +@@ -397,7 +394,8 @@ this->_root = shared_ptr <GLTF::JSONObject> (new GLTF::JSONObject()); - this->_root->setString(kProfile, profile->id()); this->_root->createObjectIfNeeded(kNodes); -- + - this->_writer.initWithPath(this->getOutputFilePath().c_str()); + COLLADABU::URI outputURI(this->getOutputFilePath().c_str()); + this->_writer.initWithPath(outputURI.toNativePath().c_str()); diff --git a/external/opencollada/UnpackedTarball_opencollada.mk b/external/opencollada/UnpackedTarball_opencollada.mk index 93e5480b0659..a1837927e1dd 100644 --- a/external/opencollada/UnpackedTarball_opencollada.mk +++ b/external/opencollada/UnpackedTarball_opencollada.mk @@ -12,6 +12,8 @@ $(eval $(call gb_UnpackedTarball_UnpackedTarball,opencollada)) $(eval $(call gb_UnpackedTarball_set_tarball,opencollada,$(OPENCOLLADA_TARBALL))) $(eval $(call gb_UnpackedTarball_add_patches,opencollada,\ + external/opencollada/patches/0001-Revert-fix-for-malformed-FBX-COLLADA-id.patch.1 \ + external/opencollada/patches/0002-Expose-sid-for-textures-in-extras.patch.1 \ external/opencollada/patches/opencollada.clang.patch.0 \ external/opencollada/patches/opencollada.libxml.patch.0 \ )) diff --git a/external/opencollada/patches/0001-Revert-fix-for-malformed-FBX-COLLADA-id.patch.1 b/external/opencollada/patches/0001-Revert-fix-for-malformed-FBX-COLLADA-id.patch.1 new file mode 100644 index 000000000000..968b57c50b9a --- /dev/null +++ b/external/opencollada/patches/0001-Revert-fix-for-malformed-FBX-COLLADA-id.patch.1 @@ -0,0 +1,51 @@ +From a54360e9d2a67350f27eec8dfbe1103778b2711c Mon Sep 17 00:00:00 2001 +From: Fabrice Robinet <fabricerobinet@me.com> +Date: Tue, 13 May 2014 16:31:40 -0700 +Subject: [PATCH 1/2] Revert fix for malformed FBX-COLLADA id + +--- + GeneratedSaxParser/src/GeneratedSaxParserUtils.cpp | 17 +++++++++++------ + 1 file changed, 11 insertions(+), 6 deletions(-) + +diff --git a/GeneratedSaxParser/src/GeneratedSaxParserUtils.cpp b/GeneratedSaxParser/src/GeneratedSaxParserUtils.cpp +index 404306a..1f9a3ee 100644 +--- a/GeneratedSaxParser/src/GeneratedSaxParserUtils.cpp ++++ b/GeneratedSaxParser/src/GeneratedSaxParserUtils.cpp +@@ -868,11 +868,13 @@ namespace GeneratedSaxParser + failed = false; + return COLLADABU::URI(0); + } ++ const ParserString& string = toStringListItem(buffer, bufferEnd, failed); ++ return COLLADABU::URI(string.str, string.length); ++ ++ //FIXME: Testing fails on windows but pass on OSX with this fix. + //Just get the string as it is for ids, so that we are able to read FBX-COLLADA + //Otherwise, calling toStringItem would result in a truncated string when an id contains spaces +- //const ParserString& string = toStringListItem(buffer, bufferEnd, failed); +- //return COLLADABU::URI(string.str, string.length); +- return COLLADABU::URI((const char*)*buffer, bufferEnd - *buffer); ++ //return COLLADABU::URI((const char*)*buffer, bufferEnd - *buffer); + } + + //-------------------------------------------------------------------- +@@ -883,11 +885,14 @@ namespace GeneratedSaxParser + failed = false; + return COLLADABU::URI(0); + } ++ ++ const ParserString& string = toStringListItem(buffer, failed); ++ return COLLADABU::URI(string.str, string.length); ++ ++ //FIXME: Testing fails on windows but pass on OSX with this fix. + //Just get the string as it is for ids, so that we are able to read FBX-COLLADA + //Otherwise, calling toStringItem would result in a truncated string when an id contains spaces +- //const ParserString& string = toStringListItem(buffer, failed); +- //return COLLADABU::URI(string.str, string.length); +- return COLLADABU::URI((const char*)*buffer); ++ //return COLLADABU::URI((const char*)*buffer); + } + + +-- +1.8.1.4 + diff --git a/external/opencollada/patches/0002-Expose-sid-for-textures-in-extras.patch.1 b/external/opencollada/patches/0002-Expose-sid-for-textures-in-extras.patch.1 new file mode 100644 index 000000000000..067b277e6da6 --- /dev/null +++ b/external/opencollada/patches/0002-Expose-sid-for-textures-in-extras.patch.1 @@ -0,0 +1,66 @@ +From 3f68b25b9085c577c2cc2db81d9a9f743de077b7 Mon Sep 17 00:00:00 2001 +From: Fabrice Robinet <fabricerobinet@me.com> +Date: Thu, 22 May 2014 15:15:40 -0700 +Subject: [PATCH 2/2] Expose sid for textures in extras. + +--- + COLLADAFramework/include/COLLADAFWSampler.h | 8 +++++++- + .../src/COLLADASaxFWLLibraryEffectsLoader.cpp | 4 +++- + 2 files changed, 10 insertions(+), 2 deletions(-) + +diff --git a/COLLADAFramework/include/COLLADAFWSampler.h b/COLLADAFramework/include/COLLADAFWSampler.h +index 44936a8..562e47a 100644 +--- a/COLLADAFramework/include/COLLADAFWSampler.h ++++ b/COLLADAFramework/include/COLLADAFWSampler.h +@@ -129,6 +129,9 @@ namespace COLLADAFW + that is used by the sampler to evaluate the MIPmap chain. */ + float mMipmapBias; + ++ /* sampler Sid, required to be able to retrieve a sampler from extras */ ++ std::string mSid; ++ + public: + + /** Constructor. */ +@@ -203,8 +206,11 @@ namespace COLLADAFW + /** Returns the mipmap Bias.*/ + void setMipmapBias ( float mipmapBias ) { mMipmapBias = mipmapBias; } + +- Sampler* clone() { return FW_NEW Sampler(*this); } ++ void setSid( const std::string &sid) { mSid = sid; } ++ ++ const std::string& getSid() { return mSid; } + ++ Sampler* clone() { return FW_NEW Sampler(*this); } + }; + + /** +diff --git a/COLLADASaxFrameworkLoader/src/COLLADASaxFWLLibraryEffectsLoader.cpp b/COLLADASaxFrameworkLoader/src/COLLADASaxFWLLibraryEffectsLoader.cpp +index 36f9c58..5ac99a4 100644 +--- a/COLLADASaxFrameworkLoader/src/COLLADASaxFWLLibraryEffectsLoader.cpp ++++ b/COLLADASaxFrameworkLoader/src/COLLADASaxFWLLibraryEffectsLoader.cpp +@@ -1003,18 +1003,20 @@ namespace COLLADASaxFWL + + bool validSampler = false; + SidSamplerInfoMap::iterator samplerIt = mEffectProfileSidSamplerInfoMap.find ( samplerSid ); ++ + if ( samplerIt == mEffectProfileSidSamplerInfoMap.end () ) + { + samplerIt = mEffectSidSamplerInfoMap.find ( samplerSid ); + if ( samplerIt != mEffectSidSamplerInfoMap.end () ) validSampler = true; + } + else validSampler = true; +- ++ + if ( validSampler ) + { + SamplerInfo& samplerInfo = samplerIt->second; + samplerInfo.id = samplerArray.getCount(); + COLLADAFW::Sampler* sampler = samplerInfo.sampler; ++ sampler->setSid(samplerSid); + if ( !sampler->getSourceImage().isValid() ) + { + bool validSurface = false; +-- +1.8.1.4 + |