• If you have a mod, tool or prefab, please use the Resources section. Click Mods at the top of the forums.

Asset bundle building on Linux for other platforms

dbat

New member
Does anyone have experience using Unity to mod on Linux? (Currently on Unity 2018.3.xx)

I am running into a problem when I bundle assets and then share them with another modder who runs Windows. The things don't load, or they look wildly wrong.

Each platform has a target build, so one must bundle for every one. In the C# code to export assets, you'll find:

Code:
BuildPipeline.BuildAssetBundles(.....BuildTarget.[u]StandaloneLinux[/u]);
Therefore I have to add a line for "StandaloneWindows" (and probably Mac) in order to make bundles that hope to load on those systems. These are different files. There's not one bundle for all platforms. (Or am I wrong?)

BUT

How do I tell my modlet which bundle (in Resources) is which?

Are there some XML incantations for platforms when you do something like:

Code:
<property name="Model" platform="LINUX" value="#@modfolder:Resources/LINUXBUNDLE?mymodel" />
<property name="Model" platform="WINDOWS" value="#@modfolder:Resources/WINDOWSBUNDLE?mymodel" />
If you see what I mean?

It could be that this is totally unnecessary and I'm suffering under a misconception. Please gimme a hand!

* Here is a link to a PDF I made to show the weirdness in one example on my Linux system.

https://drive.google.com/open?id=1ts5gCX3TGd0O8SUrQ8lw0JoOy2sojK2b

(The one on the right is what it's supposed to look like.)

 
Build on windows instead.

The reason I say that is because every Unity3D bundle I've built on Windows works fine on Windows and Linux. MOST of them work ok on MacOS.

 
Yeah, I'll probably get Adreden to do the building. But it sucks that I can't do it on Linux.

Do you think this is an oversight by TFPs? i.e. they kind of forgot that mods can be played on systems other than Windows?

I bought and downloaded what must be the Linux version of the game. I am assuming. I don't know how different it is from the Windows one. There's some system whereby Steam gives me the Linux version. That system must also be on TFPs dev side - as they build for various platforms. I feel they need to look at how *mod assets* (in the Mods/xyz/Resources directory) can supply various platform builds too.

Does that make sense? Do you know how I would go about asking one of the dev staff?

Thanks for your reply!

 
The weird issues you mention don't seem like they are because of package type, but maybe shaders. Keeping the build package the same in unity should generate compatible asset bundles.

I would expect you to be able to generate an asset bundle under Linux that work for windows. It's not an oversight by the Pimps, because the asset creation is provided by modders.

Can you show us what the issue you are running into?

 
Does anyone have experience using Unity to mod on Linux? (Currently on Unity 2018.3.xx)
)
A17 is built on Unity 2018.2.xx This may have nothing to do with your reported issue but might lead to inconsistencies in some ways so be mindful of that possible issue.

 
Yes sphereii - there's a link in the OP to a PDF I made to show the thing.

What do you mean by "Keeping the build package the same in unity"?

I am working on Linux and I build the bundles with the c# code Unity suggests in their docs. I use the StandaloneLinux target. The package has not yet travelled off my machine.

Am encouraged to hear the assets should 'just work'. I am sure this is a dumb thing I am doing somewhere!

- - - Updated - - -

Aye. I am back to 2018.2.xx because 3.xx is not cromulent with a17. It seems to work, but then weird stuff goes wrong. Not to mention endless hangs and crashes.

The problem in the OP was actually observed on 2.xx

 
Back
Top