Evee and Workbench use Gpu when rendering but Cycles doesn't For some reason when I use the Cycles to render something it wont use my Gpu. I already changed it in my prefferences so I could use my graphics card. I have anA MD Ryzen 7 4800u graphics card and use Blender 2.83. But I also had this prolem with an older computer. What can I do tofix this problem?

As mentioned by @Eric Xue, the Ryzen 7 4800u is a CPU with only integrated graphics. Unless you have a dedicated graphics card, i.e nVidia Geforce RTX, or AMD Radeon, you cannot use the GPU render function because Blender does not render on integrated graphics.

Your GPU rendering selection is grayed out, signifying that you do not have a GPU or a  non-compatible GPU.

If you do have a compatible nVidia or AMD GPU, enable it in the Blender Preferences.


Easiest way to make snow covered leaves? I'm making a winter scene and there are lots of trees. I need them all to be snow covered, while having some areas still green. So far, the only thing i have found online is this: http://thomas-cairns.com/TreeTutorial.html but it seems like a lot of work and i feel there might be an even easier way..Not to mention i have a lot of trees so baking might not be the best option. Anyone have any ideas how i can pull this off?

Is this something you are looking for?
Conifer trees - shader

Conifer trees - mesh - 3DM Snow add-on

Deciduous tree - mesh - select one top face, Select Similar > Normal (Shift+G), Separate > Selected (Ctrl+P), add modifiers Solidify, Remesh, Subsurf, Remesh, Solidify


Could this be a Normal Map? Is the Image below a Normal Map or it is geometry?

I would like to know if an effect like that is possible to reach with Normal Map or maybe even multiple Maps.

In your example, the big extruding portion is geometry.

In the general case, it very much depends on how close you look at it and at what angle.

With a normal map you always see all faces of a detail. From some angles it can seem wrong since they are facing away from you.

Here we have some geometry represented by... geometry and a normal map. Normal map below. Can you tell wich one is the normal map? Yes, of course you can. But this is realy up close. Still, if you are rendering a space ship and are flying by it's side, go for geometry.


Screenshot the viewport - How do I adjust the quality of the OpenGL render? I just need a simple screenshot of the viewport, the the "render" is all fuzzy. How do I adjust the samples for this kind of render?

it's all blurry here

Merely illustrating the comment from @Lemon: "You can change the render image size in the render panel".


why i cannot make hole on the mesh? why i cannot make hole on the mesh?. I have check both mesh rotation scale, Face pointing outside. No double verts seen.

I want to make a cylinder hole but it creates a square hole. Any suggestion or help whats going wrong with my mesh. Thanks

I believe it's because of N-gon topoology.

It's a bug in Boolean modifier I think, but still.
I see 4 solutions:

Retopo your mesh so it contains only quads.
You can use Fast method of Boolean modifier. There's still an issue but less noticable:

Add a circle instead of a cylinder and use a Shrinkwrap modifier. You'll get a nice cut:

Use add-ons like BoxCutter. As I know, it deals with N-gons nicely. But the add-on is expensive :(


Trouble with first time motion tracking I'll be concise:

while I can get to motion tracking I don't have the same menus I see on specific tutorials that seem to be running 2.8.  odd.
I can Ctrl+A and place markers all over.
I cannot get them to track and show tracers when scrubbing left or right, regardless of which track button I'm using (command T, or Shift command T).

Everyone seems to have a menu next to "help" that shows motion tracking as an option.  I've got nothing but tabs up there (layout, modeling, sculpting, UV editing, etc).

The simplest way to access the layout for tracking is to create a new project: File->New->VFX.

It should open with all the windows you need for motion tracking.

To display the paths for tracking marks Open Clip Display and enable Marker Display-> Path


Material won’t render, but does show up in the 3D viewport with “Material shading” (project file included) Today I came across a strange problem: a material just won’t render, model is just white! Object is showing up textured in the 3D viewport with “Material shading”

, but it’s completely white in the render

Render engine is Cycles. Nodes are used.
Object has a single UV, so UV is not the problem.

In your node setup you are connecting color outputs and BSDF inputs. Cycles is not meant to work like that (hence there is no rendered material). The viewport will still show something, because it is an approximation which evaluates nodes differently.

Connect color outputs with color inputs.
Connect BSDF outputs with BDSF inputs.

You can use either method to create your setup. Color outputs can be mixed with a MixRGB node and BSDF outputs can be mixed with the Mix Shader node.


Can a mask stick to a shape in the motion tracker? I have some video footage of a flat surface (for this example, let's say it's a binder or a book), and I want to digitally replace the cover of the book using a plane in Blender. So, I set up my tracking scene and align the plane and stuff and it attaches to the book. The problem is, someone picks up the book, so their hand is now covering part of it. Is it possible to draw a mask that will conform to the shape of the hand, or something similar? Maybe like a lasso tool (like they have in photoshop) or something similar? Or will I have to adjust the mask frame-by-frame?

Thanks. :)

The mask control points can be controlled by trackers.
So track the hand (or the edges where the hand moves over the book cover) and parent those trackers to the mask.

To do that select the mask's control point, then shift-select the tracker to control it and press CtrlP. Now the control points will follow the tracker automatically.


Removing untextured faces from UV mapping Newbie to Blender In blender 2.91.0 I am making simple buildings and covering with texture using uv-mapping. Many of the faces are internal and will never be seen and have no texture applied to them. (The textures with the red letters in the attached picture)
Is there some way to select and delete the unwanted faces from the UV map? and hopefully rearrange the UV map using Smart UV project function or something similar to use all remaining space.[Image of my layout]
Apologies if this has been covered elsewhere

You can't really remove the useless faces from the UV map but for example you can select them in the 3D view, Unwrap > Reset, which will stack them, and put them out of the UV Editor grid:

Then select the rest of the mesh (Ctrli) and unwrap with the Smart UV Project option. Now the selected part occupy the whole grid, as expected (but it means that you'll need an image that will match the new unwrap):

If we select both the useful and useless part, as you see, the useless part keeps its location. You can put it over the second UV unwrap but it's more convenient to separate the 2 parts if you ever need to select one or the other. Note that the useless will inherit of the texture that will be underneath (an image texture is always infinitely repeated in the UV Editor) but you said that this part won't be seen so you don't have to care. If you want this part to be alpha 0% you need to put it over a part of your image that will be alpha 0%:


Bone heat weighting: failed to find solution for one or more bones I am creating men/woman character using MakeHuman tool and import into the blender tool. I followed the steps given in the below youtube video tutorial to work with blender.

http://www.youtube.com/watch?v=dYiAd_08-0k

I can generate the armature. But When I skin the armature into the character I got the following error

"bone heat weighting: failed to find solution for one or more bones".

What may be the problem and how can I fix this?

I also faced this message, the reason was that the model wasn't symmetric (after twiddling with an already applied mirror modifier). In this case you could try to cut off one half and mirror it again. After that the parenting with automatic weights should work.

See also this thread on BA Bone-heat-weighting-failed-to-find-solution-for-one-or-more-bones


Python Autocompletion Is there any option for Python autocomplete to work properly in Blender?
Currently it shows under Tab all the possible options that were entered previously in the code. It doesn't make any sense to use this feature.
Maybe you need to set something up somewhere in the Blender to make it work like in any eclipse VS editor?

The terminal has autocompletion with the actual properties of objects when you press tab, which works very well to explore the available syntax in the API.

There's no real way to access bpy from IDEs such as VSCode. But you can get pretty close with fake-bpy-module, which emulates many of the properties and will give you an advantage as a developer with a good integration of many other python packages.


Make Flames stick close to the surface instead of rising upwards I need this for an animation. I tried using a smoke simulator, but the flames rise upwards and that's not what I was aiming for. I want the flames to maintain the vorticity but still stick close to the surface.
Can anyone help me out here?
Update: With the previous answer's help (along with a particle system) I was able to achieve this, however, i want the flames to have a more sharper look to it. Something more akin to the plasma bolt from 'Sorcerer's Apprentice'

Final result:

Wrapping up:

I'm working with Metric Units (Unit Scale: 1). Result may differ when using other sphere sizes and some tweaking will be needed but I'll explain them later on.

Also, Fire or Plasma is transparent so it will be less visible in bright/white areas, just like fire in real life.

Objects:

We will need only three of them. Sphere as a Flow object, Domain, and Force field which gives us noise to the flame.

Start with empty scene and Shift+A > Mesh > UV Sphere. Keep everything as is.
With Sphere selected hit Space and type Quick Smoke. Select it.
Now we need a Force field. Shift+A > Force Field > Turbulence.

Domain settings:

Select Smoke Domain in the scene or in the Outliner and go to Physics tab.

Smoke tab

Resolution. We will leave it now at default value, but for final bake set it to 64.
Time. Crank this up to have faster moving flames.
Temp Diff. It's important one. Set it to 0 so flames will not go in any direction.
Vorticity. Higher = more noise, lower = smoother flames.

Smoke Flames tab

Speed. I've set it to 1. It will be connected to Force field settings (strength).
Smoke. Set it to 0. We don't need any smoke.
Vorticity. Same as Vorticity in Smoke tab.

Smoke Adaptive Domain and Smoke High Resolution tab

Check Smoke Adaptive Domain.
In Smoke High Resolution set it to 2 Divisions.
Lower Noise Method to 1. You can try and play with it. Low setting will give smooth flames and really high make them raving.

Sphere (Smoke Flow) settings:

Select our Sphere, you should see settings right away in the same place where Domain was.

Smoke tab

Change Flow type to Fire.
Flow rate is really fun to play with setting. Low value gives us really gentle flames, and high values will create total destruction.

Force field settings:

Select Force field (or Field in Outliner) and go to Physics tab (same as other objects).

Strength. Set it to 35 or lower if you want shorter flames.

Note: If you set it to low value, flame will be shorter but also slower. Consider changing in Domain settings Time scale and Flame speed.

Noise. Max it out. You can keyframe Seed to have even more noise.

Materials:

We will need materials for our flame - this will be Domain, and for Sphere, to simply hide it.

Domain or Flame/Plasma material

Select Smoke Domain and go to Node Editor.
Delete everything there besides Material Output.
Add Attribute node. Shift+A > Input > Attribute and type in it flame.
Add Color Ramp. Shift+A > Converter > Color Ramp. Add there couple of colors you want, place as you want but remember to set last one (right one) to Alpha 0 and set color to it as well.
Add Emission Shader. Shift+A > Shader > Emission.
Connect everything as in picture above.

Sphere or Flow material

Just add Transparent BSDF to it. Nothing more.

Final thoughts:

Now you can play or bake (under Domain > Smoke cache settings) scene. Remember to set for final render Resolution to 64, and to have dark background.

Save a lot. I mean it. A lot.

Setup is really flexible, so don't afraid to test other settings.

I didn't achieve good stutter or flicker effect. The only thing I've come up was adding Brightness/Contrast node between Attribute and Emission and keyframing Brightness value, but this is horribly slow process. Maybe F-curves will help but I'm not good in animation.

Blend file:


Texture not realistic I am currently working on a hot chocolate scene and it is going good!

But when I added in some marshmallows, I encountered a problem.

The hot marshmallows doesn't "look right" in comparison with the hot chocolate. It seems much dimmer and fake.

Is it just me, or is something wrong? Can somebody please help me make it more realistic? I don't think I'll be posting this .blend, since I don't know how to post textures with it.

Hot chocolate node setup:

Marshmallow node setup:

Ok... As I am a new user, and have insufficient reputation points to post this as a comment (which I think is what it should be) I am reframing it as a PARTIAL answer, as the meta.stackexchange.com post suggests I should: (see Why do I need 50 reputation to comment? What can I do instead? )

I wanted to add to what Duarte Farrajota Ramos said about surface tension. Remember the surface tension and the bubbles make the liquid surface non-flat, so you need the surface normals to form a dome over bubbles and to creep up around the edge of the marshmallows and cup to look real... Also good to think how the bubbles interact with each other, and with the marshmallows: The bubbles should clump togeather and eventually merge or pop, they also stick to the sides of the marshmallows and cup, but they can't occupy the same space as each other nor intersect the edges of the cup or marshmallows. You may want to look at Jean-Francois Gallant (pyroevil)'s "Molecular Script" blender addon to allow particles, that you may use for bubbles, liquid, and marshmallows, to interact with each other. (Standard Blender particles can interact with their environment, but not each other.)


How To Fill The Offset With Material? I making a mesh of lattice (soft and hard parts) the soft parts are the squares and the hard one I have to fill the offset with. I tried to select each adjacent vertices, but nothing work out.
Also, I have a problem how to assign different young Modulus for this mesh, do anyone has an idea?
In reality it looks like that picture:

I like to use array for such surfaces

Then I will apply Arrays and close boundary using Bridge Edge loops

Next I need a subdivided plane, and I'll add cloth simulation on it. I need to add two vertexes at corners in a new vertex group to use as a pin group, so that the surface will appear like it held by corners.

Finally, I will add a surface deform on the lattice, so that it will follow plane deformations.


Is there a way to fracture a mesh only by it's polygons? I want the shards to be created not randomly, but by the edges of the polygons. Is there a way to do it?

As far as I know with the Cell Fracture modifier you only have the option of splitting by mesh vertex, not face which is not exactly the same, but could yield approximate results.

Check the first option on the top left

Otherwise look into the Explode modifier which uses particles to break an object by its faces


Modeling - symmetrizing part of a mesh I am currently working on the column.  When I smooth shaded it to see how smooth it is I noticed that the ring base of the column is not perfectly smooth because the to sphere modifier I used to make the square base round mess this part of the mesh a bit.

Is there a fast way to make blende smooth or symmetrize the part of the mesh highlighted in the photo?

I tried to do it but retouching single vertices but it will never be perfectly smooth.

Thanks in advance for any help.

You can correct this shape manually, using two tools.

01) Scale tool
- correct the height of edge rings, so they're level.
- just scale them to 0 along the Z axis

