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 <[email protected]> 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 <[email protected]> wrote: > >> Ok we agree. >> >> >> On Monday, March 6, 2017, Jonathan Moore <[email protected]> >> 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:* [email protected] [mailto: >>> [email protected]] *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 < >>> [email protected]> >>> *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 < >>> [email protected]> 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 <[email protected]> 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 <[email protected]> >>> 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:* [email protected] [mailto: >>> [email protected]] *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 < >>> [email protected]> >>> >>> >>> *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 <[email protected]> >>> 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 <[email protected]> >>> 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: >>> >>> >>> >>> [image: Imagem inline 1] >>> >>> >>> >>> ...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 <[email protected]>: >>> >>> yeah - the lack of handles is frustrating >>> ------------------------------ >>> >>> *From:* [email protected] < >>> [email protected]> on behalf of Olivier Jeannel < >>> [email protected]> >>> *Sent:* 06 March 2017 14:05:17 >>> *To:* Official Softimage Users Mailing 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" <[email protected]> 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" <[email protected]> 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 <[email protected]>: >>> >>> 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 [email protected] >>> with "unsubscribe" in the subject, and reply to confirm. >>> >>> >>> ------ >>> Softimage Mailing List. >>> To unsubscribe, send a mail to [email protected] >>> with "unsubscribe" in the subject, and reply to confirm. >>> >>> >>> >>> >>> ------ >>> Softimage Mailing List. >>> To unsubscribe, send a mail to [email protected] >>> with "unsubscribe" in the subject, and reply to confirm. >>> >>> >>> >>> >>> ------ >>> Softimage Mailing List. >>> To unsubscribe, send a mail to [email protected] >>> 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 [email protected] with >>> "unsubscribe" in the subject, and reply to confirm. >>> >>> >>> >>> ------ Softimage Mailing List. To unsubscribe, send a mail to >>> [email protected] 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 >> [email protected] 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 [email protected] with > "unsubscribe" in the subject, and reply to confirm. > > > ------ > Softimage Mailing List. > To unsubscribe, send a mail to [email protected] > 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 [email protected] with "unsubscribe" in the subject, and reply to confirm.

