最新快讯!UE5中的FName、FString和Ftext及转换规则

2023-06-23 19:59:57 来源:哔哩哔哩

三者定义:

FName:FName这个字符串类是用来给某个东西命名(Name)的,也就是说作为一个东西的ID。这里说的东西可以是编辑器Content浏览窗口里看到的各种资源,可以是动态材质实例里的某个可设置的参数,还可以是模型骨架中某个具体的骨骼,以及比如角色mesh里用来attach武器的socket。

FString:它创建后是可修改的(mutable)。它提供大量操作字符串的方法,比如将字符串倒序,获取某个子串等。在你的程序内部,做比如拼装一个URL等逻辑时就会用到它。需要注意的是,因为它的可修改特性,它对性能不是那么的友好,另外在线程间共享时需要很注意。


【资料图】

FText:在你的游戏中玩家所能见到的文本都应该用FText来做,比如在UI上的文本显示。总而言之,假如你希望利用这个实验性的功能来方便的实现多语言支持,那么就用FText。

三者互相转换方法(C++):

FString

可直接借助反取符转为FName

借助FromString()转为FText

FName

借助ToString()转为FString

借助FromName()转为FText

FText

借助ToString()转为FString

FText无法直接转为FName,需要借助ToString()转为FString,再反取到FName

标签:
x 广告
x 广告

Copyright @  2015-2022 华中晚报网版权所有  备案号: 京ICP备12018864号-26   联系邮箱:2 913 236 @qq.com