Robin Åstedt/projects/cellularsoftbody/

Back | CC BY-NC-SA 3.0 applies when no license is included.

Cellular Soft Body [WORK IN PROGRESS]

Cross-platform Java 8

Artificial multi-cellular organisms which features neural networks and resource distibution in an evolutionary setting with soft-body physics.
The blue example creature is controllable with the arrow keys. (Currently disabled from version 0.3.2)

Download version 0.3.5 (Java 8) [2015-03-04]
Download version 0.3.4 (Java 8) [2015-03-04]
Download version 0.3.2 (Java 7) [2015-03-04]
Download version 0.3.0 (Java 7) [2015-03-01]
Download version 0.2.1 (.NET 4.5) [2015-01-12]
Download version 0.2.0 (.NET 4.5) [2015-01-08]
Download version 0.1.2 (.NET 4.5) [2014-12-17]
Download version 0.1.1 (.NET 4.5) [2014-12-15]

Version History

0.3.5 [2015-09-13]

* Implemented a quadtree data structure for collision detection, greatly improving performance, especially for larger number of cells.
* Added more variables available with the get command in the console: "treebuildtime" and "cellrequests"

0.3.4 [2015-09-13]

* Organism object is now fully omitted and removed all legacy use of it.

Screenshot of CellularSoftBody version 0.3.4

Screenshot of CellularSoftBody version 0.3.4

0.3.3 [2015-09-13]

* New cells now properly checks if there are more cells around it that it could bind to. It achieves this by working its way around from its parent asking already bound neighbors for their neighbors. This still needs more work however.
* Due to the improved binding algorithm some of the graphical glitches are now fixed.
* Phantom forces has been located to be caused when two cells grow into the same location where there's no room for both.
* Test organisms now start with a random color instead to make them stand out more from each other.
* Added more debugging functionality adding functions "debug drawskeleton" as well as "debug drawborder" to console.

0.3.2 [2015-03-04]

* Implemented core structure for DNA
* First draft at cell division and growth based on DNA
* Previously used "Organism" object now redundant and omitted as all interactions are done on a cellular level and the engine does not any longer need to keep track of which cells belongs to which organism.
* Known bug: phantom forces in some generated organisms
* Known bug: minor graphical gliches in some cell configurations

0.3.1 [2015-03-01]

* Added support to reuse previous used commands in console (up and down arrow-keys.)

0.3.0 [2015-03-01]

* Due to many visitors using Linux I decided to port the entire project from C# .NET to Java. This happened to be a great move as performance, especially for graphics, increased.
* New console which accepts input! (great for debugging!)
* Groundwork for cell growth implemented.

0.2.1 [2015-01-12]

* Implemented pain/pleasure (punish/reward) system that spreads through the organism.
* Implemented graphics visualizing pain/pleasure
* Note: No system invoking pleasure is implemented yet.

0.2.0 [2015-01-08]

* Major graphics engine redesign.
* Organism outline is now drawn on a cellular level
* Fixed some major graphical glitches caused when an organism was cut in half.

Screenshot of CellularSoftBody version 0.2.0

0.1.2 [2014-12-17]

* Minor bug fixes and tweaking.
* Testing new system where cells break apart from each other.

0.1.1 [2014-12-15]

* Improved graphics engine.
* Minor bug fixes.

0.1.0 [2014-12-13]

* First draft of physics engine.

Back to the top

CopyRight © 2009 - 2024 Robin Åstedt
Stylish font: ON