how to implement a game like foldit(http://fold.it/portal/)

MI97
Posts: 1
Joined: Thu Mar 15, 2012 3:35 pm

how to implement a game like foldit(http://fold.it/portal/)

Post by MI97 »

We are students of Tzu Chi University in Taiwan. We would like to implement
a game like foldit (http://fold.it/portal/), but is simpler.
We want to draw the 3d structure of a protein and let users use mouse to
drag a segment of a protein to change its structure. The distance between
two atoms is fixed, thus the backbone of a protein likes a chain of solid
object. While a segment is dragged, all segments are moved accordingly.
Could someone please tell us how to do it?
CookieMonster
Posts: 49
Joined: Sun Jan 29, 2012 10:01 pm

Re: how to implement a game like foldit(http://fold.it/porta

Post by CookieMonster »

Since atoms are quite round, it can be simulated as position based physics on the graphics card with DirectX or OpenGL. The only demanding thing is the serial broad phase to avoid quadratic complexity.

One texture can be used for storing the position of each particle and another texture for velocity. Pixel shaders are then used as functions for generating the midpoint, calculating the forces, applying forces to velocity and moving particles according to velocity.

The game foldit seems to be simpler than that because all closed cycles are one rigid shape.
It looks like they use a skeleton that update from the roots to the leafs every time something is rotated.
jauthu
Posts: 12
Joined: Tue Feb 28, 2012 7:34 pm

Re: how to implement a game like foldit(http://fold.it/porta

Post by jauthu »

The thing you might need to get used to is a SceneGraph-oriented graphics engines, where any rendering object can be a child of another one so that child's transformations are inherited from parents.

It seems to me that such a structure is not common in Bullet, so maybe you need to find a graphics engine with collision detection features and it can be enough. Maybe I wrong, so I'm looking forward for any next posts.