refactored vertex data / shader relationship