NokiMo
animatrix

animatrix

patreon


animatrix posts

Polar Inversion COP

Transforms an image using polar inversion.

Custom multisample anti-aliasing (MSAA) as well as bilinear and full filtering options.

Can mirror or repeat outside bounds.

Can also be...

View Post

VEX Select Edges By Primitive Attribute SOP and VEX Select Unshared Edges SOP

VEX Select Edges By Primitive Attribute SOP

Selects edges using a primitive attribute that have different values for each primitive of the edge.

This is a VEX-based ope...

View Post

Pragmatic VEX: Volume 1 - Implementing Catmull-Clark Subdivision - Introduction & Rules [Free Lesson 5]

Subdivision surfaces are piecewise parametric surfaces defined over meshes of arbitrary topology.

It's an algorithm that maps from a surface to another more refined surface, where the surface...

View Post

Pragmatic VEX: Volume 1 - Gradient Ascent, Descent & Contour Lines - Heightfields [Free Lesson 4]

We have already seen how to apply gradient ascent, descent and contour lines to heightfield like planar geometry. The same concept can be applied to heightfields.

Because heightfields are vol...

View Post

Upcoming HUG Presentation [Singapore]

Hey guys, I will be presenting for Singapore HUG on September 15 [9PM Singapore Time, 9AM Montreal/Toronto Time] about:

Retiming Ocean Spectra and the Pragmatic Approach to Solving Te...

View Post

Temporal Oriented Bounding Box (OBB) [Rigid Transform SOP]

When computing oriented bounding box (OBB), it's very desirable for the bounding box to be robust, i.e. not flip arbitrarily when the input geometry is animated.

Bound SOP doesn't support tem...

View Post

Pragmatic VEX: Volume 1 - Gradient Ascent & Descent - Contour Lines [Free Lesson 3]

Now that we know about gradients, there is another concept that's related to them that can be acquired quite easily, and that concept is contour lines.

A contour line (also isoline) of a func...

View Post

Subdivide SOP and Adaptive Subdivide SOP Updates

Subdivide SOP previously implemented an improved OpenSubdiv Catmull-Clark and OpenSubdiv Bilinear algorithms using VEX, which handles a lot more topological cases and produces better results than t...

View Post

Pragmatic VEX: Volume 1 - Gradient Ascent & Descent - 3D Geometry [Free Lesson 2]

We have implemented gradient ascent and descent on planar geometry, much like a terrain where we used the gradient of the height.

For an arbitrary geometry, what can we use as the cost attrib...

View Post

Pragmatic VEX: Volume 1 - Gradient Ascent & Descent - Planar Geometry [Free Lesson 1]

Gradient descent is an optimization algorithm used to minimize some function by iteratively moving in the direction of steepest descent as defined by the negative of the gradient.

www.pragmat...

View Post

Pragmatic VEX: Volume 1 is out!

After more than 5 months of unimaginable amount of work, I am proud to release my first in-depth Houdini course on VEX. More details in the video description and the website: 2020-08-13 06:23:39 +0000 UTC View Post

Attribute Interpolate and Transform by Attribute SOPs

These are two of my favourite utility SOPs. They can make the handling of multiple attributes of all types and classes much easier, thus avoiding to write convoluted VEX code to do the same.

...

View Post

Rigid Transform SOP [Update]

Rigid Transform SOP will now transform all appropriate attributes based on their type info using the computed transformation matrix.

2020-08-05 15:30:57 +0000 UTC View Post

Pragmatic VEX: Volume 1 [Update]

Good news: The course is ready to launch :)

Another good news: Due to a potential partnership with a major hardware manufacturer, I have to delay the launch by about a week or two max. We wil...

View Post

Pragmatic VEX: Volume 1 [Table of Contents]

Nearing the release, I wanted to post the table of contents of my upcoming VEX course for my patrons. I still have to do a few things left to do like the promo video, rendering everything, distribu...

View Post

Advanced VEX Course

I have been working on an advanced VEX course for the last 5 months, that's 11+ hours, spanning more than 130 videos.

There will be more details in the upcoming weeks, as I am nearing the rel...

View Post

Multithreaded VEX Catmull-Clark Subdivide SOP

Subdivision surfaces are piecewise parametric surfaces defined over meshes of arbitrary topology.

It's an algorithm that maps from a surface to another more refined surface, where the surface...

View Post

Attribute Gradient SOP

Computes the gradient of a scalar attribute using connectivity or proximity.

Gradient of a scalar value is an extremely useful concept, and even though we have this as volumegradient in Houdi...

View Post

Tip: hou.Geometry.generateAttribMenu()

Instead of writing custom Python code like above to generate the tokens and labels for a parameter menu, listing the geometry’s attributes, you can use the hou.Geometry.generateAttribMenu functio...

View Post

VEX Bilinear Subdivision

The natural progression from VEX Edge Divide to bilinear subdivision is quite linear. That's also why I started with Edge Divide first as a stepping stone, both in terms of relevancy to the previou...

View Post

VEX Edge Divide SOP

Splits edges of polygons by a number of divisions.

Splitting edges of a polygon is pre-cursor to subdividing a polygon. So doing this will move you closer to implementing subdivision surfaces...

View Post

Adaptive Subdivide SOP 2.0

Adaptively subdivides geometry using proximity look ups to another geometry.

Performance gains can range from 10 to 1000s of times over Houdini Catmull-Clark subdivision surfaces algorithm wh...

View Post

VEX Rigid Transform SOP

This operator computes a transformation matrix using SVD (Singular Value Decomposition) by looking at the difference between 2 point clouds, which is projected into a rigid transform consisting of ...

View Post

VEX Select Edge Ring SOP & Updated Tools

This operator procedurally selects edge rings given an edge group.

It has the same performance characteristics of Select Edge Loop SOP, so expect same speed gains over the native methods.

...

View Post

Group Find Path SOP (C++) vs edgeLoop() (Python) vs Select Edge Loop SOP (VEX)

I did a comparison of 3 methods of selecting edge loops from a given edge group. To my surprise my Select Edge Loop SOP I wrote back in 2014 is 35x faster than both the Group Find Path SOP which is...

View Post

VEX Singular Value Decomposition (SVD) in PCA SOP 2.0

PCA SOP now uses SVD (Singular Value Decomposition) to compute the PCA, instead of EVD (Eigen Value Decomposition).

SVD is more precise, robust and numerically reliable than EVD.

The ne...

View Post

Behind the Scenes: Context-Sensitive Rule-Based Hotkey System

In this video I will show you some of the inner workings of the context-sensitive rule-based hotkey system that I implemented and one I have been using for a while to speed up my workflow inside Ho...

View Post

Happy New Years

2019 is about to end, which will start a new decade. I hope the new year will prove to the best one there is. I wish everyone happy holidays.

Always keep learning and hustling. The best thin...

View Post

Behind the Scenes: Advanced UI Customization

In this video I will go through the GUI customizations I did for Houdini 18. There will be another video for the new hotkey system I implemented after I finish the implementation and post it on pat...

View Post

Supercharged H18

Setup video:  https://vimeo.com/390438508/0e1ba34f29 2019-12-13 14:16:50 +0000 UTC View Post