2013-03-12 25 views

回答

5

Firebase可用于为MMO供电,但需要一些工作才能与Unity集成。 Unity为浏览器中运行的Unity播放器和JavaScript之间的通信提供了有限的界面:http://docs.unity3d.com/Documentation/Manual/UnityWebPlayerandbrowsercommunication.html

您可以使用Application.ExternalCall()函数调用浏览器并执行Firebase操作。重新回到Unity播放器会受到一些限制。您需要将Firebase回调中的信息编码为字符串,因为Unity接口只允许传递单个字符串参数(请参阅上述文档中的SendMessage)。 JSON.stringify()应该在这里非常有用,然后您将需要一个JSON库,无论您使用哪种语言进行游戏。此外,由于Unity与其主机平台的整合方式,您需要确保您不会在每一帧中来回传递消息(即不要在每帧中将播放器的位置设置为Firebase)。但是,定期更新不应该造成问题。

好消息是,将这种行为抽象成图书馆应该不会太难。如果您决定尝试一下,请告诉我们如何去做,如果遇到任何问题,请随时联系我们。

希望有帮助!

+0

它的确如此。谢谢。 – Chip 2013-03-12 11:26:43

+0

[有趣的回复](http://forum.unity3d.com/threads/173675-can-Firebase-be-used-to-backend-Unity-MMOs?p=1188205)。 – Chip 2013-03-12 11:45:10

+0

Hi Chip,我在论坛上提到了他们的一些担忧,但总结如下: Firebase运行在支持它们的所有浏览器中的websockets上,它们的行为与普通的tcp连接类似。 Firebase提供了健壮的身份验证和授权安全框架,可帮助您保护客户端应用程序并防止游戏中的作弊行为。有关详细信息,请参阅此处的屏幕录像:[https://www.firebase.com/docs/security-quickstart.html](https://www.firebase.com/docs/security-quickstart.html) – 2013-03-12 16:00:50

0

您可以使用IKVM将Firebase Java库转换为C#库。只要使用这个命令:

ikvmc -out:Firebase.dll Firebase.jar 

然后,您可以连同所有的IKVM DLL来统一导入刚刚创建库(复制资产文件夹的根目录内的所有内容)。

将所有内容导入后,启用Mono SSL Stores和Certificates(在Unity中默认关闭)http://www.mono-project.com/FAQ:_Security

+1

您是否在实践中尝试过?如果是这样你有我的投票权。 – Oliver 2014-10-04 04:13:52

+0

很想看到这个工作。 – rainabba 2015-03-25 16:31:06

0

我在一个基于休息的Unity统一Lib,它开始,但工作。

如果要检查它帮助的FBaseUnity