openglで3次元テクスチャを扱うときのことで質問です

テクスチャを格納するとき
Texture[x][y][z][4]と作って
Texture[x][y][z][0〜3]にRGBAの値が入るんですよね?
実質、4次元配列になるのでしょうか?

これをTexture[ ]といったように1次元配列で格納するためには
Texture[x*y*z*4]で格納して RGBARGBARGBA…RGBA
という風になるのですか?

単色(輝度値のみ)のテクスチャの場合
Texture[x*y*z] に AAAAA…A
といった風に値を格納することは可能なのでしょうか?


質問の仕方が下手ですみません。わかる方教えてください