您当前的位置:首页金融 >  >> 
环球速讯:UE5中的FName、FString和Ftext及转换规则
来源:哔哩哔哩      时间:2023-06-23 19:53:37

三者定义:


(资料图片仅供参考)

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 关闭