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.


  1. Very nice and helpful features, thanks! Maybe when "Pick Random" is enabled, the "Count" value could be presented as a percentage value?

    The curve force is awesome, too! I can't wait to have more time to really dig into it.

  2. Fun stuff!

    About the count list, how hard would it be to add a possibility to have multiple instances of one object in the group?

    For example:
    red 3
    blue 2
    red 5
    yellow 3
    blue 5

  3. Kernon Dillon:
    Could be possible, but wouldn't work as nicely as the current algorithm works with whole numbers.

    *begin desperate coder's rant* Aww, come on, before you couldn't control the counts at all, and now that you've had a little taste you want the ultimate control!?? *end desperate coder's rant*
    ...but yes the thought crossed my mind too and it would be a nice feature, so will have to see if it would be possible ;)

  4. Hannu:
    Oh how I tried, but couldn't resist the sweet call of the feature! ...meaning it's now coded and will be in my next commit :)

  5. jahka: Amazing work! Going to throw another donation your way. Thank you for the demonstration as well!

    I like all of the options this functionality provides. Now we all just have to wait for 2.5x to get stable enough so I can use it more readily :)

    Off to test and experiment!

  6. Hahah.. way to go Jahka! Yes, I felt a bit dirty when posting the basic "wow this is very nice, but could you do this" demand. But now I'm glad that I overcame my feelings, since you got it updated already. :)

    Good stuff, thank you!

  7. really awsome stuff. thanks a lot for all your work.

    I also have a feature request/idea for you :)

    Would it be somehow possible to use a texture to emit the particles?

  8. Jahka: Are the new effectors not tied into cloth and sbd? I can't seem to get the to influence either.

  9. testscreenings:
    If you mean emission based on the emitter object's texture intensity then yes, it will be possible at some point.

    Most of the effectors should work with cloth and sb too with the exception of "curve guide", "boid" and "charge" if I didn't forget anything. However some times the point cache is not flagged as outdated when changing force field parameters, so this is fixed you can force "outdating" with a trip to editmode and back (tab-tab) for the cloth/sb object.

  10. Oh Jahka !!!

    What a surprise for me !!!
    Thank you so much for this new feature. It's even better than I ever expected !

    The second feature it's also amazing. In my life, one of my passion is ... "Tornadoes" ! That's why I jump out of my seat at 5:20.

    Thank you so much !!!!!

  11. Amazing! Very nice! One thing I noticed in a lot of cases, when watching demo videos... Features like dampening, drag, etc... I think all cases like these, it might be more flexible if those settings used a vector instead of a scalar.

  12. Bart Robinson:
    It might be more flexible, but making every parameter a vector for the few cases where it would be truly useful is in my opinion making things also much more complicated. I do however understand the need for ultimate control sometimes and hope that some day we'll have python force fields, where you can do whatever math you like to change the force.

  13. yet another stunning feature addition to blender particle system! Thank you again for your hard work.

    P.S. I want aware blender force fields werent python based. I hope python based forcefields come into blender soon.

  14. @Jahka
    I recently started to use the particles system for hair, and started to be aware of the fantastic work you've done with it. I love Blender even more than already did.

    A suggestion for a feature...hope is not much work:
    To be able to set a curve object as an instance of a hair emitter, or part of it.

    This way it would be possible to use curves options like Bevel, Taper and Tilt with the hair strands, and at the same time edit those Beveled/Tapered/Tilted curves with instant feedback using hair editing tools, or running physics simulations.

    It would be great for doing this kind of polygonal hairstyles:

    And being able to set just a part of the hair emitter would allow to use different bevel/taper objects to different parts of the hairstyle (i.e. smaller ones for the bangs)

    Maybe the ideal would be to be able to set the Bevel/Taper and Tilt inside the Hair emitter options but I guess it would be more work and reduntant with the actual curves features.

    Thanks for all the work you're doing!

  15. This looks interesting...

  16. Not strickly related to this post, but... how difficult would be with the new system create growing stuff like branches of a tree, or growing vines, pipes...? Could be this achievable or not at all?

  17. eclectiel:
    Correct me if I'm wrong, but I think most of what you're thinking about can already be achieved with curve guides, except that the bevel/taper or curve radius is not yet taken into account (these are planned though).

    I'm not sure if this could be achieved with the way particles are done now, but I'll put it on my "interesting ideas" list and think about the different possibilities!

  18. @Jahka
    Didn't know about curve guides, really nice feature, I still need to learn a lot about particles. But I was referring to something different, more like the "strand shader" where you set the width of the strand, and some control similar to taper.

    The Final Fantasy examples look very particles-hair-like even being polygonal/textured locks, a couple of hundreds.

    Here is a .Blend with my actual workflow:

    It's not complicated but has quite a few steps. And those need to be repeated each time you comb a little more.

    My suggestion was about having taper/bevel/tilt/(and maybe UVs like with strands shader?) integrated with hair particles, to avoid the need of all the conversions and having realtime feedback and control over the final look.
    Right now, in the step of combing the hair I'm guessing if it will look good or not when I add bevel, taper and tilt (and even more guessing for how hair textures will look).

    So the idea of having a curve object that mimics a hair emitter, as an instance, was I guess kind of a workaround, maybe not the most elegant solution. With the good side of not being redundant with curves features. It would be a curve object with one curve element per hair particle.

    But maybe if the hair particles have those features (taper/bevel/tilt/UVs) like in some way they do have right now in the strands shader although not tangible in 3D viewport, It would be such a fast and pleasant workflow.
    Having the ability to brush rich varied polygonal hair with paticles tools and seeing the final 3D textured mesh right there in the 3D view while you tweak it.


  19. jahka, thanks for taking that into account! hope you can come up about that with something cool as usual :D

  20. eclectiel:
    Ahh, now I see what you mean, and I'm glad to say that something very similar is possible already :) You should check on how to use the "particle instance modifier" (check the "path" usage in It's not yet perfect although much improved in 2.5, but the basic workflow is that you create a hair strand object and then use the instance modifier on that object.

  21. @Jahka
    When asking for a feature there's no better answer than: "it's already developed, and even better than what you were asking for". :)

    Right now I'm just a Particles noob. I've been playing with Particle Instance modifier, and is beautiful. Everything is there, any mesh deformed by each strand. So that's even better than bevel/taper/tilt, you have full control over the strand object (nice new Random length feature), and is UV mappable. Is just great.

    A couple of minor details (that you may have already thought of) :
    - Being able to set in the Particle Instance modifier a "Particles vertex group", so there's no need to use more than one Particle System when using different objects as Particle Instances for one hairstyle. Would avoid toggling from one Particle System to another when editing.
    - "Single hair Tilt" for some fine tuning needed for the final results.
    - And automatic update of the Particle Instance object after each editing of the hair in Particle mode (as an option?). Not realtime if that's not technically possible, but just update after each comb stroke without needing to go edit mode and come back to see the results updated on the Particle Instance.

    Thanks for the heads up on Particle Instances.

  22. Hey eclectiel, thanks for sharing your blend.

    Jahka: this could be quite close to the grow stuff I was asking for. I'm looking at that wiki page to better understand how the particle instance works... or perhaps another way I was trying is the hair particle system using an object instead of the Path. Now, if only we could control the grow of this object... voila'! Actually right now it's possible to animate the object itself, but as far I remember I've read on blenderartist there are some limits about this method. Anyhow, one cool feature could be have a grow parameter for the hair and can tweak the growing randomly or per step, gradually, etcetera...

  23. Jahka
    this is a graeat idea for blender hair

  24. This is old topic so I wonder if you get any notification from this. :) Anyway, this count stuff has been great as it gives the possibility to create more varying distribution of different size & shape particles. This has lead to another feature request though. :D

    In the count list, it would be nice to have a possibility to give different physical weights to list objects. That way when used with drag / damp, particles' paths would get be realistic with different sized (=weighed) particles.