more validation moved from glsl-transition-core