<shapes>
<vertdef name='v0' x='0' y='0' z='0' u='0' v='0'/>
<!--defines a vertex for use across the entire file, name is a string, x, y, z, u and v are floats-->
<shape id='5' name='customShape1' orientationStyle='0'>
<!--id is the <BlockStyle> from the BlockConfig.xml[the preimplemented shapes should not be overwritable using this], name is just for humans to identify the shape it is supposed to be, orientationStyle is either 0[like a cube], 6[like the old docking modules], 8[like heptas and tetras], 12 [like wedges] or 24 [like corners]-->
<tri>
<vertex ref='v0'/>
<vertex ref='v0' x='1' u='1'/>
<vertex x='1' y='1' u='1' v='1'/>
<!--a vertex, local assignments of x, y, z, u or v locally overwrite the referenced predefined vertex, if no vertex is referenced, unassigned values are defaulted to 0-->
</tri>
<!--vectors in <tri> elements are grouped in triplets in the order of definition, each triplet defines a triangle in the shape
<fan> and <strip> process the vectors as triangle-fans or triangle-strips-->
<mesh scale='1' x='0' y='0' z='0' rotx='0' roty='0' rotz='0'>myMeshFile</mesh>
<!--references a mesh stored in a file; x,y and z are offsets; all attributes are defaulted to the values in this example-->
</shape>
</shapes>