Original Post
I'm looking for an algoritm that could be used to sub-divide a 2d concave polygon into a set of convex ones. As it stands the polygon to be divided is defined with its points in an ordered list. I thought about looking up an algorithm used to divide a concave polygon into triangles, and then build a set of convex polygons from the triangles, but it seems a bit messy. The reason for this is to be used in my physics engine which only works with convex polygons - however it can weld them together for concave ones. The reason i want to have it divided into convex ones and not just triangles is that the physics runs alot faster with having a small set of convex polygons than many triangles.