some fixes, rewritten shader object
vs fix