找回密码
 立即注册
查看: 537|回复: 4

关于UE4 编译日志(compile log)乱码问题

[复制链接]
发表于 2021-11-22 18:39 | 显示全部楼层 |阅读模式

学习UE快半个月了,涉及c++的编译还挺频繁的。每次编译失败的错误说明部分老是现实乱码,一开始觉得影响还不大就没去管,现在需要知道错误原因,总不能对着乱码发呆吧。
于是问了群友,立马给了解决方法。一般乱码的出现,大概率是因为语言转化的问题。UE编译日志的乱码就是转化格式的问题。那些乱码其实是中文。需要本地Unicode设置修改一下。
方法有3种:
1.把Windows的区域设置中的“使用Unicode UTF-8 提供全球语言支持”打开。选项位置如下。




然后重启一下电脑就Ok了。我就是用这种方法,解决速度很快。
2.反向解决乱码:既然乱码是中文,那不要用中文不就行了吗。直接把本机语言设置成English就好了。
如果你能接受为了UE而把本机语言改成英文的话,那就用这种方法吧。
3.去修改UE内的源文件。
把FWindowsPlatformProcess中的#1改成如下:
Output += FString(string2wstring(std::string((const ANSICHAR*)Buffer), "Chinese_China.936").c_str());
把GBK编码的Buffer转化成std::wstring再转换成FString。
改完记得重新编译UE。
这个方法我没试过,不过应该生效。

本篇解决方案原文来自:Unreal Engine 4:编译时出现中文乱码问题
希望有所帮助。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
发表于 2021-11-22 18:43 | 显示全部楼层
第四种:百度搜索  “win  cmd 乱码”
发表于 2021-11-22 18:49 | 显示全部楼层
最好从一开始就用英文,不然学C++阶段会很头疼
发表于 2021-11-22 18:56 | 显示全部楼层
VS换成英文也可以
发表于 2021-11-22 18:59 | 显示全部楼层
打开“使用Unicode UTF-8 提供全球语言支持”后有些比较老的软件会出现兼容性问题,例如RTX,其他python写的程序也可能会有兼容性问题,如果只是自己本地下调整问题不大,因为可以开一下关掉一样生效,兼容性问题也都没了,如果用作团队使用会不太方便。我们是VS换英文版,一方面解决这个问题,另一个是做FastBuild的兼容。
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-9-23 03:34 , Processed in 0.169234 second(s), 26 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表