refactoring CShader and CTexture