在 Hugging Face Spaces 上托管 Unity 游戏
Hugging Face Spaces 虽然主要面向机器学习演示,但也可以用于托管和分享可玩的 Unity 游戏。这是通过利用 Static HTML 模板和 Unity 的 WebGL 构建功能实现的。
Unity 游戏的部署工作流
在 Hugging Face Spaces 上托管 Unity 游戏需要特定的构建和上传流程,以确保游戏在网页浏览器中正确渲染。
Space 配置与本地设置
首先,用户必须在 Hugging Face 上创建一个新的 Space 并选择 Static HTML 模板。Space 创建后,应使用 Git 将其克隆到本地机器:
git clone https://huggingface.co/spaces/{your-username}/{your-space-name}
Unity 构建设置
要使 Unity 项目兼容 Hugging Face Spaces,需要在 Unity 编辑器中进行以下配置更改:
- Build Target(构建目标): 前往
File > Build Settings并将目标平台切换为 WebGL。 - Compression Format(压缩格式): 在 Player Settings 面板的 Publishing Settings 部分,将 Compression Format 设置为 Disabled。
可选的视觉自定义
Hugging Face 提供了专用的 Unity WebGL 模板 来提升游戏在 Space 中的外观。使用时,将该仓库添加到项目文件中,并在 Player Settings > Resolution and Presentation 中选择该模板。
上传构建文件
项目构建为 WebGL 后,需要将构建文件夹中的生成文件复制到克隆的 Space 仓库中。由于 Unity 构建文件可能很大,必须启用 Git Large File Storage (LFS) 来跟踪构建目录:
git lfs install
git lfs track Build/*
最后,使用标准的 Git 命令(git add、git commit 和 git push)将更改推送到 Hugging Face 仓库。
Space 中的 Unity 游戏示例
多个项目展示了此托管方法的可行性,包括:
- Huggy:在 Spaces 上托管的可玩演示。
- Farming Game:基于 Unity 的模拟游戏。
- Unity API Demo:展示 Unity 在该环境中功能的技术演示。