Friday, March 18, 2011

Rotating & deforming collisions

Particle collisions now support rotating and deforming objects! This should give some nice new possibilities for particle dynamics :) More detailed info in the commit message.

Saturday, March 12, 2011

Refactored fluid particles

I already wrote about this development in the code.blender.org blog, but now the refactoring is finally done! Check the video to get a quick start on the new functionality and the commit message for the details :) Now all we need is the particle surfacing from Raul and Stephen and we have some pretty nice fluid capabilities in Blender!

Saturday, February 12, 2011

Particle textures reincarnated

This was way too long on the 2.5 todo-list, but effecting particle properties with textures is now once again possible! It's perhaps not the "effect anything with anything" solution I was thinking about at some point, but then again I'd rather not over complicate the current particle system with a complex system that can be far better handled with nodes in the future.

This was just committed so get a fresh test build after r34798 and your're all set!

Saturday, January 15, 2011

New child particle options video

Here's the promised demo of the new child particle options for hair. I committed these goodies already a week ago, so just get a fresh build to play with these options!

Monday, January 10, 2011

Something old something new

There have been three bigger updates to particles stuff during the last couple of weeks. Mostly things are just like they have been in the past, but only better!

  1. The point cache code has gone through some major changes internally and during the recode I added compression support for all disk caches. So now you can enjoy smaller file sizes in all simulations, not just smoke. I also wrote quite a lengthy post about everything point caches to the new code.blender.org blog, so check out that too (even if you're not so much into the technical stuff there are some ideas about future functionality in the end which you people might find interesting ;)

  2. Hair children now have parting controls, a long hair mode and kink flatness. More about these in a demo video as soon as I have time to make one!

  3. I finally merged Stephen Whitehorn's (chickencoop) viscoelastic sph particle springs patch to trunk, so there are some nice new options for fluid particles. I'll try to make a demo video about this too, so expect to hear from me again soon :)


Wednesday, December 8, 2010

Monday, December 6, 2010

Particle texture coordinates

For a long time now Blender 2.5 particles have been crippled in the way that you couldn't animate particle material properties like color with particle age. In Blender 2.4x this was accomplished by creating an ipo-curve to a material property and then by some magic the frame range 0-100 was mapped to the particle life time. For me this always felt very unintuitive and hacky, so when the feature got naturally broken with the animation system update for 2.5 I didn't really feel like reimplementing the feature until a proper way of doing this was found.

To make a short story even shorter yesterday I found the way :) For quite some time textures that were applied to hair strands have had the "strand" coordinate option, which uses the point along a hair strand as the x-coordinate of the texture lookup. I simply upgraded this option to "Strand/Particle", so for normal particles this coordinate option now uses the particle age as the x-coordinate. Simple and extremely powerful! As an additional feature the y-coordinate is mapped to the location of a trail particle, so particle trails can be faded and colored nicely too!

I'll try to make a short introduction video to this functionality in the near future, but for now I hope you have fun playing with this! Some more technical information in the commit message.

Friday, November 19, 2010

SPH fluid particles, oh my!

It seems that the SPH fluids had a quite big problem in the way the algorithm was implemented. The problem in the implementation led to things like this:

Oh my indeed! Not very physically correct looking! The fluid particles drop straight down to a horizontal collision surface, so how can there be big sideways motion in just one direction? Oh well.. after a day of furious coding the algorithm is now much better implemented and here is the result with the exact same settings:

The fluid doesn't really look the same because the calculations are done differently, but at least it seems much more physically correct as the fluid spreads evenly in all directions and not just one. After some parameter tweaking here's the final result:

Ahh, much better! For technical information see the commit message.

But there's more! As a result of this new correct implementation I hear Stephen's viscoelastic springs addition to SPH paticles is more stable than ever. He was also kind enough to upload some quick teasers of what's to come:



Monday, October 11, 2010

Oh how time flies

My sincere apologies for keeping silent for so long, but it seems that there has just been too much happening in my life to have time to post updates. Not much happening on particles currently, but here's a quick recap of what has happened since my last post.

As some of you may already know I got a 7 month job from the Blender Foundation as a part of the 2.5 support team! The current main goal is getting Blender 2.5 out of beta, so bug fixing is what I mostly do these days. Currently I'm keeping busy with non-particle bugs, but that's only because the 2.5 bug tracker is already pretty much free of particle bugs. I dare you to find me some more though as the goal is to have 2.5 ready for serious work!

As part of the bug fixing I refactored the particle collision response code to be much more stable and robust. So no more leaky/freaky collisions for particles! Real new features are a no-go before 2.5 is out of beta, but that hasn't stopped others from tinkering with cool stuff for the future.

Raul's fluid particles were committed before the feature freeze and I currently have a patch to review from Raul and Stephen that implements plastic spring behavior to the fluid (sticky goo here we come!). This feature will hopefully be ready when the feature freeze ends! You can read more about fluid particle development in Raul's blog.

Lukas Tönne has also been busy with node particles and more. I haven't yet had much time to check out his work but I've been hearing many good things and have high hopes for this project! More info about this in Lukas's blog.

I still think it would be a good idea for me to start making video tutorials on various sides of the particle system, but I just never seem to have the time to sit down and start recording. I also have a huge todo/ideas list for particles and proper development will surely continue once the feature freeze ends.

To finish here are a few teaser pics of a what could be possible in the future with just one particle and some code I have laying around :)



Friday, February 26, 2010

No more bugs please!

Sorry again for the lack of updates recently, I have a boid basics tutorial waiting to be recorded, but unluckily I'm still too busy to really get into it.

But that's not the reason for this post, because now I've totally had it! Yesterday I finally had a tiny bit of time to check on the state of particle bugs in the tracker and what do you know I start fixing them one by one and notice that it's really nice to do some proper particles coding again. Then along comes today and I get this terrible urge to actually code some features! "It's been too long since I've been out having fun!" cries my particle brain. So here we are with some small updates to hair dynamics and I didn't get a single thing done from the actual work I was supposed to do today!

So I'm asking you guys, no more particle bug reports unless you really want me to code some more features! The withdrawal symptoms are getting stronger and every day it gets harder being away from particles ;)

Sunday, January 10, 2010

Vote for first tutorial topic

Thank you very much for all the suggestions both here and in the blenderartists thread!

First some notes about what can't yet be done in 2.5, but will be possible once I have time to re-implement these things better. Tutorials for things that need these features are currently out of the picture, but I'll be sure to make tutorials of these features once they're done:
  • reactor particles
  • texture controlled emission (disintegrate effect)
  • individually animated particle color (yellow fire turning into black smoke etc)
  • dupliobjects animated properly with particle life

Also like I said in the previous post my artistic abilities are not too great so if you want tutorials on artistic subjects such as for example a waterfall, camp fire, trail of meteorites, you have to give me some reference like a tutorial from some other software so that I can cheat a bit on the artistic side and think about the technical side of things. And who knows, if the thing described in the other tutorial is not yet possible in Blender I might get some inspiration to work on features that enable that kind of functionality :)

So finally for the actual reason for this post: in the side panel you can now vote for the first tutorial topic, so pick your favorite! You can of course also post new ideas for future topics in the comments of this or the previous post.

Saturday, December 26, 2009

Ideas for tutorials

My final course exams are now out of the way so I have a tiny bit more time for particles again, but I still have to get my thesis done so only bug fixes for now. However I had this idea for the near future about making some video tutorials about particles not unlike the ones I've already posted in this blog. I don't really know about my artistic abilities, but at least hopefully I know the functionality of the particle system inside and out :)

I don't have any subjects planned out yet and I think I'll throw the ball to you guys. So please leave comments on what would you like to learn about particles. No need to "+-1" the suggestions as after sufficient amount of ideas I'll probably arrange a vote for the first tutorial subject and after that for the second and so on.

