This made the VEX shaded display result match with the mantra result. I am not sure why they didn't match without that…
hey craig,
i could be wrong on this one, but i think the reason that it didnt' match up before was because your vex shading position did not match up with your uv coordinates. the manual explains why the rest position was matching it up. and because im assuming you used the default settings on the vop, it was doing the texture conversion:
From manual:
__________________________
This operator contains a subnetwork that checks if the geometry attribute “rest” is bound and, if so, uses it as the rest position for shading. If no such binding exists, it converts the incoming position (P) to the specified space.
The “Texture” option takes a position in world space and converts it to shader space.
__________________________
where this will screw you up in the future is if you need to bring in uv coordinates to your obj (in the case the grid). throw down a uv project after your shader sop and move it all around your grid. you will notice is is not changing or updating anything in your render. now try putting down a shading layer parameter vop in place of the rest vop and plug that in to your P input of the fire. now if you go back to your grid and throw down a uv project, your shader will behave accordingly with your uv project unlike before. unforunately, the draw back to this is that it will not update in your vex shaded display. only after rendered. so you lose that.
what i just end up doing is going to the viewport, hit tab, type render, select the render op and draw my selection box in the viewport to see it update. this is really great when in the vex desktop. i can be working on my vops, with seeing my viewport up in the right corner having a selection box of it being rendered and updated as im working. plus i can be moving around my uv's, editing my shader, and seeing it render and update all at once. it's extremely fast and powerful this way.
hth,
dave