AssetBundles for WindowsStandalone vs WindowsStandalone64

I recently noticed that there is also a possibility to build AB:s targetting WindowsStandalone64. I have always used “WindowsStandalone” as build target for my AB:s and those have worked fine in my game builds that actually are using x86_64 architecture.

This led me wondering what is actually the difference between AB:s built for WindowsStandalone vs WindowsStandalone64? Why does the other option even exist if the AB:s are interchangeable?

bump!

Still waiting for a response from someone at Unity…

Same question here, this is confusing.

On Unity 2019.2.9f1 we have:

For Windows:
StandaloneWindows
StandaloneWindows64

None are deprecated, there’s no Universal enum. Should we create both or is 64 compatible with x86?

For Linux we have:
StandaloneLinux
StandaloneLinux64
StandaloneLinuxUniversal

And only the 64 is not deprecated, does this means x86 doesn’t work anymore?

For OSX all are deprecated except the StandaloneOSX which I suppose is both x86 and x64?

We have not seen any difference (did a binary compare) between these two platforms regarding assetbundle creation. We tested also loading the bundles(32/64) in 32/64bit excutables, both worked, even when mixed up e.g. 32bundle in 64 excutable and vice versa.

If it helps any, I asked the same question a little while back . Based on the response I got, my understanding is that it’s the value of RuntimePlatform that matters more than BuildTarget. So in this case, even though there are different build targets for StandaloneWindows and StandaloneWindows64, they both use the same runtime platform WindowsPlayer and therefore the asset bundles should be compatible. In practice this has seemed to work, at least for our game running on Unity 2018.4.

BE WARNED THOUGH! The hash for the asset bundle will almost certainly be different for the bundle if you specify StandaloneWindows vs StandaloneWindows64 when building the bundle, so make sure you’re consistent about which one you use when building your bundles. I manually normalize the build target for the asset bundle build tool I use, for example.