Forum: Poser Technical


Subject: Using 3D nodes (Cellular) with 2D UV maps ?

3dcheapskate opened this issue on Jul 14, 2024 ยท 24 posts


3dcheapskate posted Sun, 14 July 2024 at 9:15 AM

I know there was something about this somewhere... But I can find hide nor hair of it.

I'm using the 2D tile node at present but I need more flexibility than the two colour chessboard tiling that provides - the Cellular node would be perfect if I could remember how to use it.

I vaguely recall that you make one of the 3D axes use a fixed value by plugging a Math_function into one of the inputs (Scalez for a Cellular node?) and plug u_Texture_Coordinate and v_Texture_Cordinate nodes into the other two.
But that doesn't work, so I'm obviously misremembering something.

Any ideas ?


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



3dcheapskate posted Sun, 14 July 2024 at 10:11 AM

I've found one of the bits I was thinking of - from bagginsbill's post on my 'PP2014 Image Map Node: V_Offset = (V mod 0.03125) - V ...unexpected result' topic onwards

(I need to get a good night's sleep, my brain's leaking again ;o) )


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



3dcheapskate posted Mon, 15 July 2024 at 10:37 AM

Hmmmm... the fBm node is the only node that seems to work for me. 

Here's a screenshot of a simple shader (based on the screenshot in this post from that 'PP2014 Image Map Node...' topic mentioned above, but modified to create an 8x8 grid) with a  FireFly render. The second (unconnected) fBm node is a duplicate of the connected one and has all the same values:


If I leave the material room, change the renderer to SuperFly, and go back to the material room (exit/re-enter required to update the mat room preview) the preview of the connected fBm node looks unpromising, but when I render it seems to work okay:


(I'll do the same with the other nodes tomorrow)


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



3dcheapskate posted Mon, 15 July 2024 at 10:43 AM

Plugging the fBm into a ColorRamp to convert the greys to colours, and then plugging theat into a 2D Tile node to get the grout/mortar between the pool tiles (that seemed the simplest way)...

FireFly:


SuperFly:


Yes, I'm trying to do that random blue swimming pool tiling. 


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



3dcheapskate posted Tue, 16 July 2024 at 4:20 AM

Okay, after a good night's sleep I'm now wide awake... comparatively.

Just confirmed that using the Noise or Fractal Sum nodes instead of the fBm node also works, in both FireFly and SuperFly renders. It's just the node preview in SupeFly that looks wonky. Here's some screenshots showing the node preview and render together. The cropped nodes to the right are the same as before, just to create that 8x8 grid.

Noise node with default settings, FireFly render:


Noise node with default settings, SuperFly render:



The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



3dcheapskate posted Tue, 16 July 2024 at 4:22 AM

Fractal Sum node with default settings, FireFly render:


Fractal Sum node with default settings, SuperFly render:



The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



3dcheapskate posted Tue, 16 July 2024 at 4:40 AM

But the Turbulence and Cellular nodes don't seem to work here.

So in summary:


I've given the Noise node a double tick because it's easier to get a good dynamic range (near black to near white) than with fBm and Fractal Sum which always seem to give me justa small dynamic range of greys.

(the other 3D nodes don't have x/y/z scale inputs and thus aren't relevant here)


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



3dcheapskate posted Tue, 16 July 2024 at 5:15 AM

Adding the ColorRamp and Tile nodes as before, but also increasing the grid to 20x20...

FireFly:


SuperFly:


Looking good !

Almost there...


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



3dcheapskate posted Tue, 16 July 2024 at 5:20 AM

...and the final step, apply that to the toon pool I'm working on..

FireFly looks great, but uh-oh, what's up in SuperFly ? The sides of the pool show very little variation.

FireFly:


SuperFly:



The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



3dcheapskate posted Tue, 16 July 2024 at 7:05 AM

"Oh my giddy aunt" and other expletives !

Yes, I clearly had a sneaking suspicion back in Aug 2019...

Just created four perpendicular planes aligned with x, y, and z axes, each mapped to the full UV square and applied my random pool tiles material.

FireFly has no problem:


SuperFly on the other hand - if the constant is plugged into the y_index input of the Noise node (with the u/v derived values plugged into the x and z), as in my shader, the XZ plane is okay but the other two aren't.


Plug the constant into the x_index, with u/v to y/z:


And constant to z_index:


Exasperated. That's a good word for how I feel.


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



3dcheapskate posted Tue, 16 July 2024 at 7:49 AM

Hmmm...

the simple expedient of plugging the u-derived value into the y_index of the Noise node (instead of using a constant) makes all three planes render as hoped - but with a diagonal symmetry. And both FireFly and SuperFly render the same pattern.


 

But even better is using the v-derived value instead for the y_index input - no symmetry:

 


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



3dcheapskate posted Tue, 16 July 2024 at 7:58 AM

Okay, that seems to work on the toon pool too, albeit there's a minor artefact on the FF render now (just to the right of the diving board, a sort of vertical line) - I think I can live with that



The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



odf posted Tue, 16 July 2024 at 7:21 PM

Interesting stuff! So, what does your final shader look like?

-- I'm not mad at you, just Westphalian.


3dcheapskate posted Wed, 17 July 2024 at 2:15 AM

It's the same as the most recent screenshot except that what's plugged into the y_index input of the Noise node has changed, and now unused node that was plugged in has been deleted. I also changed the number of tiles and the mortar thickness.

Set Value_1 of Math_Functions on the right to the number of tiles you want, but don't change anything else in the three columns of nodes at the right. You can change the colour/value of any parameters in the Noise, ColorRamp and Tile nodes that don't have an anything plugged into them. The x_index, y_index, and z_index values in the Noise node and the Mortar_Thickness in the Tile node are fair game too.

FireFly and SuperFly renders again. You can see those artefacts I mentioned in the FireFly render again - definitely similar to what I spotted back in Aug 2019

 


I can't attach mt5 or txt files to this post, but I plan to upload the shader here in Renderosity's FreeStuff


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



3dcheapskate posted Wed, 17 July 2024 at 6:57 AM

Found some values that give a good dynamic range from an fBm node, so tried replacing the Noise node with an fBm and plugged that into the Red input of a User_Defined node. Added a second and third fBm node to drive the Green and Blue, tweaked the x/y/z_index values in them to get a different pattern from the first. Now I have the complete range of colours available for the tiles:


Works in both FireFly and SuperFly, without those FireFly/Noise artefacts:

 


(note: the u-derived value is plugged into x_index, and the v-derived value into y-index and z-index. Using a constant produces the same problem as before)


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



3dcheapskate posted Wed, 17 July 2024 at 7:06 AM

Adding a Math_Functions:Max and Math_Functions:Min node, setting the Red of my User_Ddefined to zero, and making sure Blue is greater than Green I now have just blue and blue-green tiles.



...and no artefacts in FireFly:


I think I have my solution :o)


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



3dcheapskate posted Wed, 17 July 2024 at 7:34 AM

I'm uploading the mt5s to the HiveWire3D forum here Random colour tiles (Poser 11 FireFly/SuperFly) | HiveWire 3D Community


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



odf posted Wed, 17 July 2024 at 6:41 PM

Very cool, thanks! I'll have a play with it.

-- I'm not mad at you, just Westphalian.


3dcheapskate posted Sat, 20 July 2024 at 6:44 AM

I'm just converting it to a compound node - Random colour tiles (Poser 11 FireFly/SuperFly) | HiveWire 3D Community


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



an0malaus posted Tue, 23 July 2024 at 6:45 PM

Just a quick speculation on the artifact you mentioned above (one tile or column of tiles with a colour change at its right edge).

That could be because the mod function is running into a whole number at its maximum range value, and just ticking over to the next number. A solution might be to use a float value just below a whole number as the range, like 31.99999 instead of 32 exactly, so the modulus will not have an isolated transition at 32.




My ShareCG Stuff

Verbosity: Profusely promulgating Graham's number epics of complete and utter verbiage by the metric monkey barrel.


3dcheapskate posted Wed, 24 July 2024 at 3:42 AM

The artefacts in the noise node are actually more complex than that - here's a render plus the shader used.

(I've given up with the Noise node after finding settings for the fBm node that give me more or less full dynamic range from o.o to 1.0, and I've almost completed a fairly flexible compound node using fBm nodes - post #9 on the 'Random Colour Tiles' HiveWire3D topic )



The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



an0malaus posted Fri, 26 July 2024 at 11:19 PM

"Yikes", "Concur", "We don't need any more of these!"

Pretty * Useless, where "*" is some vaguely defined boolean (or quantum) operator.




My ShareCG Stuff

Verbosity: Profusely promulgating Graham's number epics of complete and utter verbiage by the metric monkey barrel.


3dcheapskate posted Sun, 28 July 2024 at 4:42 AM

You've totally lost me there ! :oD

Never mind, the fBm node saves the day, and I've now inserted an all-singing all-dancing fBm-node-based  "Poser 11 compond node for creating random colour tiles" freebie into the Renderosity FreeStuff.

(Yes I know there's a typo, but I can't be bothered with asking them to add the missing u to the freebie title so a compond node it is then)


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



3dcheapskate posted Thu, 01 August 2024 at 9:33 AM

Just worked out a version in world space using P node x and z coordinates instead of U and V

MT5 posted over on the associated HiveWire3D topic, post 13. (you may have to scroll a bit to find post #13)

Render of two objects, a plane and a cone, using the shader



The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).