Itoo Software Forum

RailClone => RailClone Pro (*) => Topic started by: Dragan on June 29, 2022, 08:03:02 PM

Title: Macro/Sequence
Post by: Dragan on June 29, 2022, 08:03:02 PM
Hi
I`m taking some test stacking sequences on X/Y. As usual, I`m leaning on Macros to make some things even possible  :)
Not sure why but I had several crashes during testing...
I`m sending the last minidump.

 
Title: Re: Macro/Sequence
Post by: Dragan on June 29, 2022, 08:06:44 PM
forgot to note:
It will be nice if we could have a Numeric parameter{Selector} in Macro
Title: Re: Macro/Sequence
Post by: Dragan on June 29, 2022, 10:56:52 PM
another one...
Title: Re: Macro/Sequence
Post by: Dragan on June 30, 2022, 09:43:23 AM
...and another one...
Title: Re: Macro/Sequence
Post by: iToo on June 30, 2022, 11:08:35 AM
I see two different issues on these minidumps:

- One related with a scene hold operation. This has been reported by other user, but we could not reproduce it yet.
- Other related with a deleting nodes process. No idea why this happens now.

Have you experienced so many crashes before ? It's strange.

Please, do this:

- Update your 3DS Max to the latest update. According to the minidump, there is no any service pack installed.
- Replace RCEdit.dll with the attached file. It doesn't change anything, but may provide us more debug information on next minidumps.

Title: Re: Macro/Sequence
Post by: Dragan on June 30, 2022, 01:23:11 PM

- Other related with a deleting nodes process. No idea why this happens now.

Actually, the crash happened when I deleted some wires connected to Sequence Operator and not some Node particularly.
Title: Re: Macro/Sequence
Post by: Dragan on June 30, 2022, 04:17:52 PM
Still playing around with this style.

1. General > For No-Slice> Free or Preserve mode not working well.
2. Please check behavior on Sequence-Y for Reset at > Spline SECTION is ok but, Spline START is wrong.
Title: Re: Macro/Sequence
Post by: Dragan on June 30, 2022, 04:22:15 PM
Although, I think it`s working, but for some reason, the last Sequence input before termination is cut out.
Title: Re: Macro/Sequence
Post by: Dragan on June 30, 2022, 10:23:55 PM
new minidump...
Title: Re: Macro/Sequence
Post by: iToo on July 01, 2022, 08:57:18 AM
new minidump...

Did you replaced RCEdit.dll with the patch ? This minidump seems to use the old one yet.
Title: Re: Macro/Sequence
Post by: Dragan on July 01, 2022, 09:26:50 AM
Hi Carlos
I think I did but maybe I missed the folder location...

