Creating and controlling visual environments using BonVision