
游戏开发
文章平均质量分 61
「已注销」
这个作者很懒,什么都没留下…
展开
-
【UE4】C++的RPC调用
例子定义RPC函数如下:UFUNCTION(NetMulticast, Reliable)void OnClientJump();void OnClientJump_Implementation();在头文件声明RPC函数OnClientJump,同时要在函数上面加上宏UFUNCTION, 下面再写一个 OnClientJump_Implementation 参数列表和OnClientJump一致。要把函数实现写在OnClientJump_Implementation函数中,OnClientJ原创 2022-02-21 18:40:34 · 2012 阅读 · 1 评论 -
【UE4】FPS游戏多手臂实现方式
FPS游戏多手臂实现方式核心代码:TArray<FSkelMeshMergeSectionMapping> InForceSectionMapping;USkeletalMesh* CompositeMesh = NewObject<USkeletalMesh>(GetTransientPackage(), NAME_None, RF_Transient);USkeletalMesh* Arm = LoadObject<USkeletalMesh>(NULL原创 2022-02-21 14:57:27 · 3586 阅读 · 0 评论 -
【UE4】联网游戏开发的正确姿势
联网游戏开发的正确姿势1. 前言刚接触UE4的同步机制感觉功能挺强大的,变量同步、RPC都无缝支持,但是却不知道怎么正确使用这些机制来开发游戏,什么时候客户端调用服务器,什么时候从服务器调用客户端,哪些代码在客户端写,哪些代码在服务器写。2. 正文首先应该明确游戏应该是数据安全的,原则上客户端不能直接修改任何数据,而客户端主要想服务器上传玩家的输入,然后服务器处理逻辑,逻辑处理结束后让客户端播放效果。例如跳跃功能的开发,客户端应该监听跳跃键"Space", 然后通过RPC调用服务器跳跃函数,服务器原创 2022-03-01 23:42:36 · 3763 阅读 · 4 评论 -
【持续更新】Unity3d使用的经验记录
最近在研究状态同步,使用unity来作为显示接口,本篇文章记录一些unity使用的经验。Mono与.Net FrameworkMono是.net framework跨平台的实现,所以.net framework上能用的库都可以在Mono上使用。Unity3d引入库Unity可以设置Mono版本,一般是.Net Framework4.x和.Net Standard 2.0,如果想引入一个库,VS新建一个对应版本的项目,使用包管理器搜索并下载这个库,然后在项目目录下的package文件夹内就会有这个库的原创 2021-05-28 00:41:15 · 304 阅读 · 2 评论 -
游戏开发之状态同步
1. 背景这两天在研究unity3d引擎如何做多人游戏,游戏类型是fps游戏,所以同步方式选择状态同步,架构则为服务端跑主逻辑,客户端做表现以及行为预测。本篇文章主要介绍,游戏中的网络的设计。2. 设计状态同步不需要保证所有包都被客户端收到,所以发送包分为可靠包和非可靠包。2.1 可靠包游戏中时效性不敏感的数据使用可靠包发送给客户端,例如游戏内聊天等数据。可靠包实现暂时使用一个简单的实现,即确认方增加确认包,发送方发送后,收到确认包才算发送成功,否则一直重复发包。2.1 不可靠包游戏中有原创 2021-05-23 20:09:56 · 880 阅读 · 0 评论