At the moment all the crashes are happening during Graph editing (deleting the wires, scrolling the Sheet with the middle mouse button while holding the wire, deleting nodes, etc), but I`m thinking that might be a problem with the speed of manipulation with all the nodes. I'm probably not waiting long enough to command complitly be finished and I`m already on the next node... :-[

But, right now I`m more concerned about this Sequence behavior losing the last row on the Clipping threshold end and the difference between Section vs Start reset.
Eventually, it will not affect my final results since everything will be calculated to fit the clipping spline.

Although I had some new issue I`m not sure of it.
If I add the final Transform Operator with Deform override to Force Instances and set the General for no-slice to Free does this means I should get all segments to be instanced in the Statistic considering the Display is set to Mesh?

   
Title: Re: Macro/Sequence
Post by: Dragan on July 01, 2022, 10:27:53 AM
Here is an updated scene file (please don't mind on Graph's chaos)

On the Red Note I have set Transform Operator to Force Instance, I set Generators to be no-sliced Free but I still got some non-instanced segments on the Statistic report.

Second, I think I`ll already requested or I was about to do during some Betas: Could be possible to have some General features from L1S like Reverse, Mirror, Flip A/B...
As you can notice from the Green Notes I have to do an additional nesting just to mirror complete geometry.

Thank you.




Title: Re: Macro/Sequence
Post by: iToo on July 01, 2022, 11:17:32 AM
Hi Dragan,
There are many questions, i will try to reply all of them:

Quote
At the moment all the crashes are happening during Graph editing [...], but I`m thinking that might be a problem with the speed of manipulation with all the nodes. I'm probably not waiting long enough to command complitly be finished and I`m already on the next node... :-[

Yes, perhaps the hold operation is received while RC object is rebuilding. Theorically that should not happen, but we'll test it.

Quote
But, right now I`m more concerned about this Sequence behavior losing the last row on the Clipping threshold end

As far as i can see, there are not enough rows in the array to include that last segment. I mean, clipping area is not enough large to include a complete frame.

Quote
... the difference between Section vs Start reset.

Well, this is a tricky issue. Effectively, there is a know bug with Y Sequence, when applied to multiple sub-splines: first sub-spline is correct, but in next ones the first segment is incremented by one (in the sequence).
I can fix it, but that would break existing scenes, which have been designed considering current behaviour (that happens with the customer who reported this issue intitially).

Quote
Second, I think I`ll already requested or I was about to do during some Betas: Could be possible to have some General features from L1S like Reverse, Mirror, Flip A/B...

It's on the wishlist for next versions. By now we're releasing mainly update fixes, to get a fully stable version. Next, we'll start to make changes in a new beta.

Quote
On the Red Note I have set Transform Operator to Force Instance, I set Generators to be no-sliced Free but I still got some non-instanced segments on the Statistic report.

I have not checked this yet. I will take a look to it.

Title: Re: Macro/Sequence
Post by: Dragan on July 01, 2022, 11:36:29 AM
Hi Carlos, Thank you for all the effort.

Ok, for the Sequence reset is not a big issue since it is still operable.


Makes perfect sense for his one.


Quote
But, right now I`m more concerned about this Sequence behavior losing the last row on the Clipping threshold end

As far as i can see, there are not enough rows in the array to include that last segment. I mean, clipping area is not enough large to include a complete frame.

Quote
Title: Re: Macro/Sequence
Post by: iToo on July 01, 2022, 01:54:27 PM
Regarding the 'Force Instance' issue, it has no effect if Segments were already sliced by a previous Generator.

For example, in Gen1->Transform Force Instance->Gen2. If Gen1 produces any sliced segment, it cannot be reverted to an instance by the Transform.
In this case Force Instance should be enabled in a previous step (before Gen1).

Title: Re: Macro/Sequence
Post by: Dragan on July 01, 2022, 02:38:35 PM
Carlos, thank you for clarifying that for me.
I`ve tracked back, set all Segments to Force Instance since everything is calculated and scaled to fit and work as expected.
There are a lot of things that I can`t process because it is under the hood so I can get to the solution only by troubleshooting and sometimes I take a long time.

P.S.
Sorry for reporting all those issues. I have returned from a short vacation and maybe overcharged my batteries  ;D ;D 8) 8) but, I was determined to come out with a good graph solution to resolve some new challenge so maybe I'm pushing RC over the limits.   
Title: Re: Macro/Sequence
Post by: Dragan on July 01, 2022, 05:46:17 PM
this one was unexpected...
I think this one is with new RCEdit.dll
Title: Re: Macro/Sequence
Post by: iToo on July 02, 2022, 10:26:19 AM
Not problem at all. These cases are always useful to identify hidden problems, or to improve RailClone.  ;)

Yes, thanks. This minidump uses the patched RCEdit.dll, and give us more information.
Crash is the same as previous, related with a hold operation. I will analyze it on deep, to identify what is happening.

Title: Re: Macro/Sequence
Post by: Dragan on July 02, 2022, 08:15:30 PM
Hey, Carlos! I have a tricky one!
I have sent you the Scene file and the video...
Title: Re: Macro/Sequence
Post by: iToo on July 04, 2022, 12:04:52 PM
We tried with several scenes, but could not reproduce the RCEdit crash issue. It would be a very random issue. Minidumps give us some information, but not enough to fix it.

Anyway, i made a change which i hope may help. Please, replace your RCEdit.dll with the attached one, and tell me if there is some improvement.

Regarding the other case, it's a limitation of Sync.Gen with nested generators. This parameter was added for separated generators, but nesting use a different workflow.
Unfortunately at this moment i don't see a simple way to fix it. I added it to the to-do list, for a future revision.

Title: Re: Macro/Sequence
Post by: Dragan on July 04, 2022, 12:10:10 PM
Regarding the other case, it's a limitation of Sync.Gen with nested generators. This parameter was added for separated generators, but nesting use a different workflow.
Unfortunately at this moment i don't see a simple way to fix it. I added it to the to-do list, for a future revision.

Ok, thank you for taking the time to look at it. I will change the Graph to compensate for this issue.
 
Title: Re: Macro/Sequence
Post by: Dragan on July 04, 2022, 03:42:25 PM
I have displaced handle segment from nested generator and connected directly to compose operator and that "leveled" up the nesting. Working now. Tnx.
Title: Re: Macro/Sequence
Post by: Dragan on July 05, 2022, 11:30:23 PM
New issue. I have tried to isolate it on a smaller scale.

1. Some type of randomization will break my Sequence order which includes spacing by Empty Transform (even if I connect a simple box to it).
I try to use:
Randomize operator = False result,
Randomize via Selector and Expression as Index input (expression has IntegerRND) = False result,
Randomize via Selector and Random Numeric = Good except Generate on Segment.

2. Macro is a simple blind shader with just a bottom padding to lift up and Percentage calculations for defining min/max opening. 
Although I`m pretty sure my Graphs should work I still got some clipped areas without geometry. (I even make sure to have a smaller Y size by subtracting the bottom size from Y Size to make sure the bottom segments always remain).
My min/max workflow has Maximum Evaluation so if Min>Max then Max=Min, so it should return a fixed percentage if only Minimum is entered, but I still find some randomization in size.
 
Maybe I'm just a little tired since I'm working on this 24/7 and I'm missing something...  :-\ but I will appreciate it if you guys could take a look at this.

Regards
Title: Re: Macro/Sequence
Post by: Paul Roberts on July 06, 2022, 09:47:22 AM
Regarding your second question, I may be misreading your graph, but in one of the arithmetic nodes it looks like you are using the X Size of the array to calculate the bottom padding. Should it be the Y size?

I've swapped it here and it seems to work.

(https://i.imgur.com/5R2VZJR.png)

Paul
Title: Re: Macro/Sequence
Post by: Paul Roberts on July 06, 2022, 09:57:55 AM
And regarding question 1

RandomInt, The Randomize operator and the Random number node in Generate on Segment mode are all effectively doing the same thing, which is generating a random number for each new segment used in the array. Since you need a new random number for each X Spline, it's causing issues. If you need to use an expression and return a random number based on an IF statement, I'd wire a Random number node (in Generate on X Spline) to an input and pass that on if the condition is met.

Cheers,

Paul
Title: Re: Macro/Sequence
Post by: Dragan on July 06, 2022, 10:02:13 AM
Damn! $%#%$#% You are right! I told you I`m dead tired!

Thx, that was an easy fix for issue #2 now Carlos should take a look at issue #1 (The Randomize Operator will break a Sequence order)

This Randomness throughout the nesting is giving me a serious headache now... Eather I didn't pay attention before or it was working better on previous releases  :o
I`m sure Carlos didn't change the code but I usually didn't have so many issues with the Random Numeric node and I did a lot of nesting... hm
Title: Re: Macro/Sequence
Post by: Dragan on July 06, 2022, 10:13:16 AM
And regarding question 1

RandomInt, The Randomize operator and the Random number node in Generate on Segment mode are all effectively doing the same thing, which is generating a random number for each new segment used in the array. Since you need a new random number for each X Spline, it's causing issues. If you need to use an expression and return a random number based on an IF statement, I'd wire a Random number node (in Generate on X Spline) to an input and pass that on if the condition is met.

Cheers,

Paul

Tnx, I assumed so. I just use that for testing purpose.
Title: Re: Macro/Sequence
Post by: Paul Roberts on July 06, 2022, 10:22:49 AM
Just to clarify that a little bit. The Sequence nodes each have a counter that increments each time the node is evaluated. This means that the counters for each sequence node only increase when the node is picked by the Randomize operator, it's not in lockstep with the generator's segment count. This is why the sequences can get out of sync if they are randomised per segment. 

Hope that makes sense!
Paul
Title: Re: Macro/Sequence
Post by: Dragan on July 06, 2022, 10:26:43 AM
So, you are saying I have to go with one more nesting through L1S to fix this  ???
Title: Re: Macro/Sequence
Post by: Paul Roberts on July 06, 2022, 10:29:48 AM
As far as I could see in your example, you can fix it using the Random Number node set to X Spline Start no?

Paul
Title: Re: Macro/Sequence
Post by: Dragan on July 06, 2022, 10:52:55 AM
I constantly having trouble lately with Random Number, especially when set to XSplneStart. Carlos confirmed nesting uses a different workflow on Random Number so now I`m trying to figure out what I`m missing in the whole workflow because something is always wrong for me :D

All this is just a preparation phase for an upcoming Archviz project with a lot of different window styles, shaders, and blinds so it is better to be prepared than sorry.
I have finished the new window frame Macro and with Sequence stacking everything working really well, except for the speed but that was expected.

the #1 issue is an easy fix through one more Linear nest. I was hoping that termination will kinda reset the Sequence.
Although, I`m not sure how much impact on performance speed will have this kind of "one-time-terminate-fit to size" nesting.