说明:
参考:https://docs.godotengine.org/zh_CN/latest/tutorials/plugins/editor/making_plugins.html
- 插件是统一放在addons根目录下的,如果是从AssetLib下载的,则自动创建这个文件夹,如果手动创建插件,则必须按照
addons /{插件名}/
层级来创建- 插件配置文件是不在项目中显示的,被godot隐藏
- 插件的描述说明在
addons /{插件名}/plugin.cfg
下,结构为
[plugin]
name="插件名"
description="插件功能描述"
author="作者"
version="版本号"
script="plugin.gd"
- 插件主文件结构
tool
extends EditorPlugin
func _enter_tree():
# Initialization of the plugin goes here
pass
func _exit_tree():
# Clean-up of the plugin goes here
pass
制作最简单的按钮插件
-
项目/项目设置/插件
选择创建
,填写相关信息
按照这个来填写
其中,最主要的是脚本名称,这里链接了脚本主文件,创建后会色和你过程一个
配置文件指向了
plugin.gd
,这里可以将默认加载脚本名字改成任意,只要script对应就可以
创建主插件plugin.gd脚本
tool
extends EditorPlugin
const res_ico = preload("icon.svg")
const cls_bt = preload("test_button.gd")
func _enter_tree():
add_custom_type("MyButton","Node",cls_bt,res_ico)
func _exit_tree():
remove_custom_type("MyButton")
- preload预加载可以是相对的,也可以是绝对
res://
地址- 在主gd中绑定类在组件中的某个节点下,
Node
为根节点,你可以进行更改,可以放到Button
下,我为了测试方便,放到了根目录下,add_custom_type
同样也绑定了图标,图标可以是png,也可以是svg,svg相对来说清晰度高一些
创建功能 test_button.gd 代码
tool
extends Button
func _ready():
connect("pressed",self,"on_click")
pass
func on_click():
print("test button plugin clicked")
- 激活和更新
- 激活
在项目/项目设置/插件
列表下,找到对应的插件,点击激活,默认情况下是不可激活,这个只能由用户来决定是否激活,而不能强迫激活插件。自己创建的插件可以在创建时默认设置激活
- 刷新
点击项目/项目设置/插件
右上角的刷新
按钮即可刷新脚本,脚本的更改需要刷新,否则不会体现在设计器上
- 激活
-
点击就会创建一个button默认带触控脚本
制作主屏幕插件
http://docs.godotengine.org/en/stable/tutorials/plugins/editor/making_main_screen_plugins.html
提交
提交网址:https://godotengine.org/asset-library/asset/submit
提交帮助:
http://docs.godotengine.org/en/stable/tutorials/assetlib/uploading_to_assetlib.html