首页 > 其他分享 >解决UE的Chunk(数据块)功能疑似无法生效的问题

解决UE的Chunk(数据块)功能疑似无法生效的问题

时间:2024-09-02 18:47:58浏览次数:4  
标签:TEXT Chunk 路径 UTF8String 疑似 PakListLine UE view

先说结论,ue的Chunk功能能够正常使用,通过官网的教程配置完毕后就能正常使用了,虚幻引擎中的内容烘焙和数据块划分 | 虚幻引擎 5.4 文档 | Epic Developer Community (epicgames.com)

我们有时遇到无法使用的原因是存在中文路径,在打包项目期间,可以通过在下面的目录中看到每个数据库包含的资源路径。

 打开文件后,可以看到带着中文的资源都是乱码的,这就导致后续打包pak的步骤无法正确识别文件路径,然后打包器就将这些无法识别路径的资源默认打包到第0个数据块中了。

很不幸,解决这个问题需要自己编译源码版。需要修改的脚本名字叫AssetRegistryGenerator.cpp,找到下面这些代码。

PakListLine.ReplaceInline(TEXT("/"), TEXT("\\"));
PakListLine += TEXT("\r\n");
PakListFile->Serialize(TCHAR_TO_ANSI(*PakListLine), PakListLine.Len());

每个版本的ue看起来都不太一样,需要稍微找一下,找到后修改成下面的代码,这样就能解决中文路径的问题了。

PakListLine.ReplaceInline(TEXT("/"), TEXT("\\"));
PakListLine += TEXT("\r\n");
FStringView view = PakListLine;
FTCHARToUTF8 UTF8String(view.GetData(), view.Len());
PakListFile->Serialize((uint8*)UTF8String.Get(), UTF8String.Length() * sizeof(UTF8CHAR));

标签:TEXT,Chunk,路径,UTF8String,疑似,PakListLine,UE,view
From: https://www.cnblogs.com/menghuijinxi/p/18393271

相关文章

  • for和do-while循环以及break和continue语句
    目录for循环语法形式循环的执行流程图for循环和while循环的区别例子do-while循环语法形式循环的执行流程图例子break和continue语句break和continue在不同循环中的区别whilefordo-whilefor循环语法形式for循环是三种循环中使用最多的,for循环的语法形式如下:f......
  • yarn运行vue项目命令
    yarn运行vue项目命令1、安装yarnnpminstallyarn-g2、安装项目依赖:yarninstall3、运行开发服务器:yarnserve4、构建生产环境代码:yarnbuild5、运行单元测试:yarntest:unit6、运行端到端测试:yarntest:e2e7、检查代码质量和格式:yarnlint8、修复代......
  • Vue3的学习---12
    12.AJAX与Axios框架12.1AJAX基础12.1.1AJAX简介AJAX(AsynchronousJavaScriptandXML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。通过AJAX,网页应用程序能够快速地与服务器进行异步通信,从而提高用户体验。AJAX的工作原理:创建XMLHttpRequest对象:这是AJA......
  • vue3+vite注册动态路由的实践
    //route/index.jsimport{createRouter,createWebHistory}from'vue-router'importHomeViewfrom'../views/HomeView.vue'//constcomp=()=>import('../views/AboutView.vue')//console.log('comp:>>......
  • OBCE 第三章实验 内存管理手动实践 深入了解Queuing(buffer)表
    实验环境:oceanbase企业版V31-1-1架构。1.查看当前资源情况selectunit_config_id,name,max_cpu,min_cpu,round(max_memory/1024/1024/1024)max_mem_gb,round(min_memory/1024/1024/1024)min_mem_gb,round(max_disk_size/1024/1024/1024)max_disk_size_gbfrom__......
  • [vue] jszip html-docx-js file-saver 图片,纯文本 ,打包压缩,下载跨域问题
    npminstalljszipfile-saverimportJSZipfrom'jszip';importFileSaverfrom'file-saver';JSZip创建JSZip实例:constzip=newJSZip();创建文件:支持导出纯文本zip.file("hello.txt","HelloWorld\n");创建文件夹:zip.folder("file")......
  • [vue] 按钮限制连点
    首先我们新建一个js文件,例如plugins.jsimportVuefrom'vue';constpointDoms=[];//使用这个指令的所有DOM对象Vue.directive('points',{inserted(el,binding){pointDoms.push(el);//存储使用这个指令的DOMel.addEventListener('click',()=>{......
  • Vue3 ref 和 reactive 的区别
    Vue3ref和reactive的区别文章目录Vue3ref和reactive的深度解析一、ref和reactive是什么二、vue3中如何使用ref和reactive三、ref和reactive包含哪些属性或方法API四、扩展与高级技巧五、优点与缺点六、对应“八股文”或面试常问问题七、总结与展望Vue3ref和......
  • vue实现页面顶部路由标签跳转
    在页面使用<!--活跃菜单--> <divclass="panel-group"ref="scrollPane"> <router-linkref="tag":to="menu.path"v-for="(menu,idx)inactiveRoutes" style="display:......
  • OpenCV(cv::getTickCount()、cv::getTickFrequency())
    目录1.getTickCount()2.getTickFrequency()3.综合应用4.注意事项getTickCount()和getTickFrequency()是OpenCV库中的两个函数,通常用于获取高精度的时间间隔。这两个函数主要用于计时和性能测量。1.getTickCount()getTickCount()函数用于返回从系统启动到当前为......