Frequently Asked Questions

What is long-term vision?

To simulate an ecosystem of a whole exoplanet in real size as accurately as possible with AAA graphics in VR.

What is short to mid-term roadmap/wishlist?

  • Add models for walking (at the moment only locomotion model is running - trot).
  • Visualise acceleration based hunt (the way a lion hunts zebra/gazelle) without final resistance phase.
  • Simulate and visualise pure-pursuit based hunt (the way cheetah hunts gazelle) without final resistance phase.
  • Add skin to animals, which means understanding how it should be colored under diferent stars, based on whether predator/prey is dichromat or trichromat and to account for need for crypsis.
  • Add other modes of locomotion eg.: flying, swimming, brachiation ...
  • Simulate fighting and defense, which would add offensive and defensive organs to animals and simulate animal heads more correctly.
  • Add other modes of hunting/predation.
  • Add more organisms to simulation.

Items and their order above can be changed for various reasons.

What can stop you from achieving short, mid and long-term goals?

Many things:

  • insufficient resources,
  • insufficient available time,
  • insufficient ability,
  • ...

How does it work?

Trees are at the moment created directly from few biological rules, but animal is evolved from initial form. There are actualy two animals: one is prey, the other predator. After I set parameters of the planet (gravity, atmosphere density), I run a simulation where predator is hunting the prey with acceleration based hunting method (the way lion would hunt a gazelle). These hunts optimize prey's and predator's shape (length, width of bones, muscle area, running mechanics ...). Predator's final shape and its running animation is then saved for visualisation in the mobile app. There are 441 planet combinations available for visualisation in Full Version of the application (21 different gravities x 21 different atmosphere densities).

Whole process for all 441 planets takes about 4 hours on my Ryzen 7 2700X, during which all cores are utilized to about 50-60%.

What technology are you using?

Main part, which is tree generator and animal evolution simulator described above, is written completely in F#, wheras the mobile app is written in Unity / C#. Why F#? Because F# has units of measure built into the language which, along with its functional nature, makes writing biological and physical models much easier than in other languages. On top of that, when you need to squeeze some more performance out of the code, F# has your back with plenty of imperative features as well. Also I've known and used various .NET technologies already long before starting this project.

FOLLOW TRAY WORLDS