it编程 > 游戏开发 > ue4

UE4变量Config设置

85人参与 2024-08-06 ue4

ue4将变量config设置

在ue4中可以将变量的设置放进config文件中,可以在打包后直接修改配置文件的方式修改变量的初值。
例如:新建一个c++actor类,在类的uclass中加入config宏。

uclass(config=myactor)
class configproject_api amyactor : public aactor
{
	generated_body()

其中的config=myactor myactor是与你自己想要创建的ini文件名相关。
然后再新建一个变量,

uproperty(config, blueprintreadwrite)
		int32 tempa;

在uproperty中加入config标签。接着在工程的config目录下添加一个defaultmyactor.ini文件。因为我在uclass中的config填的是myactor,所以起名为defaultmyactor.ini。一定要加上default
在这里插入图片描述
(当前工程名字是:configproject)
然后再里面添加以下字段:
[/script/configproject.myactor]
tempa=6
类似于一个键值对,/script/configproject.myactor]的格式为/script/工程名.actor类名。
这样设置好后。在蓝图中生成myactor的蓝图子类然后打印tempa就可以打印出配置文件的赋值了。
**在这里插入图片描述
注:
如果打包成development版本后你的defaultmyactor.ini会在打包后的saved/config文件夹中变成myactor.ini,但是并不会影响,继续往里面设置值就好。

如果想动态获得conifg的值,可以使用gconfig。

int32 res;
	fstring gameconfigpath = fpaths::projectdir() + "/defaultmyactor.ini";

	if (gconfig) {
		gconfig->getint(text("/script/configproject.myactor"),
			text("tempa"),
			res,
			gameconfigpath);
	}

这个get函数的四个参数分别为:
在这里插入图片描述
section为键值对的方括号的内容,key为你的变量名,也即是配置文件中的变量名。value是你想要读取并赋值的变量,例如上面的代码会把读取的结果赋值给res变量,最后的filename为你的配置文件的路径名。
需要注意的是一个是上文说的打包后文件名会自动去掉default,还有就是有的博客会使用打包后的config文件,但是使用的函数是fpaths::projectconfigdir(),这个函数经测试打包后并不会返回正确的config文件夹路径,返回的是项目名/config,但是实际上打包后的config路径为
在这里插入图片描述
在敲代码的时候要特别留意。

(0)
打赏 微信扫一扫 微信扫一扫

您想发表意见!!点此发布评论

推荐阅读

UE4部分“触发灯光” 解题思路

08-06

UE4_破碎插件的蓝图节点_Apply Radius Damage

08-06

喋血复仇ue4已崩溃即将关闭怎么解决?喋血复仇ue4已崩溃即将关闭全面解析方案分享

08-06

Unreal Engine05:UE4基本概念

08-06

UE4 关于使用Webbrowser插件遇到的问题以及解决办法

08-03

UE4 注意项

08-03

猜你喜欢

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论