lovr.modelschanged

Edit

The lovr.modelschanged callback is called when VR models change, usually when hardware is connected or disconnected.

function lovr.modelschanged()
  -- your code here
end

Arguments

None

Returns

Nothing

Example

local models = {}

function lovr.draw(pass)
  for _, model in pairs(models) do
    if lovr.headset.isTracked(model) then
      lovr.headset.animate(model)

      local x, y, z, angle, ax, ay, az = lovr.headset.getPose(model)
      pass:draw(model, x, y, z, 1, angle, ax, ay, az)
    end
  end
end

function lovr.modelschanged()
  local newModels = {}

  for i, key in ipairs(lovr.headset.getModelKeys()) do
    newModels[key] = models[key] or lovr.headset.newModel(key)
  end

  models = newModels
end

See also