Hot answers tagged

101

BSDF stands for bidirectional scattering distribution function. Essentially, it's a mathematical function that determines the probability that a specific ray of light will be reflected (scattered) at a given angle. Cycles is a probabilistic ray-tracing engine. It incorporates randomness by tracing the paths of rays of light at slightly different angles. ...


66

You can use the math Modulo node on mapping vectors to create tilling for procedural textures: To tile them seamlessly you need to flip tiles in X and Y axis: For the Tilling X and Y nodes use values between 0 and 1. And to tile them in 3D just copy the setup into Z channel. Why Mapping node does not add tilling to procedural textures: Mapping node does ...


48

Such a material works by reflecting the incoming light back towards the direction it originated - since your car headlights are very close to your own line of sight, you see a strong reflection of your own lights. You can replicate this behaviour in a material by simply manipulating the surface Normal in a Glossy shader that can then be mixed into any other ...


47

Pure Shader Solution! Hey look, high-school maths does have a purpose...... From what I could understand with a little research, holographic/reticle sights display a holograph that appears (when looking through the sights glass) to be fixed to a spatial position a certain distance (d) from the glass. Basically, we need to work out the x,y coordinates of ...


41

This is done with rounding the mapping vectors, enjoy .) It will work for any texture (for 3D texture just copy the rounding nodes into the Z channel) and you have separate controls for X and Y resolutions. If you also surround the Multi-Round-Divide nodes with Add and Subtract you can change the center point of effect (add and subtract the same number..)


37

Let's start with some definitions: Vector: A list of values that are all contained under the same "roof" so to speak. For instance, the location of an object in 3D space is a vector of 3 values (the $X$, $Y$ and $Z$ location of that object). All Vectors in blender are by definition lists of 3 values, since that's the most common and useful type in a 3D ...


35

Add Shaders aren't necessarily physically correct. Simply put the values of the two input shaders are added up for every pixel value_out = value_1 + value_2 It is possible to reflect more light than received. If you mix two shaders with the Mix Shader Node you get more physically correct values because it calculates a weighted (by the Fac param) average ...


34

You can press ↹ Tab to switch in and out of a node group, or you can press the arrow button in the header to go to the parent node tree: To ungroup nodes: Go to the parent node tree Select the group node Press ⎇ AltG


34

