>>415
struct A{};
sizeof(A)==1
だから。
やるとしたら
struct XXX{float x,y,z;operator vec3(){return vec3(x,x,x);}}
のような型を(3要素だけなら)27通り作ってunionで持たせるとか。