MR开发恐龙项目总结

在拥有权限的情况下读取安卓和windows的任意文件路径

TArray<FString> ULoadGallery::GetPngFilesInOculusDirectory()
{
    TArray<FString> FilesArray;
    IFileManager& FileManager = IFileManager::Get();

    FString DirectoryPath;

#if PLATFORM_ANDROID
    
    DirectoryPath = "/sdcard/Oculus/Screenshots"; // 安卓路径
    TArray<FString> FoundFiles;
    FileManager.FindFiles(FoundFiles, *DirectoryPath, TEXT("*.png"));

    if (FoundFiles.Num() == 0)
{
    FileManager.FindFiles(FoundFiles, *DirectoryPath, TEXT("*.jpg"));
}
    
#else

    DirectoryPath = "C:/Users/16488/AppData/Roaming/odh/device-media/2G0YC5ZF9P0CHH"; // Windows路径
    TArray<FString> FoundFiles;
    FileManager.FindFiles(FoundFiles, *DirectoryPath, TEXT("*.jpg"));

#endif
    
    if (FoundFiles.Num() == 0)
    {
       GEngine->AddOnScreenDebugMessage(-1, 10000, FColor::Green, DirectoryPath);
       return FilesArray; // 确保在没有找到文件时不会继续执行
    }

    for (const FString& File : FoundFiles)
    {
       FString FullPath = FPaths::Combine(DirectoryPath, File);
       FilesArray.Add(FullPath);
       GEngine->AddOnScreenDebugMessage(-1, 10000, FColor::Green, FullPath);
    }
    return FilesArray;
}

安卓打包

安卓13前需要申请权限 , 之后不用申请权限旧版本编译到新版本可能回遇到权限上被虚幻禁用权限的问题

配置文件

压缩包的体积 obb超出限制使用

关闭 dx 12 打开11 解决左右眼看到东西不一样 , 关闭实例化立体渲染解决左眼有光照和右眼不一样

 

posted @ 2024-08-09 19:38  啊賢  阅读(5)  评论(0编辑  收藏  举报