在学习的过程中发现各路教学博主都会给出小妙招,年龄大了记不住,就在这里记录下来吧。
其实很多都是编程思路,只是蓝图这种模式脑子一下子转不过弯来。
一、程序开发
全局变量
可将全局性的变量、事件、函数写在
gamemode
的蓝图中,这样加载时最先读取,权限高于关卡蓝图;
同理,次一级的可写在关卡蓝图,以此类推~~
当然,需要尽量控制好数据量,别什么都用全局的。
找到后打开其蓝图。
变量存储
这时可以将读取结果保存在变量中,下次调用时直接用这个变量。
-
比如一次读取全部Actor,如果将多次用到这个方法,那么效率将大大降低。
如果将这个数组结果保存在变量A中,那么每次使用时直接调用该变量A即可。 -
比如多个Actor蓝图都需要获得Pawn蓝图下属动画蓝图中的变量或函数。
如果将在Pawn蓝图中将这个动画蓝图保存在变量B中,其它Actor直接调用变量B即为该动画蓝图。
获取全部
定位不到想要得对象时,就用超级耗能大招,获取全部:
get all....
获取到数组后再用循环For Each Loop with Break
等循环来获取想要得对象;
当然如果确定索引的话,也可以用Get(a copy)
通过索引来取得。
函数形参的使用
写代码都知道函数中的形参在函数内部是可以直接使用的,那么在蓝图中应该怎么操作呢?
function A(b,c){
if(b>c){
echo 'hello';
}
}
在函数中直接找这个形参拖出来用就行啦
获取动画蓝图中的变量
学会这个一通百通,获取别的一层套一层的蓝图基本也就是这个思路了。
参考《UE5制作推箱子动作时获取物体与角色朝向的角度及跨蓝图修改变量》
(1) 重叠事件发生后从一堆Other Actor碰撞到的物体中Cast to BP_LightRobot找到玩家蓝图类;
(2) 再Get Mesh找到该玩家蓝图下的网格体;
(3) 这个网格体下有动画,于是Get Anim Instance获取动画实例;
(4) 在用Cast To LightRobot_ABP 从一堆动画中找到玩家用的动画蓝图;
(5) 最后Set isPush设置变量。
下面的图片是从玩家蓝图中找到动画蓝图的顺序,看完是不是就清楚上面的流程了?
事件与函数的切换
如何创建自定义事件并转换为函数,或者将函数转换为事件呢?
一个右键搞定
- 右键
Add Custom Event
创建自定义事件
- 选中自定义事件并右键选择
将事件转换为函数
- 在函数内部选中函数头或者的蓝图的函数列表中右键选择
将函数转换为事件
注意函数是可以有输出或无输出,事件是没有输出的,所以如果你的函数是有输出的,那么是无法转为事件的。
同时构造函数作为初始化作用的函数也是无法转为事件的。
面板上的数字如何快捷变化
目前的缩放为1.4725,如何让它放大3倍?要算好了再覆盖么?不。
只要是和数字相关的,可以直接再框里进行运算即可。
比如这里就是*3
就能完成放大。
同理可以用到UE中所有带数字的框中。
支持运算符为+
、-
、*
、/
、^
、%
,不知道开方有没有符号的?
二、界面操作
面板某一条的复制
可以快速地在同一类型地条目中复制黏贴数据
按住
shift + 右键
复制,闪一下表示复制成功;
选择别的同质条目后按住shift + 左键
,闪一下表示黏贴成功;
批量修改
很多蓝图用到了同样的属性,那该怎么批量改启动其值呢?
选中这些蓝图,鼠标右键选择
资产操作 > 编辑属性矩阵中的选择
。
快速查找
针对某一个对象或变量等等,除了在查询输入栏中输入文字外,还有别的方法么?
- 在列表中选择
查找引用
即可在查找结果中找到该对象在本蓝图中的查询结果;- 双击结果就能快速定位到蓝图中出现的位置;
查找全部
那么在上面的查找结果中如何找到在整个项目中出现的位置呢?
点击查询结果右边的望远镜就OK啦!
书签
蓝图错综复杂,那么想把某一类节点归类该怎么做呢?
用书签的方式即可归类,并且在窗口菜单中打开书签窗口还能快速定位。
图表快速定位
能不能向星际争霸一样在用数字1~0来定位某个窗口位置,想要回看的时候快速到位呢?
ctrl + 数字
表示保存当前事件图表位置到某个数字
shift + 数字
表示回到该数字对应的事件图表位置
这个没法用图表示啦,我就放个事件图表的截图,你打开自己的体会一下吧~~
隐藏不相关的节点
蓝图写多了以后,节点和连线可能比较混乱,那么我希望只显示当前节点及与他相关的相连部分该怎么办?
找到
隐藏不相关
,打开即可。
不相关节点及连线已经透明化。
连接线方向是有规则的
为什么变更路线节点再拖线没有要的内容了?
因为往左拖的线是输入;
往右拖的线是输出。
同样的变更路线节点拖线,提供的内容不同
- 创建一个变更路线节点
输入.
或者双击连线都能出现变更路线节点。
- 往左拖
- 往右拖
视口窗口变大
地形编辑时上下左右实在东西太多了,我就想好好画个地图不行么?
选中视口后按下
F10
:窗口最大化
选中视口后按下F11
:全屏
注意,只有选中关卡蓝图的视口才能起效。
视口的快速定位
如何在大纲列表中选中对象后快速在视口中定位过去呢?
选中后按下
F
或双击鼠标即可定位
结构体保存刷新之麻烦
当你更新过结构体后就要全部刷新一遍,很麻烦,那么有没有快速有效的办法呢?
啊,保存该结构体文件,然后关掉UE程序,重新打开~~
你们试试吧,哈哈。
营销思路
本地化语言
语言不通少掉一大半用户。这几个语言是steam上比较多的。
英语、俄语、简体中文、法语、日语、德语、繁体中文、韩语、西班牙语、葡萄牙语、波兰语、意大利语
其它
学习参考: