The title kinda says it all.
I set the SteamVR_LaserPointer to be red for the right controller and blue for the left controller.
Everything looks great and works in the Play window in Unity’s Editor, but when I build the game, both the left and right SteamVR_LaserPointer 's appear as grey.
Not sure how to solve this, but I’m dealing with the exact same problem today.
Ah, figured it out! @amarkham check it out:
SteamVR_LaserPointer is written in a sort of bad way–it assumes that the shader [Unlit/Color] is in your project, and applies it when the script starts. However, when you do a build, it strips out all unused shaders, so if you’re not already [Unlit/Color] somewhere in your scene, the shader won’t be found and the laser pointer won’t show up.
I fixed this by making a new Material and setting it to [Unlit/Color], and then I put the Material in Assets/Resources/. By putting into the Resources folder it assures that it’ll be included in your project and not stripped out.