Use associated types for Texture1dData/Texture2dData/Texture3dData

Triggers an ICE for the moment: https://github.com/rust-lang/rust/issues/17732

See also https://github.com/rust-lang/rust/issues/19066