Maniphest T51289

Particle System UI issue/annoyance: setting Start later than End should increase End if necessary, rather than capping it
Closed, Resolved

Assigned To
Sebastian Parborg (zeddb)
Authored By
Howard Matthews (howiem)
Apr 22 2017, 3:01 PM
Tags
  • BF Blender
  • User Interface
  • Good First Issue
  • Tracker Curfew
Subscribers
Aaron Carlisle (Blendify)
Anthony LaMantia (numlocked)
Danrae Pray (spockTheGray)
David Hampton (david01)
Gianluca Fiorini (gfiorini)
Howard Matthews (howiem)
João Monteiro (jomiware)
1 More Subscribers

Description

In Particle Systems, the Start frame must be less than the End frame, for logical reasons.

The UI currently enforces this by not letting you set a Start greater than the End, but it does it by capping the value you've just entered, which is inconsistent with other Start/End pairs elsewhere in the UI. Good practice would be to allow the user to set a Start to any value, and rather than capping it Blender should increase the End frame as necessary.

Say you want a particle system to emit from 1500 to 1600 frames. You create a new particle system, which defaults to 1f to 200f. You should be able to enter new values for Start and End in that order.

What currently happens:

  • you click the Start parameter, type "1500" and Tab to the next parameter - End
  • Oops - Blender has capped the Start to 200.
  • you realise your mistake and set the End frame to 1600
  • then you can set the Start frame to 1500

What should happen

  • you click the Start parameter, type "1500" and Tab to the next parameter - End
  • Blender has already increase the End frame to 1500, but no matter - you type "1600", hit Enter... all done.

To see how it should work, play with the sequence Start and End boxes in a Timeline window. They behave sensibly.

Revisions and Commits

rB Blender
D2701

Related Objects

Event Timeline

Howard Matthews (howiem) created this task.Apr 22 2017, 3:01 PM
Aaron Carlisle (Blendify) raised the priority of this task from Low to 90.Apr 22 2017, 5:07 PM
Aaron Carlisle (Blendify) edited a custom field.
Aaron Carlisle (Blendify) added a project: User Interface.May 16 2017, 4:25 PM
Aaron Carlisle (Blendify) changed the task status from Unknown Status to Archived.May 16 2017, 4:28 PM
Aaron Carlisle (Blendify) claimed this task.
Aaron Carlisle (Blendify) added a subscriber: Aaron Carlisle (Blendify).
This comment was removed by Aaron Carlisle (Blendify).
Aaron Carlisle (Blendify) changed the task status from Archived to Unknown Status.May 16 2017, 4:36 PM
Aaron Carlisle (Blendify) lowered the priority of this task from 90 to Low.
Sebastian Koenig (sebastian_k) added a subscriber: Sebastian Koenig (sebastian_k).May 16 2017, 4:36 PM

I do agree with @Howard Matthews (howiem) here. The timeline does behave sensibly:
You start with timeline being set 1 - 250.
You want the sequence to go from 300 to 600.
You start by entering 300 into start frame. Because Blender doesnt allow startframe to be larger than endframe, endframe is automatically changed to 300.
So you can happily continue to enter 600 into endframe.
That's workflow that makes sense to me :)
Should work like that everywhere.

Aaron Carlisle (Blendify) added a subscriber: Luca Rood (LucaRood).May 16 2017, 4:37 PM

Ok after @Luca Rood (LucaRood) talked with the artist in the studio this is not what we want. So the question is how urgent is this and are there other areas that should change.

Sebastian Koenig (sebastian_k) added a comment.May 16 2017, 4:46 PM

Blender is indeed super inconsistent here:

  • All simulations do accept start frame larger than end frame. (softbody, cloth, dynapaint, fluid etc.)
  • Timeline works as expected.
  • Seems it's really mainly the particles that have the bad behavior.
Aaron Carlisle (Blendify) removed Aaron Carlisle (Blendify) as the assignee of this task.May 18 2017, 8:40 PM
Aaron Carlisle (Blendify) added a project: Good First Issue.

This would be a good quick hack for someone.

Danrae Pray (spockTheGray) claimed this task.May 29 2017, 8:14 PM
Danrae Pray (spockTheGray) added a subscriber: Danrae Pray (spockTheGray).

New dev here - going to hack away at this :)

Danrae Pray (spockTheGray) added a revision: D2701: Fix for T51289.Jun 4 2017, 7:48 PM
Anthony LaMantia (numlocked) added a subscriber: Anthony LaMantia (numlocked).Aug 15 2017, 9:15 PM
João Monteiro (jomiware) added a subscriber: João Monteiro (jomiware).Dec 9 2017, 1:09 AM
João Monteiro (jomiware) added a comment.Dec 9 2017, 1:22 AM

Hi. First time contributtor and absolute rookie on this kind of things. So, for a school project we had to pick and work on a couple of issues from here, and we chose this one for it seemed pretty simple and quick. Then we were instructed to try to submit it and while trying to find where to, we just now saw there is already a solution here, basically identical to ours. But as it is still set as open, here's ou solution anyway.

We basically did the same thing as @Danrae Pray (spockTheGray), on lines 825 and 842 but added/subtracted an instant to the adjusted value, simply so the animation always has a set time different from zero.

Danrae Pray (spockTheGray) removed Danrae Pray (spockTheGray) as the assignee of this task.May 29 2018, 4:19 AM
Tanner (devtanc) added a subscriber: Tanner (devtanc).Feb 8 2019, 7:05 AM
Tanner (devtanc) removed a subscriber: Tanner (devtanc).Feb 8 2019, 7:24 AM
George Vogiatzis (Gvgeo) mentioned this in T63009: Quick Hacks cleanup.May 6 2019, 8:13 AM
David Hampton (david01) added a subscriber: David Hampton (david01).Jun 5 2019, 5:34 AM

This is my first time contributing. I noticed we are not setting a clamp to this like we do for timeline (see "rna_scene.c" lines 881 and 891 for functions called "rna_Scene_end_frame_set" and "rna_Scene_start_frame_set").

Gianluca Fiorini (gfiorini) added a subscriber: Gianluca Fiorini (gfiorini).Aug 6 2019, 8:04 PM
Dalai Felinto (dfelinto) added a project: Tracker Curfew.Dec 23 2019, 4:36 PM
Sebastian Parborg (zeddb) closed this task as Resolved by committing rB1e91d9d4dc49: Fix T51289: Particle System UI issue/annoyance: setting Start later than End….Jan 17 2020, 2:25 PM
Sebastian Parborg (zeddb) claimed this task.
Sebastian Parborg (zeddb) added a commit: rB1e91d9d4dc49: Fix T51289: Particle System UI issue/annoyance: setting Start later than End….