问题标签 [photon]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
418 浏览

c# - 当两个玩家实例化时,Unity Collision 不起作用

我正在使用 Unity3D,但我遇到了问题。我有一个脚本,一旦你连接到服务器,它就会实例化玩家游戏对象。我也有一个攻击脚本。当只有 1 名玩家时,一切正常。当第二个玩家上场时,攻击不起作用!我做了Debug.Log,我发现当你点击其他玩家攻击而不是攻击他时,你正在攻击它下面的地形。这是我的代码。实例化代码:

攻击代码:

请帮忙!

0 投票
1 回答
788 浏览

unity3d - 网络育儿

我正在开发一个使用光子统一的合作游戏,我正在使用育儿来移动我的对象相对于其他对象,当我将我的对象父母设置为空时,正在创建另一个副本并留在其父对象上或你有时可以在主人或客户或两个屏幕上说以前的父对象。

玩家在本地实例化,所有代码都使用 RPC 同步

0 投票
2 回答
2204 浏览

c# - Photon 为每个玩家创建一个新房间

我已经编写了我的 Photon 脚本,以便玩家加入一个随机房间,如果没有找到房间,玩家将自动创建一个新房间。但是,当我在两台不同的计算机上构建和运行我的游戏时,它们都找不到空间,所以它们都创建了自己的空间。请问有人能告诉我为什么吗?

游戏开始时只需要 1 名玩家,但当需要 2 名玩家时则不需要,因为我上面提到的问题。

}

0 投票
3 回答
1478 浏览

c# - 光子检测玩家是否已经在该生成位置

我在一个房间里有 3 名玩家,并设置了 3 个生成位置,但希望每个玩家生成在这些位置之一,而不是在同一个位置。我有这个,但是我怎样才能确保另一个玩家不会在这个出生点生成呢?

0 投票
1 回答
368 浏览

c# - 如何运行 OnPhotonPlayerConnected 两次?

在我的脚本中,当玩家加入游戏时,我会为他们分配一个出生点,如下所示:

但是,这将分配spawnpoint2给第二个加入的玩家,然后是在他们之后加入的所有其他玩家。我有 3 名玩家将在游戏中,那么有没有办法为第三名玩家再次运行此功能?

0 投票
1 回答
954 浏览

c# - 如何解决多人游戏卡顿?

出于某种原因,其他玩家的动作“结结巴巴”。我知道这是人们在使用 Photon 时遇到的常见问题,所以想知道是否有人知道我该如何解决?

这是我的玩家移动代码:

0 投票
0 回答
692 浏览

c# - 多人游戏网络架构

我一直在学习如何在 Unity Client 和 Photon Server 之间建立网络。这是我目前正在做的事情。

Unity 客户端每 16 毫秒运行一帧或每秒总共运行 60 帧,一旦连接,帧 # 从 0 开始并在最后(LateUpdate)递增 1,Photon ServerPeer 还将有一个加入的帧 # 变量保存他们加入的服务器上的哪个框架。Photon server 运行一个 16ms 的 PoolFiber 间隔,Server 将每个 poolfiber 间隔增加 1 以获取帧服务器。服务器将接收请求并将其排队等待下一帧,抓取接下来的几帧(可用的)并将其发送给客户端。客户端获取该数据并将在其适当的框架上执行它。重复帧尾请求和开始处理的过程。首先,这是一个好方法吗?我刚刚开始学习网络,我真的很想更好地理解这一点,经过一些研究,这似乎是同步客户端/服务器的好方法。

我对这种方法的问题是客户端帧速率总是超过服务器帧速率,以至于客户端越来越远离服务器。

例如,客户端将从 0 开始,而服务器为 1,200,最终客户端将是 2,200,而服务器将只有 1,900。我注意到在服务器上的 1 帧中正在处理 1-3 个客户端帧之间的任何位置。

所以:客户端框架 1、2、3 都在服务器框架 1200 上处理。

解决这个问题的好方法是什么?几个星期以来,我一直在努力解决这个问题。

0 投票
1 回答
78 浏览

c# - 如何瞄准除自己以外的所有其他玩家?

在我的游戏中,玩家可以发射一种武器,该武器会发射一个射弹,自动瞄准离某个物体最近的敌人。但是,我怎样才能阻止射弹也瞄准我自己的玩家?有没有办法给所有其他玩家贴上某个标签,同时给我自己的玩家贴上不同的标签?游戏开始时,玩家被实例化为预制件。

0 投票
1 回答
614 浏览

c# - 如何通过光子统一网络发送同步脚本

我有一个使用手电筒的多人游戏,如果我按下L手电筒,其他游戏也会关闭,但是当batteryTimeLeft达到 20 时,它只会在本地游戏上闪烁。

如何将整个脚本与所有用户同步,以便闪烁也通过网络?

0 投票
1 回答
19975 浏览

c# - 没有服务器的 Unity3D 中的内置多人游戏?

我听说Unity3D有一个内置的多人游戏功能,它可以在没有服务器的情况下提供服务。但我找不到任何关于它的信息,我找到的所有教程都只是关于使用 Photon(PUD) 或 Google 服务。我知道Photon很好,所以我才开始研究它,并有使用它的计划。

不过我还是想写一些非常简单的不使用服务器的应用程序,比如 One VS One Rock Paper Scissors 游戏。使用 Photon 必须在性能上更好,但在某些情况下,就像我上面所说的,它似乎太多了。另外,免费用户的PUD的CCU只有20个,也就是说只有十个组可以同时玩,比如石头剪刀布游戏。

我看到有人说没有服务器是可能的,但也有人说不可能。

什么是对的?