编辑器图标

当一个新类被创建并暴露于脚本时,编辑器的界面将显示一个默认图标,表示它从中继承的基类.在大多数情况下,仍然建议为新类创建图标以改善用户体验.

创建图标

要创建新图标,你首先需要安装一个矢量图形编辑器.例如,你可以使用开源的 Inkscape <https://inkscape.org/> _编辑器.

克隆包含所有编辑器图标的 godot 资源库:

git clone https://github.com/godotengine/godot.git

图标必须在矢量图形编辑器中以 SVG 格式创建.要遵循两个主要要求:

  • 图标必须是16×16.在Inkscape中,你可以在 文件>文档属性 中配置文档大小.

  • 线条应该尽可能地被捕捉到像素,以便在较低的DPI下保持清晰,你可以在Inkscape中创建一个16×16的网格来简化这个过程.

一旦你对图标的设计感到满意,就把图标保存在拷贝版本库的 editor/icons 文件夹中.图标的名称应该与预期的名称相匹配,并区分大小写.例如,要为CPUParticles2D创建一个图标,将文件命名为 CPUParticles2D.svg .

灯光编辑器主题的颜色转换

如果用户将其编辑器配置为使用浅色主题,Godot将根据 一组预定义的颜色映射 来转换图标的颜色.这是为了确保图标始终以足够的对比度显示.尽量将图标的调色板限制在上面列表中的颜色.否则,您的图标在浅色背景下可能会变得难以预览.

图标优化

因为编辑器在加载时只呈现一次SVG,所以SVG的大小必须很小,这样才能有效地解析SVG.在添加到引擎之前,必须首先优化编辑器图标,为此:

  1. 发布选项卡 下载二进制文件,并将其放置在环境变量 PATH 中的一个位置, svgcleaner .

  2. 运行下面的命令,将 svg_source.svg 替换为SVG文件的路径(可以是相对或绝对路径):

    svgcleaner --multipass svg_source.svg svg_optimized.svg
    

--multipass 开关可以提高压缩率,所以一定要包含它.优化后的图标将被保存为 svg_optimized.svg .你也可以将目标参数改为相对或绝对路径.

注解

虽然这个优化步骤不会对图标的质量产生明显影响,但还是会删除指南等只属于编辑器的信息.因此,如果你需要做进一步的修改,建议将源SVG保留下来.

集成和分享图标

如果你对引擎本身有贡献,你应该pull request,在主仓库的 editor/icons 中添加优化的图标.重新编译引擎,使其获取新的类图标.

也可以在模块内创建自定义图标.如果您要创建自己的模块,并且不打算将其与Godot集成,则不需要单独的拉取请求即可在编辑器中使用图标,因为它们可以独立存在.

有关如何创建模块图标的特定说明,请参考 创建自定义模块图标.

故障排除

如果图标没有出现在编辑器中,请确保:

  1. 每个图标的文件名都符合前面所述的命名要求.

  2. 启用 modules/svg (默认情况下应该是启用的).没有它,图标针不会出现在编辑器中.