working non virtual shadows