///<summary>Find Existing Material from Search Location</summary> public static (byte /*TODO: text FText*/, MaterialInterface) FindExistingMaterialFromSearchLocation(string MaterialFullName, string BasePackagePath, EMaterialSearchLocation SearchLocation) =>
internal static unsafe (byte /*TODO: text FText*/, MaterialInterface) Invoke(string MaterialFullName, string BasePackagePath, EMaterialSearchLocation SearchLocation) { long *p = stackalloc long[] { 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L }; byte *b = (byte *)p; var MaterialFullName_handle = GCHandle.Alloc(MaterialFullName, GCHandleType.Pinned); *(IntPtr *)(b + 0) = MaterialFullName_handle.AddrOfPinnedObject(); *(int *)(b + IntPtr.Size + 0) = MaterialFullName.Length; *(int *)(b + IntPtr.Size + 4 + 0) = MaterialFullName.Length; var BasePackagePath_handle = GCHandle.Alloc(BasePackagePath, GCHandleType.Pinned); *(IntPtr *)(b + 16) = BasePackagePath_handle.AddrOfPinnedObject(); *(int *)(b + IntPtr.Size + 16) = BasePackagePath.Length; *(int *)(b + IntPtr.Size + 4 + 16) = BasePackagePath.Length; *(b + 32) = (byte)SearchLocation; Main.GetProcessEvent(MaterialImportHelpers.DefaultObject, FindExistingMaterialFromSearchLocation_ptr, new IntPtr(p));; MaterialFullName_handle.Free(); BasePackagePath_handle.Free(); //TODO: text FText OutError return(UObject.NotImplemented <byte>() /*TODO: text FText*/, *((IntPtr *)(b + 64))); } }