Open Sembiance opened 1 year ago
If https://github.com/FabianFG/CUE4Parse/pull/120 gets merged, the copy step needs to become:
cp /path/to/UnrealEngine/Engine/Source/Programs/Shared/EpicGames.Oodle/Sdk/2.9.3/linux/lib/liboo2corelinux64.so.9 ./bin/Debug/net7.0/
cp /path/to/detex/libdetex.so.0.1.2 ./bin/Debug/net7.0/libdetex.so
For tegra_swizzle you first have to install rust somehow, on gentoo: emerge dev-lang/rust
, then
git clone https://github.com/ScanMountGoat/tegra_swizzle
cd tegra_swizzle
cargo build -r
to copy the library:
cp path/to/tegra_swizzle/target/release/libtegra_swizzle.so ./bin/Debug/net7.0/libtegra_swizzle_x64.so
note: these steps also work for mac, and 32-bit and arm variants for all 3 platforms. on mac any file that has the extension .so has to be .dylib, and on windows it's .dll.
I got CUE4Parse working under Linux and thought these instructions might be useful to add to the Wiki:
Linux
These steps walk you through creating a dotnet project on Linux that can use CUE4Parse.
dotnet-sdk
Install the dotnet-sdk from Microsoft. This differs depending on your Linux distro. With Gentoo Linux:
emerge dotnet-sdk-bin
Once runningdotnet --version
returns something like7.0.200
you should be all set.Unreal Engine
CUE4Parse uses Oodle externally to decompress data from PAK files. The Unreal Engine provides this file. Some Linux distros may have an easy way to install this, but here is how to build it from source:
detex
CUE4Parse uses detex to convert textures. Here is how to build it from source:
CUE4Parse
Clone the CUE4Parse repo:
Your Program
Create a new dotnet console program:
Add a reference to CUE4Parse to
YourProgram.csproj
:Build and run. You should see output:
Hello, World!
Copy the Oodle and detex libs to a place that dotnet can find them:
Update Program.cs with your program code, using CUE4Parse as you see fit.
Example code that extracts all assets from Pak files: https://gist.github.com/Sembiance/d4d65671a87c586286093d3c64beb29d