OSL + Solidify (Irie's Technique) Results: Pros: The toon shader has seven customizable parameters for creating many different looks Edge strokes taper off with a natural look, like hand-drawn strokes It renders quickly It responds to lighting (can be lit with lamps) Cons: Some additional geometry must be generated to create the outlines It won't look ...


33

Currently you can get: density When used on a domain object, this is gives a scalar defining the density of any smoke inside the domain. All three outputs are the same. flame When used on a domain object, this is gives a scalar defining the density of any fire inside the domain. All three outputs are the same. color When used on a domain object, this is ...


33

To toggle out of full screen area (what I think you did) press AltF10, or move your mouse to the top right corner and click the button that appears. Here I start in full screen area, notice the button that appears in the top right corner. If you just maximized the window you can get back to the normal view a number of ways. Click the "Back To Previous" ...


32

There is no intuitive way to do this in Animation Nodes. I proposed a system to the developer that should hopefully allow us to do this intuitively. But he is still studying it. In the meantime, I will tell you how to make such system manually. Storing Data Each execution in Animation Nodes is independent of the next one, and thus we can't pass data ...


31

Here is a list of the mathematical equivalents of each operation. Add: Out = Value1 + Value2. Subtract: Out = Value1 - Value2. Multiply: Out = Value1 * Value2. Divide: Out = Value1 / Value2. Sine: Out = Sin(Value1).† Cosine: Out = Cos(Value1).† Tangent: Out = Tan(Value1).† Arcsin: Out = Sin⁻¹(Value1).† Arccosine: Out = Cos⁻¹(Value1).† Arctangent: Out = Tan⁻¹...


30

Here is what I came up with: Adding a glow without affecting close parts of the handle: The handle mesh is on scene layer 6 The blade and other objects are on scene layer 1 Create a material for the blade: Enable Transparent in Render settings > Film: Create two renderlayers, one for the handle and one for the blade: By setting the handle layer to ...


30

The dot product of two vectors measures two things: how much are they "in the same direction" ? how large are they? Skipping the precise definition, we're usually interested in these properties: Vectors with the "same-ish" direction will have a positive product, a null one if they're orthogonal, and negative if they are in opposite directions If you ...


29

In cycles it's a simple matter of using the Backfacing output of the Geometry node: The Backfacing output gives us white (a value of 1.0) on the side that's facing away, and black (0.0) on the side that the normal is pointing (This is what you see if connecting the Backfacing output to an emission shader as a sort of viewer node) So connecting this to the ...


29

This is the correct setup to combine normal and bump maps. If you use a normal map, you can't use the displacement material output, you have to plug it directly into the BSDF. The normal map must go first, and then you can add bump mapping on top of it.


29

The dot product is a way of multiplying two vectors that produces a scalar (i.e. real number) value. Geometric Definition The dot product of vectors $\vec{V}$ and $\vec{U}$ can be thought of as multiplying $\vert\vert \vec{V}\vert\vert$ (the magnitude of $\vec{V}$) by the component of $\vec{U}$ that is parallel to $\vec{V}$. Notice how the vector $\vec{U}$...


28

The method of creating textures is called Texture Baking. Different kinds of textures (normal map, specular map, albedo map, etc.) take different sources, from which you 'bake' the texture - it can be surface normals, materials, lights, etc. How do I bake a texture using Cycles bake Not every material can be easily baked into single image without visual ...


27

Theoretically they are meant for similar purposes and functionally there is overlap when used in simple cases. However, when used for extreme bump mapping, the bump map node produces much better results: Left: Texture plugged into displacement output Right: Bump map node plugged into shaders The other difference is of course that the displacement output ...


26

Let's use a Laplacian kernel filter for this: The Laplacian is a 2-D isotropic measure of the 2nd spatial derivative of an image. The Laplacian of an image highlights regions of rapid intensity change and is therefore often used for edge detection. Here we go: What is inside the group: How this works: Image convolution is a filter operation where you ...


25

Personally, I use a temporary Emission shader and connect it to whatever I want to look at. I also have a small viewport render open almost permanently. The emission shader renders really quickly taking only a couple samples to converge, so it's nearly instantaneous, especially if you go into local view (Numpad /). I've recently released an add-on that uses ...


25

I have found that b°wide NodePack contains a blur node! It's called ImageBlur. What it does is play with the vectors to blur it, something like if a ray comes it collide to multiple points (effectively blurring the texture). I don't know exactly how, but here is a screen capture of the node expanded. Note that in the background I have used it for testing ...


25

As far as I know, I don't think it is possible to drive a Color Ramp or Mapping nodes from another socket (but I am not super experienced in drivers). However I have managed to re-create the color ramp and mapping node with math nodes, which you can plug inputs into directly. Color Ramp Unfortunately there is no way to create a group node exactly like the ...


25

I've spent the past week or so working on basic logic gate implementations in Blender Shader editor. I'm sharing these with the community so anyone who would like to use similar nodes can easily find how to make and use them. They allow for a little more advanced Shader Node behavior without having to resort to OSL or python scripting. Here's an overview of ...


24

Creating Procedural Weathering Effects in Blender Okay so I ended up developing a solution to this question a couple of months back, but I see it's gained a lot of interest recently so I thought I'd post a tutorial on how I went about solving it. The weathering effects basically involve creating a Worn Edge and Cavity Dirt mask, which can then be used to ...


23

Mapping node: You can use the Mapping node to rotate the texture on the Y axis, making the gradient vertical. Change the Location Z axis value so that one "end" of the gradient is at the tallest peak or valley of the mesh. Also ensure that the Mapping mode is set to Texture: Result: UV unwrapping: You could also UV unwrap your mesh. Enter edit mode (...


23

Grey is a single value Yellow is a tuple containing 3 values; the red, green, and blue channels of a color. Purple is a tuple containing 3 values. Used for vector/coordinate information. Green is a shader closure, representing a description of how light will interact with a surface or volume. This one can only be connected into other green sockets. Note ...


22

The option can be found in User Preferences > Themes under Node Editor:


Only top voted, non community-wiki answers of a minimum length are eligible