问题标签 [unet]
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.
unity3d - Unet Non-Player 非服务器健康同步
我有服务器产生的敌人对象。当它们被击中时,会调用它们上的一个函数来施加伤害。我无法移动或重命名此函数,因为它是具有许多互连部件的 Unity 资产包的一部分。出于同样的原因,我也无法对攻击者施加伤害。
我现在拥有的是我抓住本地玩家,使用它们向服务器发送消息([Command]),然后服务器将伤害施加到所有客户端上的敌人身上。
这似乎是一个不好的方法。除了 [Command] 之外,还有其他方法可以向服务器发送消息以执行功能吗?
注意:我不能直接从敌人那里调用 [Command],因为它不是玩家权限对象。以下是相关代码:
敌人:
在播放器对象上:
我的问题:有没有更好的方法来做到这一点而无需找到并通过玩家对象?一种不使用 [Command] 向服务器发送消息的方法?
python - Keras中图像分割的像素损失权重
我目前正在使用 U-Net ( https://arxiv.org/pdf/1505.04597.pdf ) 的修改版本来分割显微镜图像中的细胞器。由于我使用的是 Keras,因此我从https://github.com/zhixuhao/unet获取了代码。然而,在这个版本中,没有实现权重图来强制网络学习边界像素。
到目前为止我得到的结果相当不错,但是网络无法分离彼此靠近的对象。所以我想尝试利用论文中提到的权重图。我已经能够为每个标签图像生成权重图(基于给定的公式),但我无法找到如何使用这个权重图来训练我的网络,从而解决上述问题。
权重图和标签图像是否必须以某种方式组合,或者是否有一个 Keras 函数可以让我使用权重图?我是生物学家,最近才开始研究神经网络,所以我的理解仍然有限。任何帮助或建议将不胜感激。
unity3d - 使用 LobbyManager 根据玩家平台生成预制件
我正在尝试根据播放器平台生成不同的预制件。因此,我将覆盖 NetworkLobbyManager 以按照我想要的方式生成对象。因此,我创建了一个将 connectionId 与预制件的索引相关联的字典,然后根据该索引实例化一个预制件。
但是使用此代码,客户端上的生成播放器始终与主机相同,我不知道为什么,因为我似乎覆盖了正确的功能,我在这里看到了http://abrgame.blogspot.fr/2016 /01/using-unet-to-spawn-different-player.html一个使用相同技术并且对他有用的人......
keras - 图像分割 - Keras 中的自定义损失函数
我正在使用 Keras 实现的 U-Net ( https://arxiv.org/pdf/1505.04597.pdf ) 来分割显微镜图像中的细胞器。为了让我的网络识别仅相隔 1 个像素的多个单个对象,我想为每个标签图像使用权重图(公式在出版物中给出)。
据我所知,我必须创建自己的自定义损失函数(在我的例子中是交叉熵)来利用这些权重图。但是,自定义损失函数只接受两个参数。如何在这样的函数中添加权重图值?
下面是我的自定义损失函数的代码:
有没有办法将权重图值与 ytrue 张量中的标签值组合在一起?
如果这个问题看起来很愚蠢,我深表歉意,正如我所说,我对这个游戏还比较陌生。任何帮助或建议将不胜感激!
python - tensorflow u-net python包过滤器贴图尺寸
是否可以更改 CNN 第一层的过滤器映射尺寸并将其增加 1(而不是 5*5*64)我希望它在 python u-net 中为 (5*5*33*64)包裹?我希望我的批量大小为 33,以便我可以将 2D unet 用于具有 33 个切片的 3D 图像
c# - 对象在主机上可见但在客户端上不可见
编辑:除了下面的答案之外,这些链接还帮助解决了这个问题......
https://forum.unity.com/threads/ui-buttons-to-spawn-units-buildings.356813/ https://forum.unity.com/threads/network-spawned-objects-not-showing-up- at-other-clients.501724/
我正在实例化一个对象并将其作为父对象,这是从宇宙飞船上拍摄的,它应该显示在所有播放器屏幕上。这仅在主机开枪时才有效。当客户开枪时,只有该客户可以看到该枪。
对于网络身份,船(父)设置为本地玩家权限。对于镜头,未选择本地或服务器。
这是创建镜头的代码...
关于什么可能导致对象在由主机而不是客户端拍摄时显示在其他屏幕上的任何线索?
unity3d - 自定义生成函数 - 生成旋转
我正在尝试在我的网络游戏中做一些对象池。我正在关注这篇文档。
问题是:如何为池化对象设置正确的旋转? 代表给了我生成位置,但没有旋转。
我正在汇集的对象没有同步转换。
任何解决方案/想法?
编辑:我向 Unity 提供了有关 SpawnDelegate 签名的反馈,这是我问题的根源。 https://feedback.unity3d.com/suggestions/spawndelegate-signature
EDIT2:我读了一点UNET的反编译代码,也许解决方案可以自定义对象的序列化/反序列化并添加旋转(OnSerialize/OnDeserialize)。我认为添加 SyncVar 将是相同的,但在更高的抽象级别。从软件工程的角度来看,我不喜欢为这个基本功能添加组件的想法。
EDIT3:
这是 UNET 反编译的 repo。我无法理解使用默认生成器生成时如何正确设置旋转。默认情况下,我的意思是当您注册预制件时ClientScene.RegisterPrefab
c# - 无法统一使用同步变量设置文本
我最终试图展示活跃的玩家,但我无法设置文本框的值。
我的理解是,一旦玩家加入,我需要使用同步变量来显示每个客户端上的所有玩家名称。所以开始,我正在尝试这个......
当我运行它时,文本框是空的。如果我设置没有同步变量的文本,它可以工作。当然,如果我在没有同步变量的情况下进行更改,则只有本地客户端才能看到更改。
解决方案:参数newPlayerName需要与变量名匹配,所以本例中为“name”...
unity3d - UNET 与权威和网络身份混淆
我统一开发了一款游戏,它是卡罗姆游戏(类似于斯诺克)。我正在尝试使用 UNET HLAPI 使其成为多人游戏,但我被卡住了。我无法理解正确的方法应该是什么我正在使用服务器权威模型并将前锋用作播放器预制但是每当我击球时,棋子都会在客户端而不是服务器端移动。我尝试向服务器发送命令,但它不会与碎片发生冲突,也不会在客户端更新。所以我想知道该怎么走?我是否将前锋保留为球员预制件?如果不是,玩家如何移动它进行罢工,我应该怎么做。目前它们都具有网络身份和变换。我想在每一回合都分配客户端权限,但它并不保持服务器权威。