Showing the changes to interface/src/scripting/ControllerScriptingInterface.h (1 of 370 files). Show all
Unified · Split
| @@ -216,6 +216,7 @@ class ScriptEngine; · 215 unmodified lines | ||
| 216 | 216 | * |
| 217 | 217 | * @property {Controller.Actions} Actions - Predefined actions on Interface and the user's avatar. These can be used as end |
| 218 | 218 | * points in a {@link RouteObject} mapping. A synonym for <code>Controller.Hardware.Actions</code>. |
| 219 | + * Getting this property is computationally expensive, so it's best to cache it once on script start. | |
| 219 | 220 | * <em>Read-only.</em> |
| 220 | 221 | * <p>Default mappings are provided from the <code>Controller.Hardware.Keyboard</code> and <code>Controller.Standard</code> |
| 221 | 222 | * to actions in |
| @@ -225,13 +226,16 @@ class ScriptEngine; · 3 unmodified lines | ||
| 225 | 226 | * standard.json</a>, respectively.</p> |
| 226 | 227 | * |
| 227 | 228 | * @property {Controller.Hardware} Hardware - Standard and hardware-specific controller and computer outputs, plus predefined |
| 228 | − * actions on Interface and the user's avatar. The outputs can be mapped to <code>Actions</code> or functions in a | |
| 229 | + * actions on Interface and the user's avatar. Getting this property is computationally expensive, so it's best to cache it | |
| 230 | + * instead of calling on every update. | |
| 231 | + * The outputs can be mapped to <code>Actions</code> or functions in a | |
| 229 | 232 | * {@link RouteObject} mapping. Additionally, hardware-specific controller outputs can be mapped to |
| 230 | 233 | * <code>Controller.Standard</code> controller outputs. <em>Read-only.</em> |
| 231 | 234 | * |
| 232 | 235 | * @property {Controller.Standard} Standard - Standard controller outputs that can be mapped to <code>Actions</code> or |
| 233 | 236 | * functions in a {@link RouteObject} mapping. <em>Read-only.</em> |
| 234 | − * <p>Each hardware device has a mapping from its outputs to <code>Controller.Standard</code> items, specified in a JSON file. | |
| 237 | + * <p>Each hardware device has a mapping from its outputs to <code>Controller.Standard</code> items, specified in a JSON file. | |
| 238 | + * Getting this property is computationally expensive, so it's best to cache it once on script start. | |
| 235 | 239 | * For example, <a href="https://github.com/highfidelity/hifi/blob/master/interface/resources/controllers/leapmotion.json"> |
| 236 | 240 | * leapmotion.json</a> and |
| 237 | 241 | * <a href="https://github.com/highfidelity/hifi/blob/master/interface/resources/controllers/vive.json">vive.json</a>.</p> |