playMaker

Author Topic: Orthogonal arrows  (Read 5472 times)

pandigital

  • Playmaker Newbie
  • *
  • Posts: 23
Orthogonal arrows
« on: September 27, 2011, 04:46:04 AM »
Is it / would it be possible to be able to lay out the arrows in an FSM orthogonally so that there is more control over them, in particular so that arrows can be guided around states rather than crossing over them.

TIA

jeanfabre

  • Administrator
  • Hero Member
  • *****
  • Posts: 15500
  • Official Playmaker Support
Re: Orthogonal arrows
« Reply #1 on: September 27, 2011, 06:06:06 AM »
Hi,

 there is an option in the preference settings for this ( Graph View->Graph view Link Style) .

 Also, on a more granular bases, right click on a transition and you can can access "link style" amongst other things.

Hopefully, this is what you are after.


 Bye,

 Jean

pandigital

  • Playmaker Newbie
  • *
  • Posts: 23
Re: Orthogonal arrows
« Reply #2 on: September 27, 2011, 10:02:21 AM »
Thanks Jean :D

What would be good now is to be able to move where the 90° bend occurs in the circuit view, and even add additional points on the line. Then all information could enter a state from the left and leave it from the right, even if going back on itself.

jeanfabre

  • Administrator
  • Hero Member
  • *****
  • Posts: 15500
  • Official Playmaker Support
Re: Orthogonal arrows
« Reply #3 on: September 28, 2011, 01:11:33 AM »
Hi,

 yes, it would be good I agree, I have some complex flows that could be made clearer.

BUT actually I think this is a good constraint, because it doesn't look nice if it's not organize, and if it's not organize, it's a clear sign that the flow must be improved until it does look good ( so that wires don't cross each other, etc etc). That's a very good constrain for me currently, and I always spend a fair amount of time to always arrange my states so that it looks obvious and organized. It's always for the best: It reads better, it flows better and if I can't achieve this, then it means I need to cut that fsm into several fsm ( which also is a good sign that things can be organized in a more logical manner with each feature or functionality well encapsulated into its own fsm). You always win doing like so.


 Bye,

Jean

tobbeo

  • 1.2 Beta
  • Full Member
  • *
  • Posts: 186
Re: Orthogonal arrows
« Reply #4 on: September 28, 2011, 02:49:11 AM »
Thanks Jean :D

What would be good now is to be able to move where the 90° bend occurs in the circuit view, and even add additional points on the line. Then all information could enter a state from the left and leave it from the right, even if going back on itself.

Yeah I suggested this myself to Alex, the compositing program Nuke has an option like that and it helps. However, one thing I've noticed as I work more and more with PM is to use global transitions. It really cleans up your flow and probably makes more sense from the code point of view. I've gone back and re-done my flows that were all connected before to now be set up in segments with global transitions. I attached a sample images. Not sure if this helps but it's been a logical evolution for me when using PM. That's not to say I still wouldn't like to be able to control the line flow with points, I do, but I personally find it less important since I started using the global transitions.


jeanfabre

  • Administrator
  • Hero Member
  • *****
  • Posts: 15500
  • Official Playmaker Support
Re: Orthogonal arrows
« Reply #5 on: September 28, 2011, 03:07:16 AM »
Hi,

 Yes, I do that sometimes, but this brings another problem. You then have difficulties understanding the flow. because all globals events are displayed the same, so you don't know if it's a local transition just here to prevent wiring spaghettis, or else. Difficult to debug after a while really. Thos now it's improved with the possible use of colors ( we should be able to colorize global events as well or something to help make this even clearer).

 Really I think we miss being able to build reusable/clever blocks of states... :) that would improve this situation a lot I think, but that would be advanced stuff and could be difficult to grasp at first.

 Bye,

 Jean

tobbeo

  • 1.2 Beta
  • Full Member
  • *
  • Posts: 186
Re: Orthogonal arrows
« Reply #6 on: September 28, 2011, 04:20:48 AM »
I personally feel if you name stuff properly and put comments in (necessary when coding to make it easy for others and yourself to understand your FSM) you are fine. I haven't felt frustrated yet and I got at least a hundred of these little FSMs controlling everything.

As long as you break it down into smaller pieces rather than try to do everything within one FSM I feel the way it's currently working is fine. That's not to say that there couldn't be improvements, but I don't feel like I ever loose track of what's going on.

One suggestion would be that if you hold down a certain key, dotted lines appear that show all the global connections. Also as another thought for usability, maybe it would be a good idea to highlight the line that your mouse cursor is over so you can follow it. That idea could be extended to global transitions. I might make some more mock-up videos/screens for Alex and see what he thinks.

tobbeo

  • 1.2 Beta
  • Full Member
  • *
  • Posts: 186
Re: Orthogonal arrows
« Reply #7 on: September 28, 2011, 04:50:17 AM »
Here's my idea visualized. If a state contains a link to a global transition, a filled circle appears below the state. If the global transition has a color assigned to it, the filled circle will turn that color so that you can quickly at a glance see what states contains global transitions and where they lead.

Clicking this circle would select the action in the state it's under that is redirecting the graph to that global transition. Shift-clicking it would select the first state under the global transition it leads to. This would fit with the currently established keyboard shortcut keys.

jeanfabre

  • Administrator
  • Hero Member
  • *****
  • Posts: 15500
  • Official Playmaker Support
Re: Orthogonal arrows
« Reply #8 on: September 28, 2011, 05:03:08 AM »
Hi,

 Yes. I would welcome something like that indeed

 Bye,

 Jean

wyliam

  • Playmaker Newbie
  • *
  • Posts: 22
Re: Orthogonal arrows
« Reply #9 on: September 28, 2011, 12:24:07 PM »
Really I think we miss being able to build reusable/clever blocks of states... :) that would improve this situation a lot I think, but that would be advanced stuff and could be difficult to grasp at first.

Nail on the head- I can't underscore this point enough. I think reuse of blocks (shifting in/out from a point of a state, rather than starting from the beginning again) would be a tremendous improvement to it's flexibility. We've a half-step with "return to previous" but I still find myself having to weave around the system to keep from overloading the level of complexity (shifting to custom actions that tie closer to my scripts, where I have that control).

2 cents...

But overall, fantastic job with this last update. Major improvements with global variables, alone! (Now if we can only get variables global at the object level to share between Fsms.) ;)

jeanfabre

  • Administrator
  • Hero Member
  • *****
  • Posts: 15500
  • Official Playmaker Support
Re: Orthogonal arrows
« Reply #10 on: September 28, 2011, 02:06:34 PM »
Hi,

 Yes, I'd like to have the ability to define variable for a given hierarchy branch or a given set of fsm too :)

 Bye,

 Jean