overhaul on object rendering