animated controller handled via a viewmodel