Code Monkey home page Code Monkey logo

Comments (18)

skhayrulin avatar skhayrulin commented on August 11, 2024 1

@wilhelmbraun Hi and sorry for super long answer. Actually it's quite hard to solve this task in common way. Main reason that depends on complexity final scene geometrically. I mean that final configuration of particles should satisfy many physical conditions. But despite that there was a some try to do that in this repo it generate a sibernetic config from vrml file which you can get from any 3D editor like e.g. blender. In spite this it actually could work with only super simple configuration example1 example2 and as far as I know the work on this didn't moved forward far

from sibernetic.

drojas034 avatar drojas034 commented on August 11, 2024

@skhayrulin Hello, would that repo work in generating different arrangements for external liquid particles? or how would one be able to generate a custom configuration file without the code crashing?
Thanks.

from sibernetic.

skhayrulin avatar skhayrulin commented on August 11, 2024

@drojas034 Hello. As far as I remember it worked fine with simple configs.

from sibernetic.

drojas034 avatar drojas034 commented on August 11, 2024

@skhayrulin Yeah I can see it is successful in the examples, great job! (@lgchemer)

Would there be a need to modify it to create something like the image attached? To have a large cube of liquid particles in front of the worm to simulate a worm movement transitioning from no liquid particles into the liquid particles? I was able to move the particles around by modifying a configuration file directly (included below, only erasing initial position and corresponding velocity of liquid particles) with no success. (Could not enqueue read data from buffer error code is error code is -5)

Worm 1

worm_swim_half_resolution_2.zip

from sibernetic.

clausagerskov avatar clausagerskov commented on August 11, 2024

@drojas034 It should be possible to write a script to create a scene and then copy the already defined worm into it (looking at the readme for how the scene config should be laid out). I have had success creating simple custom objects from elastic material in blender, exporting to ply files and importing into a scene and adding some water.
See this folder with an example jupyter notebook: https://www.dropbox.com/sh/px6dsukr5tnrh5u/AADrkYypNeUBz-FJXKRJ-8gBa?dl=0
Creating custom muscle models/body geometries could also be possible in theory but connecting them to the neuron sim is a different story

from sibernetic.

clausagerskov avatar clausagerskov commented on August 11, 2024

though to create a box of water you would need to contain it with a boundary, which would also block the worm, not sure its possible to create a boundary just blocking water particles.
Else it should be possible to create a pool that the worm drops into, though it should be noted that sibernetic seems to have segmentation faults at certain large scene sizes/particle numbers

from sibernetic.

clausagerskov avatar clausagerskov commented on August 11, 2024

@skhayrulin would a selective boundary be feasible to implement?

from sibernetic.

skhayrulin avatar skhayrulin commented on August 11, 2024

@clausagerskov I'm not sure that I understand correct. You mean to generate configuration from blender file with some complex boundary?

from sibernetic.

clausagerskov avatar clausagerskov commented on August 11, 2024

nono, just if there are boundary particles that only block water and not the worm, but I just realized that that would not work since the worm also contains water

from sibernetic.

clausagerskov avatar clausagerskov commented on August 11, 2024

i currently just create boundaries in a jupyter notebook and add in the worm that i copied from the worm config files, the most complex object i have managed to import from blender into sibernetic was a cone

from sibernetic.

skhayrulin avatar skhayrulin commented on August 11, 2024

boundary particles locate only on boundary plane and do not move through simulation also it blocks every other particles water, elastic. Water inside the worm does not go outside cause other mechanism so-called membranes (triple of adjacent elastic particles).

from sibernetic.

skhayrulin avatar skhayrulin commented on August 11, 2024

As I admitted before (don't remember when and where :)) It's quite difficult problem to create sibernetic configuration from some 3D model e.g. in blender. Main problem is place the particles on right places. I think man who solve this problem can defend PhD by math, computer science and geometry:)

from sibernetic.

clausagerskov avatar clausagerskov commented on August 11, 2024

How was the original worm model created?

from sibernetic.

skhayrulin avatar skhayrulin commented on August 11, 2024

It was hardcoded here by @a-palyanov after I' stored it into file

from sibernetic.

clausagerskov avatar clausagerskov commented on August 11, 2024

attached is a configuration file i created myself where i throw a cone i imported from blender along the floor into a pool of water. should be possible to isolate the worm from a different config file and put it into this one instead of the cone cone_pool

from sibernetic.

clausagerskov avatar clausagerskov commented on August 11, 2024

created using this notebook: notebook
and this file exported from blender: cone3.ply
exported from the following blender file:
cone.blender

from sibernetic.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.