Crate unreal_asset
source ·Expand description
This crate is used for parsing Unreal Engine uasset files
Examples
Reading an asset that doesn’t use bulk data
use std::fs::File;
use unreal_asset::{
Asset,
engine_version::EngineVersion,
};
let mut file = File::open("asset.uasset").unwrap();
let mut asset = Asset::new(file, None, EngineVersion::VER_UE4_23).unwrap();
println!("{:#?}", asset);
Reading an asset that uses bulk data
use std::fs::File;
use unreal_asset::{
Asset,
engine_version::EngineVersion,
};
let mut file = File::open("asset.uasset").unwrap();
let mut bulk_file = File::open("asset.uexp").unwrap();
let mut asset = Asset::new(file, Some(bulk_file), EngineVersion::VER_UE4_23).unwrap();
println!("{:#?}", asset);
Modules
- AC7 Encryption
- Generic unreal asset traits Must be implemented for all unreal assets
- Various containers
- UAsset CustomVersion and a known list of them
- Unreal Engine version
- Various UAsset enums
- All errors thrown by unreal_asset
- UAsset exports
- Various UAsset flags
- All of Unreal Engine FProperties
- Kismet bytecode
- Unreal object versions
- All UAsset properties
- Archive readers/writers
- Asset Registry
- Unreal types
- Allows reading unversioned assets using mappings
- All of Unreal Engine UProperties
Macros
- Cast a Property/Export to a more specific type
- Default implementations for
PropertyDataTrait
- Implement
ExportNormalTrait
+ExportBaseTrait
for an export that contains aNormalExport
- Read a property guid if reading with header
- Write a property guid if writing with header
- Write a simple one-value property
Structs
- Unreal Engine uasset
- EngineVersion for an Asset
- Import struct for an Asset
- Parent Class Info