Jump to content


  • Content count

  • Donations

    0.00 CAD 
  • Joined

  • Last visited

  • Days Won


pusat last won the day on January 30

pusat had the most liked content!

Community Reputation

130 Excellent


About pusat

  • Rank

Personal Information

  • Name

Recent Profile Visitors

2,534 profile views
  1. Poly Carve SOP

    Agreed, that's why I always wish they propagate the new changes all across the app. I have a feeling the Attrib Interpolate has the fastest and most recent code for attribute interpolation.
  2. Poly Carve SOP

    Thanks for posting that. It's a neat method. I did some comparisons, for plain simple geometry with no extra attributes and groups, Clip SOP is very fast. But once you add those, Clip SOP's performance severely degrades, which I assume is due to their attribute interpolation code. In the end, both methods yield 1:1 results with the same number of points and prims but with different point and prim numbers. I checked one of the interpolated vertex attributes, and it was perfectly matching. So the speed varies based on the geo but here is an example with a lot of extra float attributes for all classes and groups where Poly Carve SOP was more than 6x faster than the Clip method. I also compiled the Clip subnet to make it as fast as possible.
  3. Poly Carve SOP

    Any chance you can make a simple scene clipping a circular polyline like above, so I can test the same thing but with dense geometry? I am not sure how to set Clip so that all of the right sections are left out like in the above pic, using a single Clip operation. It would be interesting to compare but yes it's quite a bit of work to do it in VEX, and all of the attribute interpolation have to be done afterwards using Attrib Interpolate and Attrib Copy for prims, etc.
  4. Poly Carve SOP

    No I don't use any uvs but rather create new points at the carve min max values based on the input point attribute values. So if you have 2 neighbor points with attribute values 0 and 1, a min or max value of 0.5 will create a new point in the center etc. No I compared it with a carve sop in a loop, all compiled. The idea is this tool will carve each primitive differently even if the carve values are the same. Performance wise? This is something I have been meaning to compare. Functionality wise, this tool can carve each primitive with different carve min max values if there are primitive attributes present to override the node parameters. Here is a carve result from a single curve. AFAIK the clip method can not perform multi clip per primitive. This is using node parameter values.
  5. Poly Carve SOP

    http://www.patreon.com/posts/31506335 Carves out polygons using a point attribute with the ability to define the carve values per primitive using primitive attributes. Pure VEX implementation, 10x faster than the default Carve SOP (compiled). It preserves all available attributes. It supports both open and closed polygons.
  6. You can do fake derivatives similar to how Deformation Wrangle works but it will be 6 times slower. I would just go for OpenCL or use AttribBlur if not feeling brave
  7. Hope they don't ruin SD
  8. Slow viewport- Graphic card and Monitor

    You can also set volumes to display as points in wireframe. I saw serious speed ups in this mode.
  9. Lambda SOP

    Thanks a lot guys, appreciate the feedback. Let me address your questions, starting with @acey195 because it's easier I see the Lambda SOP as a high level tool that uses the Invoke SOP internally, but both approaches require compilable networks. The key differences between this and the low-level Invoke is: 1. This is easier and quicker to use, drag and drop, plug and play. With Invoke SOP you have to prepare your network in compilable enclosure, name your compile inputs properly so invoke can see them, etc. 2. It provides a nice way to gather everything nicely in a subnet just like a template, where all the nodes are centralized inside. You can do this yourself also of course. 3. It provides all the looping options of a regular For Loop block. I think being able to invoke a collection of nodes once, is very useful, but one should also have the ability to run the same operation in a loop. Sure you can make your own loop each time, but I see this part of a common workflow. 4. I also provide an additional looping mode which allows running over attributes. It would be nice if this was actually built into the For Loop blocks because it takes a bit of setup to get it right and optimized. Because it's a common operation I have needed in production many times before. For example, let's say you have some geometry you are deforming, i.e. using Path Deform, but you might also have rest positions for the same geometry, and other attributes where you also want them to have the same deformations. The common approach is to copy each of these attributes into P separately (or whatever else you are modifying) and then apply the same nodes to the new P and then copy the result back into the original attribute, and then copy this attribute back into the main branch. This is a lot of work to do. Run Over Attributes does this in a loop. 5. Run Over Attributes also makes every SOP, attribute agnostic in a way. For example, Bend SOP only works on P, but by using this mode, you can perform it on any attribute which either requires you to do the above trick or wait for SESI to expose the modified attribute as a parameter. I think this should also be intrinsic to Invoke to be able to invoke any operation on any attribute. 6. This operator reduces redundancy and increases readability of a scene, just like Invoke SOP, but on a greater scale and with greater control. If I am not wrong, Invoke SOP was introduced so SESI doesn't have to code the same operator both in DOPs and SOPs, which is why Detangle is a SOP. I don't know if they made it to also call a collection of nodes as a template in this manner. I guess you can summarize it as "This operator invokes any number of operations on any number of arbitrary attributes over any geometry/element/number or no input at all, in a feedback or merge gather style." Hope that makes sense.
  10. Frozen Volume using Upres node

    This is volume accumulation, you can do it inside a solver sop, with volume mix using Max mix method, but you have to make sure to resize your volume each frame as you go.
  11. Hi, so you want to split recursively? You can do this. Also to speed your loop, you can likely predefine which primitives will be split and how by assigning some attribute value to them and then loop over the primitives using this attribute, so all prims with the same attributes would be split at once. You would have to replace polysplit with another node though.
  12. Lambda SOP

    This operator allows you to call a collection of nodes on any data or simply no data (generators). It gives you full control over how the lambda function should be run.
  13. Smoothing volumes

    I don't know Redshift but if you use CVEX volume procedural you can avoid this kind of artifact.
  14. nprimsgroup equivalent in Python

    nprimsgroup. I filed an RFE for this before to have the same available function in Python HOM but it was rejected. So submit an RFE please.
  15. Use VEX eigenvalues function on 2x2 matrix

    Hi Geordie, You can cast your matrix2 into a matrix3: matrix3 m = (matrix3) m2;