提交资源到资产库

前言

本教程旨在指导你如何向 Godot 资产库提交自己的资产并与 Godot 社区分享。

正如 使用资产库 文档中提到的, 为了能够向AssetLib提交资源, 您需要有一个注册的帐户, 并且需要登录.

提交规范

在提交您的资源之前, 请确保您的资源符合所有要求, 并考虑遵循规范建议.

需求

一般来说, 人们提交给资源库的大部分资源都会被接受. 然而, 为了使您的资源被接受, 资源需要满足一些要求才能被批准.

  • 资产必须是有效的。如果该资产无法工作或在指定的 Godot 版本中不能工作,那么它将被拒绝。

  • 该资产必须拥有合适的 .gitignore 文件。把多余的数据从版本库中剔除是很重要的。这里有一个模板。

  • 不使用子模块,或者所有子模块都必须是非必要的。GitHub 下载的 ZIP 文件中不包括子模块,所以如果你的资产需要用到子模块中的内容,将无法使用。

  • 许可证 license 需是正确。资产库中列出的许可证必须与版本库中的许可证一致。版本库需要有一个许可证文件,称为 "LICENSE" 或 "LICENSE.md" 。这个文件必须包含许可证文本本身和版权声明,包括年份和版权所有者。

  • 在你的资产名称和描述中使用正确的英语。这包括使用正确的大写字母,并在描述中使用完整的句子。你也可以包括其他语言,但至少应该有一个英文版本。

  • 图标链接必须是一个 direct link 直接链接。对于托管在GitHub上的图标,链接必须以 "raw.githubusercontent.com" 开头,而不是 "github.com"。

建议

这些事情并不是你的资源被批准的必要条件, 但如果你遵循这些建议, 你可以帮助使资源库成为所有用户体验更好的地方.

  • 修复或禁止所有脚本警告。警告系统可帮助识别您的代码问题,但使用您的资产的人不需要看到它们。

  • 使你的代码符合官方的风格指南。有一致的风格有助于其他人阅读你的代码,如果其他人希望为你的资产做贡献,将会有帮助。请参阅 GDScript 风格指南C# 风格指南

  • 如果仓库中有截图,把它们放在子文件夹里,并在该文件夹里添加一个 .gdignore 文件(注意:是 gd,不是 git)。这样可以防止 Godot 导入截图。在 Windows 上,在项目文件夹中打开命令提示符,运行 type nul > .gdignore 来创建一个名字以点开头的文件。

  • 如果您的资产是用于处理其他文件的库,请考虑在资产中包含示例文件

  • 请考虑将 .gitattributes 文件添加到你的仓库中。该文件能够向 Git 提供额外的指令,例如指定行结尾和列出资产不需要使用 export-ignore 指令运行的文件。该指令会从生成的 ZIP 文件中删除此类文件,防止资产库用户下载到它们。以下是一些常见的 .gitattributes 示例:

    # Normalize line endings for all files that Git considers text files.
    * text=auto eol=lf
    
  • 如果你要提交一个插件,请将你的许可证和readme的 copy 添加到插件文件夹本身。这是保证用户与他们的项目一起保留的文件夹,副本确保他们始终可以方便地使用这些文件,并帮助他们履行你的许可条款。

  • icon 应为正方形,其纵横比应为 1:1。它的最低分辨率最好是64x64像素。

  • 虽然资产库允许的不仅仅是 GitHub,但考虑将资产的源代码托管在 GitHub。其他服务可能无法可靠地工作,而且不熟悉可能会成为贡献者的障碍。

提交

一旦您登录,您将能够转到 AssetLib 的“Submit Assets”(提交资产)页面,该页面如下所示:

image0

虽然它可能看起来很多(并且向下滚动时会显示更多),每个字段都是根据您应该放入的内容进行描述的。但是,我们仍坚持在这里将提交表单中所需的内容详细阐述一遍。

  • Asset Name

    您资产名称。应该是您资产的特有描述性标题。

  • Category

    您的资产所属的类别,将显示在搜索结果中。该类别分为 Addons(插件)和 Projects(项目)。在编辑器中,项目类型(模板、演示、项目)的资产将显示在项目管理器的 AssetLib 中,而插件类型的资源仅显示在项目内部中。

  • Godot version

    该资产适用的引擎版本。目前,无法让一个资产条目包含多个引擎版本的下载,所以你可能需要多次提交资产,为其支持的每个 Godot 版本添加一个条目。在处理主要的引擎版本时,这一点尤其重要,如 Godot 2.x 和 Godot 3.x。

  • Version

    资产的版本号。虽然您可以自由选择和使用您喜欢的任何版本控制方案,但如果您希望资产的版本控制方案清晰且一致,您可能需要查看诸如 SemVer 之类的内容。请注意,系统内还有一个内部版本号,每次更改或更新资源下载地址时都会增加。

  • Repository host

    上传到 AssetLib 的资产并不直接托管在它上面。而是指向 GitHub、GitLab、Bitbucket 等第三方 Git 提供商托管的仓库。这就是你选择资产所用提供商的地方,这样网站就能据此计算出最终的下载链接。

  • Repository URL

    资产文件/网页的 URL。这将根据您选择的提供商而有所不同,但结构类似于 https://github.com/<用户>/<项目>

  • Issues URL

    资源问题跟踪器的 URL。同样,根据托管仓库的不同而不同,但结构类似于 https://github.com/<用户>/<项目>/issues。如果您使用提供商的问题跟踪器,则可以将此字段留空,因为它是仓库的一部分。

  • Download Commit

    该资产的提交号。例如,b1d3172f89b86e52465a74f63a74ac84c491d3e1。网站以此计算出实际的下载 URL。

  • Icon URL

    资产图标的 URL(将在 AssetLib 搜索结果和资产页面中用作缩略图)。应该是 PNG 或 JPG 格式的图像。

  • License

    您分发资源的许可证。该列表包括各种自由且开源软件许可证,如 GPL (v2和v3)、MIT、BSD 和 Boost 软件许可证。您可以访问 OpenSource.org 获取每个列出的许可证的详细说明。

  • Description

    最后, 您可以使用Description字段来查看资源, 其功能和行为, 更改日志等文本概述. 将来, 将支持使用Markdown格式, 但目前只支持纯文本.

您还可以包含最多三个视频和/或图像预览,这些预览将显示在资源页面的底部。请使用每个预览提交框上的“启用”复选框从而启用它们。

  • Type

    图像或视频。

  • Image/YouTube URL

    图像或托管在 YouTube 上的视频的链接。

  • Thumbnail URL

    图片的 URL,这张图片将用作预览的缩略图。这个选项最终将被删除,缩略图将被自动计算出来。

完成后点击“Submit”。你的资产就会进入审核队列。你可以在这里查看所有正在等待审核的资产。审核过程是人工的,你的资产可能会花上若干天才能通过(或者驳回),请耐心等待!

备注

你可以在贡献者聊天室或官方 Discord 服务器中联系管理员和 AssetLib 审核员碰碰运气看看能不能加速审核进度。

你的资产通过审核后会通知你。如果被驳回,会告知你相关原因,你可以在做出正确的修改后重新提交。