将 Unity 游戏连接到 Digital Ocean Node.js 服务器
Connect Unity Game to Digital Ocean Node.js Server
开始学习我的 unity 游戏的联网教程(之前没有这样做过)。
到目前为止,它已经创建了一些可以连接的非常简单的脚本。这是我拥有的:
var io = require("socket.io")(process.env.port || 3000);
console.log("Server Started");
io.on("connection", function (socket) {
console.log("Client Connected");
});
在 Unity 中,我有一个游戏对象,上面有一个套接字 IO 组件(来自商店的资产)。在 CMD 中,我 运行 server.js 的本地版本(上面的代码),并看到 "Server Started" 出现。在 Unity 中,GameObject 的 URL 设置为:ws://127.0.0.1:3000/socket.io/?EIO=4&t运行sport=websocket,当我玩 unity 时,它连接。这显示在 cmd window.
中出现 "Client Connected"
本教程没有介绍如何部署类似的东西,所以我只是在继续之前确保它肯定能正常工作。
我创建了一个数字海洋水滴,开启了 Node.js。我导航到 srv/www,并像在本地一样安装了 express 和 socket.io。我上传(通过 ftp)server.js 到该位置,然后 运行 它。我看到 "Server Started" 出现了。当我统一更改 URL 中的 IP 地址,维护端口及其后的所有内容等,然后按播放时,它似乎没有连接。我从来没有看到任何 "Client Connected" 消息。
感觉像是最后一道坎,但我无法绕过它。
我是不是放错目录了?我做错了什么,为什么连接不上?
想通了。我没有打开端口,因此连接无法通过。 "sudo ufw allow 3000" 正是我所需要的。 :)
开始学习我的 unity 游戏的联网教程(之前没有这样做过)。
到目前为止,它已经创建了一些可以连接的非常简单的脚本。这是我拥有的:
var io = require("socket.io")(process.env.port || 3000);
console.log("Server Started");
io.on("connection", function (socket) {
console.log("Client Connected");
});
在 Unity 中,我有一个游戏对象,上面有一个套接字 IO 组件(来自商店的资产)。在 CMD 中,我 运行 server.js 的本地版本(上面的代码),并看到 "Server Started" 出现。在 Unity 中,GameObject 的 URL 设置为:ws://127.0.0.1:3000/socket.io/?EIO=4&t运行sport=websocket,当我玩 unity 时,它连接。这显示在 cmd window.
中出现 "Client Connected"本教程没有介绍如何部署类似的东西,所以我只是在继续之前确保它肯定能正常工作。
我创建了一个数字海洋水滴,开启了 Node.js。我导航到 srv/www,并像在本地一样安装了 express 和 socket.io。我上传(通过 ftp)server.js 到该位置,然后 运行 它。我看到 "Server Started" 出现了。当我统一更改 URL 中的 IP 地址,维护端口及其后的所有内容等,然后按播放时,它似乎没有连接。我从来没有看到任何 "Client Connected" 消息。
感觉像是最后一道坎,但我无法绕过它。
我是不是放错目录了?我做错了什么,为什么连接不上?
想通了。我没有打开端口,因此连接无法通过。 "sudo ufw allow 3000" 正是我所需要的。 :)