Perhaps you have some Unity assets such as the models in the Polygon GameDev Assets humble bundle, but you want to use them in Blender or the Godot game engine and you do not have Unity installed. As long as you have a UnityPackage file, the process is incredibly simple, as we will show in this tutorial.
There are a few requirements however, you need to have Python (ideally 3.6 or higher) installed. To make life easier, also make sure you have the pip Python package manager installed and available in your console/terminal system path. You can check if Python and Pip are installed by running:
python --version pip --version
On MacOS, the command instead is python3 instead of python. So long as you get a version result from both of those commands, you should be fine. If you do receive an error and you’ve installed Python, the most likely problem is that it wasn’t properly installed to your system path. Make sure this option is selected when installing Python. It is also possible you need to log out or reboot for the change to be applied, especially on older versions of Windows.
Assuming python and pip are working correctly, now you just need to run the command
pip install unitypackage_extractor
This will install the required tool. Now with a .unitypackage file available on your system, in a terminal, shell or command prompt, run the following command:
python -m unitypackage_extractor /path/to/your/file/filename.unitypackage
This will create a new directory named Assets in your current folder. Inside the files you are most likely interested in are in the Models and Textures folders, all other files are Unity engine specific and can be deleted.
Key Links
Polygon Assets Humble Bundle Used in Demo
Unity Package Extractor GitHub Page
Is this Legal?
A common question in the linked YouTube video is “Is this legal?” and the answer is, yes. Mostly.
In the example shown, using the assets distributed as part of a Humble Bundle, so long as the asset doesn’t have an explicit clause in their license limiting their use to specific game engines, you are completely fine to use this method.
There are a few caveats however. The Unity EULA prevents downloading assets from the Unity Asset Store in any manner other than using the Unity engine. So you cannot for example use a 3rd party asset downloader. Additionally some assets directly from Unity (much like Unreal Engine assets directly from Epic Games) have a license that limits their use to Unity only. These assets could not be used in this manner. For the vast majority of 3rd party assets, especially those sold in Bundles such as Humble, this method is completely legal and compliant with the EULA.
You can learn more about using Unity assets in unitypackage format without needing Unity installed, as well as see how to load and texture such an asset in Blender, in the video below. Humble Bundle links contain an affiliate code that enables you to direct a portion of your purchase to support GFS (and thanks so much if you do!)