02) To Sphere Tool
- this tool will make a circle from any shape
- you can use it to correct the roundness of your edge rings
- select the edge ring and go Mesh > To Sphere (click anywhere to activate it)


basic low Poly Illustrations mountains I am a beginner and I think this is a basic, I am trying to use the blender to create a basic Low Poly Illustrations mountains. So according to tutorials

but all I could do with the tutorial's help is this

Need help. What should i change to make it the one in the tutorials.
thanks in advance.

You need to turn on Proportional Editing:

From the Blender Manual:

Proportional Edit is a way of transforming selected elements (such as vertices) while having that transformation affect other nearby elements. For example, having the movement of a single vertex cause the movement of unselected vertices within a given range. Unselected vertices that are closer to the selected vertex will move more than those farther from it (i.e. they will move proportionally relative to the location of the selected element
Influence
You can increase or decrease the radius of the proportional editing influence with the mouse wheel WheelUp, WheelDown or PageUp, PageDown respectively. As you change the radius, the points surrounding your selection will adjust their positions accordingly.


How to show out of bounds texture from a modulo operation Does anyone know how to show the cut parts?
I used a modulo operation with random coordinates and rotation for each cell, but when I try to randomly move them I get some parts of the texture getting cut, but I would prefer them to overlap.

The idea is to work at a given scale, so that the pattern will repeat and using a random (noise) at this scale (each cell will correspond to a random color).

Now imagine the result as a grid, the idea is:

For each cell we want to draw
We take all the 8 cells around it
And have a look if we need to draw something from these 8 cells inside the cell we want to draw (the one at the center of the 8 others)

What is done for each of these 8+1 cells is to offset and rotate the pattern with the random values, transfer the result in the central cell and look if it's inside the central cell surface.

Globally, this is some kind of 3x3 convolution and in consequence, the node setting is the repetition of 9 same figures:

If we go into more details:

The inputs are:

Texture coordinates
The scale at which we want to repeat the pattern
A tuning for the random offset
A tuning for the rotation

The final position is calculated by two node groups which multiply the input coordinates by the scale, then take the modulo 1 of it, so that the final result is between 0 and 1 (as the texture coordinates are between 0 and 1).

On the other part, we have 9 node groups on the left, which are here to calculate the randomness. It takes into account the input parameters and incorporate a noise texture.

Also, there is X and Y inputs: each of the 9 nodes has X, Y inside the pairs (-1,-1), (-1,0), (-1,1), (0,-1), (0,0), (0,1), (1,-1), (1,0), (1,1), to go through all the 9 cells we talked about at the beginning.

The goal of this node group is to result in the wanted random value, offset(ed) by the coordinate of the (X, Y) pairs in input.

Inside of it:

We take X and Y at the scale (X/scale and Y/scale)
Add the input coordinates as X/scale and Y/scale is the delta we want
Input that in NoiseDiscretize which is a noise mosaic at the given scale
Then add this random to the input: X and Y are offset(ed) and Z will be considered as the random rotation

The NoiseDiscretize goal is to ouput random value at the scale we want. The result is centered (we want output between -1 and 1).

Back at top level, we now have the random deltas we want + the cell to draw in at the good scale. We now mix that to get the color for each cell from the center cell point of view. PickColor node group does that:

Inside of it, we have:

The calculation of the rotation of the input vector, taking Z from the random input.
Then we input that in the pattern texture
But we'll keep a default color if the resulting coordinates are not between 0 and 1 (as if not this cell must not be drawn in the central cell).

Important: the pattern texture node interpolation is set to closest (if not border lines may appear).

Finally, the nine results are mixed by a mix rgb node using the darken operation at 100%.

Blend file for 2.8:

Note: I feel this kind of setting painful. But the bad is really that we need to duplicate the input pattern texture, as there is no way to have it as a parameter. And so the setting can not be reused easily.

But maybe another answer will solve this problem?


Blurry volumetrics in viewport? I am trying to make a procedural cloud. I followed a couple of tutorials, but every time I change to a volume shader, it gets blurry. This is the first time I'm messing around with this kind of stuff.
Is there a setting to control the blurriness? My first attempts went ok, but were also a little blurry on 2.83. I thought it might have been a version difference so I downloaded 2.9 but it is just as bad if not even worse.

Attempt using Blender 2.83

Attempt using Blender 2.9
None of the tutorials I watched looked like this. I saw some people having problems with the film lens but mine is at 1.5 (default).
Q: How to control the blurriness of the volume in the viewport?

Volumetrics is heavily reliant on lighting, so the first thing to do is to place lights accordingly. This is most easily accomplished by using Rendered Preview (shading tab uses Material Preview which uses it's own lighting by default), and to place a light close to your volume.
In addition to lighting, volume "crispness" can be controlled from the Volumetrics section of the Render Properties tab:

Tile size has the largest effect, however it also can also have the largest effect on performance. Increasing the number of samples will increase the detail, and shortening the end value will increase it further (bear in mind - the "end" value is related to your camera distance - too small a value and you won't see the volume except for at very close range.)


Material assigns to a wrong object I decided to practice normal mapping and followed through some tutorials. But something went wrong...

So, I have a scene with 3 cubes on 3 different layers. The one on the first layer is high-poly, second is low poly and third layer contains the cage. The low-poly one is unwrapped. I already baked the normal map, time to apply it to the object. And here's the problem:

I select the low-poly cube which I want to assign texture to, go to the texture tab and import the image... And for some reason the selected cube is black, but the one on the first layer has the material I just created! How is that possible? Why is texture assigned to the wrong object? No metter what I do, the cube that I need to apply the texture to stays black.

EDIT - SOLVED

I moved the cube from the second layer to the first one and now the material assigns correctly. So, for some reason the materials I create apply only to the first layer. Well, I think the problem is solved and I probably should read some more tutorials regarding layers.

EDIT2

The reason why the cube on layer 2 showed in black - there's no lighting source on that layer! Yes, that simple

My .blend file can be found here:

As @batFINGER mentioned in his comment - the cube on layer 2 is black because there's no light source on that layer. Solved.


Automatic weights are not being computed as intended (Topology issue?) I have the following model, and skeleton

I'd say the topology is good enough, so I wanted to use the auto-weights feature to get a quick "draft" for the weights. I know this feature can be a bit rough sometimes, but what I'm seeing in this case is way worse than what I'm used to:

As you can see here, after parenting with auto-weights, the arm deforms both the head and the upper body. You can also see the generated weights for the left leg, which seem to be even higher for the right side than the left side.

I'm thinking there may be something fundamentally wrong with either my topology or my approach. Is such a bad auto-weighting normal for Blender? I certainly remember it performing way better in my previous attempts.

I thought this may be due to a low poly count, so I've tried subdividing the mesh (2x) and applying the modifier. No luck so far.

Any ideas?

It turns out the normals were not correctly oriented. When showing the normals in the editor, I saw this:

After recalculating normals (Ctrl+Shift+N, and unticking the "Inside" checkbox), automatic weights worked much better.


Set the graphic card, before the first blender start. (Virtual Linux System) The problem:
Blender does not start and prints the following error message:
Error! Unsupported graphics card or driver.
A graphics card and driver with
support for OpenGL 3.3 or higher is required.

Background:
Blender should run on a virtual linux system started from a terminal with a X Server. The system gets the graphic card (NVIDIA Tesla P100 Card) by passthrough with OpenGL 4.6.
How to force blender to use this graphic card?
Is there a config file, where the graphic card could be explicit set before the start of blender?
Or is there some configuration of the X Server or the virtual system neccessary?
Usage:
I want to use blender for rendering images of 3D models.

Could it be, that the issue is caused, because blender required some sound card?
No, it is probably cause by an indirect rendering setting for the graphic card driver similar as mentioned here. The warning ALSA lib confmisc.c:767:(parse_card) cannot find card '0' is probably caused by a missing sound device, but can suppressed by ./blender -noaudio.


Removing duplicate bones Accidentally duplicated my bones and now there are two skeletons.  Is there a way to merge or delete the extra bones?

If your bones are named properly and uniquely, you can filter them by Select Pattern:

Go to 3D View menu, Select > Select Pattern..., then type '*.001', press Enter, then delete them all.

Or you can target them by Outliner:

Select the Armature object, switch to Edit Mode, go to Outliner, set Type to Active, then search .001 (the naming suffix to each duplicate and automatically given by Blender). Then B to select all bones, then go to 3D View, press X, choose Delete Bones.

If the methods above don't work well in your case, you can try Select Similar feature to select them quickly:

First, select the root bone, then press Shift G, choose Children, then delete them all. (For those with no children, usually you have to select them manually)


Horrible scene_update_post performance Since the Python API does not support events when objects are removed I had to go a pretty "uncomfortable" way to visualize contents of a game level to which I write an addon.

The game places different stuff in a level, and in Blender, I represent that stuff with Empty's. Each Empty has children mesh objects attached to it holding the model(s) to visualize that stuff (e.g. an item box, coin, banana with sunglasses or whatever crazy ideas the lead designers get).

Now, whenever someone deletes the Empty, I also want to delete all the children. Since Blender does not delete children automatically when the parent is killed, I check for "lose" children in scene_update_post. (I also do it the other way round: If an Empty has no children, I add the models to it).

This worked fine on a i7 6700K fullblown atomic power plant until I tested it on a 5 year old PC with an AMD Athlon 6000+ CPU. Blender uses one whole core all the time, so I cut down the code I do in scene_update_post to see what's causing this performance rape. Already these few lines make Blender use 24% of the core, when there are like 100 objects in the scene:

@bpy.app.handlers.persistent
def scene_update_post(scene):
    for ob in scene.objects:
        hl3 = ob.halflife3_props  # Yes, this name is made up

That's quite horrible. But I don't know any other way to check for objects which just lost their parent. It would be even more horrible to tell the level designers (which are not the biggest Blender boys) to select all children first and then delete them with the parent.

Are there better solutions to solve this problem? I thought about overriding the deletion behavior for objects of a specific type string I stored in my custom properties, but I have no clue if that's even possible.

The scene_update handlers are called on every update, which is basically the Blender's refresh rate. On empty scene I measured 200 updates/sec. On every cycle Blender has to update the whole scene and run the python code on top of that - that leaves a very small processing time for the python part (cca 17ms is ok which translates into 60 updates/sec).

Thus any code that is being run inside scene_update handlers is extremely performance sensitive and should be optimized.

Optimization tips:

Before updating or processing anything, check if it has to be updated or processed. In this case run the code only when number of objects changes, check the length of the scene.objects list first:

import bpy

num_objects = 0

def handler(scene):
    global num_objects
    if len(scene.objects) == num_objects:
        # Nothing to do
        return
    num_objects = len(scene.objects)
    # Your code here
    return

bpy.app.handlers.scene_update_post.append(handler)

You can use global variables, custom properties, properties of objects or binary flags to memorize when code needs to be run.
Update or process your stuff in an efficient way:

pre-sort arrays where it will increase performance
use data-structures optimized for the task (like dictionaries, numpy arrays, etc.) and access them in an efficient way
use list comprehension for cycling through list elements
use local variables wherever possible
profile your code to know where the bottlenecks are: How can you profile a Python script?

If it needs to be really fast, write it in Fortran, C, C++ or Assembly, then call it from Python.

Python is not C, Java or Haskell. Knowledge of how other languages perform to Python isn't very well transferable, your python code will pick up speed and performance with your experience in the language. The next example illustrates it well (from: wiki.python.org - Performance Tips):

  % timeit.py -s 'x = 47' 'x * 2'
  loops, best of 3: 0.574 usec per loop
  % timeit.py -s 'x = 47' 'x << 1'
  loops, best of 3: 0.524 usec per loop
  % timeit.py -s 'x = 47' 'x + x'
  loops, best of 3: 0.382 usec per loop

  Note that there is a significant advantage in Python to adding a number to itself instead of multiplying it by two or shifting it left by one bit. In C on all modern computer architectures, each of the three arithmetic operations are translated into a single machine instruction which executes in one cycle, so it doesn't really matter which one you choose.

Other resource for performance tips: Optimizing Python Code


Water rests about half an inch over cup from inflow I am trying to do a still image with a glass cup that is being filled up with water from a pitcher. I set up the Domain (Big Box), I have a circle filled with Ngon as inflow and a glass cup I modeled from a UV Sphere. The whole simulation works great, but the water doesn't go into the glass. It hits the top like as if there is an invisible cube around the whole object.

How do I fix this?

SOLVED! Okay so how I was able to fix this issue was I simply removed the plane from the Fluid Simulation. Not sure why that solved the issue but it did.


How can I control multiple points of a cloth sim? I'm following a tutorial for a crate design, but I wanted to add some extra flair to it. I thought it would be cool to animate a ribbon of wires as it slides open. It's almost done, but I can't figure out the last bit.

As you can see, the ribbon isn't pinned down on the opposite end, so it just slowly slides out of place. I found this answer on in another post, but I couldn't figure out how to apply those techniques to my test scene. I'm still pretty new to Blender, so I'd very much appreciate any help/advice. Cheers!

Instead of constraints you could hook the left extremity to an empty and add the vertices of the opposite extremity to the pin group. Put the Hook modifier above the Cloth modifier. In the Physics properties, increase the Quality Steps up to 20 to make it work correctly. You don't tell about what's supposed to happen after the last picture of your gif, does the extremity on the right stay still?

Even simpler, you could give up cloth simulation and use a Curve modifier:


Merge by distance does smth weird I accidently duplicated my mesh and can't go back anymore. When I merge by distance(remove doubles) it works but this happens, help

ps I tried changing merge distance, didn't work

Solidify modifier was inverted.
SHIFT + N in edit mode while everything selected fixed the problem.
thx @Gorgious


Move particles first and stick to texture target I would like to form particles to a logo.

I would like to let balls fall to ground and THEN move them to form a logo. The logo is controlled by a texture.

Is it possible to move particles to a texture target and distribute in the logo area?

I've made some tests with a texture force field but it doesn't work like expected. Maybe I misunderstand something here.

Thank you in advance

Chris

The Texture force field isn’t how it sounds - it’s actually a means of having fine control over the vectors within the force field by using the RGB colors a bit like a normal map with 0.5,0.5.0.5 being no force and +/- that being strength in each of the XYZ directions - rather than being a force that acts towards a texture.

Probably the best solution would be to create your logo out of geometry (rather than an image - or hidden geometry that sits behind the actual image) and give this a force over its entire surface to attract to the logo, keyframing the force strength to activate it at a specific frame.

This can achieve something like the following :

The 'Text' logo includes a Force forcefield (set to Surface) - initially keyframed to zero strength.

Once the particles have fallen and collected on the floor the gravity field weight is keyframed down to zero (to allow the particles to float) and the Force on the logo is increased to a large negative value to draw the particles. A Drag forcefield slows down the particles to prevent them getting out of hand.

As the particles get closer to the logo the Force can be further reduced to allow the particles to settle down.

Blend file included


Invisible objects with shadows not working as I intended I want to create shadows with invisible objects. I have found one answered question about this topic and used it but my objects didn't go invisible they are just like that as you see on the picture.

Use Is Camera Ray in your setup if you want the material to be invisible instead of Is Shadow Ray that makes the shadows invisible.


Walls on cross section of a solidified object look hollow When I cut a solidified object (with Alt-b) to see how it looks inside - its walls look hollow (see picture) on the cut plane (but remain solid were they were not cut). How can I make the walls look solid/full also on the cut? (Blender version 2.82.7)

The only way to do this is by using a boolean modifier (which is non-destructive and reversible, until you apply the modifier, so just don't ever apply the modifier).  The object that you use to drive the boolean can be hidden the whole time, and you can quickly toggle the visibility of the effects of the boolean modifier by clicking the buttons at the top of the modifier; camera button disables visibility in the render, and desktop button disables visibility in viewport.  So you can just always keep the render visibility off, and keep the viewport visibility usually off but quickly toggle it on for those screenshots by just clicking the button and then toggle it back off.  It's not as quick as Alt-B, but it effectively does exactly what you're explaining you want in the question and in your comments.


World coordinates of objects How do I see the object's world coordinates. I want to build a scene, view this scene with cameras at different locations and analize what I see. For this purpose, I want to be able to see where my camera and my objects are in the world and how far apart they are. Hence, I need their respective world coordinates and also it might be nice to be able to display the units/meters in the grid.
When I select an object, the location and rotation are all (0,0,0). This must be relative to some starting position of the object but not from the point (0,0,0) in the world.

So:

Where can I see an object's world coordinate?
Can I display units in the grid?
How would I be able to systematically change the position and orientation of the camera with discrete steps in some predefined intervals? Would that be done using animations?

Thanks in advance!

The location of an object is determined by the location of it's Origin.
Most likely all your object origins are at 0,0,0, and not in the centers of your objects.
To move the origins to your objects, select everything (A) and press CtrlShiftAltC> Origin to geometry.

I don't think there is any native way to display units on the grid.

I'm not quite sure what you mean by "systematically", but you could try snapping.


Why the mirror modifier ruins the boolean shape The top shape is the one I try to replicate. I can use the boolean modifier to create those shapes, but as long as I put the mirror modifier below the boolean modifier, the faces, for some reason, are lost. Does anyone know what caused this problem?

My Blend File

If you take the mesh with only the mirror, you can notice that the mirror will not merge the parts:

Here in the top part of the image, the mesh before the mirror is applied and on the bottom, after its application (both parts are not merged).

As they are not merge, Blender can only see opened meshes, so the boolean differences operate on open meshes too and that's why the result is opened too.

To fix that, just move the empty a bit along X.

Secondly, and for the same reason, the mirror needs to be set on top of the stack (at least before the booleans), as if it is not, when a boolean operates, the mesh is opened and you have the result shown in your question.

So the best is to set the mirror on top, then the subdivision and last the booleans:

Here is the result (after the empty is moved a bit along +x and the modifiers reordered:


Error generate rig in (rigify) after removing tongue and bottom teeth bone when editing the human metarig, I delete bottom teeth bone and tongue bone. Because I don't need them. When I generate rig, I get error message. So I recreate the with "basic.super_copy", rename, reparent and adjust their layer in relations tab. But i still get the error message and it won't generate the rig.
The error message is like this:
Generation has thrown an exception: 'bpy_prop_collection[key]: key "ORG-tongue" not found'
How to fix this so i can generate the rig?

Found it!
So, you create "faces.super_face" in rigify buttons tab.
delete all the face bone except the one that you accidentally delete. In my case, those are tongue bones and bottom teeth bone. Then, you parent them back to face bone, reposition them and click "generate rig" in object mode. It successfully generate the rig.
Notes for others, never delete any bones from the face rig. if you don't want to use them just deactivate "deform" in bones properties. *credits goes to R-800 for the info!!
Shout out and thanks to R-800 for helping me!!


Textures are visible in Texture viewport mode, but disappear in Render and Texture Paint I have a simple box with a texture on it, using a UV map. The texture displays perfectly in Texture viewport mode, like so:

However, when I switch to Rendered mode, it's just a grey box. If I try to use Texture Paint, it says I have missing textures. (Material mode is a grey box, too, but that doesn't trouble me) I don't understand this. I seem to have a texture, or else Texture mode wouldn't display a texture. But Blender seems to think I don't.

How can I force Blender to use this texture in Rendered mode?

My material settings:

My texture settings:

Make Sure your 3D Mesh is UV unwrapped.

Your material must have a texture attached.

As a temporary investigation tool you may select  ... Material Shading [Shadeless] or add more lights to the scene.

Here is an example.

We are in the texture pane ... indicated with red and white checkerboard icon.
In the image above you see Object Name, Material Name, Texture Name ... next to the push pin. Reading that line verifies the attributes are linked. These names indicate an active hierarchy. Object with subordinate Material with subordinate texture.  They are linked, attached, bound.

It can be confusing that in 3D View Window you may see an image temporarily on your mesh.  Feature perhaps. During render only the texture pane setting will be rendered in Blender Render mode.

Because I created the object, then created one material while the object was selected, the material is bound to the object.  Next I switched to the texture pane. I created a  new texture immediately after viewing the material.  The check box for the texture is selected.  The texture is bound to the material.

I am simply restating the settings you see here for emphasis.  Type [Image or Movie].  Image source you see a filename from the hard disk. By clicking the button you will see a select file dialog.

More texture settings.

Mapping UV with understood default name. Influence [Color]


mesh collision rigid bodies acting very strange. (bouncing, shaking, etc...) I am currently using blender version 2.92.2, and I am making a simple rube Goldberg physics simulation, however, for some of my objects I will need to use rigid bodies that have mesh collision instead of convex hull.  My problem is that whenever I do this, it doesn't behave like it should at all.  Some things just started bouncing uncontrollably while others just shook violently.  I turned the solver iterations and substeps per frame over 1000 and I felt like that just made it worse.  All my other objects that have convex hull collision behave normally, it's only when I switch it to mesh collision that it starts acting weird.
Here is an example I have, where I want this hammer to swing around the pivot point, and come swinging down.  However, it doesn't do that.
Here is a picture on frame 1:

And here is a picture on frame 100:

Instead of swinging down like I want it to, it starts bouncing around the center pivot point incredibly fast that it starts rising instead of dropping.
Here are the rigid body settings for my hammer object:

I will give the link to my file below to anyone who wants it.  Any help is appreciated.

I think that you're compounding workaround with workaround here.  You're trying to do stuff with collision when rigid body constraints would work better.  If that's the origin of your hammer, you're placing it at the center of rotation, rather than the center of mass, probably to get behavior you want, yet placing the origin here is creating other problems.
The important, non-obvious things for rigid body physics are:

All mass lies at the origin of the object.  No mass lies anywhere else.  If you place your origin someplace other than the intuitive center of mass of the object, expect unintuitive results.

Apply scale on all rigid body objects.

Simpler collision models are more accurate collision models.  (Which it sounds like you've already learned.)

Now, you want to hit something with the hammer.  Do you want to hit something with the handle?  If you don't, don't try to make this a rigid body; don't try to use collision to control the rotation of the hammer; use rigid body constraints to control the action of a hammer-only rigid body instead (a rigid body with an appropriately placed origin.)  Note that the hammer head itself is convex and convex-hull collision would work fine for it.  (But for your needs, I'd expect that cube collision would work just as well.)
So try this:

Apply scale on all objects.
Separate the hammer head to a different object.  Give it convex hull collision.  Set origin to center of geometry.
Remove rigid body physics on the handle, and parent the handle to the hammer head instead.
At the center of the axis, create an empty, give it a rigid body constraint physics, joining the axis (object 1) to the hammer head (object 2.)  Make the constraint "hinge" type and rotate it such that its Z axis points in the same direction as the axis.  Don't parent it to anything.

I think you'll find that does what you want.


Debugging material math nodes in cycles I've got a pretty complicated node tree which isn't behaving exactly as I'd like. I'm pretty sure I've made some mistakes in my math nodes..

I'm interested in the output values of the math nodes. The best solution I've currently got is hooking the up to a color ramp, an emission shader, and rendering them on something.

Question: Is it possible to query the output value of math nodes, directly in the node editor? It'd be great to not have to render and deduce the values by their color.

You should activate the plugin "Node Wrangler" (it's awesome). Beside offering many Shortcuts and hotskeys it also offers to view every? possible output. To enable it open File > User Preferences...Ctrl+Alt+U and go to the Addons section. Search for "Node Wrangler":

Next you can go into your node editor and Ctrl+Shift+Left Mouse-click on the output node of your choice. It should have created a Viewer-node that is linked between the selected node and the Material Output.

You can now view the output from the node in any 3d-Viewport after switching to Viewport-Shading Rendered. To render faster you can switch to Object-Local-view. Just select the object you want to view and press Numpad /. This will temporarily disable all other objects and speed up the preview rendering. (If you don't have a Numpad, the setting can be found under View > View Global/Local)

Note: This plugin also offers much functionality. Just press Ctrl+Space in the Node Editor to see it for yourself.


copy objects from one scene to another I opened a blend, and I created 2 scenes.
in the 1st I have a box and in the 2nd. I have a door.
save my file and then use the command duplicate window of the information bar in the window tab.
in each window place a scene, as you can see in one is the door and in another is the box.

My question is the following and consists of three parts!

How can you copy objects from one scene to another?
Can you simply pass an object from one scene to another as you usually do when you move an object from one layer to another layer?
Is there any way to do this?

The the Make Links operator to link objects between scenes.
Select a bunch of objects, press Ctrl + L Make Links > To Scene then pick a scene from the list.
Beware that without further action these linked objects remain linked and are in fact one and the same, that means any transformations made in one scene will propagate to others both in Object Mode and in Edit Mode.
To make them independent select them and press U Make Single User then choose an option. Object will make them move independently but still share Object Data or geometry. Object & Data will make them unique and completely independent.

For 2.8 series this can be found under the 3D View header menu, either under Object > Relations > Make Single User, or Object > Make Links.


BGE Actions not working to the rig [any of the other questions helped] I'm quite new at BGE and recently downloaded this rig, which is my main character. I built the animations in the action editor but when applying in the logic editor it doesn't seem to work.
I actually changed some things I thought could help: No mirror modifier, deform set to BGE, joined the skin with the clothes.
Here are quick topics of what I've already tried doing:
-add a cube and parent it to the rig
-apply the action to the rigid body
-tried merging everything but couldn't

Also, it has an armature modifier and if I apply it, the rig won't work properly.

First aid:

un-parent skin mesh object from armature object
ensure the skin mesh object has no modifiers at that state
parent the skin mesh object to the armature object in deform mode
ensure the skin mesh has vertex groups matching the bone names
ensure you have an animation (action) that belongs to the armature
add logic bricks that activate an Action actuator playing your animation in-game
start the BGE and activate the above logic

E.g.

Always -> AND -> Action Actuator


Subdivision surface problem So I'm making a basic car model here for fun, but when I try to add the subdivision surface modifier for smoother body, the side of the car become what it looks like in the screenshot. Is there any solution to make the side look less bulky? Any help is appreciated. :D

Avoid ngons

Subdivision surface give "predictable" results when you are using quads.

Your car's side face is a ngon, so is not a quad, but instead 4+ faces poligon which is triangulated by the modifier and then smoothed by creating a vertex in the middle of each existing edge.

Depending on what you are exactly looking for, you should make some changes on your model's topology.


Missing objects when opening old file in blender 2.8 I just got a updated to blender 2.8 and my objects that were in hidden layers are gone now, the collection layer tells me that they are in the scene but I cant unhide them also the collection is grayed out as well.

If it's been hidden in the viewport in 2.79 you can make it visible in 2.8 by going to the Outliner.

Click on the filter icon and under Restriction toggles select Disable in Viewport (screen icon).

You can now set the collection back to being visible by clicking on the screen icon behind the collection.


How do I get knife_project operator to use view settings within the operator? I have coded an Operator that tries to change the view to Top using bpy.ops.view3d.viewnumpad, and then the invoke knife_project() operator to select an area as projected by a Curve onto a mesh.

The knife_project() succeeds, and the view is indeed set to 'TOP' when my operator finishes, however, the projection vector used by the knife_project() operator is not respecting the bpy.ops.view3d.viewnumpad('TOP') call prior to the knife_project() call.

I can tell that whatever view happened to be showing at the time I invoked my Operator was used for the knife_project.  I was hoping to be able to set the projection vector of the knife_project within my operator so it doesn't need to rely on interactive user input.

Is there a way to ensure that the view matrix used by knife_project() takes into account the bpy.ops.view3d command?

def execute(self, context):
    bpy.ops.view3d.viewnumpad(type = 'TOP')
    setupTestareaScene() # load scene, start in 'OBJECT' mode
    # Operator selection
    # bpy.ops.object.select_all(action='DESELECT')
    bpy.data.objects[meshObj].select = True
    bpy.data.objects[curveObj].select = True
    bpy.context.scene.objects.active = bpy.data.objects[meshObj]
    # Select target area with projectorCurve
    bpy.ops.object.mode_set(mode='EDIT')
    bpy.ops.mesh.knife_project()

Thanks,
Jon

To get this to work you need to do a few things:

To override the context of the knife_project operator (which is necessary for running it outside the 3D view UI).
To force the view to move to TOP without using the viewnumpad operator, which doesn't come into effect until your script is finished, even if you try to force redraw the scene.
So to do this, you can rotate the view directly using the 3D view's region object (this is how you set the projection vector).
Then you need to force redraw the scene in a way that's kind of risky and considered bad practice, but I know of no other way to do this (bpy.ops.wm.redraw_timer). If this is not used, the view angle isn't updated and the knife projects from the current camera view. EDIT: Well there is one slightly cumbersome way come to think of it, you can wrap this whole thing with a Modal Operator. Here's a nice example of this.

Here's how the code looks like (This code works only after you already have both objects selected, and the target object in edit mode):

import bpy
from mathutils import Euler

def view3d_find( return_area = False ):
    # returns first 3d view, normally we get from context
    for area in bpy.context.window.screen.areas:
        if area.type == 'VIEW_3D':
            v3d = area.spaces[0]
            rv3d = v3d.region_3d
            for region in area.regions:
                if region.type == 'WINDOW':
                    if return_area: return region, rv3d, v3d, area
                    return region, rv3d, v3d
    return None, None

region, rv3d, v3d, area = view3d_find(True)

# Define context override dictionary for overriding the knife_project operator's context
override = {
    'scene'            : bpy.context.scene,
    'region'           : region,
    'area'             : area,
    'space'            : v3d,
    'active_object'    : bpy.context.object,
    'window'           : bpy.context.window,
    'screen'           : bpy.context.screen,
    'selected_objects' : bpy.context.selected_objects,
    'edit_object'      : bpy.context.object
}

# Set view to TOP by directly rotating the 3D view region's view_rotation
rv3d.view_rotation = Euler( (0,0,0) ).to_quaternion()

# Force redraw the scene - this is considered unsavory but is necessary here
bpy.ops.wm.redraw_timer(type='DRAW_WIN_SWAP', iterations=1)

bpy.ops.mesh.knife_project(override)


Rigify automatically link UI text file in 2.8 Rigify rigs rely on their rig_ui.py file to generate the addon's interface. If you link a character collection into a new file and proxy the rig, the UI does not generate because the rig_ui.py file is not linked. You need to append that text file as well.
In 2.79, you didn't need to do this. There was a setup using the Logic Controller that somehow made it so when you linked a group with a rigify rig, it also brought in the ui script. I don't know the details of how it worked, but it was part of the standard rigify setup, not something you needed to make yourself. This no longer works in 2.8 because the Logic Controller has been removed (it was part of the old Game Engine that has been removed.)
So, is there any way in 2.8 to get the same behavior again?

Assoc text with rig via a pointer property.
To test, in a file named "RIG.blend" have asscociated all armatures with an internal  text file "foo.py". An object using the armature is added to "Rig" collection.
Ran the script below  and saved the file.
import bpy
from bpy.props import PointerProperty
from bpy.types import Text, Armature
context = bpy.context

Armature.ui_text = PointerProperty(
        type=Text
        )

if __name__ == "__main__":
    for arm in bpy.data.armatures:
        arm.ui_text = bpy.data.texts.get("foo.py")

Result of linking collection "Rig" from "RIG.blend" to a new file includes the linked text "foo.py"

Note this is a Probable dupe of How to make a Text File dependent of an Armature object so that it appends with it to other projects?
and it is pointed out in accepted answer that this can also be done as a one off single python console code line, via a custom property.
Using a pointer property with a poll, as demonstrated here https://blender.stackexchange.com/a/193608/15543 is a quick way to make a UI.  The example is for a pointer to an object, but same principal applies for texts. eg could choose from any or all texts in blend to assoc with armature depending on poll.
Have linked the object to a bpy.types.Armature object. Could instead link to the object or the collection.


Create a UV Sphere / Object in Blender from Python Referencing to this code:
Create a Cube in Blender from Python

import bpy
import bmesh

bpyscene = bpy.context.scene

# Create an empty mesh and the object.
mesh = bpy.data.meshes.new('Basic_Sphere')
basic_sphere = bpy.data.objects.new("Basic_Sphere", mesh)

# Add the object into the scene.
bpyscene.objects.link(basic_sphere)
bpyscene.objects.active = basic_sphere
basic_sphere.select = True

# Construct the bmesh cube and assign it to the blender mesh.
bm = bmesh.new()
bmesh.ops.create_uvsphere(bm) # How to set the arguments right?
bm.to_mesh(mesh)
bm.free()

Can someone explain how to set the arguments write for this function?

bmesh.ops.create_uvsphere(bm, u_segments, v_segments, diameter, matrix, calc_uvs)

I am new to bpy, bmesh and I am looking for some more explaination on how to set these arguments right. My goal is to generate a UV Sphere with Subdivision Surface modiefier and smooth ;). Someone can give me some further explainations on how to create a UV Sphere with the script? Thanks :)

EDIT: Updated for 2.8x, for prior see revision

import bpy
import bmesh

# Create an empty mesh and the object.
mesh = bpy.data.meshes.new('Basic_Sphere')
basic_sphere = bpy.data.objects.new("Basic_Sphere", mesh)

# Add the object into the scene.
bpy.context.collection.objects.link(basic_sphere)

# Select the newly created object
bpy.context.view_layer.objects.active = basic_sphere
basic_sphere.select_set(True)

# Construct the bmesh sphere and assign it to the blender mesh.
bm = bmesh.new()
bmesh.ops.create_uvsphere(bm, u_segments=32, v_segments=16, diameter=1)
bm.to_mesh(mesh)
bm.free()

bpy.ops.object.modifier_add(type='SUBSURF')
bpy.ops.object.shade_smooth()

In this case you need keyword arguments for all but the first, meaning you need to specify the argument name like u_segments=. The first argument is a positional argument, you only need to give the value bm. How do I know that? Because the Blender API Documentation is not very precise here, Blender told me in the Error message "bmesh operators expect a single BMesh positional argument, all other args must be keyword".

u_segments and v_segments control the initial subdivision of the mesh. diameter is the sphere size in local coordinate system (object transforation comes on top). matrix can be used if you want to shear, scale, rotate or move the sphere in one step. calc_uvs is about UV maps, but don't ask me what exactly.


How do I calibrate exposure to match a gray scale? EDIT: I need to clarify the question.

Kodak sells A gray scale card. It is used to calibrate B&W filming. Film stock exposure is measured with a densitometer. If the film has been properly exposed and developed, each region of the card will register a specific density when measured with the densitometer.

This is different than a gray card. A gray card is used to adjust the exposure of a camera that has presumably already been calibrated, usually by the manufacturer.

Given the camera location and plane position in the blend file, it should be possible to set the lighting so that middle gray is properly exposed and then render. In the render, the luminance value of each patch should match that of the original image. This is similar to using a gray scale to calibrate a camera, but not exactly the same, but should be possible.

Is there some combination of color management settings that will accomplish this or do I have to use RGB curves to compensate?

(original question: I'm a black and white photography nerd. One of the things I've done with film cameras is to calibrate them to a grey scale card. I've tried this with no luck in Blender. With 50% gray properly focused, the values do not match the gray scale. How do I do this?

I'll attach a blend file with the lighting setups I've tried.

I've tried with three different lighting setups
 - Remove the world lighting (set it black) and use a sun lamp pointing perpendicular to the image
 - Remove the world lighting and use an area lamp parallel to the image directly behind the camera
 - Remove the lights and use the world lighting.

In each case, I adjust the strength until the 50% value on the gray card shows a value of ~.5000 when a point in it is clicked in a render. I understand that there might be enough fall off from the area lamp that the card is not evenly lit, but for the sun lamp and the world light this should not be true.
I've tried this with various combination of color management parameters to no avail. The closest I've managed is filmic/raw, but it doesn't match a gray scale curve.)

To create a Gray Chart is quite easy:
Give the object a diffuse shader and set the albedo to 0.18 (Meaning a reflectance of 18%)

If you render the image and left click on the UV/Image editor, you can sample where the scene referred values are, and how those are being transformed into display referred values by the color transforms set in the color management section. (For blender 2.8 right click on the image and the sampler window will appear)

The numbers that move at the bottom of the screen are (From left to right) pixel coordinates, Z depth value, then Scene Referred RGBA values, Then the RGB values that follow the CM (CM stands for color managed) are the Display Referred values, those of your final image.

Sampling will help you determine how the light is affecting your scene and how those values are being transformed on the final image.
So how are the scene referred values being transformed to display referred ones? It all depends on the settings on the color management.
For filmic blender, mid gray would be a scene referred value of 0.18, and it would get mapped to a value of 0.5 in display referred values. (sRGB tends to end up with display referred 0.5 at around 0.2 scene Referred)
If you are using Filmic Log encoding in as your view transform, you can also enable the False Colour Look. That will give you an interactive way to judge the "exposure" of your scene. Mid gray (in display referred values) will show as gray. Darker areas will be represented as blueish-purple and black, and bright areas as red, and eventually white once the values are too large.

Note that false colour should only be used with the filmic blender log encoding views. Using other view transforms will not result in an accurate representation.
For more details read the github page of blender render: https://github.com/sobotka/filmic-blender
So the same basic cube would look something like this in false colour:

Another example:
This scene (the cube is set with a reflectance of 18%):

Woulld look like this in false colour.

To understand how filmic blender works read:
Render with a wider dynamic range in cycles to produce photorealistic looking images


Altering size of emission object without messing up brightness of light in scene To create a light source using Cycles, I create a plane (or other mesh shape) and set the strength until it looks good.  When I scale that light source, say make it three times bigger, the total amount of light increases.  Highlights blow out and the scene sometimes goes almost all white. So, I reduce the emission shader's strength.

It seems that the strength is interpreted as luminous watts per square meter.  Is this how it works? Wouldn't it be better to be able to alter a luminous object, to control softness and depth of shadows, without changing the overall brightness contributed by that source to the scene. Is this possible to do this easily, and am I understanding what is happening correctly?

Set the emission using a driver

See this answer for the basics of setting up a driver.

Result


How do I Remove Reflections Off a Diffuse BSDF Surface? You can see that the plaster walls are somewhat reflecting the floor (which is 45% glossy, 55% diffuse) and I neither changing the glossy setting in the Ray Visibility for the floor nor the walls fixes it. I've tried upping the roughness, doesn't work. Do you guys have a solution?

Reflectivity is controlled by surface roughness. The higher the roughness value, the less reflective the surface. Another thing to try is turn off reflective and refractive caustics in the render settings.


Simulate a panorama using 6 cube faces I have the 6 cube face images required to render a panorama. I am trying to see if it is possible to use Blender to use these images as the textures for a cube and then place a camera inside the cube to generate a video of the panorama (by rotating the camera). If this is possible, I intend to use Blender's Python API to automate this.

Full disclosure: I have no prior experience with Blender.

If your question is: Is it possible?
Can't help you with the scripting but it's definitely possible to model the scenario.

You should easily be able to find out how to make a box and unwrap it. You may need to adjust the UV's to get the textures right. It may be easier to make a big texture of the 6 images.
Make sure you flip the normals to point inwards.


Whats the best way to make an operator tooltip depend on a Blender version? We distribute a Blender Addon that is prepared to work on multiple Blender Versions (we do not want to force our customers to update the Addon whenever they update Blender). But occasionally we add a feature that can only work on newer versions of Blender. So we inspect Blender and enable the related function (and its UI Button) only if it works in Blender.

However we know that our customers rarely find the time to read news about feature changes. So instead of silently disabling a feature when it can not run, we want to inform in the tooltips that updating Blender would enable the feature.

Here is how we do this for a Helper tool that provides Normals welding. This tool needs Blender 2.75 at least, and can not run on earlier versions of Blender:

class WeldNormals(bpy.types.Operator):
    has_normals = 'normals_split_custom_set' in bpy.types.Mesh.bl_rna.functions
    if has_normals:
        remark = "only operates on boundary edges"
    else:
        remark = "needs Blender 2.75 or newer"

    bl_description = "Weld Normals to adjacent objects (%s)" % (remark)
    bl_idname      = "sparkles.weld_normals"
    bl_label       = "Weld Normals"
    bl_options     = {'REGISTER', 'UNDO'}

    @classmethod
    def poll(self, context):
        ob = context.active_object
        return ob and ob.type == 'MESH' and self.has_normals

        ...

While this works, i am not sure if this is the most elegant way to do it. Is there any better solution available for this?

There isn't really a right/best way to do this.
It depends on what kind of control you want.

Personally, I would go for the least intrusive option where possible, so code remains readable, and when you finally drop support for older versions it can be removed without messing up your code history (so code annotations remain useful, eg git blame).

class bpy_support:
    """Store all supported features here"""
    has_normals = ('normals_split_custom_set' in bpy.types.Mesh.bl_rna.functions)
    has_other_feature = (...)

...

class WeldNormals(bpy.types.Operator):
    """Weld Normals to adjacent objects """ \
    """(only operates on boundary edges)"""
    bl_idname      = "sparkles.weld_normals"
    bl_label       = "Weld Normals"
    bl_options     = {'REGISTER', 'UNDO'}

    @classmethod
    def poll(self, context):
        ob = context.active_object
        return ob and ob.type == 'MESH'

    ...

    # Remove this block when 2.74x support is dropped!
    if not bpy_support.has_normals:
        __doc__ = "Unsupported, upgrade to Blender 2.75 or newer! " + __doc__

        @classmethod
        def poll(self, context):
            return False

This way exceptions are isolated and can be cleanly removed when they're no longer needed.

The trade-off of using a simple override is you can't mix in logic so easily.

If you were to do this for more then a few classes, you could make a utility function for this which overrides poll and the tool-tip.

# run before registration
operator_requires(WeldNormals, version_atleast=(2, 75))
operator_requires(AnotherOperator, features={'has_normals', 'has_other_feature'})
operator_requires(ThirdOperator, depends={WeldNormals, AnotherOperator})

...

def register():
    ...


Four GPU's versus two GPU's I'm asking this theoretical question because obviously I haven't tried it. Is 4 GPU's of 4 GB better than 2 GPU's of 8GB specifically for Blender rendering in Cycles since the app allocates a tile to each GPU in the process? Did anyone experimented or knows which combination is faster given that the motheboard, CPU and memory can handle both of them? TY

"Better" is not the question... it is the wrong word to use, as it depends.

4 GPUs will render 4 tiles simultaneously so rendering an image will be faster than with 2.

Memory: GPUs cannot share vRAM, once you hit the limit the GPU will fail.

So it all depends on the complexity of the scene you are trying to render, or how long can you wait for the render to be done.


Understanding Fisheye I set up a basic scene with a fisheye camera aimed at a sphere, with another sphere vertically above the camera, and another to the right (all three at the same distance):

(Note: Need that top pulldown on "Cycles Render")
Result is:

Now, I'm curious why the fisheye doesn't draw all three the same size. I was hoping it would fire rays out with an equal angle-gap.
Imagine we have a 1000x1000 image, and we are just looking at the 1000 of pixels along the centre-line, so (0,500) to (1000,500)
So I was hoping:
AngleBetween(pixel[1]-ray, pixel[2]-ray) == AngleBetween(pixel[501]-ray, pixel[502]-ray)

However, clearly this is not the case.
Why are the objects on the edge of the screen getting magnify-warped?
Is it possible to know what Blender is doing mathematically, without digging through the source code? (as far as I know, FishEye is a generic term for this type of warping, it is not an exactly defined projection...)
Also, is there any way to prevent this?
LINK: Spherical / Custom projection at code level

The problem is that you're trying to map a hemisphere (the view) onto a plane (the rendered image). There is always going to be distortion.

But you're right, you might be able to choose what distortion you get. Have a look at the various projections used in geospatial software. If you want equal angles, perhaps one of the equal area projections would suit you - although I suspect Blender's fisheye lens is already some kind of equal area projection.

As for implementing a different projection, you might be able to do it with an OSL shader, by placing a lens object in front of the camera.


Window Generator Disappears when changing perameters I have downloaded and installed the window generator add-on and indeed when I go shift>A add window it shows up the default. The problem comes from when I go to change the parameters the window just vanishes. Probably a stupid noob thing but my project is at a standstill until I figure it out. Any help appreciated.

Well after more research it turns out that the windows generator in 2.79 is somehow over ridden by archimesh which comes with 2.79.....all you have to do is check the box in add-ins and voila


How to save normal map texture from Blender? Normal map's neutral color has to correspond to #8080FF HEX value. In this case the resulting normal will be exactly the same as the normal of its underlying face. When I made a normal map texture in Blender and imported it into a game engine, I found that at seams I often get strong artifacts, because all my normals got skewed by the texture color offset (my neutral color was BCBCFF)

I am trying to save a normal map from Blender (OS is Ubuntu 15.10) so its neutral color corresponds to 8080FF. Here is what I am doing so far:

Generate a texture -- Color space 'Raw', 32bit float.
Bake normal map in Cycles or Blender Internal
To check that I have #8080FF as neutral -- in the paint mode I select 8080FF color, paint over neutral color region, and I can see the neutral color is identical to #8080FF
Save image as 16 bit PNG or OpenEXR
When I check the neutral color in Gimp it shows BCBCFF value

What am I missing?

Apparently what I was missing (Windows or Linux) is to check Save as Render box for PNG/OpenEXR. So the following worked for me to generate an external normal map texture:

Generate an image in Raw Color Space and with Float Buffer:

Note that Float Buffer is important, as 8bit dynamic range is not enough for a quality Normal Map. The Raw Color Space maps 8080FF as neutral color in Blender

Bake a normal map in Cycles or Blender Internal
Save resulting map as 16bit PNG with Save as Render checked.


Bezier curve lacking handles So I wanted some stiff hair particles, but a little twisted. I made hair, added a vortex, baked to the frame/shape I wanted, and then I hit Convert. This turned it into a mesh, but the mesh was like invisible lines in render. It did not retain the shape from the Cycle Settings. From a few searches, I decided to convert the mesh to a curve (ALT+C - Curve from Mesh) and bevel.

However, the problem now is that the resulting tubes have jagged edges. I went into Edit mode and found that none of the Control Points have any Handles. How can I get/create handles in a curve? Tried setting all the Handle Types.

solution is T menu > Tools > Set Spline Type > Bezier. Also, in the N menu make sure that Handle is enabled in the Curve Display


Need help with making fire currently I'm making a scene, where I want a torch to have fire, I watched a few tutorials, I made a fire by pressing spacebar --> quick smoke, then I clicked on fire and got a fire animation, is there anyway to make this in render view? It's not an animation by the way, tell me if you need a .blend

I'm assuming you do not have the flame attributes node hooked up to your node set up.

In the material, add an attribute node and type flame into the text field
hook up the fac output to a color ramp
add an emissions node and set its out put to the volume in the material output node
Connect the color ramp to the strength input on the emission node


F12 (render image) keeps repeating After I press F12, Blender (as expected) renders the current frame. But as soon as it has finished, it discards the product (without any opportunity for me to save it) and starts all over again, and again, and again ...

What's going on?

I inadvertently created 2 view layers. So it was not "again, and again", but only 2 repeats. I have deleted the layers, which solved the problem.


How to shift foward actions using python I have two sequential actions, and I want to shift them both foward.
I can list the actions with bpy.data.actons, but I don't know how to modify them.

While you can list the actions with bpy.data.actions, once they are in the NLA Editor you need to access them slightly differently.

Once in the NLA Editor they are classed as strips on nla_tracks which are stored in the animation_data for that object.

For example, in the case of the image you have shown you will use this to access an individual strip:

bpy.data.objects['sash_KIN_TYPE_S'].animation_data.nla_tracks['KIN_TYPE_SL'].strips['KIN_TYPE_SL_close']

From there you can access the frame_start and frame_end properties of the strip. Increasing both of these by the same amount will move the strip. For example:

strip.frame_start += 10
strip.frame_end += 10

To shift multiple strips you can loop over the strips collection in the same way you would loop over actions:

strips = bpy.data.objects['sash_KIN_TYPE_S'].animation_data.nla_tracks['KIN_TYPE_SL'].strips
for strip in strips:
    strip.frame_start += 10
    strip.frame_end += 10

I found all of this out by hovering my mouse over the properties in the NLA Editor and looking in the tooltip (because I enabled Python Tooltips in the User Preferences).


Is it possible to branch a Bezier curve randomly? I am trying to make custom plants, and am wondering if there is a simple way to split/branch a curve, procedurally would be best. The Sapling addon doesn't really do what I need, but is the general sort of thing I want to accomplish (the Branch Splitting part).

You could try a L-system. To use curves the way you describe it would require scripting.
There is a plugin for 2.6 available here
Related:

Algorithmic Botany


difference between dimension and scale in blender First time in metric system and I can't figure out what is the dimension in blender, first of all the scale of a cube is one and the dimension is 2:

scaling the edge of only one edge up in edit mode turns up the dimension of the whole object to the size of the scale of the edge, and not the object in an average:

So, I'm a bit confused, about what the dimension in blender actually refer to, and what the difference between it and scale is?

EDIT:  What if the bounding box length and the edge are of equal size:

Scale is a factor applied to an object non-destructively, on top of its true real
world dimensions. It doesn't really modify in underlying geometry or mesh data unless applied.
A 2 units cube with a scale of 2 will result in a total size of 4 units; a scale factor of 0.5 will result in a final size 1 unit. Scaling doesn't change the actual objects size, so if you enter Edit Mode on a cube with a scale factor of 2 its edges will still show dimensions with a perceived factor of 0.5 in relation to Object Mode because that is their true size.
Also see related Why do the measurements of this object seem erroneous?
Since scale is applied per object, several objects can share the same objectdata (shape defining geometry) but appear to have different sizes because each instance has a different scale factor, despite its geometry being the same and thus having the same true dimensions in Edit Mode.
Object dimensions are the result of the scale factor multiplied by the actual geometry size, and are measured relative to the size of its bounding box. If you change one edge size in Edit Mode it will change the cube's bounding box size, and hence its dimensions.


Mesh deforming when add bezier modifier I´m trying to model a race track using a bezier curve, but, when I add modifiers -> array -> curve I get this :

What should I check for to get the mesh following the curve correctly ?
Thankyou

As mentioned by Carlo, looks like the mesh and the curve don't share the same exact origin coordinates in the scene.

Make sure the have the same origin, and that the origin of the mesh object is sanely placed relative to it's geometry.

With the mesh object selected Shift + Ctrl + Alt + C > Origin to Geometry, or manually place it where you want it using your 3D cursor and then Shift + Ctrl + Alt + C > Origin to 3D cursor

After that make sure your object is aligned with the curve by selecting the bezier, Shift + S > Cursor to Selected, then select your mesh Shift + S > Selection to Cursor.

Optionally if you want a simple circular section consider using the bevel option directly on your track curve, or for more complex shapes perhaps a 2D bezier curve in the shape of the section of your road/track.

EDIT Upon further inspection to your file there seems to be something wrong with that bezier curve object, not quite sure what it is exactly, but whatever it is it's messing up the curve modifier.

Anyway to solve whatever problems you are encountering follow all the above steps, make sure your track curve has its origin at the scene center (world coordinate 0,0,0) by pressing Shift + C to center the cursor, then Shift + Ctrl + Alt + C > Origin to 3D cursor

Now clear all the transforms on or "section" mesh with Alt + G and then clear scale with  Ctrl + A > Scale. Make sure it is centered in the scene origin just like the track's origin.

To "fix" your bezier curve track, whatever is messed up about it, just add a new spline object, Shift + A > Curve > Bezier and join the original to this new one (not the other way around) by selecting the track spline, then the new one and pressing Ctrl + J.

Then enter edit mode and delete the new small unwanted segment. If you now rebuild your modifier stack in the mesh now it should work ok.


Glass shader blocks light? I know a commonly duplicated question is "Why is light not passing through glass?" or "Why does my glass shader ignore lighting?", But mine's a bit different.

The Problem

I 3D modeled a type of weapon called a kukri in Blender, and I created a little display for it:

The speckles are the lighting emitted from the little spotlight-type things on the corners, I'm just running low samples at the moment.

As you can see, the shading looks dandy. Now let's see when happens when I put a glass cover on top of it:

Everything on the inside goes dark. Here's a representation of the geometry of the cover:

What I've Tried

I've tried the following node setups, neither of which solved the problem.

Here's my settings:

Download the .BLEND

Change clamp indirect to 0.  You have it set to .01, which feels like it should only affect it in a small way but in truth the smaller the value for clamp the more of an affect it will have.  0 = off.


AMD RX 460 GPU multiple layers incorrect render I've come across this weird issue.

I have two layers I want to render and combine. Those were set up with the "Setup Tracking Scene" button. The first layer always renders without problems. However, the layer that contains my shadow catcher renders with the top of each render tile's top missing, or artiffacted (based on what tile size I choose). But when I turn off rendering for the first layer, the second one renders fine. Also, if I render on my CPU, everything renders OK, but it takes about twice as much time (I'm using an old Athlon II).

Here's what the scene looks like:

And here's the background layer rendered:

I'm using cycles in Blender 2.78, on Arch linux. My GPU is an AMD RX 460.

AMD has a long history of issues with blender.

Try updating the drivers for your card.

There has been a lot of work lately to get AMD to play nice with blender, try using one of the latest builds: https://builder.blender.org/download/

Otherwise it looks like a bug. Please read the following link: Best place to put bug reports?


Weird Mirror Glitch? First post here. I have a weird issue in Blender involving the Mirror Modifier, or lack of in this case. I copied a hand model from another project of mine and adjusted it to make it more feminine for my game character, however, even without a Mirror Modifier, the program is acting like there is one; I've got a second one and both will highlight if I click on one and they'll both disappear if I try to delete one. They're both in the same layer as well. The same thing happens with the Subsurf Modifier, too - it still acts like it's enabled. Also, the positioning of it is weird. Even if I set the 3D cursor and pivot point in the centre, the left hand stays at the bottom left instead of aligned with the one on the right on the X axis.

Any ideas what's going on? Have I stumbled on a glitch or something?

Thanks.

Sounds strange indeed. Perhaps try this checklist:

Edit Mode> T> Options> X Mirror = Unchecked.
Alt+S, Alt+R, Alt+G to clear transforms.
Ctrl+A> Location then Rotation then Scale to apply transforms.
Ctrl+S> Cursor to Center to set your 3D Cursor to the center of the world.

If none of this fixes the issue, you may also want to try exporting and re-importing a mesh format like .obj or .dae.

I hope this helps. Good luck with your project!


Why are there 2 transformation orientations in the viewport header? I've just started using Blender 2.91 and noticed there are now two transformation orientations in the 3D viewport. The left one affects the gizmo and does what I expect it to but the right one has no effect but is where I can add a custom orientation.
The annoying thing is the (,) shortcut selects the right one which is not what I want.
Is there a way to set up a short cut to select the left orientation?

After some experimenting it seems that the left orientation is an override for the right one. If it's set to default then the right orientation works as expected. This was very confusing as the tooltip show the same for both. Maybe there is a scenario for the override but personally I can't see one.
That said Blender still rocks!


Navigation is completely not working I was using blender and I created a little character and when it came to putting it in pose mode so I could begin to animate it, from then on the navigation around the 3D window will not work it will zoom in and out but the only way for me to navigate now is through the View menu and this obviously takes forever and I can't get the angles I want, could I have pressed something to make it this way? I just generally cannot navigate at all around my interface.

I find when I have navigation problems, selecting a mesh and pressing the . key on the numpad fixes it.


How to unwrap a tree trunk? I've attached a blend file for anyone who knows about uv unwrapping and baking. I appreciate whoever takes a look and gives me some help.

https://drive.google.com/open?id=14VvXcaYQRoyfXL1y10si2aBirmCIKq1o

If you take screenshots from multiple sides and upload them I can just tell you how.

Add a seam everywhere there's a super hard angle between two surfaces, and in UV window unwrap the object. This is super straight forward, tbh.

On the inside of the piece of wood it doesn't matter too much where you place seams because likely no one will see inside depending on the size of the object. So just place them where most convenient and least likely to produce super obvious seams that aren't possible to hide without being super inconvenient.


Adding Baked Audio Rotation to a pre-existing rotation I'm making a music video, and I would like the rotation of the below plane to be accelerated, but not absolutely determined, by the audio keyframe bake.

In other words, I would like the plane to rotate continuously in one direction, and have this rotation be accelerated by audio form.

So every time the audio spikes, the continuous rotation of the plane accelerates, then returns to a standard rate of rotation.

As it is, just baking the f-curve, the plane just wiggles slightly between twitches between 5.9° and 0°, which is not a very interesting effect.

In Bake Sound settings (when selecting sound file) click on additive option:


Prevent (accidental) deletion of object Is there a way to "lock" an object so that it can't be deleted without unlocking it? Kind of like the option often present on digital cameras.

If not, any other way of preventing the user from deleting an object?

Also, this is for an addon, so no problem with script-based answers as a last resort.

You can override the delete function to achieve this :

add protected boolean property for the object type
set this property to true to prevent the object from deletion
the new delete function will only delete unprotected objects

this is the new delete operator no other changes are needed just include it in your addon and it will override the default delete function :

import bpy
from bpy.props import BoolProperty

bpy.types.Object.protected = BoolProperty(name = 'protected', default = False)
def main(context):
    for obj in context.selected_objects:
        if not obj.protected :
            bpy.context.scene.objects.unlink(obj)
            bpy.data.objects.remove(obj)
        else :
            print(obj.name +' is protected')

class delete_override(bpy.types.Operator):
    """delete unprotected objects"""
    bl_idname = "object.delete"
    bl_label = "Object Delete Operator"

    @classmethod
    def poll(cls, context):
        return context.active_object is not None

    def execute(self, context):
        main(context)
        return {'FINISHED'}

def register():
    bpy.utils.register_class(delete_override)

def unregister():
    bpy.utils.unregister_class(delete_override)

if __name__ == "__main__":
    register()


Slide two edge loops away from each other I've been looking for this feature in Blender, either upon the time of creation using Edge Cut and Slide or afterwards, in just editing the mesh. I'd like to know if it's possible to evenly slide two edges away from one another in Blender?

Here's a picture of what I'd like to be able to do:

Thanks upfront!!

For two existing edgeloops the only way I know of is through scaling.
Scale the two edgeloops with S and constraint to the relevant axis with X, Y or Z.

Of course this only works with axis aligned loops, and with evenly sized geometry on both sides, otherwise it will create distortions.

If you don't mind creating new edgeloops then beveling does the trick.
Just create a new edge loop with Ctrl + R, then Right Click to leave it in place. Select the newly created edge loop and bevel it with Ctrl + B.

This works even on skewed or twisted geometry, non axis aligned loops, and has the added benefit of allowing absolute dimensions for distance, as opposed to only percentage factors with true edge sliding.


Snap Viewport Camera? There's a navigation option in 3Dcoat where you can just hold the Shift button while rotating  your view and it will snap to nearest elevation (front back side etc).

This renders the need for switching views null. I know there is something similar in Blender but would love to remap what ever that option is to Shift in the keymap menu.

Any ideas folks?

You can hold down Alt while dragging your view angle around. This will snap the angle to the default numpad angles.


The menu that shows up when a new mesh is added disappears when I click on it I am not able to access the menu when we add a new mesh. It disappears when I click on it. What do I do?

Adjust Last Operation panel can be used just after some operation is performed. It does not disappear if you click on it, however it will disappear when you click somewhere else.

It is possible to bring it back by going to Edit-> Adjust Last Operation or with F9, however this is only until you perform some other operation. When you do, it becomes the new last performed operation, the previous operation then becomes completely finished and you cannot change its parameters any more.


Setting all default_values of nodes to 0 does not result in expected black output What I am trying to accomplish?

I am iterating over all nodes of one named material from the output node and going backwards and want to set all inputs.default_value to 0.

I use the Code from sambler on blender.stackoverflow to iterate.

Why does it has no impact if I just set the input.default_values on the outermost level. There is a "Node Group" and I do have to set the default_values for it's child nodes to get any change at all. I would have expected the outer two RGB inputs "Paint Color" and "Specular Color" to be the input for the "Node Group" and therefore affect the rendering. This would be the behaviour of the blender UI and I expected the API model behind it to behave the same.
What node attributes beside "default_value" am I missing, as clearly default_value and in case of default_values of multiple dimensions like RGBA default_value[0..3] are not the only possible input values in the node_tree, otherwise I would expect a black output again (the outer spherelike object has only assigned this one material!)

Which scene am I using?

Scene: Metallic Paint by elbrujodelatribu on blendswap

What output do I expect

The object to be black as the material has only two RGB inputs for the "Paint Color" as well as the "Specular Color" and both the volume as well as the displacement input should not matter.

What do I get

This is the image with all inputs.default_values set to 0. The red outer object should actually be black but it still has a huge red component as well as a strong reflection.

Some nodes like the RGB nodes have only outputs and they have to be processed as well if one wants to controll all possible inputs using the API. Also some nodes could have additional variables like "operation" mode or "use_clamp" in the Multiply node.

To gain complete control it is necessary to look at inputs as well as outputs. In the node setup above the RGB nodes are the main expected user input/control. These nodes do not have any input-(sockets) only one output(-socket). In the node editor this is obvious as the RGB node has no input socket. Working with the autocompletion in the blender python console does not reveal this information as easily.

If we expand the metallic paint material in this blendswap scene by elbrujodealtribu we see that there are even more cases to consider. The Multiply node has also a boolean use_clamp this will require special treatment. The second value of the multiply node is not linked and therefore would require to be set while the first value of the Multiply node is linked and therefore does not require to be set. Therefore each type of node (node.type) will likely require special treatment


help me to install and run version 2.9 in Ubuntu How can I install Blender 2.9 in Ubuntu linux?
I installed the blender 2.9 file and extract it then when I tried open it there was so many files so I ran the file which is named 'blender'. I have tried to run the file multiple times, but have failed each time.
I also had a older version of blender 2.79 which I can use, but I need to use blender 2.9 for my animation project because it is the version my friends are using.

You have to make a file executable before running it.I will explain two ways to do that here.
Gui way

Right click on blender
click on properties
click on permissions tab
check make as executable box

now apply your changes and run blender

command line way

navigate to the location were you have extracted blender via a file manager.

right click on empty space and select open terminal here.Note open terminal option may be in different sub menu for you.

now execute the following commands one by one

  chmod +x blender
  ./blender


Bevel modifier buckling bug I've noticed on the bevel modifier that edges at vertex junctions of three or more bevels actually buckle in and out when using a profile of 1. I want these to be straight and not bow out/in since I'm using these meshes for NURBS conversion and having something imprecise like this can be quite a problem for production. I want a 1 profile since it holds edges like controlling loops normally would and decreases the time it would take to cut all loops by hand.

Here's a screenshot of it buckling compared to a .99 profile (even with .99 profile it pinches too (outside edgeloops) which isn't desirable. If there is a fix or a plugin for this let me know!

Bad news
This is a bug in Blender 2.79b. It has already been reported.
Good news
There has already been a fix for this. If you download Master at https://builder.blender.org/download/ and check with the exact same file, the Bevel should work as expected. The same fix has also been applied to the 2.80 series of Blender as well.


Blender 2.8 different worlds settings for different view layers Is it possible to have 2 different worlds in Blender 2.8? If positive, how do you do that?

This is not possible by using a new view layer, however you can create a new scene which has it's own world settings.


How do you change generated to object coordinates without changing the xyz I was just wondering how you change generated to object coordinates without changing the xyz
I am getting a little bit closer to it by adding -0.5 to the generated coordinate, but I'm still missing something. What is it?
On the image, it needs to look like the top and the bottom is what I have tried.

Thanks in advance

is it a plane?
You should get it right if that's just a plane.
try applying transformations!
if that's not a plane then fiddle with those numbers and you will get it!
(if it's not a plane then the z dimension matters and the origin would be at the center, so it will not show that color as your looking it on a surface.


Vertex stuck during cloth animation on rigged model On a model ripped from a game, I separated the outfit from the body to make it easier to rig.

Now I want to attach the outfit back on the body, here are the two meshes :

The main body :

And the outfit itself :

I parented the outfit to the armature and used the "transfer weight" function from the main body to the outfit.

I want to give the lower part of the outfit a cloth physics, so I applied the cloth modifier to the whole outfit mesh, with the upper part as pinning group.

But when I animate the model, deformations of the cloth appear and they don't make any sense to me, see for yourself :

The more I lower the end of the "pinning group", the more spikes I get, so I guess it's related to bad weight attribution, but I can't see any problem when I switch to weight paint mode.

edit:

There are just too many conflicts in this file and the structure does not make it easy to try resolve.

To start / you have a vertex group called Dress assigned a weight of 1 that does what exactly? Nothing that I can see and would just remove it. A lot of the other vertex group came along for the ride with your transfer, like the fingers. You don't need those vertex groups in your outfit. You also have geometry overlapping like the cloak that is part of the Main Body object and the Outfit object which does not make things easier to understand.

If you select your rig and activate the 3rd last layer you will get your deform bones. Select the chest bone in pose mode and then the outfit before going into Weight Paint. You will see the weight painting is not that successful...
and the weight group also makes that clear...

A few suggestions. Work in Solid mode as it is easier to see. Ctrl N - will turn your normals all the same direction which is never a bad thing. Automated proccesses seem like a good thing but can also cause more work as you have to clean them up.

Guess you know you are being quite ambitious to try so many things at once?


Adjusting an animation The animation of the arm needs to be rotated slightly

Hello I have a motion capture animation applied to a base mesh as in the clip, however the animation needs to somehow be rotated on the arm - so hes not burning his ear...

is it possible to rotate the arm somehow without affecting the rest of the animation?

Side info...
I'm not an animator, so the graph editor is a bit of a mystery to me.

Animations are imported on the FBX and thus lack animation controls...

With thanks
Natalie

You really should open up the Graph Editor...

I you select the arms, you should be able to uncheck all animations at first by clicking the upmost EYE icon

Then select one (open the eye) of the rotation channels (you may have X Y Z Euler Rotation unlike in the image). Then keep your mouse cursor over the curve and press A to select all keys, then press G to grab them and then Y to restrict the Y axis and then just move your mouse up or down to adjust the rotation of the arm.

Hope this helps