Effective Placement of Virtual Objects in Real-World Environments