用途:Rive Scripting 使用 Luau(Roblox 的 Lua 变体)在 Rive 动画内部创建交互与程序化行为。脚本在 Rive 编辑器中运行,并随 .riv 文件一同导出。
主要脚本类型:Node Script 负责程序化绘制与交互,关键方法为 init、advance、update、draw;Layout Script 负责自定义尺寸与定位,方法为 measure、resize;Converter Script 为绑定转换数据,方法为 convert、reverseConvert;PathEffect Script 以 effect 方法程序化修改路径;Util Script 提供可复用辅助函数,通过 exports 导出。
核心模式:先定义状态类型(如包含 path、paint、time 等字段),再定义协议方法,例如 draw(self, renderer) 调用 renderer:drawPath(self.path, self.paint),advance(self, elapsed) 累加时间;最后返回工厂函数,返回包含方法与 Path.new()、Paint.new() 等初始化值的表。
关键 API:绘制方面有 Path(moveTo、lineTo、quadTo、cubicTo、close)、Paint(颜色、渐变、粗细样式)与 Renderer(drawPath、clipPath、transform);几何方面有 Vec2D(xy、length、normalize、dot)、AABB 与 Mat2D;数据方面有 ViewModel、Property 与 Trigger,用于访问绑定数据、读写数据值和触发事件。
适用场景:需要在 Rive 动画中实现程序化绘制、交互响应、自定义布局尺寸、数据绑定转换或路径效果时使用。资料中列出的规则文件涵盖入门、节点脚本、绘制、指针事件、布局脚本、转换器脚本、路径效果、数据绑定、工具脚本与 API 参考。
限制:资料未说明该技能的具体安装命令、运行环境要求、收费方式或价格;能否离线使用、支持哪些 Rive 版本、脚本性能与调试方式等信息暂未提供。使用前需自行确认 Rive 编辑器对 Luau 脚本的支持情况。