More shader work, need to organise these way better