如何向用Rust编写的Godot 4扩展添加Inspector字段?

xoefb8l8  于 2023-10-20  发布在  Go
关注(0)|答案(1)|浏览(124)

我正在编写一个用Rust编写的Godot 4的扩展,使用gdext绑定周围的godot Package 器crate。
教程(https://godot-rust.github.io/book/gdext/intro/hello-world.html#custom-rust-apis)显示,您可以使用#[func]指令注解应该从gdscript调用的函数。
我想添加一个出现在Inspector中的参数,以便Godot GUI的用户可以从我的扩展中更改Node派生示例的一些属性。
如何将此功能添加到我的扩展?我是否注解了结构体的公共字段?我需要注解setter/getter对吗?

ymdaylpp

ymdaylpp1#

正如Theraot注意到的(因为他不是盲人),标记rust结构体字段以使其出现在检查器中的正确注解是#[export]

#[derive(GodotClass)]
#[class(base=Node)]
struct RemoteRenderer {
    #[base]
    base: Base<Node>,

    encoder: Option<Encoder>,
    png_sink: PNGSink,

    display: GLDisplay,
    context: GLContext,

    #[export]
    enable: bool,
}

来自https://godot-rust.github.io/book/gdext/intro/hello-world.html#custom-rust-apis:“API属性通常跟在GDScript关键字名称之后:class,func,signal,export,var,.”

相关问题