type RenderInstances = {
character: Input<Artboard<Data.Character>>,
instance: Artboard<Data.Character>?,
}
function init(self: RenderInstances, context: Context): boolean
local vm = Data.Character.new()
self.instance = self.character:instance(vm)
return true
end
function draw(self: RenderInstances, renderer: Renderer)
local instance = self.instance
if instance then
renderer:save()
instance:draw(renderer)
renderer:restore()
end
end
return function(): Node<RenderInstances>
return {
character = late(),
instance = nil,
init = init,
draw = draw,
}
end