johnroper100 / CrowdMaster

Crowd Simulation for the Masses
http://crowdmaster.org
GNU General Public License v3.0
133 stars 24 forks source link

Generating a new set of agents reset previously generated agents resulting no more than one group of agents at a time #55

Closed axb2035 closed 7 years ago

axb2035 commented 7 years ago

Current behavior: When one set of auto agents is generated it resets the previously auto generated agents meaning you can only have one set of auto generated agents at a time.

Expected behavior: Only the agents for the Generated group generated, no other groups are reset.

Note 1: Added manual agent group and had it selected in the View Group Details panel when generating second group. No change in behavior.

Note 2: you can workaround this issue by combining the nodes together into one. image

Steps to repeat: Step 1: Open sample file. groups overwriting.zip

Step 2: Select Gen - Cube noodle for agent generation. Generate Agents. Cube will appear and Cube brain group will be listed in the View Group Details panel list.

image

Step 3: Select Gen - Sphere noodle for agent generation. Generate Agents. Cube agent previously generated will be deleted along with Cube brain group. Sphere will appear and Sphere brain group will be listed in the View Group Details panel list.

image

Step 4: Select Gen - Cube noodle for agent generation again. Generate Agents. Now Sphere agent previously generated will be deleted along with Sphere brain group. Cube will appear and Cube brain group will be listed in the View Group Details panel list.

image

Peter-Noble commented 7 years ago

Now that groups are working again could you have a play with those and see if it solved this problem @axb2035 ?

johnroper100 commented 7 years ago

Confirmed, looking at this

johnroper100 commented 7 years ago

@Peter-Noble In this example, both node tress generate with a group name of cm image

Peter-Noble commented 7 years ago

That's new in the develop branch as part of the work to support better automatic grouping. "cm" is the equivalent to what used to be "cm_allAgents". You can stop groups of agents from being regenerated by hitting this: selection_072

Peter-Noble commented 7 years ago

The defaults for manual groups have been changed so you can't accidentally delete all your manual agents. This resetting of groups is the intended behavior. A scene will normally have a single generation graph and so all agents will be generated by a single graph. Used like this it then makes more sense that all groups are reset by default. If you like how a group is set out and don't want it removed you can hit "Freeze Placement".