Sharing: Over-Engineered Mapping Node Alternative


(cgCody) #1

Hey folks. I just wanted to share something I put together over the weekend.
It started out as a mapping node with exposed inputs, but I ended up adding some extras for fun. Who knows, maybe someone will find a use for it. In the future, I’d like to add some additional types of mapping, as well as the min/max clipping functionality.

Feel free to use and abuse as you like.
UberMapping.blend (1.2 MB)

I recorded a short video explaining some of the features, but the audio kept cutting in and out… so enjoy a few minutes of silence!

And here’s a little before and after showing how the random function can be used to add variation to repeating textures.

How do you guy's scale image texture in displace modifier?
(cgCody) #2

I’ve updated the .blend above with a proper procedural mask to replace the texture stand-in.

I planned to build it into UberMapping, but I’m not so sure I should now. Masking is outside the scope of mapping. Besides, it can be used for other thing, like bump mapping:

Props to @yashar for his box mapping trick, which I’ve incorporated into the SquareCircle nodegroup. It doesn’t have blending, but I think that’s better than tripling 40+ nodes for a triplanar setup. (Maybe… I haven’t actually run any performance tests… I’ll put that on my todo.)

Box mapping for procedural brick texture in cycles
(Peter) #3

Thank Cody that will become very handy! After my first step last night with the Blender material workflow i become a bit frustrated so i decide to go directly with the nodes editor like you suggest me last night but hooking the mapping node give me no result just like in the texture tab!

I am completely at lost and here a picture of my editor ;

EDIT; Never mind Cody i found why, it was because i need to first assign the material since cycle doesn’t seem to work the same way blender internal does and i had to turn on the rendered display node.

Feel free to correct me if i was wrong.

(cgCody) #4

Hey polynut, well I was about to respond, but it looks like you edited your post while I was typing.

One thing I’d note is the rotation on the X and Y axis you have in the image. Maybe that’s what you’re going for, but that’ll cause the texture to have some weird warping on the Z axis plane. :slight_smile:

(BluePrintRandom) #5

you have the world XYZ hooked up I think

his setup is using UV.

(Peter) #6

Thank Cody everything is working as intended now!

(Peter) #7

Thank for the tip!

(BluePrintRandom) #8

I think you may be able to use this nodegroup on 3 Axis w/triplaner mapping.

edit: like this but with more variation

(cgCody) #9

You could, yes. The node group will work with any type of coordinate system, including custom ones as it’s just dealing with transforms.

You don’t need a custom setup for single texture triplanar mapping, by the way. On the Image Texture node, you just change the mapping to box and increase the blending. :slight_smile:

(BluePrintRandom) #10

yeah a friend gave me the file and I made it have grass on the Z+ facing side,

then he found the box image blending trick

however having 3 separate mapping systems means your random system can do a better job no? (top / sides/ front could all have different patterning slightly?)

(cgCody) #11

Ahh I see, you mean building the triplanar functionality into the node?

I thought about it and I still might. However, the reason I decided against it is because triplanar mapping is more akin to the Texture Coordinates node. So you’d decide if you want to use generated, object, UV, or triplanar mapped coordinates, then plug that into UberMapping for your transforms.

Maybe I need to make an UberMappingCoords node. :smile: