class GeometryAttribute<T> {
static final String POSITION = "position";
static final String NORMAL = "normal";
static final String INDEX = "index";
static final String UV = "uv";
static final String TANGENT = "tangent";
static final String COLOR = "color";
int numItems, itemSize;
T array;
// Used in WebGL Renderer
Buffer buffer;
GeometryAttribute._internal(this.numItems, this.itemSize, this.array);
factory GeometryAttribute.float32(int numItems, [int itemSize = 1]) =>
new GeometryAttribute<Float32List>._internal(numItems, itemSize, new Float32List(numItems));
factory GeometryAttribute.int16(int numItems, [int itemSize = 1]) =>
new GeometryAttribute<Int16List>._internal(numItems, itemSize, new Int16List(numItems));
}