added ward functions to ubershader.. not really tested