The 'built-in' texture nodes generate their textures mathematically and so most of them can be recreated using Maths nodes - building your own textures is no different.
For example, the Wave Texture can be created by using a Sine function based on the input coordinates :
Or the Checker texture recreated as follows :
Gradient textures follow similar ...
See the different values under "Scale" on the right side?
Your model is stretched in different directions.
for unwrapping to work correctly, apply the scale (the numbers for x,y and z should all be 1).
select your object -> ctrl+a -> Apply Scale
As you don't care about the blue backside, create a seam on the outside of the blue Part.
The idea is to use a gradient node in radial mode and plug it to the angle of a rotation node (just like a Mapping node but with an input socket for the rotation). Since such a node doesn't exist in Blender we make it with math nodes.
First the rotation node itself (it's a node group) :
then the general setup (the green node is the rotation we ...
It can be done!
Approaching it on a Surface
Before we try to do this with a 3-dimensional texture, let's attempt it in 2-dimensions. This is actually fairly straightforward. We can create a proxy mesh by duplicating our object (Shift + D), removing the modifiers from our duplicated object, then setting the Texture Mesh setting for our original object to ...
Unfortunately this isn't possible without modifying blender's source code. However, in the case of the mapping node, everything it does can be done with regular math nodes.
I've made some nodegroups which re-implement the mapping node accordingly:
Append or link (F1) the "Scale" "Translate" and "Rotate" nodegroups into your .blend, or put them in your ...
You can add a scalar multiple of cosine of the angle that the vector makes with the x axis to the x component, and similarly with the y component but with the sine of the angle, this will produce:
Higher scalar values means more line-like distortion. A radial distortion can be done as follows:
Not sure I totally understand the issue or if I recreated your setup correctly, but the Vector Transform node seems to be the correct answer.
If you transform from World to Local coordinates it seems to fix the issue of a moving eye.
The Gradient Ramp might need some adjustments afterwards
You can use the texture as a bump map on the whole material
Or you can add a Vector>Bump node to add the bump map to one or more of the shaders you are using.
If you need real displacement, not just bump map, enable the experimental feature set and then change the displacement to True or Both in the material.
More info: Getting "experimental" ...
A more procedural workflow suggests the use of Splines to create the shape. Moreover, Spline UV maps can be used to create the pattern you are looking for. First, model the spline and give it a full depth as follows:
Then enable Use UV For Mapping and utilize the modulo operator to create the pattern you are after. The value nodes control the number of ...
You can't map the centers of tiled hexagons onto one rectangular grid, but you can map them onto two overlapping rectangular grids, and use a Voronoi-like distance-to-closest-point test to decide which hexagon a shading point belongs to.
Unfortunately, Blender's node implementation of modulo goes into the negative for negative bases, and we ...
How does it work? Faces of one plane (tiles) are mapped through Explode modifier to randomized faces of a plane with Build modifier.
Create a Plane and UV unwrap it, then loopcut it or subdivide to match desired columns and rows amount (final facecount = rows * columns). This is Randomizer object
Duplicate Plane ALT-D and add material with ...
You can just add in a mix node, another principled shader and a color ramp.
Create a 2nd principled shader (this will be your lava).
Connect it with a mix shader, use a color ramp and have your displacement nodes connect to it.
Then on your color ramp adjust the flags to your liking.
As the texture is projected in the positive quadrant of the XY plane of the input vector, we need to translate the coordinates by (0.5,0.5,0.0), and clip them.
And to stop the texture from being projected on other places of the geometry (i.e. the backside), one can use a mask to limit the Z distance.
Now it's only a matter of placing and orient the empty ...
I think you would like to keep the noise to be bound to the world coordinates. This will let you move the camera freely without effecting the noise coordinates. The Position in the Geometry will give you this.
The Modulo node, when used with vector input repeats the output values at regular intervals, in this case $1$ unit.
You are using Generated texture coordinates as input which uses the objects size for coordinates, meaning it that maximum X,Y or Z are always considered at coordinate $1$ regardless off absolute dimensions.
Since in this case geometry is a ...
Let's ignore the aspect ratio for now. The projection matrix function may sound cool, but I would settle for the easier world_to_camera_view which lemon suggests in the comments.
Y-coordinates increase upwards (bottom = 0, top = 1).
Get the world coordinate of the point by applying the object matrix.
Get the relative camera coordinate using ...
The pictured above part of node setup from https://blender.stackexchange.com/a/148354/15543 (refined from https://blender.stackexchange.com/a/159492/15543)
produces spherical coordnates (r, theta, phi) from object texture coordinate (x, y, z) Equirectangular coordinates map latitude to U and longitude to V .. (or is it vice versa) ...
Adjacent hexagons will be translated by (+-1,+-SQRT(3)/2).
I did not put in a scaling function (though I did attempt to tile it).
Here's the file I was working on. It's not very useful so far but you can move the hexagon by changing the center coordinates:
This has been especially challenging for me because hexagons do not tesselate on a square unless you ...
In the texture properties, you will find an Image Mapping panel as well as a Mapping panel. In the Mapping panel, you want to select UV as the coordinates value.
You can then get better results by properly UV unwrapping your object to control which part of the image is used.
Better method would be to use Separate XYZ node as a factor between Diffuse/Emission shader.
It basically take Z height of your mesh and assign material based on it.
You can control factor by Color Ramp node.
First of all, issue is from Mapping Node. You need to switch it to Point, set Scale to 1, 1, 1, and lower Z Location value. This will be our '...
For best quality Scale the texture via texture node the input vector. Use a Combine RGB node to send the correct values. Assuming that the width =1.0. Divide the height by the width for the width factor. e.g. (1080/1920), this will reset the aspect. Use a color curve to scale the vector.
To save you having to type in the current scene dimensions you can set ...
You are running into Blender interpolating your texture a little, so that when it "smoothes" the pixels of the texture, it's grabbing the next texture over and averaging with the local color, creating an off color along your UV edges.
Turn off interpolation, but beware, this will make the texture a little more pixely.
Unpack your UV's a little ...
I had similar problem.
So i had done the mesh in Blender, and UV unwrapped it as well. Export, and same error in Substance Painter.
Solution was to while you export in Blender, be sure to check the Selected Object, and prior to choosing File > Export, be sure to either select all objects in the scene you want exported in the OBJ/FBX file, or delete ...
What you are describing is exactly one of the uses of texture baking. In this case you could use either cycles or the old blender internal.
The process would be:
Texture the object.
UV unwrap the object.
Bake the Perlin noise texture.
I'm using cycles, but the same principles apply to the BI (in the blender internal renderer you can pick what type of ...
If you want the texture to deform with the surface, you will have to use UV mapping. Every polygon corner gets assigned a location in UV (2D) space and textures use this information to map to surface. This mapping is not hard to create (see UV textures/ing tutorials), but it can be unique for every mesh, so the key is ensuring this UV mapping is the same in ...
Set texture coordinates between your geometry node and the noise node. You´ll get it to move like you want.
Also try switching the output geometry node from camera to WINDOW.
Thank you for your consideration in voting me as answer.