This is terrible when you think of the ice logic that would be a no brainer. I'm too having some issue with overal sorting stuff. I wish there was more vop vex tool to do that kind of operation.
On Wednesday, March 15, 2017, Jonathan Moore <[email protected]> wrote: > 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:* [email protected] > <javascript:_e(%7B%7D,'cvml','[email protected]');> > [mailto:[email protected] > <javascript:_e(%7B%7D,'cvml','[email protected]');>] > *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 <[email protected] > <javascript:_e(%7B%7D,'cvml','[email protected]');>> > *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 <[email protected] > <javascript:_e(%7B%7D,'cvml','[email protected]');>>: > > thanks for all the insights guys, much appreciated! > > > > 2017-03-07 11:41 GMT+01:00 Andy Nicholas <[email protected] > <javascript:_e(%7B%7D,'cvml','[email protected]');>>: > > 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 <[email protected] > <javascript:_e(%7B%7D,'cvml','[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] > <javascript:_e(%7B%7D,'cvml','[email protected]');>> wrote: > > Ok we agree. > > > > On Monday, March 6, 2017, Jonathan Moore <[email protected] > <javascript:_e(%7B%7D,'cvml','[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] > <javascript:_e(%7B%7D,'cvml','[email protected]');> > [mailto:[email protected] > <javascript:_e(%7B%7D,'cvml','[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] > <javascript:_e(%7B%7D,'cvml','[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] > <javascript:_e(%7B%7D,'cvml','[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] > <javascript:_e(%7B%7D,'cvml','[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] > <javascript:_e(%7B%7D,'cvml','[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] > <javascript:_e(%7B%7D,'cvml','[email protected]');> > [mailto:[email protected] > <javascript:_e(%7B%7D,'cvml','[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] > <javascript:_e(%7B%7D,'cvml','[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] > <javascript:_e(%7B%7D,'cvml','[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] > <javascript:_e(%7B%7D,'cvml','[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] > <javascript:_e(%7B%7D,'cvml','[email protected]');>>: > > yeah - the lack of handles is frustrating > ------------------------------ > > *From:* [email protected] > <javascript:_e(%7B%7D,'cvml','[email protected]');> > <[email protected] > <javascript:_e(%7B%7D,'cvml','[email protected]');>> > on behalf of Olivier Jeannel <[email protected] > <javascript:_e(%7B%7D,'cvml','[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] > <javascript:_e(%7B%7D,'cvml','[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] > <javascript:_e(%7B%7D,'cvml','[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] > <javascript:_e(%7B%7D,'cvml','[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] > <javascript:_e(%7B%7D,'cvml','[email protected]');> > with "unsubscribe" in the subject, and reply to confirm. > > > ------ > Softimage Mailing List. > To unsubscribe, send a mail to [email protected] > <javascript:_e(%7B%7D,'cvml','[email protected]');> > with "unsubscribe" in the subject, and reply to confirm. > > > > > ------ > Softimage Mailing List. > To unsubscribe, send a mail to [email protected] > <javascript:_e(%7B%7D,'cvml','[email protected]');> > with "unsubscribe" in the subject, and reply to confirm. > > > > > ------ > Softimage Mailing List. > To unsubscribe, send a mail to [email protected] > <javascript:_e(%7B%7D,'cvml','[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] > <javascript:_e(%7B%7D,'cvml','[email protected]');> > with "unsubscribe" in the subject, and reply to confirm. > > > > ------ Softimage Mailing List. To unsubscribe, send a mail to > [email protected] > <javascript:_e(%7B%7D,'cvml','[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] > <javascript:_e(%7B%7D,'cvml','[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] > <javascript:_e(%7B%7D,'cvml','[email protected]');> > with "unsubscribe" in the subject, and reply to confirm. > > ------ Softimage Mailing List. To unsubscribe, send a mail to > [email protected] > <javascript:_e(%7B%7D,'cvml','[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] > <javascript:_e(%7B%7D,'cvml','[email protected]');> > with "unsubscribe" in the subject, and reply to confirm. > > > ------ > Softimage Mailing List. > To unsubscribe, send a mail to [email protected] > <javascript:_e(%7B%7D,'cvml','[email protected]');> > with "unsubscribe" in the subject, and reply to confirm. > > > > > ------ > Softimage Mailing List. > To unsubscribe, send a mail to [email protected] > <javascript:_e(%7B%7D,'cvml','[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.

