jptFixProj

Get the plugin here

Motivations:

Currently projection textures onto NURBS surfaces have 2 major limitations:

jptFixProj is a rendering node that takes care of these 2 limitations.

Limitations: 

Regular UV mapping on a sphere

Projection texture onto a sphere

Problems with projection texture map
If you deform the surface by pulling CVs, the texture does not deform with the CVs

If you animate the surface, the projected texture does not motion blur with the geometry

Solution #1 for motion blur projection texture with jptFixProj (can't deform geometry)
Projection textures will now motion blur, but deforming the surface will still cause texture to "swim"

Projection texture motion blurs correctly


The hypergraph is similar to regular projection map, but with the jptFixProj1 node supplying the pointCamera info to projection1.  In order to calculate the correct pointCamera position, jptFixProj1 node needs the worldSpace attribute from the NURBS sphere's shape.

shadingNode -asTexture -asUtility jptFixProj;      // create the jptFixProj node
connectAttr -f jptFixProj1.pointCamera projection1.pointCamera;    // connect pointCamera
connectAttr -f nurbsSphereShape1.ws[0] jptFixProj1.is;      // supply surface to fixProj
Solution #2 for motion blur/deformed surface projection texture with jptFixProj (reference object)
Projection textures can now be motion blurred/deformed, but an extra copy of the surface is needed to be the reference object.

Deformed projection texture motion blurs correctly


The hypergraph is identical to Solution #1, except for the input surface to fixProj1, which is now the duplicated reference surface (which does not deform).

shadingNode -asTexture -asUtility jptFixProj;  // create the jptFixProj node
select nurbsSphere1;
duplicate;       // make a copy for reference
hide;            // hide the reference object
connectAttr -f jptFixProj1.pointCamera projection1.pointCamera;    // connect pointCamera
connectAttr -f nurbsSphereShape2.ws[0] jptFixProj1.is;      // supply surface to fixProj