added struct shaderDescriptor with all functions