//Some vertex format
vertex_format_begin();
vertex_format_add_position_3d();
vertex_format_add_color();
vertex_format_add_texcoord();
v_format = vertex_format_end();
//some vertex buffer
v_buff = vertex_create_buffer();
//v_buff constituents
currBuffer = v_buff;
vertex_begin(currBuffer,v_format);
vertex_position_3d(currBuffer,x1,y1,0);
vertex_color(currBuffer,c_dkgray,1.0);
vertex_texcoord(currBuffer,0,0);
vertex_position_3d(currBuffer,x1,y2,0);
vertex_color(currBuffer,c_dkgray,1.0);
vertex_texcoord(currBuffer,0,1);
vertex_position_3d(currBuffer,x2,y2,0);
vertex_color(currBuffer,c_dkgray,1.0);
vertex_texcoord(currBuffer,1,1);
vertex_end(currBuffer);
//create the actual buffer used by the GML IDE.
//Vertex buffers themselves CANNOT be identified by the buffer functions unless allocated in memory as a buffer "proper"
// (Let's define any buffer_create function as creating a buffer "proper")
someBuff = buffer_create_from_vertex_buffer(currBuffer,buffer_vbuffer,1); //align to 1 byte for most circumstances
//consider buffer_create_from_vertex_buffer_ext() if you need to include the starting vertex along with the total number of vertices
vertex_freeze(currBuffer); //Do not freeze until after GML buffer "proper" is created or the IDE will throw an error