跳到主要内容

开源使命

使命宣言​

PlayCanvas 致力于通过开源技术,让更多人参与 Web 3D 开发。我们的使命是提供免费、开放且文档完善的工具,让任何人都能使用、修改和参与贡献,使每个人都能创造功能强大、富有交互性的 3D 体验,不受背景和预算限制。

为什么开源?​

我们相信,Web 的未来是交互式和三维的。通过开放核心技术的源码,我们希望实现:

🌍 普及 3D 开发:降低入门门槛,让世界各地的开发者都能使用先进的 Web 3D 技术,不受资金条件限制。

🔧 鼓励创新:让社区能够扩展、修改和改进工具,带来仅凭我们自己无法想象的创新。

🤝 建立信任:透明的代码使开发者能够准确理解工具的工作方式,提升可信度和可靠性。

📚 推动行业发展:分享知识和代码,推动整个 Web 3D 开发生态进步。

🌱 保障长期发展:即使公司不断变化和成长,开源也能确保工具持续存在并不断演进。

我们在 GitHub 上的项目​

我们使用 GitHub 管理开源项目。访问我们的 GitHub 组织,探索完整的开源生态。

关注最新动态

点击组织主页上的 Follow 按钮,即可在个人动态面板中看到我们的活动!

以下是部分主要仓库:

仓库说明许可证
engine用于 Web 3D 应用的 JavaScript 运行时MIT
editor用于构建 WebGL、WebGPU 和 WebXR 应用的可视化编辑环境MIT
react用于声明式构建 3D 场景的 React 组件MIT
web-components基于 Web 标准进行 3D 开发的 Web ComponentsMIT
supersplatSuperSplat Editor:浏览器中的 3D 高斯泼溅编辑器MIT
supersplat-viewerSuperSplat Viewer:用于已发布高斯泼溅场景的开源查看器,可通过 npm 嵌入应用MIT
splat-transform转换、变换和分析高斯泼溅数据的命令行工具与库MIT
model-viewerglTF 与 3D 高斯泼溅查看器MIT
pcui用于构建浏览器工具的完整 UI 库MIT
提示

就连本网站也采用 MIT 许可证开源。欢迎参与贡献,让它变得更好!

为 PlayCanvas 做贡献​

我们欢迎各种经验水平的开发者参与!无论是修正文档中的错别字,还是实现重要新功能,你的贡献都会让所有人的 PlayCanvas 体验更好。

开始参与​

  1. 选择感兴趣的领域:浏览仓库,寻找自己感兴趣的内容。
  2. 查看现有问题:刚开始参与时,可以在各仓库中寻找标记为 good first issue 的问题。
  3. 发起讨论:实现较大修改前,先提交 issue 讨论你的想法。
  4. 阅读指南:各仓库的 CONTRIBUTING.md 文件包含具体的贡献要求。

贡献流程​

1. 提交问题​

  • 报告缺陷:发现问题后,请提交详细的 issue,并附上复现步骤。
  • 功能建议:将想法提交到对应仓库的 issue 中。
  • 一般问题:使用 GitHub Discussions 交流。

2. 提交拉取请求​

  • 先讨论:重要变更应先通过 issue 讨论,再开始编码。
  • 遵循指南:遵守对应仓库的代码风格和贡献要求。
  • 保持聚焦:PR 应尽量小,每次专注于一个功能或修复。
  • 包含测试:在适当情况下添加或更新测试。
  • 完成 CLA:签署贡献者许可协议。

3. 审查流程​

  • 维护者会审查 PR 并提供反馈。
  • 请及时处理审查中提出的修改要求。
  • 请耐心等待;认真审查需要时间,也有助于保证代码质量。

支持 PlayCanvas​

为仓库点亮 Star ⭐​

为仓库点亮 Star 是支持 PlayCanvas 最简单的方式之一,它可以:

  • 提升可见度:更多 Star 能帮助更多开发者发现工具。
  • 表达认可:让我们了解你认为有价值的项目。
  • 了解受欢迎程度:帮助我们判断哪些工具对社区最重要。

欢迎关注以下主要仓库:

订阅仓库更新 👀​

通过 Watch 订阅感兴趣的仓库,及时了解 PlayCanvas 开发进展:

你会收到什么?​

  • Issue 通知:了解新报告的缺陷和功能建议。
  • 拉取请求更新:了解正在开发的新功能。
  • 版本发布公告:及时了解新版本和功能。
  • 讨论提醒:参与重要的设计与架构讨论。

如何订阅​

  1. 在 GitHub 上访问任意 PlayCanvas 仓库。
  2. 点击右上角的 Watch(👁️)按钮。
  3. 选择通知级别:
    • All Activity:接收所有活动通知。
    • Issues, PRs, Releases:仅接收重要更新。
    • Releases Only:仅接收新版本公告。
  • Engine:核心运行时更新。
  • 以及你在项目中实际使用的其他仓库!

结语​

参与 PlayCanvas 贡献,不仅是在改进软件,也是在共同构建交互式 Web 体验的未来。每一次缺陷修复、功能建议、文档改进和 Star,都能让世界各地的开发者更容易参与 Web 3D 开发。

**准备好参与了吗?**从我们的 GitHub 组织中寻找感兴趣的项目吧。PlayCanvas 社区会帮助你迈出第一步!🙌