title: Vector instantiation with WebGL shaders
body: <p>Probably a simple question but I'm learning how WebGL shaders work. My understanding is a vec4 should be composed as something like vec4(0.5) or vec4(0.5, 0.5, 0.5, 0.5) or vec4(vec2(0.5), vec2(0.5)) for example, so why does this example seem to work? It contains a vec4 inside a vec2. I'm also using Three.js.</p>
  
  <p><code>vec4 myVec = vec4(vec2(0.5), vec2(0.5, vec4(0.5)));</code></p>
  
  <p>But this doesn't work:</p>
  
  <p><code>vec4 myVec = vec4(vec2(0.5), vec2(vec4(0.5), 0.5));</code></p>