I am looking to leverage the SteamVR interaction system, but some aspects of the object system aren't clear to me. Which class ought to be responsible for mapping the "Application Menu" button press to the activation of new objects/controls? For example, in "The Lab" this would activate a "Teleport sphere" the user could bring to their face to transition to a different Scene. If I wanted to give the user a Tablet they could bring up to control things, I might follow a pattern I see (in Teleport for example), where there would be a "Tablet" script with an "Update()" method that would poll with GetPress() to see if the user has pressed the "ApplicationMenu" button. This seems like it would be a lot of overhead processing if the pattern were replicated in multiple places / objects. I am more used to there being a "Controller" object which takes action to invoke state changes through the object system when the user initiates state changes. What is the best practice here?
... View more