English | 中文
- 进入 发行(Releases) 页面,找到最新的发行版,在发行版提供的文件中找到
uniasset-unity-scripts.zip
文件,下载并将其解压到 Unity 工程中。 - 根据项目的需求,下载对应的本机库(
.dll
为 Windows 的本机库,.so
为 Linux / Android 的本机库,.a
为 iOS 的本机库,.dylib
为 macOS 的本机库)放置到工程的Assets/Plugins
路径内,在 Inspector 中配置好本机库的平台。
using System.IO;
using System.Threading.Tasks;
using Uniasset.Image;
using Uniasset.Audio;
async void LoadAsync()
{
// 载入图像
var pathToResource = "/path/to/your/image.png";
var fileContent = await File.ReadAllBytesAsync(pathToResource);
using var imageAsset = new ImageAsset();
await imageAsset.LoadAsync(fileContent);
// 裁切
await imageAsset.CropAsync(100, 100, 100, 100);
// 缩放
await imageAsset.ResizeAsync(50, 50);
// 转为 Texture2D 并显示
// 注意,尽管这里是 Async,但受限于 Unity,仍有部分代码在主线程执行,所以请务必在调用时确定在主线程调用
image.texture = await imageAsset.ToTexture2DAsync();
// 载入音频
pathToResource = "/path/to/your/audio.ogg";
fileContent = await File.ReadAllBytesAsync(pathToResource);
using var audioAsset = new AudioAsset();
await audioAsset.LoadAsync(fileContent);
// 转为 AudioClip 播放
using var decoder = audioAsset.GetAudioDecoder();
audioSource.clip = decoder.ToAudioClip();
audioSource.play();
await Task.Delay(5000);
audioSource.pause();
}
这个项目使用了 MIT 许可证,可以根据具体的项目需求(如资源加密等)进行修改,而无需重新开源。