游戏 活跃维护

cloud-game

giongto35/cloud-game

基于网络的复古游戏云游戏平台

2482
Stars 标星
384
Forks 分支
68
Watchers 关注
6
Open Issues
Go
主要语言
Apache-2.0
开源协议
209.4 MB
仓库大小
1 个月前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:giongto35/cloud-game
git clone https://github.com/giongto35/cloud-game.git
git clone git@github.com:giongto35/cloud-game.git
README.md master

机器翻译正文由机器翻译自项目原始文档(英文),排版经程序统一处理,可能存在偏差,请以原项目仓库为准。

云复古

复古游戏的开源云游戏服务 视频演示: https://www.youtube.com/watch?v=GUBrJGAxZZg 技术总结: https://webrtchacks.com/open-source-cloud-gaming-with-webrtc/ CloudMorph: https://github.com/giongto35/cloud-morph : 我当前专注于云游戏的通用解决方案

Discord: 加入我们

在 cloudretro.io 试试吧

直接玩现有游戏: [宝可梦绿宝石]( https://cloudretro.io/?id=1bd37d4b5dfda87c___Pokemon%20-%20Emerald%20Version%20(U ))

介绍

CloudRetro 提供了一个开源的复古游戏云游戏平台。它最初是作为一个实验,用于测试使用 WebRTC 和 Libretro 的云游戏性能,现在其目标是通过该技术提供最现代和最方便的游戏体验。

理论上,在云游戏中,游戏在远程服务器上运行,媒体以最佳方式流式传输给玩家,以确保最舒适的用户交互。这使得在网页浏览器上直接玩任何复古游戏成为可能,这些游戏完全兼容多平台,如桌面、安卓、IOS。

在理想的网络条件下并且服务器资源竞争较少时,游戏将像视频演示中一样流畅运行。由于我仅在美国东部、美国西部、欧洲、新加坡的有限服务器上托管该平台,你可能会遇到一些延迟或连接问题。你可以尝试按照下一节的说明自行托管服务,以更好地了解性能表现。

功能

  1. 云游戏:游戏逻辑和存储托管在云服务上。它减少了游戏初始化的繁琐。图像和音频通过先进的编码技术以最优化方式流式传输给用户。
  2. 跨平台兼容:游戏运行在网页浏览器上,这是最通用的内置应用程序。无需游戏主机、插件、外部应用或设备。
  3. 模拟器无关:游戏可以直接游玩,无需额外设置游戏模拟器或平台。
  4. 协作玩法:遵循群体游戏的理念(TwitchPlaysPokemon),多个玩家可以通过相同的深度链接一起玩同一款游戏。游戏体验由云游戏提供支持,因此游戏更加流畅。查看群体游戏部分
  5. 在线多人:史上第一次,您可以在线玩复古游戏的多人模式。您可以尝试《侍魂》2人对战的格斗游戏示例。
  6. 横向扩展:基础设施设计能够通过增加更多实例在高流量下扩展。
  7. 云存储:游戏状态存储在在线存储中,因此您可以回来继续未完成的游戏。

开发环境

  • 安装 Go
  • 安装 GStreamer
# Ubuntu / Windows (WSL2)
apt-get install -y make gcc pkg-config libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-plugins-good

# macOS
brew install pkg-config gstreamer gst-plugins-base gst-plugins-good

# Windows (MSYS2)
pacman -Sy --noconfirm --needed git make mingw-w64-ucrt-x86_64-{gcc,pkgconf,gstreamer,gst-plugins-base,gst-plugins-good}

因为协调器和工作进程需要同时运行。工作进程连接到协调器。

  1. 脚本
  • make dev.run
  • 该脚本会生成两个进程,一个在后台,一个在前台
  1. 手动
  • 需要在两个会话中分别运行协调器和工作进程
  • go run cmd/coordinator/main.go - 启动协调器
  • go run cmd/worker/main.go --coordinatorhost localhost:8000 - 生成连接到协调器的工作进程

此外,您可以安装和配置一个 X Server 显示器,以便能够运行 OpenGL 核心。请参见 docker-compose.yml 文件中的 Xvfb 示例配置。

使用 Docker 运行

使用 makefile 脚本:make dev.run-docker 或直接使用 Docker Compose:docker compose up --build。它会生成一个 Docker 环境,您可以在 localhost:8000 上访问该服务。

配置

默认配置文件存储在 pkg/config/config.yaml 文件中。此配置文件将嵌入到应用程序中,并在启动时自动加载。为了更改默认参数,您可以使用 CLOUD_GAME_ 前缀指定环境变量,或者将自定义 config.yaml 文件放置在以下位置之一:应用程序附近、用户主目录中的 .cr 文件夹,或者通过 -w-conf 应用程序参数 ( worker -w-conf /usr/conf ) 指定自定义目录。

部署

如果你想尝试在云中托管自己的 cloud-retro 副本,可以查看 部署脚本 示例。这个脚本(deploy-app.sh)允许将配置好的应用程序自动推送到服务器群。云服务器应为任何基于 Debian 的系统,并且已安装 docker-compose 应用程序 安装。

技术文档

常见问题

群体游戏,一起玩游戏

通过点击这些深度链接,您可以直接加入游戏并与其他人一起玩。

您也可以通过访问 cloudretro.io 自己主持新的游戏,并点击“分享”按钮生成您游戏的永久链接。

鸣谢

我们非常感谢所有人,我们有幸与他们合作,并感谢许多人从他们出色的作品中提供的帮助和灵感。

致谢:

艺术

公告

CloudMorph是一个兄弟项目,提供更通用的方法在浏览器中以云游戏方式运行任何离线游戏/应用程序: https://github.com/giongto35/cloud-morph

团队

作者:

维护者:

本站来源与版权声明
  • 本文标题:cloud-game - 基于网络的复古游戏云游戏平台
  • 本文链接:https://cn121.com/game/giongto35-cloud-game.html
  • 原项目:giongto35/cloud-game 版权归原作者 giongto35 及贡献者所有
  • 收录信息:本站于 2026-10-18 收录本项目,本页所列协议与仓库指标均为收录当时的状态;该日期之后原项目的版本更新与协议变更,本页不作同步。
  • 开源协议:收录时本项目采用 Apache-2.0(查看 LICENSE 原文),本站译文为其衍生内容;使用、修改、分发请以该仓库 LICENSE 原文为准。本站对原文仅作排版与图片地址适配, 并保留原项目的 NOTICE 与署名要求。
  • 站点出处:本文首发于 OneTwoOne,收录自 GitHub 开源项目 giongto35/cloud-game。
  • 翻译说明:本页正文为人工智能生成内容——由机器翻译对原项目 README 初译、经程序校验排版,可能存在错漏,请以原项目文档为准。
  • 引用声明:商业转载、第三方聚合或 AI 检索训练引用时,请务必保留以上来源出处、本文永久链接,以及原项目的版权声明与许可信息。
  • 下架通道:若原项目此后变更或收紧了许可协议、或作者/权利人认为本站的收录方式(译文、排版适配、简介翻译等)超出其授权范围,请通过 xyd3302001@163.com 发送下架通知,并附上项目地址与本页链接。本站核实后将第一时间删除本页内容,或改为不复制原文的目录性收录;署名更正等其他要求可一并提出。