{"metadata":{"image":[],"title":"","description":""},"api":{"url":"","auth":"required","results":{"codes":[]},"settings":"","params":[]},"next":{"description":"","pages":[]},"title":"VRTK_MaterialPropertyBlockColorSwapHighlighter","type":"basic","slug":"vrtk_materialpropertyblockcolorswaphighlighter","excerpt":"","body":"> extends [VRTK_MaterialColorSwapHighlighter](doc:vrtk_materialcolorswaphighlighter)\n\n## Overview\n\nSwaps the texture colour on the Renderers material for the given highlight colour using property blocks.\n\n  > Utilising the MaterialPropertyBlock means that Draw Call Batching in Unity is not compromised.\n\n**Script Usage:**\n * Place the `VRTK_MaterialPropertyBlockColorSwapHighlighter` script on either:\n   * The GameObject of the Interactable Object to highlight.\n   * Any other scene GameObject and then link that GameObject to the Interactable Objects `Object Highlighter` parameter to denote use of the highlighter.\n * Ensure the `Active` parameter is checked.\n\n## Class Methods\n\n### Initialise/3\n\n  > `public override void Initialise(Color? color = null, GameObject affectObject = null, Dictionary<string, object> options = null)`\n\n * Parameters\n   * `Color? color` - Not used.\n   * `GameObject affectObject` - An optional GameObject to specify which object to apply the highlighting to.\n   * `Dictionary<string, object> options` - A dictionary array containing the highlighter options:\\r     * `<'resetMainTexture', bool>` - Determines if the default main texture should be cleared on highlight. `true` to reset the main default texture, `false` to not reset it.\n * Returns\n   * _none_\n\nThe Initialise method sets up the highlighter for use.\n\n### Unhighlight/2\n\n  > `public override void Unhighlight(Color? color = null, float duration = 0f)`\n\n * Parameters\n   * `Color? color` - Not used.\n   * `float duration` - Not used.\n * Returns\n   * _none_\n\nThe Unhighlight method returns the object back to it's original colour.","updates":[],"order":3,"isReference":false,"hidden":false,"sync_unique":"","link_url":"","link_external":false,"_id":"5b1f8576c2505d00031254ab","category":{"sync":{"isSync":false,"url":""},"pages":[],"title":"Highlighters","slug":"highlighters","order":8,"from_sync":false,"reference":false,"_id":"5b1f8576c2505d000312542b","version":"5b1f8576c2505d00031254db","project":"571fa55ca0acd42000af9545","createdAt":"2017-01-01T16:48:47.829Z","__v":0},"parentDoc":null,"user":"571fa519db52d01700f5cf3d","project":"571fa55ca0acd42000af9545","version":{"version":"3.3.0","version_clean":"3.3.0","codename":"Mangalica","is_stable":true,"is_beta":false,"is_hidden":false,"is_deprecated":false,"categories":["5b1f8576c2505d0003125424","5b1f8576c2505d0003125425","5b1f8576c2505d0003125426","5b1f8576c2505d0003125427","5b1f8576c2505d0003125428","5b1f8576c2505d0003125429","5b1f8576c2505d000312542a","5b1f8576c2505d000312542b","5b1f8576c2505d000312542c","5b1f8576c2505d000312542d","5b1f8576c2505d000312542e","5b1f8576c2505d000312542f","5b1f8576c2505d0003125430","5b1f8576c2505d0003125431","5b1f8576c2505d0003125432","5b1f8576c2505d0003125433","5b1f8576c2505d0003125434","5b1f8576c2505d0003125435","5b1f8576c2505d0003125436","5b1f8576c2505d0003125437","5b1f8576c2505d0003125438","5b1f8aab9c683000032979e7","5b1f8b2f3073470003ffa5da","5b1f8bd9fd653400031d94f4","5b1f900bd4c5f000036b57bd"],"_id":"5b1f8576c2505d00031254db","project":"571fa55ca0acd42000af9545","__v":4,"forked_from":"594949e52be16d0026ec04cd","createdAt":"2017-06-20T16:14:29.816Z","releaseDate":"2017-06-20T16:14:29.816Z"},"createdAt":"2017-02-25T10:32:24.449Z","githubsync":"","__v":0}

VRTK_MaterialPropertyBlockColorSwapHighlighter


> extends [VRTK_MaterialColorSwapHighlighter](doc:vrtk_materialcolorswaphighlighter) ## Overview Swaps the texture colour on the Renderers material for the given highlight colour using property blocks. > Utilising the MaterialPropertyBlock means that Draw Call Batching in Unity is not compromised. **Script Usage:** * Place the `VRTK_MaterialPropertyBlockColorSwapHighlighter` script on either: * The GameObject of the Interactable Object to highlight. * Any other scene GameObject and then link that GameObject to the Interactable Objects `Object Highlighter` parameter to denote use of the highlighter. * Ensure the `Active` parameter is checked. ## Class Methods ### Initialise/3 > `public override void Initialise(Color? color = null, GameObject affectObject = null, Dictionary<string, object> options = null)` * Parameters * `Color? color` - Not used. * `GameObject affectObject` - An optional GameObject to specify which object to apply the highlighting to. * `Dictionary<string, object> options` - A dictionary array containing the highlighter options:\r * `<'resetMainTexture', bool>` - Determines if the default main texture should be cleared on highlight. `true` to reset the main default texture, `false` to not reset it. * Returns * _none_ The Initialise method sets up the highlighter for use. ### Unhighlight/2 > `public override void Unhighlight(Color? color = null, float duration = 0f)` * Parameters * `Color? color` - Not used. * `float duration` - Not used. * Returns * _none_ The Unhighlight method returns the object back to it's original colour.