Updated shadow generation