Photon与Unity核心技术之角色更换武器

本文介绍了在网络游戏中,特别是使用 Photon 服务器时,如何实现角色更换武器并确保所有玩家可见。关键点包括区分玩家自身与他人更换武器的逻辑,使用 Photon View 和 PhotonTransformView 组件同步位置、方向和大小,以及通过 OnEvent 函数接收服务器消息来实例化并挂接其他玩家的武器。
摘要由CSDN通过智能技术生成

    在单机游戏开发中,角色的武器是经常可以更换的,角色更换武器的基本原理是将武器挂接到角色的骨骼动画的虚拟点上,这样角色做动作时,武器也会随着骨骼进行运动,完成了角色挂接武器,这个挂接武器流程是固定的。而在网络游戏中,做挂接武器时就要注意了,下面就以Photon服务器为例给读者介绍如何实现在网络游戏中给角色挂接武器,当然其他网络游戏的挂接方式类似。

    在网络游戏中更换角色武器需要注意以下几点:

    一、玩家自身更换武器,其他玩家NPC更换武器,实现方式是不一样的。

    二、玩家更换的武器或者其他玩家NPC更换的武器,彼此都是可见的。

下面开始具体实现:

        首先我们程序在写逻辑时,玩家自身的武器一般是存放到背包里面,需要玩家打开背包从里面把武器取出来挂接到角色的骨骼动画的虚拟挂节点上,这个是固定的流程。网络游戏就要涉及到玩家相互之间是可见的,这就要求挂接的武器彼此都能看到。需要对武器挂接脚本。先分析一下,武器挂接到角色的骨骼上后,角色要播放动作,动作上下左右会有一个位移也就是位置的变换,当然不同的招式也会涉及到武器的方向的变换,更有甚者会有武器的大小变换。这些变换对其玩家都是可见的,这就需要我们对武器的实例化模型做一些处理,如下图所示:


    这个是武器的实例化模型上面的脚本,一个是Photon View该组件就是实现彼此可见的,另一个是PhotonTransformView脚本,这个是同步武器的位置,方向和大小的。有一点很重要就是

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

海洋_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值