提交资源到素材库

前言

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

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

提交规范

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

需求

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

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

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

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

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

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

  • The icon link must be a direct link. For icons hosted on GitHub, the link must start with "raw.githubusercontent.com", not "github.com".

建议

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

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

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

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

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

  • 考虑将 .gitattributes 文件添加到你的仓库中。该文件允许向 Git 提供额外的指令,例如指定行结尾和列出资产不需要使用 export-ignore 指令运行的文件。该指令从生成的 ZIP 文件中删除此类文件,并防止素材库用户下载它们。对于典型的插件 .gitattributes 可能如下所示:

    # Normalize EOL for all files that Git considers text files.
    * text=auto eol=lf
    
    # Ignore some files when exporting to a ZIP.
    /.gitattributes     export-ignore
    /.gitignore         export-ignore
    /LICENSE            export-ignore
    /LICENSE.md         export-ignore
    /README.md          export-ignore
    /project.godot      export-ignore
    /icon.png           export-ignore
    /icon.svg           export-ignore
    

    其他类型的资产可能需要不同的配置(例如,项目模板需要 project.godot)。

  • 如果你要提交一个插件,请将你的许可证和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

    The URL to your asset's files/webpage. This will vary based on your choice of provider, but it should look similar to https://github.com/<user>/<project>.

  • Issues URL

    The URL to your asset's issue tracker. Again, this will differ from repository host to repository host, but will likely look similar to https://github.com/<user>/<project>/issues. You may leave this field empty if you use your provider's issue tracker, and it's part of the same repository.

  • 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 审核员碰碰运气看看能不能加速审核进度。

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