[游戏开发][UE5]引擎学习记录

C++ Log和蓝图Log

C++ Log 方法 UE_Log(参数1,参数2,参数3)

cpp 复制代码
//举例:
UE_LOG(LogTemp, Error, TEXT("Log Info: %s"),"Test Log");

三个参数的作用

参数1:输出窗口归类使用,你写什么它就显示什么

参数2:可选择Log、Warning、Error,分别对应不同颜色,如果程序报错了,一定是Error

参数3:打印内容

C++输出屏幕

用 GEngine->AddOnScreenDebugMessage

要添加"Engine/Engine.h"

cpp 复制代码
GEngine->AddOnScreenDebugMessage(-1, 3.0f, FColor::Green,Name);
GEngine->AddOnScreenDebugMessage(-1, 3.0f, FColor::Red,Stat,true,FVector2D(1.5f,1.5f));

蓝图输出屏幕直接用PrintText和PrintString方法

GameMode

GameMode主要记录场景配置

1、DefaultPawnClass -- 加载角色蓝图

角色蓝图必须继承自 ACharacter类

角色蓝图包含主角模型,Component等

还可以创建角色蓝图基类,子类重写基类数据等操作,选择角色蓝图的地方选子类蓝图

2、HUDClass -- UI

3、PlayerControllerClass -- 玩家控制器

用户输入的地方,例如键鼠操作

4、GameStateClass

5、PlayerStateClass

6、SpectatorClass

蓝图、C++、Lua调用规则

蓝图调用C++方法

C++方法加宏

cpp 复制代码
UFUNCTION(BlueprintCallable, Category = Projectile,Meta = (Tooltip = "Custom Tip"))

Category 的作用是在蓝图中右键调用方式时,给方法分类,快速定位

Tooltip的作用是自定义蓝图提示,鼠标放在蓝图方法上就会显示自定义提示

蓝图修改C++变量

C++变量需要加宏

cpp 复制代码
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Adjust")

Lua访问C++对象

由于Lua是无法直接访问C++

蓝图根据路径加载资源

  1. MakeSoftObjectPath用字符串制作路径
  2. SoftObjPathToSoftObjRef从路径获取到类引用,这一步还没拿到对象
  3. LoadAssetBlocking加载UObject资源对象
  4. 把UObject资源对象转换成你想要的类型

资源加载是个非常有用的功能,例如时装系统,头盔、铠甲有无数种,策划只需配表写资源地址,程序根据服务器数据加载不同模型到角色身上。

相关推荐
ricky67517 小时前
[Linux]Linux系统的20个实用命令详解
ue5
AA陈超2 天前
虚幻引擎5 GAS开发俯视角RPG游戏 P05-01.创建游戏玩法标签
c++·游戏·ue5·游戏引擎·虚幻
reddingtons3 天前
场景美术师的“无限画板”:UE5中非破坏性的材质混合(Material Blending)工作流
ue5·材质·设计师·技术美术·游戏策划·游戏美术·substance
m0_552200823 天前
《UE5_C++多人TPS完整教程》学习笔记61 ——《P62 武器开火特效(Fire Weapon Effects)》
c++·游戏·ue5
努力的小钟3 天前
UE5 GAS GameAbility源码解析 EndAbility
ue5
AA陈超3 天前
虚幻引擎5 GAS开发俯视角RPG游戏 P05-04 使用效果应用游戏标签
c++·游戏·ue5·游戏引擎·虚幻
zhangzhangkeji3 天前
UE5 测量 -1,长度测量:P2制作定位球与定位线,P3制作射线检测节点,P4在鼠标位置生成定位球
ue5
AA陈超4 天前
虚幻引擎UE5专用服务器游戏开发-33 在上半身播放组合蒙太奇
c++·游戏·ue5·游戏引擎·虚幻
zhangzhangkeji4 天前
cesium126,230130,Editing Tileset Materials - 0,编辑瓦片集材质,官方教程:
ue5
zhangzhangkeji4 天前
cesium126,230131,区域局部染色:赋值材质实例,建立“材质图层混合”文件,建立裁剪多边形,并应用自己的材质实例
ue5