public static VertexPointerType OpenGLVertexPointerType(this VertexElementFormat elementFormat)
{
switch (elementFormat)
{
case VertexElementFormat.Single:
return VertexPointerType.Float;
case VertexElementFormat.Vector2:
return VertexPointerType.Float;
case VertexElementFormat.Vector3:
return VertexPointerType.Float;
case VertexElementFormat.Vector4:
return VertexPointerType.Float;
case VertexElementFormat.Color:
return VertexPointerType.Short;
case VertexElementFormat.Byte4:
return VertexPointerType.Short;
case VertexElementFormat.Short2:
return VertexPointerType.Short;
case VertexElementFormat.Short4:
return VertexPointerType.Short;
case VertexElementFormat.NormalizedShort2:
return VertexPointerType.Short;
case VertexElementFormat.NormalizedShort4:
return VertexPointerType.Short;
case VertexElementFormat.HalfVector2:
return VertexPointerType.Float;
case VertexElementFormat.HalfVector4:
return VertexPointerType.Float;
}
throw new ArgumentException();
}