簡體   English   中英

如何確保在Photon Unity中成功發送RPC?

[英]How to ensure RPC was sent successfully in Photon Unity?

我正在使用Photon和Unity3D引擎構建多人游戲。 我正在使用photonView.RPC在客戶端之間發送數據和值。 但是有時由於網絡問題,發送的RPC無法在客戶端中執行。

我有什么方法可以從客戶端(發送RPC的客戶端)檢查RPC是否已成功發送,如果沒有成功,則再次發送RPC?

從概念上講,您可以做到的唯一方法是,

A發送帶有身份代碼的消息(例如“ 321321777”)

等待確認...

B收到消息

B發送消息“我收到321321777”

那真的是您所能做的。 請注意,這引入了超時的概念。 上面實際上更像這樣...

A發送帶有身份代碼的消息(例如“ 321321777”)

等待確認...

如果在0.5秒后仍未確認,請再次發送。 繼續做。

B收到消息。 標簽是321321777

B發送消息“我收到321321777”

B收到的“ 321321777”的任何更多副本, B將忽略它 但是:如果B收到多個“ 321321777”,則B確實會再次發送越來越多的“ 321321777”確認消息

值得注意的是,通常來說,“視頻游戲無法像這樣工作”。 通常,您僅每秒發送不計其數的職位(或任何其他職位),如果錯過了一些職位-沒關系。

也不要忘記Unity網絡確實可以為您“可靠發送”-“ PUN”中可能有這樣的概念。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM