Assertion failed on expression: 'm_PreventLoadingFromFile != nameSpaceID'

Unity AssetBundle.Unload(true) 报错如下:

1
2
Assertion failed on expression: 'm_PreventLoadingFromFile != nameSpaceID'
UnloadAssetBundle failed

1
Releasing render texture that is set as Camera.targetTexture!

报错原因:
项目中有个相机的 prefab 上挂了 RenderTexture,这个 prefab 是打成 AssetBundle 的,RenderTexture 是以依赖的形式打包的。

解决方法:
不要将 RenderTexture 直接挂在相机 prefab 上,也就是将相机 prefab 的 TargetTexture 置空,然后运行时,通过代码来设置相机的 targetTexture 属性即可。