needle has own shader