struct {flot x,y,z;};
とかっていわゆるPODだからfloat [3]とunionしてもちゃんとアクセスできるんじゃねーのか