42.Network Role

本文主要介绍了虚幻引擎中多玩家游戏中角色的网络角色(role),包括本地角色(local role)与远程角色(remote role),以及它们在多机环境中的不同应用。作者通过创建一个悬浮角色状态显示Widget,详细讲解了服务器端(authority)、自主代理(autonomous proxy)和模拟代理(simulated proxy)等概念,帮助开发者理解不同角色在网络中的表现,从而实现角色状态的可视化和判别。

重点总结
虚幻引擎中定义了角色的网络角色(Net Role),用于区分角色在不同机器上的状态。
角色的角色状态主要分为:权限(Authority)、自主代理(Autonomous Proxy)、模拟代理(Simulated Proxy)和无角色(None)。
服务器端的角色一般为角色权限(Authority),而客户端控制的角色为自主代理(Autonomous Proxy)。
其他客户端或非控制角色在本机显示为模拟代理(Simulated Proxy)。
开发了一个用户界面(Widget)用以显示角色的当前角色状态。
通过C++代码和蓝图整合,实现获取并显示角色的网络角色信息。
该系统有助于调试多玩家状态,区分不同版本的角色实例。
演示了如何在多人游戏中动态更新角色角色状态,提高游戏的可视化和调试效率。
重点提示了网络角色在多机游戏中角色控制和状态判断的重要性,为后续开发提供基础。

44.weapon

摘要
本文介绍了在虚幻引擎5中使用C++开发多玩家射击游戏时,如何设计和实现武器类。内容涵盖了创建武器类的步骤,包括添加基础组件(如骨架网格和区域碰撞体)、定义武器状态枚举,以及实现网络同步和碰撞逻辑,确保武器在不同场景下的正确行为。这些设计原则有助于实现具有交互性和多操作的武器系统,以支持多人游戏的复杂需求。

关键词
创建武器类:采用Actor作为基础类,并存放在专属文件夹中以便扩展。
组件设置:添加骨架网格组件用于武器模型,以及碰撞区域用于交互检测。
网络同步:利用角色权限检测确保碰撞检测和状态变化在服务器端执行,提高网络一致性。
碰撞策略:设置不同状态下的碰撞响应,方便武器的拾取、掉落和运动。
武器状态枚举:定义初始、装备、丢弃等多种状态,通过枚举控制武器行为。
蓝图扩展:在C++基础上创建蓝图实例,方便在编辑器中快速调整属性。
游戏逻辑实现:通过状态变量控制武器行为,为后续的交互和UI展示提供基础。