摘要: Unreal默认同步方式能解决大部分轻量游戏的常用情况,不需要太多改动, 但仍然需要留意其一些内置函数的用法,此处略作简要记录。 一、单位隐身 单位隐身后,显然服务器不能在给敌方玩家同步隐身的单位的数据(包含位置,血量等),友方玩家的同步机制不变, 此时可以在服务器端的AActor::IsNetRe 阅读全文
posted @ 2020-04-07 15:09 剑过不留痕残月分断魂 阅读(219) 评论(0) 推荐(0) 编辑
摘要: 此一回主要研究虚幻的反射类。 虚幻的反射类跟C++的静态编译类不同,可以在Runtime增删改,其概念更接近LUA的table。 UClass实质功能就是描述一段内存的内容,使用FProperty描述成员变量,UFunction描述反射函数。 FProperty描述了成员变量在Container(即 阅读全文
posted @ 2020-04-03 18:28 剑过不留痕残月分断魂 阅读(700) 评论(0) 推荐(0) 编辑
摘要: 通常游戏中的单位/角色包含多个属性,比如生命值,移动速度,攻击力等等,游戏运行过程对属性修改非常频繁, 比如获得一个增益效果:角色基础血量提高10%,持续20秒;获得一个减益效果:最终血量降低100点,持续15秒。 为了统一描述属性,方便修改和回退属性,对于每个字段设计5个值,分别为基础值,基础增加 阅读全文
posted @ 2020-04-03 18:24 剑过不留痕残月分断魂 阅读(413) 评论(0) 推荐(0) 编辑
摘要: 上一回实现了运行时创建枚举,这次再试试结构体,虚幻中的反射结构体是UScriptStruct的实例.同样,蓝图新建的结构体是UUserDefinedStruct的实例. 结构体由多个字段构成,虚幻中称为属性,即FProperty,FProperty描述了一个变量在一段内存的位置和大小,结构体通过链表 阅读全文
posted @ 2020-03-30 21:59 剑过不留痕残月分断魂 阅读(594) 评论(0) 推荐(0) 编辑
摘要: 虚幻4中的蓝图系统可以在运行时创建枚举/结构体/类(把编辑器看作一个基于Runtime引擎完整的游戏产品),非常好用, 但是在实际使用中由于蓝图只能在编辑器创建,还是略有麻烦,所以准备在其他脚本语言实现无编辑器,此处以LUA为例. inside unreal系列文章有介绍反射系统,里面提以枚举入手, 阅读全文
posted @ 2020-03-30 21:18 剑过不留痕残月分断魂 阅读(381) 评论(0) 推荐(0) 编辑