Animates a model to match its input state. The buttons and joysticks on a controller will move as they're pressed/moved and hand models will move to match hand tracking joints.
The model must have been created using lovr.headset.newModel with the animated flag set to true.
Whether the animation was applied successfully to the Model. If the Model was not compatible or animation data for the device was not available, this will be false.
Whether the animation was applied successfully to the Model. If the Model was not compatible or animation data for the device was not available, this will be false.
It's possible to animate a custom hand model by retargeting joint poses, see the Interaction/Custom_Hand_Rig example.
Example
function lovr.load()
models = {
left = lovr.headset.newModel('hand/left'),
right = lovr.headset.newModel('hand/right')
}
end
function lovr.draw(pass)
for hand, model in pairs(models) do
if lovr.headset.isTracked(hand) then
lovr.headset.animate(model)
pass:draw(model, mat4(lovr.headset.getPose(hand)))
end
end
if not next(models) then
pass:text('No models loaded', 0, 1.7, -1, .1)
end
end