unity3d - 使用 Photon Unity Networking 生成插槽和查看
问题描述
我正在 Unity 中开发多人纸牌游戏,并在我的场景中使用我有一个桌子对象,其中包含 5 个玩家的 5 个椅子对象和 1 个摄像头。
是否可以使用 PUN 生成所有玩家,以便他们可以从单个摄像机看到视图但坐在不同的椅子上?
例如,我有照片上的场景。
如果我是第一个或第二个或第四个在房间里连接的玩家,我会在 1 号椅子上生成,然后在 2、3、4、5 号椅子上看到另外 4 个玩家。
如果另一个玩家的第一个或第二个或第四个玩家在房间里连接,他们必须在 1 号椅子上生成,并在 2、3、4、5 号椅子上看到我和另外 3 个玩家。
解决方案
感谢您选择光子!
是的,这在 Photon Unity Networking 中是可能的。虽然我认为这与 Photon 没有直接关系。
我认为您至少可以通过两种不同的方式做到这一点:
1-将禁用的相机连接到每个播放器预制件。当播放器预制件被实例化时:检查它是否是本地/我的。如果是这种情况,请禁用主摄像头并启用刚刚实例化的本地播放器预制件上的摄像头。相机应根据游戏对象的位置/旋转指向。
2-当玩家预制件被实例化时:检查它是否是本地/我的。如果是这种情况,请根据刚刚实例化的本地播放器预制件的位置/旋转将主摄像机移动到视图。
当然,生成位置可能在编译时在所有客户端上都是已知的。并且将位置映射到玩家是通过位置索引和演员编号完成的。
推荐阅读
- mysql - 如何使用nodejs express检查mysql db中是否已经存在电子邮件
- openlayers - 在开放层中,相同纬度和经度的多个标记不显示所有标记
- php - laravel 中的登录手册
- html - 模态框的 z-index 问题
- kubernetes - ETL Loader 在 OrientDB Kubernetes 集群中不起作用
- android - ConstraintLayout中,没有`weight`属性的情况下,android:layout_width="0dp"是什么意思?
- angular - Ionic/Angular 中幻灯片的索引号
- single-sign-on - 使用 keycloak 保护应用程序
- angular - Ionic 4 自定义组件
- r - 将数据框两行合二为一