1.UFUNCTION()
不是所有函数都能加UFUNCTION()修饰,涉及UE反射机制。
2.初始化用{}
初始化列表
3.创建C++文件时修改了路径
这时.cpp文件会报错,只需删掉前面多余路径即可
4.函数的移除
1.虚幻5.1 UUserWidget不再包含OnLevelRemovedFromWorld()
转而使用NativeDestruct()
5.修饰符
1.读写时,private
其他时不需要
6.角色控制
1.朝向问题
7.网络复制
1.Replication
UE5 -- Replication(网络复制) - 知乎 (zhihu.com)
1. 属性复制调用函数
当变量发生改变时,执行指定函数
2.RPC
UE4 浅谈网络同步中的RPC - 知乎 (zhihu.com)
UE4 RPC在C++中的使用简例_kismetsystemlibrary:isdedicatedserver-CSDN博客
RPC 修饰时,要指定是否可靠(Reliable )。
可靠的RPC最终一定会到达目标端,但不可靠的RPC可能在弱网或断网环境下丢包,或者在引擎限流的情况下被提前拦截而不去执行。
8.C++知识点
1.一个类访问另一个类的所有属性及方法
2.内联函数
9.将武器装备到人物上
10.为什么在方法后加 _Implementation
表示该方法是从接口继承而来,即将在类中实现。
11.开启角色蹲下
F12,查找声明,即可找到定义,声明
此外,蹲下时,移动速度,碰撞体大小会改变
12.多人游戏中
提前执行想要的操作,然后在服务器更新,解决延迟问题
13.人物朝向
UE4开发随笔3-移动中朝向的同步 - 知乎 (zhihu.com)
bUseControllerRotationYaw:角色的正面最好永远和摄像机的朝向一致
bOrientRotationToMovement:摄像机悬挂在半空,玩家前后左右跑动,脸都会转向移动方向
bUseControllerDesiredRotation:角色也会跟随控制器的朝向移动,但是并不是瞬间设置过去,而是有个平滑的速度来逐步旋转过去
- 使用bOrientRotationToMovement时,bUseControllerRotationYaw必须先设置为false。然后将角色的运动组件CharacterMovementComponent的朝向运动方向属性bOrientRotationToMovement设置为true
- 使用bUseControllerDesiredRotation时,先把bUseControllerRotationYaw设置为false,然后bOrientRotationToMovement设置为false,把CharacterMovementComponent的bUseControllerDesiredRotation勾选置为true。
14.当你使用了网络复制时
当你某些功能使用了网络复制时,测试时需要修改运行模式,不要用第一个