跳转到内容

程序蓝图

版本 >= 3.2 beta3

程序蓝图是LayaAir引擎提供的可视化脚本系统,开发者可以通过连线的方式来创建脚本组件,无需编写TypeScript代码。程序蓝图支持创建继承自ScriptSprite3D、UI派生类等不同类型的蓝图,根据继承的类不同,蓝图的使用方式也不同:

  • 继承Script的蓝图:作为组件添加到节点上,与代码脚本组件的使用方式一致。
  • 继承Sprite3D的蓝图:直接拖入3D场景中作为3D节点使用。
  • 继承UI派生类的蓝图:直接拖入2D场景中作为UI节点使用。

关于程序蓝图编辑器的详细使用说明,请参考《程序蓝图》

使用蓝图前,首先需要在LayaAir-IDE的项目设置面板中勾选蓝图模块。

在项目资源(Asset)目录下,通过点击”+“或鼠标右键创建蓝图,然后选择蓝图要继承的类。创建后会在资源目录中生成一个蓝图文件(.bp)。

双击蓝图文件即可打开蓝图编辑器,进行可视化逻辑编辑。

在资源目录中选中蓝图文件后,可以在Inspector面板中查看蓝图的基本信息:

  • 继承类型:蓝图继承的基类(如ScriptSprite3D等)。
  • 外部可见变量:在蓝图中定义且标记为外部可见的变量,这些变量可以在IDE属性面板中直接赋值。

不同继承类型的蓝图文件有不同的使用方式:

继承类型使用方式
Script(组件)自动填充到IDE组件列表中,可通过添加组件按钮添加到任何节点,或直接拖拽到属性面板
Sprite3D(3D节点)直接拖入3D场景中或拖到3D场景的层级目录
UI派生类(2D节点)直接拖入2D场景中或拖到2D场景的层级目录

蓝图资源管理的更多内容,请参考《蓝图资源》

程序蓝图支持与TypeScript代码进行互操作。通过在代码中使用蓝图装饰器,可以将自定义的类、函数、属性暴露到蓝图编辑器中:

  • @bpClass:将类暴露到蓝图。
  • @bpProperty / @bpAccessor:将属性暴露到蓝图。
  • @bpFunction:将函数暴露到蓝图。

蓝图装饰器的详细用法,请参考《程序蓝图》中的”蓝图装饰器”部分。