Current Cache to Bake

Unless I’m totally stupid, which can be true anyway, there’s no way to Bake the current Cache of simulations for several objects at the same time.

Suppose you run a simulation with hundreds of objects, is not feasible that you have to select them one by one and run the command for each one of them.
There is a ‘Bake all Dynamics’ command, but it does a whole other thing.

EDIT: The same is for ‘Apply Modifier’, have I to do it one by one too?

What do you think about?

To Moderators,
please, be kind, don’t move this thread to the Support forums as usual, otherwise you misunderstand the goal of this thread and vanificate it; I’m not asking for help, blender needs help.

Thank you,
paolo

What is the goal of this thread? This could be solved pretty easily with a Python script (or add-on).

To be able to apply the simulation to the tons of objects I have in the scene I had to make this script:

import bpy

C =bpy.context
for obj in C.selected_objects:
    bpy.context.scene.objects.active = obj
    bpy.ops.object.modifier_apply(apply_as='DATA', modifier="Softbody")

So, it is not so difficult after all, maybe could somebody add a button to the interface, and make life easier to everybody, couldn’t he?
If only there was the will to make Blender easy and productive …

paolo

Yeah, Fweeb, I did exactly that, that’s why I told that I’m not looking for help…
I only wish it could be easier and ready for everybody, Blender is for artists, isn’t it?

paolo

So make an add-on and share it. Here, I’ll get you started. I put your feature in an operator and tossed a button at the top of the Tool Shelf:


import bpy


def main(context):
    for ob in context.selected_objects:
        context.scene.objects.active = ob
        for mod in ob.modifiers:
            if mod.type == 'SOFT_BODY':
                bpy.ops.object.modifier_apply(apply_as='DATA', modifier=mod.name)


class SoftbodyApplyAll(bpy.types.Operator):
    """Apply Softbody modifier on all selected objects"""
    bl_idname = "object.softbody_apply_all"
    bl_label = "Apply All Softbodies"

    @classmethod
    def poll(cls, context):
        return context.active_object is not None

    def execute(self, context):
        main(context)
        return {'FINISHED'}


def draw_button(self, context):
    layout = self.layout
    layout.operator('object.softbody_apply_all')

# Registration

def register():
    bpy.utils.register_class(SoftbodyApplyAll)
    bpy.types.VIEW3D_PT_tools_objectmode.prepend(draw_button)


def unregister():
    bpy.utils.unregister_class(SoftbodyApplyAll)
    bpy.types.VIEW3D_PT_tools_objectmode.remove(draw_button)


if __name__ == "__main__":
    register()

You could organize this better and make a panel that handles this sort of thing for multiple different modifier types.

This thread really belongs in Python Support.

I am baffled by the lack of interest of developers, and not only, to really improve Blender.
Pages and pages of posts on where to place a button or what color should be a frame of a window, but many essential functions, repeatedly requested by users are still after years, totally ignored!

This of mine is just an example, and your (ironical) suggestion to me to make an addon, means that you are not aware of the real state of things, and that you don’t use blender so much.

The functionality of blender can not be relegated to some user willing.

paolo

To the contrary, things are done by people who do them, not by people who ask for them. The developers are plenty interested in making improvements to Blender… but they have lists of improvements that they’re already working on and some of those things simply take higher priority.

Blender is open source software. If you want something, you have the tools available to make it happen. Quite a few of our developers (I daresay a majority) started as (and remain) Blender users… they just happened to take advantage of the tools that are in all of our hands.

Blender’s functionality has always been in the hands of anyone willing to put in the effort to make it happen. Relegated? This is how open source works!

Also, I use Blender plenty. :slight_smile:

Fweeb,
you pretend that artists must be also developers.
I don’t mean that people are not free to develope blender and make it better (actually make blender), but functional and organic changes should be designed by qualified programmer on the base of users (artistst) needs and requests, but this is not the case.
Instead of many fancy features, we need primarily few, sometimes easy, basic functionality, as for instance, the possibility to apply modifier globally on selected objects, or drag and drop in the lists (for reordering vertex groups, shape keys, textures), or per-object colored wireframe instead of that stupid green for groups, and so on.

Blender’s functionality has always been in the hands of anyone willing to put in the effort to make it happen. Relegated? This is how open source works!

Yeah, and then be approved by someone …

paolo

I pretend nothing (well… I pretend plenty… just not in this case ;)).

Effort isn’t just an ability to hack together lines of code. Finding a developer and paying that developer to do as you please is also a viable course of action. However, I find it concerning that you seem to be implying that artists cannot be developers (and vice versa). That’s certainly not the case.

Fweeb,
for me is not an easy task to express myself in English (such as programming :)), please, try to understand my point.

If you just once tried to work with shape keys, in a serious project I mean, you should know that their order matters, and when many of them are involved, along with deformers and drivers and such, to move one key up or down needs a lot of time. Suppose you make a new shape and you have to move it on top of some tens, one step at a time, you can spend hours to accomplish.
Than you understand that a simple drag and drop could suffice and say “Hey, we need drag and drop in the lists, as soon as possible!”
But developers, which of course don’t spend all their time modeling or animating, just try to deform Suzanne’s ears and say: OKKay, it works!

On the other side, an artist working on a project, cannot stop his work and start to develop an add-on every time it needs a certain function that is not yet implemented.

That’s why they should listen to “real” users sometimes… do you get what I mean, in spite of my bad English?

paolo

I understand your point fine… I just wish you’d made it in the OP.

Also, it’s always a mistake to assume that you know the experience or competence level of someone you’re speaking with.

That said, I’m interested in solutions… actually doing things. For example, it would not be difficult for me or another person familiar with Blender’s Python API to extend that skeleton of an add-on I wrote to work for all modifiers. However, like other artists and developers, I have other projects of my own (both art and code) that I personally consider a higher priority. So if you want that feature, you have 3 real options: 1) wait until someone has an interest and a short enough to-do list of their own to finish it, 2) do it yourself, or 3) offer something that would cause a person with the know-how to bump a feature like this higher on their priority list.

The drag and drop thing is more difficult to pull off, but devs are certainly aware of it. Per-object wireframe color is possible (there have been patches, in fact), but currently being opposed from a UI/design perspective. Wire colors in Blender already mean something, so getting those two things to work together takes some thought.

These things are all possible and they’ve been on the dev’s radar for as long as people have been asking (likely longer). But priorities don’t change based on talk. You have to do something.

Or were you really just interested in ranting about features you want to have?

From my point of view there are no features that I want, just features that I strongly think should have the major priority possible, for the sake of usability, while in many cases these priorities have been negated or neglected by Ton or others, such as the colored wireframes.
So it’s not the matter of waiting or making myself, it’s the matter of overcoming some fixations of somebody, sadly this is the fact.

paolo

Just as an observation - Ton said in his presentation that a lot of code that is not so perfect as a coder would want is allowed in to the main trunk simply because it works, and is a requested tool or feature that someone in the community has made. That later it might need to be cleaned up is evident, but he said Blender is developed not just by the BF or the BI, but by the community. Ton said much more about this, but you need to listen for yourself to understand his meaning I think.

Sorry Craig but I’m not sure to understand what you mean.
About the per-object colored wireframes I have read Ton’s stating that he don’t like them, and because he prefers per-groups coloring and they conflict each others, no chance for them.
BTW, I don’t realize what use can have to have just one color (green) for every item of every group.

EDIT:There was a patch for colored wireframes some time ago, if there was the will to use it, we could have it since long.

paolo