Asset Bundle built in 2017.3 are crashing in iOS app built with 2018.1.0f1

Just switched to 2018.1.0f1 to address Vuforia bugs, but now asset bundles that we built in 2017.3 are crashing my iOS build. We’ve already dealt with one round of crashes moving from 2017.2 → 2017.3.

This is the crash:

-[MTLVertexAttributeDescriptorArrayInternal setObject:atIndexedSubscript:], line 396: error ‘vertex attribute index (18446744073709551615) must be < 31.’

-[MTLVertexAttributeDescriptorArrayInternal setObject:atIndexedSubscript:]:396: failed assertion `vertex attribute index (18446744073709551615) must be < 31.’

I would like to know if this should be supported or if we’re going to be required to update our assets yet again. This will be a huge issue if required. Unity needs to make it very clear if an engine update will break with incompatible asset bundles. I would say that having them break every time there’s an update makes them significantly less useful.

I think it’s entirely reasonable to expect you would need to rebuild asset bundles in the current version of unity you are using.

That expectation should be set by documentation, not a forum thread. I haven’t been able to find any official documents that describe asset bundle compatibility, but I’d be happy to be proven wrong. At a minimum the release notes should highlight this if a new version is going to require all bundles to be rebuilt and the 2018 release notes make no mention of this.

AssetsBundles aren’t strictly required to be rebuilt to be loadable by newer Unity version, but there is no full backward compatibility either. It all comes down to what is inside the bundle.
So, in essence, you need to either test your asset bundles thoroughly to ensure they are still compatible or rebuild them.

I have hundreds of asset bundles stored in my server and I download and use them in my client app. Having to rebuild every one of them would be a big strain for us. I need to know a couple of things before going through with this. What passes as incompatible and compatible? Will rebuilding my bundles definitely solve this problem? If I want to go back to using Unity 2017.4, will the bundles built with 2018.1 cause a similar problem?

That question should be asked in Asset Bundles forum as the experts on this are there.
But in general graphics stuff (like shaders) tend to have problems across versions, while things like audio clips don’t have problems. Older unity version of player and newer unity version of assets bundles is strongly not recommended.

@rchapman
Any new findings on this topic?

@Aurimas-Cernius
We’re facing the same problem, Asset bundle was built using Unity 2018.1.1f1 and the app with Unity 2018.1.0.f2.
Could this really be this much of an issue even between minor releases?
Android and Windows Store apps work fine (even when the bundle was built back in 2017.3)

I can’t seem to find the “Asset Bundles” forum, only found the one for promoting Assets from the store.

BR,
Chris

Here is Asset Bundles forum: Unity Engine - Unity Discussions

1 Like

Thanks.

FollowUp Thread: [iOS] Loading Asset Bundles built in different Unity versions