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 解决左右眼看到东西不一样 , 关闭实例化立体渲染解决左眼有光照和右眼不一样