This is a three.js controls which supports touch events. it also has hit-testing by default which means it doesn't pass through walls or objects in the scene.
Also, I've added mouse hit-testing to the example.
* Updated to the latest threejs release (v.140) and ES6 standard.