There's no timetable yet, but I'm hoping to have time to start at some point during the next months, so start thinking about ideas!

Monday, November 9, 2009

Lack of updates

Hi guys,

as you may have noticed I haven't posted any new stuff recently. The main reason for this is that I'm trying to get my Master's thesis ready (theoretical physics) hopefully before the end of this year, and working on it leaves very little time for fun stuff such as coding particles. Also the biggest thing on my current particles todo-list is probably to bring back reactor particles much better than they were in Blender 2.4x and judging from the initial looks this will be somewhat more difficult that I had thought. It will require a few relatively big changes to the particles code internals, and changes of this magnitude are just not possible with the coding time of max few hours a day. However when I do have the time for this the end result will in addition to much nicer reactor particles for example allow for proper (animateable) emission frequency instead of the not so versatile particles amount parameter.

Anyways just wanted to let everybody know I haven't disappeared anywhere, just busy with my studies.

Monday, October 5, 2009

Counting and curving



The beginning of the video is for CoyHot and the second part for Nicholas8681, but I guess you other guys can watch too :)

Some more info in the commit message.

Thursday, October 1, 2009

Refreshed force fields

Yay! After a long silence I have something new for you guys again!

Unified effector functionality for particles, cloth and softbody
  • Unified scene wide gravity (currently in scene buttons) instead of each simulation having it's own gravity.
  • Weight parameters for all effectors and an effector group setting.
  • Every effector can use noise.
  • Most effectors have "shapes" point, plane, surface, every point.
    • "Point" is most like the old effectors and uses the effector location as the effector point.
    • "Plane" uses the closest point on effectors local xy-plane as the effector point.
    • "Surface" uses the closest point on an effector object's surface as the effector point.
    • "Every Point" uses every point in a mesh effector object as an effector point.
    • The falloff is calculated from this point, so for example with "surface" shape and "use only negative z axis" it's possible to apply force only "inside" the effector object.
  • Spherical effector is now renamed as "force" as it's no longer just spherical.
  • New effector parameter "flow", which makes the effector act as surrounding air velocity, so the resulting force is proportional to the velocity difference of the point and "air velocity". For example a wind field with flow=1.0 results in proper non-accelerating wind.
  • New effector fields "turbulence", which creates nice random flow paths, and "drag", which slows the points down.
  • Much improved vortex field.
  • Effectors can now effect particle rotation as well as location.
  • Use full, or only positive/negative z-axis to apply force (note. the z-axis is the surface normal in the case of effector shape "surface")
  • New "force field" submenu in add menu, which adds an empty with the chosen effector (curve object for corve guides).
  • Other dynamics should be quite easy to add to the effector system too if wanted.
  • "Unified" doesn't mean that force fields give the exact same results for particles, softbody & cloth, since their final effect depends on many external factors, like for example the surface area of the effected faces.

Known issues
  • Curve guides don't yet have all ui buttons in place, but they should work none the less.
  • Hair dynamics don't yet respect force fields.

I know it's quite a lot of new functionality, but it should mostly work just like old force fields, just better and more predictably :). In the future I'll also try to make some tutorial videos about the more interesting ways of using the new force field options.

Friday, September 11, 2009

Hair dynamics

Hair particle dynamics are now done with the cloth simulation!
  • An added hair specific feature of internal friction makes hair act much more realistically.
  • As a result of the earlier point cache update the hair dynamics can now be edited in particle mode after baking just like particle, cloth and soft body bakes.
All this is still very early code and for example collisions with other objects are not implemented yet, but all in all it's light years more stable and better than the old soft body based dynamics!

Some more details in the commit message.

Tuesday, September 8, 2009

When everything falls into place

Yes it's teaser time again! No sound, just particles & cloth simulation :)

Saturday, September 5, 2009

Disconnect & connect



Some more details at the commit message.

Saturday, August 29, 2009

Monday, August 17, 2009

Just a tiny teaser


First non-hair particles have been edited in particle mode. It's all still buggy as hell, but I've got a feeling it's going to be quite nice :)