Moleculars physics

You need to both commit and push your commit for it to be uploaded “git commit” and “git push” are the commands.

Thanks Migius !

I hope too see phymectool and KaiKostack demolition script too for destrcution simulation. Probably more accurate and strong than me in coding. I did it just for fun but if it’s can help or give idea to some people, I’m happy.

this is my source I working on for now. Sorry if it’s a bit “unclear” for now.

sorry about no news about one week.
I’m always try to work on it in the bus with my laptop.
I presently work on space grid hashing to get self collision faster.
I currently get some problem where the grid is not well updated at each frame but I’m near to
fix it. When is done , I can try to send some videos of it but I probably not work on it during the holiday’s week.

I think my space grid hashing is okay now.
I did some test and the performance is amazing.
Difference between grid hashing and brute force method is about 10 time faster with just
few particles ( 1000 - 4000 ).
But with 20k particles and more , the difference begin to get bigger and bigger.

I launch a calculation of 1 millions particles for this night. It’s calculate at a rate of 250-400 seconds per frame with grid hashing.
I don’t try it with brute force but I did some math to calculate a approximation of the time it’s could take and it’s about 5-10days per frame.

350seconds vs 5-10days per frame is a great improvement :slight_smile:
I post the render on youtube of the result soon has possible (if the result is great) !

hhhuuummm I have a question here !

I run out of memory for my simulation of 1 millions particles. At frame 42 , I get a message about " Malloc" first and after , at frame 43 , my script crash and the system console talk about " memory allocation". I don’t know if it’s because of that , but the script crash exactly at the place where a store all XYZ position of all particles in a list. 1millions particles equal 3 millions value in the list. But in this case , why he is able to process it before frame 42. One thing I try now is to store the particles cache on disk. It’s probably help a lot for the memory !

Somebody have another a idea ?

What a great development you got here Pyroevil, really impressed with the results you are getting from it. I’m going to need to take a look at your script and try some tests with it.

Sorry I cant be of any help to you with coding etc… but just wanted to say you have another supporter who is going to be checking up on this thread for developments.

Thanx for your support :slight_smile:

Sorry about no news for couples of weeks. I’m a bit busy at home for now (I did a wood barbie house for the birthday of my little girl) and I bit tired to work on it in the bus. I hope to be able to work on it soon as possible. I can start a simulation this night on my computer with 250 000particles to show the verlet integration I started with simple particles self-collision.

I never get again the memory problem.

I start last night a simulation of 250 000particles on my new computer.
I calculate it’s going to take 40hours to simulate for 120frames (5sec at 24fps).
I post the video soon as is finish to calculate.

I restart to work on it in the bus now. I try to integrate collision with polygon mesh.

looking fwd to it…

sorry everybody , not finish for today. The computer freeze and need to restart it.
I lost 24hours of calculation. Need too restart from the beginning.
Probably finish saturday if all going fine.

It’s finish! Only with self-collision and gridhashing optimisation.
250 000 particles.
32hours of simulation , 40minutes to render for 120frames

No new features added on my script. I’m not have time or energy to working on it for now.
But I launch a little render to test renderfarm.fi and want to share it with all of you:

http://www.renderfarm.fi/animations/6816

SSS shader on particles and real 3D motionblur in a great amount of time, only 1days and a couples of hours to render.

Okay , little news:

Sorry for no news about couples of week … near couples of months I know :). I’m soo tired, I sleeping in the bus and have no energy to work on the script in the last weeks. But now I think is okay ! I integrated polygons collision. The detection is not optimised but working fine. Problems/Instability happen when I have a lot of particles stacking and pushing on each others. Need to find what happen. I launch a render on renderfarm.fi of this:

http://www.renderfarm.fi/animations/7058

I make it available on Youtube when done.

Hi everybody,

Polygons collision seem to be stable now. I launch on renderfarm.fi a render of 16 000 particles for 108frames. It’s took 10min per frames to simulate. Need to check for primary optimisation like grid-hashing and others simples simulation. Hope cython can reduce that time a lot. What I read couples of months ago , multiprocessing modules in python don’t working with Blender.

A script compiled with cython in 32bit don’t work with Blender 64bit , it’s normal? Somebody already create cython extension in 64bit working with Blender 64bit ?

Hi !

I new video with self-collision and polygons collision ! Now I’m working to integrated elastic/inelastic collision response and friction.
Video comming soon.

http://www.youtube.com/watch?v=cKIYcrJUf_w

Rendered on renderfarm.fi with SSS and real motion blur ( not crappy 2d vector blur ) !
I’m happy because I can restart soon too work on what I working before I decided to work on my own particle engine ( because Blender particles is limited when you want to control it ).

Hope to be able to work on a UI too , to make it more usable , more user friendly but it’s at a developpement stage for now.

I realize couple of week ago how simple what I’m doing can be if a dataflow system (like ICE in XSI) will exist in Blender.
Hope PhonyBone can continu is work about that.

I got the idea to do something like this in python ( ICE like interface with cython extension for the speed ) but I don’t want to start something similar than what PhonyBone already working on.

Somebody know if he continue to work on that? The project is just in pause or left ? I see no news about that anywhere and never find a Windows build of that (just linux). He’s website disapear too (on blenderplanet.org).

Little news:

Now, I thing my Inelastic/Elastic response formula is correct. I did a couples of simulation and all seam to be fine. For the renders , I try to launch it on renderfarm.fi but 1 times on 3 the particles don’t appear. I don’t have this problem on my side. I check that with the guys of renderfarm.fi. I hope to find a solution because renderfarm.fi is a good ressources to render my test with a interesting look. Now I don’t know if I code friction energy transfert or start to code link between particles to get solid thing like a get before I’m starting to code my own engine.

Wow, I just came back from watching your videos on Youtube, it looks so awesome!

This would be really good indeed… I wonder how things are shaping up with the particle/modifier/driver nodes.?.

On a side note, Isn’t this functionality really what the SPH-particles should be able to do? I know we talked about this on the first page of this thread and your response was that the SPH-particles have some surface tension-force on them which makes it impossible. Maybe it can be solved by having a checkbox for disabling surface tension?

Keep up the great work!

SPH it’s not really self-collision (if you talk about self-collision). It’s more like spring between particles. If it’s drop enough high ( enough energy ) , it’s pass trought each others. In this case you need to increase some parameter but you have a max limit of the parameter and is you put to much of this parameter the particles just bounce too much on each others. It’s not create rigid collision and you don’t have friction too. I find some setting can create similar then self-collision but it’s not the real thing. SPH it’s really coded to create fluid.

If you find some parameter with SPH can create what I’m doing , let’s me know. Because I trying and I never find something look like Lagoa in XSI or like self-collision with SPH. SPH existing first in XSI and probably Tiago never code Lagoa if SPH did the job.