some shader utils and beginning effects framework