Feature/basic osg shader

rebased
add more comments to help readibilty