Cell Simulations with the Marching Cubes Algorithm
By Lisa Lau and Tyler Wolf Leonhardt
The marching cubes algorithm is an algorithm which allows a mesh to be created from a scalar field
[1]. In other words, the algorithm takes a 3-dimensional array of filled and unfilled cubes and creates polygons which represent the volume of the filled cubes. The marching cubes algorithm can be used to create some 3D models known as metaballs. Metaballs are spherical objects which modify the geometry of other metaballs, sometimes even to the point of fusing, when they are close to each other
[2].
By using the marching cubes algorithm to create metaballs and then applying a shader which supports transparency to the metaball, a simulation of a 3D cell with organelles should be feasible. The resulting should look similar to Figure 1, below.
|
Figure 1: Default Shaded Metaballs Representing Cell [3]
|
Additionally by providing a red background, we can make the scene appear as though it is taking place within a human blood vessel. The background may be similar to Figure 2, below.
|
Figure 2: Blood Vessel Background [4]
|
By creating additional metaballs or additional meshes and applying appropriate shaders and textures, organelles can be created to fill the cell. A 2D image, similar to the 3D cell we wish to present in 3D is provided in Figure 3, below.
|
Figure 3: 2D Cell with Organelles [5]
|
The resulting scene will ultimately include the 3D cell with organelles and transparent textures against a red background representing a blood vessel.
Project Timeline
2014-04-04: Project proposal submitted.
2014-04-06: Shaders, textures and static models required for cell model completed.
2014-04-12: Metaball algorithm fully implemented.
2014-04-14: Cell model completed with interaction logic.
2014-04-16: Project presentation.
2014-04-28: Project submission.
Responsibilities
Lisa:
Lisa will be responsible for modifications to the main algorithm to improve performance and aesthetics. Additionally she will implement the core of the interaction logic. She will also be responsible for finding or creating all of the textures used wihtin the simulation.
Tyler:
Tyler will be responsible for writing the main algorithm and modifications to the project website. When the interaction logic is complete Tyler will make sure it is working correctly. He will also be responsible for finding or creating all of the models used within the simulation.
References