Nice find Oliver.
I managed to decipher what was going on in the speedy GIF (wish people would share videos for this kind of stuff) and the technique does indeed work. Here’s the HIP (Indie) for anybody that wants to check it out. http://d.pr/f/FpMi.zip The downside is that the Wrangles runs in Detail Mode so it’s single threaded on those Wrangles, which slows the network down. I don’t know how to set up the Wrangle in Numbers Mode, which breaks the job down for multiple threads. If Andy Nicholas is still reading this thread (or anybody else that understands Numbers Mode on Wrangles) I’d love to know how to get this example to work that way. This example works fine because it’s only processing 100,000 points. As the point count goes up it will get a lot slower running in Details Mode. From: softimage-boun...@listproc.autodesk.com [mailto:softimage-boun...@listproc.autodesk.com] On Behalf Of Olivier Jeannel Sent: 14 March 2017 19:45 To: Official Softimage Users Mailing List. https://groups.google.com/forum/#!forum/xsi_list <softimage@listproc.autodesk.com> Subject: Re: houdini question (and where to ask) Back to the Get MaximumInSet request, I found this (I haven't tested) : http://gifyu.com/image/SpJl 2017-03-07 13:20 GMT+01:00 Fabricio Chamon <xsiml...@gmail.com <mailto:xsiml...@gmail.com> >: thanks for all the insights guys, much appreciated! 2017-03-07 11:41 GMT+01:00 Andy Nicholas <a...@andynicholas.com <mailto:a...@andynicholas.com> >: That's good to know, thanks :) On 07/03/2017 10:06, Christopher Crouzet wrote: I naively compared the AttribPromote with an AttribWrangle in detail mode, and the results were much (much) faster with the AttribPromote, so I assume it is multi-threaded and would be hard to beat with any sort of wrangle trickery. I'm still stuck with H13 so I didn't know about the numbers mode, that's neat! On 7 March 2017 at 16:43, Andy Nicholas <a...@andynicholas.com <mailto:a...@andynicholas.com> > wrote: Andy, the O(N) thing got me thinking and realized that instead of running the attrib wrangle in detail mode, which uses only a single thread, it'd be possible to generate say 4 points and, in a point wrangle, let each of these points process 1/4th of the array, thus effectively running the same logic on 4 threads! Another attrib wrangle is then needed in post to sum up the result from each point. Well, in all honesty I don't think there'll ever be a use case for it :) Yes absolutely! Definitely a good approach if you're after performance. It'd be interesting to do a comparison between that and an Attribute Promote SOP to see which is faster. I suspect (i.e. hope) the Attribute Promote SOP is multithreaded, so probably no major advantage. BTW, you don't even need to generate the 4 points as you've got the Run Over "Numbers" mode which will do the same. You can save the result into a detail array attribute and analyse it in a Detail Wrangle. Just takes a bit more management to set it up. On 07/03/2017 01:35, Christopher Crouzet wrote: Wow, I shouldn't have wrote that late last night, I completely mixed things up in my previous post, sorry! I'll try again! With a ramp, you have the source (input) values on the X axis, and the target (output) values on the Y axis. If either your source or target values aren't in the range [0, 1], you can remap them using a simple float parameter (to use as a simple multiplier if your desired lower bound is 0), or a float2 parameter to precisely control the desired range. It seems to be a standard practice in Houdini since they use it for some built-in nodes, such as the Pyro SHOP. Andy, the O(N) thing got me thinking and realized that instead of running the attrib wrangle in detail mode, which uses only a single thread, it'd be possible to generate say 4 points and, in a point wrangle, let each of these points process 1/4th of the array, thus effectively running the same logic on 4 threads! Another attrib wrangle is then needed in post to sum up the result from each point. Well, in all honesty I don't think there'll ever be a use case for it :) On 7 March 2017 at 01:14, Olivier Jeannel <facialdel...@gmail.com <mailto:facialdel...@gmail.com> > wrote: Ok we agree. On Monday, March 6, 2017, Jonathan Moore <jonathan.moo...@gmail.com <mailto:jonathan.moo...@gmail.com> > wrote: As far as I understood it Oliver, the spline version of the Houdini Ramp only operates in the zero to one range. You re-fit the values pre/post/ or both to suite your needs. I get that this doesn’t match the UX of FCurves in XSI, but I’ve always understood Ramp’s in Houdini to be more of a lower level discrete element in visual programing terms. From: softimage-boun...@listproc.autodesk.com <mailto:softimage-boun...@listproc.autodesk.com> [mailto:softimage-boun...@listproc.autodesk.com] On Behalf Of Olivier Jeannel Sent: 06 March 2017 17:31 To: Official Softimage Users Mailing List. https://groups.google.com/forum/#!forum/xsi_list <https://groups.google.com/forum/#%21forum/xsi_list> <softimage@listproc.autodesk.com <mailto:softimage@listproc.autodesk.com> > Subject: Re: houdini question (and where to ask) Not sure I get it Christopher (not in front of H) Does your trick actualy change the graph visualy ? In short, can I see the negative x & y values ? On Monday, March 6, 2017, Christopher Crouzet <christopher.crou...@gmail.com <mailto:christopher.crou...@gmail.com> > wrote: Indeed, which is why I mentioned the “detail” mode which brings you back to O(N). Not saying that one approach is better than the other though, only that it is possible. On 7 March 2017 at 00:12, Andy Nicholas <a...@andynicholas.com <mailto:a...@andynicholas.com> > wrote: Yep it is possible, but you wouldn't want to do it because each calculation of the maximum value would be running across N points to calculate that. That'd make it an O(N^2) operation, albeit spread over multiple threads. It might seem like a pain to have to do this in advance using an Attribute Promote, but by doing so, it's actually forcing you to work in a more efficient way. Go with it ;) On 06/03/2017 16:32, Christopher Crouzet wrote: It is possible to retrieve the maximum value in a VOP since nothing stops anyone from manually iterating through all the points of the geometry. This kind of operation might be more suited in “detail” mode though. Also, having the ramp normalized to the [0, 1] range in both the X and Y axis is usually “workarounded” by adding a float parameter for the amplitude (Y axis) that is used as a global multiplier (making later tweakings convenient!), and a float2 parameter for the target range (X axis) that is then remapped using `fit("my_ramp", 0.0, 1.0, range_min, range_max)` (which is also convenient for later tweakings!). Now, if you really want to have an actual FCurve, then just create a simple float parameter, add all the keys however you want, then query it in using `chf("my_param", the_time_in_seconds)` in VEX/VOP, or using the equivalent expression. On 6 March 2017 at 23:29, Jonathan Moore <jonathan.moo...@gmail.com <mailto:jonathan.moo...@gmail.com> > wrote: Fabricio , The Attribute Promote help page has approx 15 examples you can load. Hopefully you might find something within the examples to inspires a solution. From: softimage-boun...@listproc.autodesk.com <mailto:softimage-boun...@listproc.autodesk.com> [mailto:softimage-boun...@listproc.autodesk.com] On Behalf Of Olivier Jeannel Sent: 06 March 2017 15:56 To: Official Softimage Users Mailing List. https://groups.google.com/forum/#!forum/xsi_list <https://groups.google.com/forum/#%21forum/xsi_list> <softimage@listproc.autodesk.com <mailto:softimage@listproc.autodesk.com> > Subject: Re: houdini question (and where to ask) You can't get the "get maximum in set" when inside a vop. But, you get those options with the promote attribute sop. On Monday, March 6, 2017, Oscar Juarez <tridi.animei...@gmail.com <mailto:tridi.animei...@gmail.com> > wrote: I would like to be proven wrong, but that would be the way, I mean in your second pointvop you don't need to add another noise, your noise is already saved in an attribute, when you promote just check off delete original and you can access the same noise. Also noises have specific output ranges, they come in the documentation, so you can always add a fit node to change your range to what you need, in the geometry spreadsheet you can also sort by value so you can see max and min. If you press X with your mouse over the noise output it will add a visualization node, you can visualize on the viewport or in the geometry spreadsheet the values. I know its not the same but as far as I know their is no way to do the same as the get maximum in set node in a vopsop context. On Mon, Mar 6, 2017 at 3:57 PM, Fabricio Chamon <xsiml...@gmail.com <mailto:xsiml...@gmail.com> > wrote: thanks everyone. The ramp parameter kind of works but as you say, is not that user friendly and does not show the points below 0. (that's ok, but I wonder if it is possible to write a custom widget in houdini) anyway, the thing I could not get right just yet is that sort of "get maximum in set" thing. Sorry for using ICE language, I'm trying to be open minded here, so please tell me if that`s not the correct mindset. so on this graph: ...how could I get the maximum value of the output noise node and compare to a single point output of the same node? >From what I can tell, I'd have to: 1- create this pointvop node with a turbnoise, then store the output noise into an attribute (via bindexport?) 2- up one level -> drop an attrib promote (detail), set to maximum 3- drop another pointvop node with another noise node inside (same parameters) and compare the result noise to that found on the atrib promote node?? I'm 99% sure this is totally wrong...how would you go about that single task specifically? and finally, thanks for the suggestions on houdini forums and discord. will try both (although I pretty much like this list =) ) 2017-03-06 15:17 GMT+01:00 gareth bell <garethb...@outlook.com <mailto:garethb...@outlook.com> >: yeah - the lack of handles is frustrating _____ From: softimage-boun...@listproc.autodesk.com <mailto:softimage-boun...@listproc.autodesk.com> <softimage-boun...@listproc.autodesk.com <mailto:softimage-boun...@listproc.autodesk.com> > on behalf of Olivier Jeannel <facialdel...@gmail.com <mailto:facialdel...@gmail.com> > Sent: 06 March 2017 14:05:17 To: Official Softimage Users Mailing List. <https://groups.google.com/forum/#%21forum/xsi_list> https://groups.google.com/forum/#!forum/xsi_list Subject: Re: houdini question (and where to ask) yep but it has no handles and try to make négative values, it takes them but wont show on the curve as it has a 0,1 space. Unless i'm wrong (which i'd love to be) Le 6 mars 2017 14:36, "Olivier Jeannel" <facialdel...@gmail.com <mailto:facialdel...@gmail.com> > a écrit : in vop, bind and bind export node will get an set datas. Ramp Parameters is sort of fcurve. It's a bit weak in terms of curve manipulation, but does the job. It has 2 modes rgb (ramp) and spline. If you use several ramps in the same vop, name them with different name or they might not export. Le 6 mars 2017 14:28, "Fabricio Chamon" <xsiml...@gmail.com <mailto:xsiml...@gmail.com> > a écrit : ..sorry, hit send too soon. Question #1: are there any equivalents to ICE "get ... in set"? or or do I have to iterate and store values for later comparision? In other words: what is the best or recommended workflow to compare single point data with global point data? Question #2: any nodes that resemble a fCurve node, like we have in ICE? if not, what is the alternative? and finally, I can see this list is becoming more and more houdini-esque than ever..but, what is the best place to ask beginner questions like the above? houdini foruns, houdini list, odForce... thanks! 2017-03-06 14:23 GMT+01:00 Fabricio Chamon <xsiml...@gmail.com <mailto:xsiml...@gmail.com> >: Hi, I'm slowly getting into houdini and this is my first attempt to port a really simple ridged fractal deformer made in ICE to houdini (using pointvop). Question #1: are there any equivalents to ICE "get ... in set"? or or do I have to iterate and store values for later comparision? In other words: what is the best or recommended workflow to compare single point data with ------ Softimage Mailing List. To unsubscribe, send a mail to softimage-requ...@listproc.autodesk.com <mailto:softimage-requ...@listproc.autodesk.com> with "unsubscribe" in the subject, and reply to confirm. ------ Softimage Mailing List. To unsubscribe, send a mail to softimage-requ...@listproc.autodesk.com <mailto:softimage-requ...@listproc.autodesk.com> with "unsubscribe" in the subject, and reply to confirm. ------ Softimage Mailing List. To unsubscribe, send a mail to softimage-requ...@listproc.autodesk.com <mailto:softimage-requ...@listproc.autodesk.com> with "unsubscribe" in the subject, and reply to confirm. ------ Softimage Mailing List. To unsubscribe, send a mail to softimage-requ...@listproc.autodesk.com <mailto:softimage-requ...@listproc.autodesk.com> with "unsubscribe" in the subject, and reply to confirm. -- Christopher Crouzet <https://christophercrouzet.com> https://christophercrouzet.com ------ Softimage Mailing List. To unsubscribe, send a mail to softimage-requ...@listproc.autodesk.com <mailto:softimage-requ...@listproc.autodesk.com> with "unsubscribe" in the subject, and reply to confirm. ------ Softimage Mailing List. To unsubscribe, send a mail to softimage-requ...@listproc.autodesk.com <mailto:softimage-requ...@listproc.autodesk.com> with "unsubscribe" in the subject, and reply to confirm. -- Christopher Crouzet <https://christophercrouzet.com> https://christophercrouzet.com ------ Softimage Mailing List. To unsubscribe, send a mail to softimage-requ...@listproc.autodesk.com <mailto:softimage-requ...@listproc.autodesk.com> with "unsubscribe" in the subject, and reply to confirm. -- Christopher Crouzet <https://christophercrouzet.com> https://christophercrouzet.com ------ Softimage Mailing List. To unsubscribe, send a mail to softimage-requ...@listproc.autodesk.com <mailto:softimage-requ...@listproc.autodesk.com> with "unsubscribe" in the subject, and reply to confirm. ------ Softimage Mailing List. To unsubscribe, send a mail to softimage-requ...@listproc.autodesk.com <mailto:softimage-requ...@listproc.autodesk.com> with "unsubscribe" in the subject, and reply to confirm. -- Christopher Crouzet <https://christophercrouzet.com> https://christophercrouzet.com ------ Softimage Mailing List. To unsubscribe, send a mail to softimage-requ...@listproc.autodesk.com <mailto:softimage-requ...@listproc.autodesk.com> with "unsubscribe" in the subject, and reply to confirm. ------ Softimage Mailing List. To unsubscribe, send a mail to softimage-requ...@listproc.autodesk.com <mailto:softimage-requ...@listproc.autodesk.com> with "unsubscribe" in the subject, and reply to confirm. ------ Softimage Mailing List. To unsubscribe, send a mail to softimage-requ...@listproc.autodesk.com <mailto:softimage-requ...@listproc.autodesk.com> with "unsubscribe" in the subject, and reply to confirm.
------ Softimage Mailing List. To unsubscribe, send a mail to softimage-requ...@listproc.autodesk.com with "unsubscribe" in the subject, and reply to confirm.