I've made a small demo showing a softbody which is created with the JBox2D physics engine (rendered with Slick2D / LWJGL / OpenGL).
[media]
[/media]
As you can see the shape is made of 20 circle bodies that are connected to each other.
I need a fast algorithm for real-time rendering that smooths the surface of the shape, so that you can't see how many corners there are.
I can think of two ways for how this could be achieved:
The polygon can be blurred with a shader, and then use another shader to cut out the pixels with certain transparency, similar to how metaballs are usually done. The problem with this solution is the amount of blur it takes to smooth out some of the edges in certain situations - The blur might destroy the shape's fine details. Also, heavy blurring requires more processing power, I think.
Or, some bezier curve -algorithm could be used to calculate the curves between each corner-point of the shape. This sounds highly complex and slow, but I could be wrong.
I'm not a very experienced programmer, so the more detailed help you can give the better.
I'm also looking for a way to make a few pixel think border around the shape.