[UE4]使用C++重写蓝图

先大量使用蓝图制作项目,后续再用C++把复杂的蓝图重写一遍,用C++代码按照蓝图依葫芦画瓢就可以了,很简单,但需要遵守一些原则:

一、创建一个C++类作为蓝图的父类(C++类继承蓝图一样的父类),在UE4中修改蓝图的父类。

二、C++类中的方法、成员变量与蓝图一一对应,并且方法和成员变量名称不能与蓝图的重复。

三、A蓝图不能直接使用B蓝图的变量,A蓝图把要公开的变量封装在函数内返回,并且只返回UE4自带的基础变量类型,不能返回自定义类型,以方便C++重写时返回C++中的成员变量。

四、

原文地址:https://www.cnblogs.com/timy/p/10074173.html

时间: 2024-08-30 09:12:59

[UE4]使用C++重写蓝图的相关文章

Aery的UE4 C++游戏开发之旅(3)蓝图

目录 蓝图 蓝图命名规范 蓝图优化 暴露C++至蓝图 暴露C++类 暴露C++属性 暴露C++函数 暴露C++结构体/枚举 暴露C++接口 蓝图和C++的结合方案 使用继承重写蓝图 使用组合重写蓝图 方案比较 参考 蓝图 大家都知道,蓝图是UE4提供的极其容易上手的一种可视化脚本,更具体的就不说了. 纯靠蓝图搭建的UE4游戏是存在的,但是这类游戏往往优化很差(除非游戏玩法本身的性能需求不高).更合适的流程往往需要程序员编写C++代码创建一些蓝图可用元素,而设计师再通过蓝图快速搭建游戏. 蓝图命名

用UE4来做Zego即构的房间列表

Zego即构是一家做直播的服务商,Zego即构自己的房间列表,本文只是测试功能用,相应代码并没完全测试,请选择性参考. 我们在UE4中来实现一下,我感觉这个过程有点意思,UE4中C++与蓝图和UI的互相通信基本全部用到了. Zego即构没有专门的UE4插件,所以我们主要逻辑全部在C++中,蓝图只是辅助. 首先,我们定义一个房间结构,因为要想UE4中C++和蓝图可见可用,我们要用C++实现,并实现特定的写法让蓝图知道. USTRUCT(BlueprintType) struct FRoomBlue

UE4简单AI

非常有幸能加入到虚幻四教育的队伍中,一直没更博也是这个原因,最近在翻译官方wiki 上的AI部分视频,有童鞋建议把翻译的文字稿也发上来,所有就有了这篇文章了. 首先做个小小的声明把,由于俺之前也没接触过AI ,所以有一些专业的词汇可能翻译存在各种问题,如果你发现的话,还是希望能够提出来哦,我们一起进步. 记住配合视频食用更佳哦~ 视频连接:http://www.unrealedu.org/course/15/learn#lesson/79 此外,我也在翻译官方那本C++的教程,已经读完,想着还是

[UE4]客户端-服务器模式

客户端负责表现.服务器端负责数据. 以掉血为例: 一.玩家A砍了B一刀 二.服务器计算伤害,修改B的血量 三.把B的血量发给B,A砍B的动作发给所有能看到的玩家 四.客户端播放掉血量(如果允许可见),播放动作 以抽卡为例: 一.客户端发起抽卡请求 二.服务器端根据此玩家的消费.等级等随机产生一张卡牌 三.服务器把结果发给客户端 四.客户端播放抽卡动画,然后出结果. 如何防外挂: 一.关键的计算,放在服务器 二.服务器做足验证,超出正常人为水平就理解为外挂 三.有些只能在客户端计算,可以进行代码混

Aery的UE4 C++游戏开发之旅(4)加载资源&创建对象

目录 资源的硬引用 硬指针 FObjectFinder<T> / FClassFinder<T> 资源的软引用 FSoftObjectPaths.FStringAssetReference TSoftObjectPtr<T> 同步加载资源 LoadObject/LoadClass TryLoad/LoadSynchronous 异步加载资源 FStreamableManager.RequestAsyncLoad() 卸载资源 创建对象 创建一般对象 创建Actor派生类

UE4蓝图编程的第一步

认识UE4蓝图中颜色与变量类型: UE4中各个颜色对应着不同的变量,连接点和连线的颜色都在表示此处是什么类型的变量.对于初学者来说一开始看到那么多连接点, 可能会很茫然,搞不清还怎么连,如果知道了颜色对应的变量类型再去找相应的模块进行连接,效率要高很多. 这也是开始蓝图编程的第一步. 蓝图中的白线: 逻辑白线:逻辑顺序线,如果没有分支,就只能一个接一个地串联起来,中间不能断了.(目前只发现只有用逻辑白线连接的模块上可以打断点调试) 白线的开始通常是一个Event引出(如上图中的AnimNotif

【UNREAL ENGINE 游戏开发】开篇之UE4的BLUEPRINT(蓝图)与C++(新童鞋必看)

本站文章均为 李华明Himi 原创,转载务必在明显处注明: 转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/unreal-engine-game/2164.html 首先Himi在这里解释下,为什么还是开篇- 原因主要有两点: 考虑到要写也要写点干货不是么?!但是由于官方文档写的真的够详细了,对于提到的基础知识我真的不想再赘述,因此希望各位新童鞋一定要先跟着文档动手过一遍!!!很重要!!!!!!!!!!! 另一方面,本想拿着UE4写点小项目练手,然后

[UE4蓝图教程]蓝图入门之变量使用

虚幻4的蓝图,其实是一种可视化编程,背后需要一套很复杂的东西才能将前台的逻辑变得简单,它是将一些东西封装成小框框,然后靠一条条线来链接起来,这个的好处就是很直观,给很多对写代码天生不感冒的人,提供了一种新的创造游戏的方法. 虚幻4的蓝图分为两种,Level Blueprint和class Blueprint,Level Blueprint用编程的角度来解释,就像是子在一个文件里,或者是场景里,写的面向过程的代码,说有代码按自身的顺序依次执行,而class Blueprint 用编程的角度来解释,

[UE4]C++调用蓝图函数:BlueprintImplementableEvent函数说明符用法

用BlueprintImplementableEvent标明的函数在C++代码中不需要有方法体,方法体在蓝图中实现. 用法: 1,现在C++头文件中定义函数名 UFUNCTION(BlueprintImplementableEvent) void OnDepleted(); 2,在蓝图中Add Event,找到对应的函数名,创建后即可实现具体逻辑 3,最后可以在自己的C++代码中调用该方法,这样就会自动调用蓝图函数 void MyActor::OnPressed() { OnDepleted()