Why does background image disappear, UNCHECKED - when the 3d view is closed, re-opened, or duplicated? I open a blank project, add a background image, and an object.  Closed the 3d-view, opened it again and the background image was GONE.  I revert-to-saved, and image is restored.

This is NOT an ORTHO or PERSPECTIVE issue.  In my screen capture - you can CLEARLY see, on my the bottom window (which I thought was a copy of the same 3d view) - the toolbar, "BACKGROUND IMAGES" is UNCHECKED and the file does not exist.

Re-create problem:

1) open new project
2) Add background image
3) select "3d-view" from the bottom toolbar, where "timeline" defaults to.

The background image settings are saved to the 3DView that the properties region is attached to. By changing another editor to a 3DView a new set of default values are used, they don't get copied from another 3DView.

If you setup the background images and then split the 3DView, then the background settings will get copied to the new editor.


Can we set any specific folder in file browser of blender? I have made the specific folder save folder for blender. Now every time I want to save a new project I have to manually visit that folder to save the project. Can I just set the folder in blender file browser?

To set folder in favourite just select the folder which you want to add on file browser favourite. Press mouse right click: then select add bookmark. The folder will be added to the favourites in file browser of blender.


cuda error at cuctxcreate launch failed I have been getting a launch error when i try to render a scene using my GPU.
I use a GTX 1070 on blender 2.78 and the scene is very simplistic so there should be plenty of memory available. Any Idea what is going on?

I have a GTX 770 and I was having the same error but I was trying to use "Branched Path Tracing" instead of "Path Tracing" under sampling. I was able to cure it by turning down my tile my tile size under performance. I set my tile size to 64x64. I tested several different sizes up to 128x128(Mine would crash at any size larger) but 64x64 was by far the fastest on my GTX 770 2GB. It may be different on your GTX 1070. I also couldn't see what your sampling is set to so this might not even apply to what you're experiencing. It wouldn't hurt to try smaller tile sizes.


GreasePencil: can't copy datablock Trying to create a GreasePencil addon I already fail at the first task. It seems the GreasePencil doesn't inherit the copy() function from ID.
Where and how could I add this (as this is pretty crucial for what I try to do)?

Nope, GD copy() is not implemented.

No way to know that from python afaik, you have to look at the C code (source/blender/blenkernel/intern/library.c, id_copy() function, around line 300).


Render Animation renders the same frame each time while Wiggle Bones addon is installed Using Blender 2.83 and wiggle_bones1_5_b16. I have recently rendered plenty of still-frame animations without this addon but after installing it, something has suddenly gone wrong. I want to render frames 1-24 into .png's, inside a folder with some gifs in it.
I have tried baking the keys for the addon but the same issue happens. Others are experiencing the same problem (see comments):
https://www.youtube.com/watch?v=hpQW9RQdwNA
Uninstalling the addon, restarting Blender makes rendering work again even though some new bone properties get leftover.
It does have to do with the "Wiggle Bone" addon because I was just able to render successfully after uninstalling it again (its Properties get leftover in the bones but it is ok). But after installing it again, I have the same problem.
Addon download:
https://blenderartists.org/t/wiggle-bones-a-jiggle-bone-implementation-for-2-8/1154726

HOW TO RENDER ANIMATION WITH WIGGLE ARMATURE:

Select all bones with Wiggle settings applied and bake them in
the wiggle bone properties area of the Bone tab. When you do this,
that panel becomes deactivated.
…however, rendering animation will still fail until you go to the
armature tab, scroll to the bottom, and uncheck “Wiggle Armature”.


How can I access a property if I know the path? Actual Question:
I know I can get the value of a property in Python by a line of code like this:
shader = bpy.context.space_data.shading.type = 'WIREFRAME'
I know some modules access that data by getting the path to it as text and use that. So if I have the path in text, like this:
shader_path = "bpy.context.space_data.shading.type"
How do I use that string to access that value and read it or set it?
Background (likely unneeded):
I have a script that will render images from a number of different cameras and the rendering properties (such as resolution, background, and shading type) will change from camera to camera. I'd like to be able to just store all the value locations in a list so I can step through it and save the values in a dictionary, in Python, then, when I'm done with the rendering, just step through the keys of the dictionary, take the value, and store it from where I got it. (I'm using a dictionary and not a PropertyCollection because this is short term and doesn't need to be stored long term and a dictionary will be easier to write.)
If there's a better way to do this, I'm open to it. I just don't want to be managing over half a dozen statements to get values and to reset them after the rendering, since I may be adding more property values that will need to be saved as I make changes over time - so I'd rather just be able to put the property location in a list and it's looped through. I think this is also a good idea since it's consistent with how classes are registered and unregistered now days.

The simple answer is that you can't get the value from a string of the entire path. You need to have a path to an object where you can use getattr() to get a value or object from that object. But it's simple to write code to bypass this and use the entire path.
Also, I am probably not using all the correct technical terms, so if someone points out what I need to change, I'll gladly fix it - or they can just edit it.
If you have the path bpy.context.scene.render.image_settings.color_mode and want to get color_mode, you cannot use:
getattr(bpy.context.scene.render.image_settings.color_mode)
But if you have the path to the image_settings object, you can do this:
getattr(bpy.context.scene.render.image_settings, 'color_mode')
So, normally, and for getattr() you need the path to, and including, the object (in this case image_settings) and then specify the object or setting you need.
But if you have an issue where you'll have entire path names in strings (like bpy.context.scene.render.image_settings.color_mode), for whatever reason, it's possible to simply step through each level to get to the item you need. Here's how I did it:
import bpy

cm = "bpy.context.scene.render.image_settings.color_mode"
cd = "bpy.context.scene.render.image_settings.color_depth"

path = cd

#
#start with splitting the string into all the different nodes
nodes = path.split('.')

#
#loop through all the nodes in order
for node in nodes:
    #If it's the first node, bpy, we have to start differently
    #than wth the others - so set the object to bpy
    if node == 'bpy':
        obj = bpy
        continue
    #We have a node, so now get the next one
    obj = getattr(obj, node)
#Print out the final node we've gotten to - note that now the
#object (obj) is not a node, but the value stored in that node
print("Last level: %s, type: %s" % (obj, type(obj)))

I used the path to two different settings, color_mode and color_depth as examples and you can easily change which one you're testing in the 4th line of code (not counting blank lines).
Just split the entire path at periods, so you'll get a list with each level of the path in it, in order. Then step through each one (note it's a bit different on the first one). At each level, you use the current object to get the object at the next level down. When you reach the end, you'll have the object (whether it's just an object, or a string or setting value) that you need.
The output for this is just:
Last level: 8, type: <class 'str'>
Taking this and turning it into something you can call so it returns the object you're looking for is trivial. Just pass the entire path to the function and it returns the object.
This does not include any error trapping and assumes you're starting at bpy, so if you want to be able to start at context (since that's often easily available), you'll need to work in how to handle a string starting with that level.


Code takes more time to run the more complex the scene gets I have a script that parses a text file and creates the objects specified. The object creation should theoretically be O(1).

This method is the only thing other than an if quick unrelated if statement to set a Boolean and there's an increment of an int after that I included in my timing bounds.

def createAtom(aType,location):
    bpy.ops.mesh.primitive_ico_sphere_add(subdivisions=4,size=atomProps[aType]['size']/100.0,location=location)
    ob = bpy.context.object
    for polygon in ob.data.polygons:
        polygon.use_smooth = True
    if len(aType): ob.active_material = atomProps[aType]['material']
    ob.parent = empty
    ob.name = str(currAtom)

as you can see, it doesn't iterate over anything except for setting smooth shading, and with that loop commented out it still increases pretty drastically over time.
The anomaly with the bond times is that sometimes there are double bonds, so it takes twice as long.

This is a common issue related to unique name lookup.

When an object is added to scene, blender ensure the name is unique.
So the more objects you add, the more time each one require for the name lookup.


Why can't I select bones in weight paint mode? I cannot select bones once in weight paint mode. I have already turned off "Lock object modes" and I can switch between pose mode and weight paint mode so that's not the issue. I can go into pose mode and move my mesh around so I know it's parented and I know it has an armature modifier. I am not sure what I am doing wrong.
Here is a link to download the file. I am using the latest version of Blender at the time of writing this 2.82

https://mega.nz/#!QUpljRYQ!kFUGNKmHashr6CYRD-hbAy9V3pSqacHfjZB7C1xzXdg

In 2.91 this is no longer working. Selecting a bone in weight paint mode throws both the mesh and the armature into object mode. Then we have to switch back to pose mode in the armature, then back to object mode, then select the mesh, then switch it to weight paint mode.


Fluid simulation not baking with fluid object I've been having a little bit of trouble getting the fluid simulator to cooperate with me.

I have a relatively simple scene setup with plain rectangular objects that are scaled to realistic sizes.

Here's a rough idea of what I'm trying to accomplish: (Ignore the background dirt and grime, I'm just trying to show the scraping action on the machinery.)

My plan was to use the fluid simulator and animate the membrane material moving forward and having the top liquid layer scraped off on the edge like in the example photo.

For some reason, the fluid simulator will not bake correctly and change to a liquid. The domain just remains a rectangle.

I've tried:

Making the domain bigger or smaller
Changing the resolution and fluid
world scene units
Double checking that scale has been applied to all objects
Changing directories for where the baked files are stored
If I just create a small fluid cube and put it inside of a larger cube set to be the domain, I can bake that for whatever that's worth.

I've got a blend-exchange file posted with everything pretty much set to defaults for simplicity.

Let me know if there's any more information I can provide.

The size of your fluid is too small in comparison to the domain size. There are multiple solutions: Increase the resolution of the fluid (in the domain object), increase the size or dimensions of the fluid (that large, thin rectangle), decrease the size of the domain or a combination of those.


Using metals in sketchfab I made a chair that has a procedural cycles leather texture. I`d like to bake this texture and set my model to shadeless rendering on sketchfab. But the chair structure is metal, and I can't bake it. How do I manage this? I want to use baked textures with Sketchfab metalness.

Maybe if I could transform my procedural texture in diffuse, normal and glossiness maps, then I could use only sketchfab textures and no need to baking them.

What's the best solution in this case? Is there a way to use baked textures with metal textures, or do I have to make maps for my procedural textures? And how do I do that?

Sorry for my english, it's not my native language

"Metal" textures are often determined by a number of different textures working together to create the appearance of metal. These can include a number of things such as Diffuse, Specular, Normals, and glossy shaders. In order to make these usable by external programs you can either bake these maps individually of create a PBR material, which is basically a combination of all of the above.

There are lot's of tutorials on how you may create PBR materials in blender my favorite as always is from Blender Guru.

However if you wish to export individual maps there is a great tutorial here on
stack exchange.


How to run scripts in the background of the game engine without freezing or opening new Blender instances on Windows? The Blender game engine does not move into the next frame if all the active scripts have not yet finished.

Say we have an HTTP script in the game. The script retrieves data from a server. I presume the retrieval process cannot be split into multiple small processes.

I know only of the subprocess module's ability to work outside the bge, but on Windows a new Blender window pops up every time the subprocess module is used to start any new Python script.

The threading module should take care of it. Just create a separate python thread and run your blocking code (e.g. networking code) in there.

import time
import threading

def main():
    thread = Worker(None)
    thread.start()

class Worker(threading.Thread):

    def __init__(self, args):
        self.args = args
        threading.Thread.__init__(self)

    def run(self):
        print("Starting worker")
        ...
        print("Finishing worker")

Note that Python 3's threading model does not map to the OS threads, all the threads will run under the Python interpreter anyway. Because of this, threading is only useful for executing blocking operations, not for performance gain.


How do I fix - "CUDA error : Launch failed in cuCtxSynchronize()" and "cuCtxCreate: Launch failed" in cycles I'm using 2.78 cycles with experimental and it have been stable until recent when this errors started.

I haven't started to work with the scene, the only thing I have don is setting up the character.

I did update my driver for my GTX660 to version 373.06. The only problem is that blender do have stability issues now but GPU rending do work.


Rigify - How to adjust the super spine? I've been trying to create rigify rig, by using the sample types.
For example the sample the spines.super_spine.

Now I found out that we can adjust the amount of segments. (in the manual, https://archive.blender.org/wiki/index.php/Extensions:2.6/Py/Scripts/Rigging/Rigify/#Advanced_Usage)

When in pose mode, in the bone tab, I went over to rigify type. But whenever I change one of the settings, the spine chain doesn't update or I'm missing a step. This is what i'm doing:

Can someone explain to me what I'm doing wrong or better how to properly adjust the spine, and still keep the metarig fully functioning?

The final rig is created when you press Generate Rig (in Armature tab). Changing the options has no obvious effect until you generate the rig. Also I am not sure which version of blender you're using but it seems like you're using the legacy super spine. There is a newer one that separates head/spine/tail in different rig types.


Why can't the Data Transfer Modifier be applied? I am using the Data Transfer Modifier to make a flat bevel appear like a curved bevel.

There is an original object and a beveled object. The beveled object has the modifier on it. The modifier is taking the flat face normals from the original and using them to flatten out the shading on the parts that are not beveled.

When I click 'Apply' the effect disappears instead of being applied.

There are also two options in the Operator Panel that I don't fully understand. It can be applied as Object Data or as a New Shape. If I try to Apply it as a New Shape I get an error message saying: "Only deforming modifiers can be applied to shapes."

Is this the intended behavior of the Data Transfer Modifier, and if so, why is it like this?

Thanks

The reason is it is influencing normals in a way that Blender does not support by default. So when you apply it the altered normal data is lost.

For Blender to display and store custom normals data Auto Smooth must be enabled with some Custom Split Normals Data:

After you do this you can apply your modifier and it will write the data into the Custom Split Normals Data datablock.

This can be considered as a consistency bug because the Normal Edit modifier does this all for you when you apply it. Feel free to report your findings.

The Object Data or New Shape option of Apply operator is only relevant to modifiers that deform the object mesh (this operator operates for all modifires when you apply them). The deformation is then not written to the objects data but as a new Shapekey.


Video is rendered at half the resolution I want to create a 4k video of a 3d animation so I've set the resolution to 4096x2160, the file format to QuickTime and the video codec to H.264 but I always get a 2048x1080 video. Which are the right settings to get a full 4k video?

Blenders default configuration sets the default resolution to 50%. Which means that it will render at half the size.

You can adjust these values in the properties panel under the 'scene tab'

For a full scale render set the resolution value to 100%


Is it possible to make a non-animated rope for game engine? I need a wire rope (cable) for my crane in BGE. Multi-segmented rope of capsule-shaped pieces as rigid bodies continues to stretch, pull apart, and deform despite my efforts. This rope will need to wrap around a winch, over a pulley, and down to a hook. A keypress activates the winch, reeling in or letting out rope, allowing the hook to travel up or down.
The rope doesn't even need to look like much...a straight line is sufficient, since it will be viewed from a distance.

Alternatively, a single line from the winch (Top of the crane on the right side) to the sheaves (Pulleys on the left, at the end of the boom) would work...IF there is a way to make a single line expand and contract the distance between the sheaves and the hook when the hook is lowered or raised. This would be a way to 'fake' the look of the rope.
Any ideas would be greatly appreciated.

Separation

split the rope into hanging part (maybe two or more)
winch part
hook part (if even needed)

Now you can care each part individually. As you already wrote: it just needs to look like.

Hanging Rope

Assuming the rope is always straight:

small cylinder with origin at one of the caps
scale along it's length axis to change length
trackTo actuator to let it connect to a target object

Assuming the rope bends

Assumption: binding with less detail (no loops and high detailed waves etc.).

armature with a certain number of bones (e.g. 10)
skin mesh as cylinder (with enough vertices to deform with the bones)

Now you can use fixed actions or you manipulate the armature (e.g. via IK) get the animation you want. Be aware this does not consider any physics. Your animation technique should make it look like physics is involved.

You can use some wort of ragdoll methods. (You have an invisible physics model and copy the result over to the visible rope). As you said this is not the best option due to stretching.


how to create half circle surrounding in rounded column/pillar? like this question, but my part is from the pillar body itself, how you create this rounded half circle surrounding perfect in rounded pillar?

here the pictures,  (picture from previous question above)

You could add a cylinder and inset each face (I to inset, then F6 and change to 'individual'). Then extrude inward and bevel the edges as necessary.

The result looks like this. The geometry may be difficult to work with if you're using a subdivision surface, in which case I would add extra loop cuts on the edges between the insets to connect horizontally.


Union of two objects with Python I have two objects (A and B) and I need to get the union of them. A has a face area of 200 units and B has 10 units. In addition, B falls completely inside A. If I use join (Ctrl+J) then the face area becomes 210 units (200+1). However, if I do "Union" using Bool Tool then I get an area of 200 units (what I am looking for as B falls inside A).
There will be thousands of objects to merge between them, thus, I am looking for a way to do the union operation using python. Is there any way of doing that? Can I use the Bool Tool with python? Or, import some function then do the operation.

The Info Window shows Python statements for user actions.  You can find the command invoked for Bool Tool there.
For example
bpy.ops.object.booltool_auto_difference()
was found after a Bool Tool Difference operation.
You may copy and  paste from the Info Window.


Unwanted Wave-like Shades in the Background as the Object Moves I have made a smoothed studio-like setup
and spot light linked to my object.

The Object turns round itself for few seconds and then moves forward toward the camera
(I have marked them in the second photo, though it's a bit hard to see in only one picture).

As the object moves forward, some unwanted wave-liked shades appear in the background and move. Do you know what is causing the problem and how can I fix it?

Without knowing in which format you are rendering and what quality settings you use it's hard to tell the exact reason, but these are no shades depending on the animation itself or the render settings, I guess. These effects are called Banding, Colour Banding or Posterization and can appear in all kinds of software or images. It's usually a problem of insufficient bit depth to display smooth color transitions.  The reason for the low quality can be high compression in image or video formats for example.
Short articles on these topics:
https://en.wikipedia.org/wiki/Colour_banding
https://en.wikipedia.org/wiki/Posterization


Drawing precision, straight lines on animated surface so the problem is that I have a with bones animated plane that moves and bends and so on. Now I need a completely straight, clear and thin line at the exact middle of the surface, what also moves along with the plane. This line also has to be hideable through parts of the animation.

I tried to use lines but I couldn't find out how to make them following the movements of the surface, and I also tried to fix this problem with UV-Mapping, but I can't find out how to make precision lines and how I could hide them in parts of my animation.

I'm very thankful for any help!

Perhaps you need the shrinkwrap modifier:

This will work dynamically with a mesh or a curve. If you need to animate the curve handles, use the hook modifier to parent them to armature bones.


Size of camera representation I have two cameras in my project but they are shown differently (one is represented bigger than the other), although they have the same focal length and the same sensor size (and the same scale). Are there any other properties that are considered when drawing the camera representation?

Yes. Size property under Display category in the Camera tab in the Properties Editor is precisely for that - the size of the camera displayed in the viewport.


How to tile a texture over a cube in cycles? My issue looks like this:

The wood simply tiles improperly. I have given it a smart UV unwrap and basic texture coordinates and it is looking pretty bad. I want it to tile properly, as the texture should, and not in a random way as you can tell from the picture.
This is my node graph:

How do I get the wood to tile seamlessly?

Basically it's a UV problem:

If faces A and B can be contiguous, at least one between B and E or A and E (my case) will not be seamless, unless you want this effect which is really fake:

Anyway, for the first option, in edit mode select those edges: AE, ED, EC, DC, AF, FD, FC; Mark as seams, U to Unwrap.

For the second option place your viewport as you want to see the cube, select all vertices and press U "project from view".

I noticed also that in your node system the coordinates mapping affects only one of the 3 textures, which generally is an error.


How do I create a circular slide (similar to a water park slide)? I have been trying to use a combination of bevel object and the screw modifier and I keep getting all kinds of interesting shapes but none are what I need.  I'm sure there is an easier way than just randomly adjusting parameters. Below is the best I've been able to do and that's after 45 minutes of fiddling about.

Creating a slide is a rather simple process. You can easily create a slide using two modifiers. Here is how its done.

1. Create a curve to use as your path:

add a bezier curve and modifiy it

2. Create a cross-sectional of the slide:

Use a polygon mesh instead of a curve object:

curves when convertedto polygons are messy and you will need to do some manual clean up
you have easy control over the polygon count

Make sure the cross-sectional has some depth to it, it should be a 3d mesh not a 2d outline or plane.

3. Add Array and Curve modifeirs:

Select the cross sectional mesh and add an Array and Curve modifier
Array modifier settings:

Fit Type: Fit Curve, this will fill the path out for us automatically
Merge: True, erases inside polygons

Curve modifier settings:

Object: select the curve

4. Fix the slide:

Based the curve the slide can oriented in the wrong way.

Select the curve and go into edit mode.
Select the points of the curve that are messed up.
Adjust the tilt using Ctrl+T


Bake the AO to add Grunge Trying to follow along with tutorial I've done everything EXACTLY as he decribes every step of the way --however at only 35 seconds in when I try to "Bake the AO" I get an error message "No active UV layer found in the Object Suzanne" --what didn't I do right?

http://www.blenderguru.com/tutorials/how-to-grunge/
How to Grunge

A UV map is required in order to bake.

To UV unwrap a mesh, switch to edit mode (↹ Tab) and press U.
Usually an automated method like Smart project or Lightmap pack is good enough for baking, but for other uses you may want to use manually placed seams.

See

What does unwrapping a model do and why is it important?
How to properly unwrap my mesh?


How do I subdivide a mesh into triangles? Let's say I have a simple plane, and I want to add 4 faces to it but I'd like the subdivision to make triangles.

So instead of this:

I want this:

Select the face and press AltP to poke faces:

From the wiki:

Poke Face, This tool fan-fills each face around a central vertex (r55833).
This can be useful as a way to triangulate ngons, or the depth value can be used to make spikes or depressions, Access from the face menu or AltP.


How to create a model from drawings just like Smoothie-3D, Paint 3D or Monster Mash? I want to find some way to imitate this technique. (draw a curve that becomes a model with a few clicks)
The same can be done with Paint 3D as seen here and Monster Mash as seen here.
The most I can do is convert the Grease Pencil to mesh and with the vertices create a plane, but inflate it is so hard.
Does anyone know a method to imitate in Blender what is done in Smoothie-3D, Microsoft Paint 3D or Monster Mash?

Okay, I finally figured out how to do it. I hope the explanation below can help other users. To understand the process in more detail, I recommend the tutorial "Blender Sculpting Tutorial: Full Advanced Creature Creation Workflow" by CG Boost on YouTube.

With any model selected, in Sculpt Mode with the Lasso Trim tool, I change Trim Mode = Join and Shape Orientation = View in the header. Enable Use Cursor for Depth if you want to control the length of the model in proportion to the radius of the brush. The smaller the radius, the thinner the object will be.

Then I draw the shapes to create the silhouettes.

To rearrange the mesh, I use the Remesh command (header) after defining a Voxel Size.

And finally, to smooth and inflate the model to disappear with the hard edges, I use the Mesh Filter tool with Filter Types = Smooth / Inflate. Keep X/Y/Z active in Deform Axis and Orientation = View.

From there, any adjustment of scale, rotation and proportion can be made in Object or Edit Mode.


How do I model this type of shape? How can I create this shape marked in the picture? I just want to create the shape, I know you can add those details by sculpting but I can't even get the shape right. I have tried using a plane to build the shape but it looked so bad

Here are 2 ways to do it:

Create a UV Sphere of 30 segments and 10 rings, keep only 1/10:

Mirror it:

Array it with an empty as Object Offset that you rotate 72°:

Cut the hole, squeeze on the Z axis, change the topology:

Or:

Create a 5 vertex cylinder, delete 4 of the faces, rebuild it with an Array modifier/Object Offset mode with an empty that you rotate 72° on the Z axis:

Subdivide it a bit, cut the hole:

Swell the shape with a Cast modifier:

From now on I guess you can continue in many ways (subdivide, sculpt...).


Apply scale to armature works on rest position but breaks poses I have an animated model (link: https://www.dropbox.com/s/v9ked8yl2opl2or/robotERS_channelcleaning.blend?dl=0) that I am trying to rescale. Right now the armature and the mesh are not parented (yet).

The armature is scaled (object mode) to 0.01 on all axes. I want this size to be the new 1.0 scale.
If I apply the scale to the armature, the rest pose looks good, but all animations are broken afterwards and I cannot find out why.

Any help is hugely appreciated!!

A script to do this.

Result of running script, idle action, note unit scale

Method

For each action select and remove the location fcurves,

via UI select all pose bones, search for "location" select and delete

Alternatively scale the location keyframes. In this case after applying scale to rig any translation fcurve would be 100x more than need be, this was the visible problem moving hips and spine apart a hundredfold  As mentioned only rotation keyframes are needed for any bone with a parent.

for all pose bones set location to 0, 0, 0 if not already  Select all pose bones, Set active pose bone location to all zero, right click copy all to selected will set all pose bones back to zero.

Then apply the scale.  CtrlA scale.

Here is a script to do this.  As with all scripts, backup first. Script rundown.

For a parent hierarchy of bones and in place animation will find location
keyframes are not required.  First part of script removes all
location keyframes.
Any residual pose bone locations are reset to zero.  All zero
location and rotation is the rest pose.
Finally the scale is applied to your rig.

Select the rig object in object mode, and run script.

import bpy
for a in bpy.data.actions:
    for fc in a.fcurves:
        if "location" in fc.data_path:
            a.fcurves.remove(fc)

ob = bpy.context.object
for pb in ob.pose.bones:
    pb.location = (0, 0, 0)

bpy.ops.object.transform_apply(scale=True)

Finally you have rotation keyframes on the rig object, which also appear unnecessary.


How to delete objects stacked on top of each other? I made a textured coin using this tutorial and when I tried to duplicate it, it made an infinite amount of coins stacked on top of each other somehow.

I've already tried to delete them individually. It's not working, there's just so many I don't know how I did this.

So how do I delete all the coins which have stacked on each other?

It's hard to tell exactly what you've done with seeing some images or the blend file.

However if you press "A" twice to unselect everything, then select the coin you want to keep and press "Ctrl + I", Blender will select everything else and unselect the coin you want to keep. Then you can press "X" to delete everything else in the scene.


Boolean Difference only cuts my main object, doesn't delete any vertices I've added a torus and and then a cylinder to the middle of it and tried to delete the cylinder from the torus, but instead of deleting the vertices within the cylinder object, it just makes a cut through the torus.
I've tried recalculating the normals of both objects to be outside and then inside (same for each). I've deleted loose vertices (there shouldn't have been any, but the torus had a few).
I tried triangulating the large faces on the top and bottom of the cylinder.
I've made sure the cylinder overlaps the torus in the z direction by a lot.
I haven't modified either object in any way other than through their numeric parameters (scale, dimensions, etc).
I've applied all transforms.
Any insight as to why these two basic meshes created by Blender itself won't boolean difference?

I've tried it with the default torus and default cylinder and got the same problem. I resolved this with several methods: moving the cylinder just a little off the center or scaling it up or down just a little. I guess the cylinder cuts exactly through the vertices of the torus and maybe Blender has some issues calculating it correctly. Also adding a Subdivision Surface modifier. Nearly everything helps except for keeping it at default.
EDIT: Well it doesn't cut exactly through the vertices becauses the objects have different resolutions. But still the edges overlap each other... I guess that's why. And just for clarification: I only have this problem in Blender 2.83.5, not in 2.92.0 or 2.93.0 Beta.


Getting location of the object with "follow path" and "track to" constraints -- using Python Is there any method to get location of an object which has "follow path" and "track to" constraints?

import bpy
scene = bpy.context.scene
scene.objects['Cube'].location[0]
scene.objects['Cube'].location[1]
scene.objects['Cube'].location[2]

The code above gives me constant location of an object, relative to the followed path I suppose

I would like to get global location instead, just like in case of an object with no constraints.

Any suggestions will be appreciated :)

scene.objects['Cube'].matrix_world[0][3]

scene.objects['Cube'].matrix_world[1][3]

scene.objects['Cube'].matrix_world[2][3]

bpy.context.active_object.matrix_world[0][3]

bpy.context.active_object.matrix_world[1][3]

bpy.context.active_object.matrix_world[2][3]


How to load and assign an image to a specific image node in the compositor? Background: I am importing (appending) a new scene to an existing .blend file. The new scene has only compositing nodes and is only used for compositing renders created by the original scene.

What I want to do is to specifically address an image node in the compositor node tree, and then assign an image to it. That's it. So, for me, pseudo-code would look something like:

set the context to the compositor node tree
set the filename of the image node "Fred" to "E:/myimage.jpg"

I've been referred to: How do I edit an image node in blender using python? but can not get it to work properly. How to load and assign an image to a specific image node in the compositor?

Load your image using the path, add or get the image node in the compositor, and then simply assign your image data in memory to the image input of the node.

import bpy
from pathlib import Path

img_path = r"C:\MyDirectory\MyPicture.png"
if Path(img_path).is_file():
    img = bpy.data.images.load(img_path, check_existing=True)  # Load the image in data

    node_tree = bpy.context.scene.node_tree  # Get the current scene's compositor node tree

    img_comp_node = node_tree.nodes.new(type='CompositorNodeImage') #  Create a new image node
    # img_comp_node = node_tree.nodes.get('MyImageNodeName')  # Use this if your node already exists
    if img_comp_node:
        img_comp_node.image = img
else:
    print(f"The file at {img_path} doesn't exist")

Read: Controling compositor by python


Bake displacement to alpha channel washing out colour channels I'm trying to put a displacement map into the alpha channel of a normal map.  As per answer to question "Bake displacement to alpha channel" I am trying to use the Node editor for this purpose.  The result washes out the colour.  I have my problem demonstrated in a test case as follows.  I have two (RGB only) images: PaleBlue is coloured (0.5, 0.5, 1.0); DarkGrey is coloured (0.25, 0.25, 0.25).  I am trying to combine the colour channels of PaleBlue with the red from DarkGrey as alpha. The screen shot shows my results.  On the left are the two input images (RGB only).  In the middle is my node structure - a bit more complex than needed, but I think this explicitly shows what I want done.  On the right are two views of the output - actually the Viewer Node, but the Render Result is the same.  The top view is the colour component, the bottom the alpha channel.  Note that the colour is white - not pale blue and that the alpha channel is black.
First screen shot removed to be within link limit.

Question Update:  I've made the recommended change.  It improves my result, but still have somewhat washed out colour and 'brightened' alpha.

Question Update 2:  Here are views of a parallax mapping texture (obtained from other sources) and what it should look like in the image viewer.

Connect your image node to your Alpha inputs

If Im Looking strictly at the color values and ignoring the alpha, then the value results will be as follows:

And If you are looking to come at this from the polar opposite, then here is the result:


How to get the physics engine to wraps a string around the moving part of a motor constraint? I'm trying to simulate the physics of a string that wraps around a motor spool when the motor turns. The body of the motor and the shaft+spool defines a motor constraint, so a velocity can be applied to animate the spool.
I modeled the string using this tutorial : https://www.youtube.com/watch?v=4ANT5vf5H-Y&t=310s

This is how the scene looks like at keyframe 0

And after a few frames, the string doesn't wraps around the spool but goes through instead, there is no collision:

And if I set the string to soft body, then it does this:

Is there a way to achieve a nice winding of the string around the spool ? (even wrapping a few turns so having the string to collide against itself the 2nd turn)
Thanks :)!

EDIT

Following AdamTM suggestion, I made a string from a curve path, and hook the end vertice to the spool, and add Soft Body physics with the following parameters:

As we see, when I play the animation, the string seems to curve around the spool, but for some reason, the hook point doesn't stay in place, it does some weird animation and the length has also shrunk a lot.

I've done another test from scratch with a bigger scale, and the result is much better. In this case the string falls from above and nicely wraps around the shaft as it turns :

I think the physics parameters has to be very well tune to work at smaller scale.

I couldn't attach the soft body end to the shaft, so I tried with a cloth simulation :

I defined a vertex group with end vertices, and hooked it to an empty (ctrl+H), added the pinning option to the vertex group in the cloth parameters, then made a shaft middle vertex as parent of the empty.
As we see on the picture the cloth wraps around the shaft and is well attached to it. But somehow the animation doesn't look quite right, not as nice as when using a bezier path with a soft body.

Any idea how to get the nice wrap of the previous string, with the pin point of the cloth simulation ?

Alternatively, using the Molecular add-on seems quite promising : https://www.youtube.com/watch?v=XSPwM8Yv6YE

Here is the blender project file :

The simplest way to simulate rope or string is using a Soft Body simulation on a row of vertices and add thickness with Skin and Subdivision Surface modifiers. You can use the Soft Body Goal to pin one end to the spindle - similar to your example.

Looking at your Blend file it appears that there is a problem with your parenting of the 'hook' point - it appears to pass through the surface of the spindle and this could be interfering with your simulation (as it will drag the 'string' through the surface rather than resting on it.

The accuracy of the simulation is determined by the number of verticies in the soft body mesh (more vertices will give a better simulation but will take longer to calculate) and the Soft Body Solver settings (in particular the number of 'steps' and the 'Error Limit').

Start by creating the 'string' of vertices. The simplest way of achieving this is to create a Path (Add/Curve/Path) and convert it to a mesh (Object/Convert To/Mesh from Curve). Create a Plane for it to fall on, with Collision enabled in the Physics properties.

Rotate the string by a slight amount so that the vertices don't falls exactly onto each other (or it will unnaturally balance each vertex onto the next), then add Soft Body in the Physics properties. Disable the Soft Body Goal and run the simulation.

To make the string interact with itself, enable the Soft Body Self Collision.

Adjust the Collision settings until you get the desired effect (eg, increase the Size for a thicker string).

Add a Skin modifier and a Subdivision Surface modifier to give the string some thickness, setting the vertex Mean Radius X and Y when in Edit mode to control the thickness of the Skin modifier.

It's important to note here that the 'collision' is not with the actual skinned 'rope' - rather it is with the 'core' of vertices that runs through the middle. The self-collision (rope with rope) is controlled within the Soft Body Self Collision settings but the collision with the 'floor' surface is controlled by the Collision set on that surface (the 'Outer' Soft Body and Cloth property). This means that this method is only applicable to circular soft body objects and that all soft body objects must have the same radius (ie, you can't have two ropes of differing thicknesses).

All that now remains is to pin the rope onto the spindle and this is achieved using the Soft Body Goal and to explain this fully we need to understand how the Soft Body simulation works.

The Soft Body simulation moves the soft body verticies independently of the 'actual' mesh position. This means that the Soft Body vertices can move away from where the mesh vertices that 'spawned' them actually reside. Each soft body vertex has forces applied to it based on a number of factors (such as the distance to its neighbours, proximity to surfaces, etc.) and the simulation engine determines its new location for each frame by resolving these forces - as if springs were pushing and pulling in different directions. One such 'spring' is the Goal - a spring connecting the soft body vertex with the position of the actual object mesh vertex. With the goal enabled the soft body vertex is constantly pulled towards that location. By hooking the vertex to another location this allows us to drag the associated soft body vertex to that location - which can then be pinned to, say, a rotating spindle. The strength and presence of these 'goal' springs can be controlled by a Vertex Group.

In the example blend file I notice that the Empty used to pin the rope to the spindle is parented to a Vertex, not the parent object. As vertices do not convey any rotation data (they are simply a point in space), this means that the movement of the empty does not properly follow the expected motion around the spindle - it starts outside the spindle but crosses to inside as it travels around. Because it passes inside the spindle mesh this will interfere with the collision and causes unexpected issues with the soft body passing through the spindle. To resolve this, change the Parent Relation from 'Vertex' to 'Object' or '3 Vertices' and re-position the empty back to its start location (both these options include rotational data and so will keep the hook point relative to the outer surface of the rotating spindle). The hook point should now correctly move around the outside of the spindle.

To hook a vertex of the soft body simulation requires the following further steps.

Select the soft body mesh and go into Edit mode (Tab). Select the vertex to act as the hook, create a new Vertex Group, assign that vertex to the Vertex Group.

In Object mode, select the Empty to use as the hook. Hold Shift and click the soft body to select it (you should now have both the empty and the soft body mesh selected). Go into Edit mode (Tab) and select the vertex to hook and press Ctrl+H to bring up the Hook menu, select 'Hook to Selected Object'. And back to Object mode (Tab).
In the Soft Body, enable the Goal settings and set the Vertex Group to the Vertex Group created in the first step.
Check the order of the Modifiers on the Soft Body object - the Hook modifier must be above the Soft Body modifiers for the Soft Body Goal to take account of it's hooked location.

Rotating the spindle should now drag the soft body vertex around the spindle. Assuming the Spindle has been given suitable Collision properties the rope should lay on its surface and wrap around, colliding with itself (due to the Self Collision) as it accumulates on the spindle.

If the simulation is not accurate then there are a number properties that can be adjusted to help. It's a good idea to always adjust a single property at a time, evaluating the result before adjusting anything else (otherwise you won't know what had the effect). This also means that if you change something that makes the simulation worse it's easy to take a step back to try something else.

If the Soft Body rope is too angular as it wraps around, subdivide the mesh further to provide more vertices.
If the rope between vertices are passing through the spindle or the rope passes into itself, enabled Collision Edge in the Soft Body Edges settings.
If the simulation is erratic, adjust the Soft Body Solver settings (one at a time). eg, decrease the Error Limit, increase Max Step, increase Min Step - these settings can significantly affect calculation times for the simulation. It's not uncommon to adjust these settings by a factor of 10 or more to improve the simulation. eg, Error limit 0.01 or even 0.005 or lower, Max Step 3000 or more, Min Step 100 or more. The trick is to increase them enough to improve the simulation while still keeping the calculation time within acceptable limits.

In addition to this it may help to adjust the Soft Body settings to improve stability. Again, adjust one thing at a time - by small amounts initially try progressively larger amounts if necessary.
Soft Body Goal - can increase 'Default' somewhat to make the goal 'spring' stronger (so it's tied more firmly to the goal), adjust Stiffnesss and/or Damping to prevent 'bouncing' around the goal.
Soft Body Edges - increase the Push and Pull springs to make them less flexible (so there's less stretch). Damping can slow down 'bouncing', Bending will make the rope less flexible. Enable 'Edge' collision for better collision detection (make edges collide rather than just vertices) - this can cause the simulation to take considerably longer to calculate.

Another thing to note is the Collision physics Soft Body settings. For small objects or fast moving vertices these become very important.

Note the Soft Body and Cloth settings - Outer and Inner - it's important to understand what they mean. For the Soft Body simulation, Blender calculates the new location of each vertex on each 'Step' of the animation. If the new location is within a surface then Blender will apply a repulsive force along the surface normal to repel that vertex. The 'Outer' setting controls how far off the surface the repulsive force starts to have an effect. The 'Inner' setting controls how far below the surface the repulsive force has an effect. For a vertex collision to take place it must 'hit' these collision zones otherwise it will pass straight through (if it's moving too fast, for example) - so larger zones usually produce a better simulation. However, it's also important that zones do not overlap. In the case of a small object like a spindle you should ensure that the Inner collision zone is not too deep as it can cause unexpected behaviour (see below).

Finally, fine tune the Self Collision, the Spindle Collision Outer, and the Skin radii to adjust the thickness of the 'rope' and its interaction with the surface.

Using your Blend as a start point I produced the following animation (after creating a fresh rope as detailed above and changing the parenting of the hook point to 'object') :

This was using the following Soft Body settings :

Spindle collision :

Spindle hook point parenting :

Note that I reduced the 'Inner' setting of the collision of the spindle - since the spindle is only 0.21 blender units in diameter, the default collision properties of 0.2 results in the collision zones from the front and back faces to overlap to that the opposite side 'inner' ends just 0.01 units below the upper surface. This means that if the 'rope' intersects with the spindle by by more 0.01 then it will be considered further below the opposite surface that it is below the upper surface and is dragged through the spindle. Reducing the Inner to 0.1 removes the overlap, giving a better simulation.

In addition, a stretchy and/or heavy soft body simulation will store up a lot more energy as it falls which can drag the upper vertices further through the spindle, further compounding the collision issue. This can be reduced by either decreasing the Mass of the soft body (in the main 'Soft Body' properties) or increasing the Soft Body Edges Pull/Push Springs closer to 1.0.

Blend file attached.


What might be wrong with ball and chain physics here (chain works but the ball detached with similar settings)? I'm trying to figure out Blender 2.90 failing to apply rigid body physics to ball and chain. Here's a middle of animation for the problematic case:

The screenshot shows that the ball has Rigid Body Type: Active, Dynamic Mass 8 kg, Collision shape is final Mesh and sensitivity margin is 0.002 m. The cube has Type: Passive and the chain and ball are initially connected in horizontal position to the right. When I start play, the ball drops directly towards ground and the chain goes through the connection point in the Ball without any friction. The rest of the chain has sensible physics and correctly collides with the cube when full animation is played. The only difference between the links and the ball is the shape of the mesh and the weight of the object (1 kg vs 8 kg). Adjusting the weight or applying the modifiers doesn't seem to make any difference.
Can anybody explain why this fails? Things I've already tried without a fix:

Adjusting the weight of the ball.
Applying the modifiers for the ball.
Avoid small objects (the example file already has huge objects, the diameter for ball is around 5.8 m).
Reduce the Collision sensitivity margin. The default 0.05 m (if I remember correctly) resulted in huge visible space between the chain objects but didn't prevent chain from detaching from the ball.
Adjust Scene Rigid Body World settings to do 200 steps per second with 5 iterations. The default settings caused chain links to partially fall inside each other and didn't prevent chain from detaching from the ball.
Verify that the vertex normals are pointing outside for each object.

Is there something simple that I'm missing to fix the physics of the ball at the end of chain?
Full example file in a zip package can be found at https://filebin.ca/5eFfDexGdyAD/blender-physics-test.blend.zip

Edit: so as you answered yourself, applying scale of the ball seems to fix the problem.
My original answer:
I'm not sure that this is the best way to fix your problem but if you move the origin close to the link it seems to work:

Or you can select the ball, shift select the last ring, and in the header menu > Object > Rigid Body > Connect:


My Lamp does not glow as I want. The lamp does not have a material properties section I am trying to create a neuron with glowing light pulses. I succeeded in animating my lamp  on the neuron branche. However, the light it emits is not strong no matter how much I increase intensity. I think it is not an intensity problem but I am not using the right settings. I have just started working on Blender 2.9  5 days ago. I checked many similar questions talking about cycles (which I don't know what is it) but I did not succeed to realize it on my model. I found also one video on youtube but it was without sound and skipped this precise step. If someone knows how to help in detailed steps I would be so grateful.

I tried your suggestion but nothing changes

I'm using Blender 2.9.1.0. Bloom is found under Render Properties when EEVEE is selected but not when Cycles is selected.


Can Blender build proxy files with transparency? I'm editing multiple sequences of png with transparency, but the preview is very slow (8fps).
I tried to use proxies, but it seems that Blender can only generate jpeg files with black background.
Is there a way to use png files as proxies?
Any help is appreciated!

I've found this solution:

Blender looks for jpeg files, but actually you can use PNG files with .jpg extension.

This is my workflow:

1. Create resized copies of the render images:

25% > 1920 x 1080 -> 480 x 270

2. Change all the extensions from .png to .jpg

Assuming that the render path was:

/User/render/def/barca/b.png

the Proxy Directory in the VSE Panel was

/User/render/proxy/

I've used ffmpeg to create a scaled copy of the render files.

Open terminal (I'm on Mac) and type:

cd /User/render/

ffmpeg -i def/barca/b-%04d.png -vf scale=480:-1 proxy/images/25/b-%04d.png_proxy.png

than rename all the files

cd proxy/images/25/
for old in *.png; do mv $old `basename $old .png`.jpg; done

(thanks: https://stackoverflow.com/questions/14887275/changing-file-extensions-for-all-files-in-a-directory-osx)

Here's a rough script that sets all the strips

import bpy
C = bpy.context
C.scene.sequence_editor.proxy_storage = 'PROJECT'

C.scene.sequence_editor.proxy_dir = '/path/for/proxy/'

seq = C.scene.sequence_editor.sequences_all
for s in seq:
    s.use_proxy = True
    s.proxy.use_overwrite = False

    # I ONLY NEED PROXY 25%
    s.proxy.build_25 = True


Blender keyframe metadata Most engines that support skeletal animation have some concept of keyframe events. Essentially, a keyframe can have arbitrary metadata associated with it that is inspected by the code that is driving the animation in the engine. This data is then used to perform actions at the appropriate times when the animation is rendered.

As a simple contrived example: An artist might create a walk cycle animation and on each keyframe where the walking character's foot touches the floor, the keyframes are annotated with a FootStepEvent string. When the walk cycle is rendered in the receiving engine, the engine sees the FootStepEvent string on a given keyframe and knows that it should play a footstep sound each time that particular frame is reached.

The engine I'm developing has support for this, and I have written various addons to get animation and bone data out of Blender. Specifically, for each action, I'm recording all of the action's FCurves and taking a snapshot of the skeleton at each keyframe along with data such as the curve's easing and interpolation settings.

The problem: How do I actually author per-keyframe metadata in Blender? What I would like to be able to do is associate simple strings with particular keyframes inside actions. I can't see anything in Blender's data model that would allow me to do this.

Blender provides property definitions that we can use to add custom properties to objects and bones. You will then want to define a panel that displays the property so that you can easily edit it.

As we can't animate strings I expect you will need to use a collection to define a string and frame number or range of frames that it will be applied to. Another option may be to assign a number to each sound and animate a custom integer. You can use an EnumProperty to create a menu that lists available sounds but stores a numeric value instead of a string.


Where can i find animal armatures? Blender site tutorial (last intro one) shows human (meta-rig) and animal rigs but I only see the human option. Is there a download to get animal rigs installed?

IN the User Preferences, enable the Rigify addon (2.79) and then in the add menu under armature, you will find the other rigs.


Blender exporting sharp edges to mesh file Is there a way to export blender file to any of the mesh file format with sharp edge information? In other words, is there a mesh file format which supports sharp edge information in Blender?

One solution is to:

Go to properties panel
Add edge split modifier and apply it.
Export your model to any format that behaves well with the target software.

Use edge split before exporting your file.


How can I make an object emit a single particle with predefined frequency I have no actual blend file for this, as I have not managed to make it work, but in essence I would like something along the lines of a tap that drips water every 1/2 sec or so. Is this at all possible? Any tutorials I have found simply emit a no. Of particles at random with no set frequency.

If the frame rate of the output is 25, and the particle system duration is 200, we need 16 particles to have one every half second.

You can for instance use a mesh with a single vertex (if you want the drip to be at an exact position):


Blender Python path directory for file output node i'm trying to make a little script to change all file outputs node in my compositing scene, relatively to my file output render directory.

For example, if i render something in
/Render/Combined/Combined_####
i want the file outputs nodes to create some folders in
/Render/

So far, i've got this :

import bpy

import os

 # Get absolute path:
filepath = bpy.context.scene.render.filepath
absolutepath = bpy.path.abspath(filepath)

 # set the path for all file output nodes:
for scene in bpy.data.scenes:
    for node in scene.node_tree.nodes:
        if node.type == 'OUTPUT_FILE':
            node.base_path = absolutepath

And it works, but i can't find a way to get to the "superior" directory...
Is someone out here have some answers ? thank you very much !

You can just add ../.. at the end of your absolutepath, like this

node.base_path = absolutepath+'../..'

or if you insist on getting the actual path cleanly, you can use the python os module to split the path into parts and then join them again except the last two

import bpy
import os

 # Get absolute path:
filepath = bpy.context.scene.render.filepath
absolutepath = bpy.path.abspath(filepath)

path = os.path.normpath(absolutepath)
parts = path.split(os.sep)

absolutepath = os.sep.join(parts[:-2])

# set the path for all file output nodes:
for scene in bpy.data.scenes:
    for node in scene.node_tree.nodes:
        if node.type == 'OUTPUT_FILE':
            node.base_path = absolutepath

If you want this to work even if your original path has a filename in the end, add

absolutepath, file = os.path.split(absolutepath)

before path = os.path.normpath(absolutepath)


Quad Junctions. Why are some not working the same as identical looking one nearby? NOTE: as per Moonboots helpful suggestions. Here is the .Blend file for this problem:

Hello all I am trying to learn Blender. I've read lots and watched lots of videos and kinda understand the need for Quad Junctions to 'steer' the edge loops to make sharp edges in the model etc.

I'm currently trying to make a fairly basic car bonnet/hood. It is almost all flat, except there is a vent in the middle with a rim running around it like so:

So I traced the shape of the bonnet with vertices, keeping it lightweight and simple. I then 'Inset' the inner vent area (without boundaries) and it all seemed to be working fine.

But from the tutorials I watched/read, I gather that I will need a supporting edge-loop around either side (so inner and outer of the actual extruded rim). As stated above the inner one 'Inset' worked great but for the outer one I couldn't use Inset, and so I followed some instruction video and used 'Knife Tool'. But now as you'll see in pic below, the edge-loop doesn't continue all the way around the edge I want it to. It in-fact only goes around the one corner  (pic:)

NOTE: Here is the correct one on the inside of the area... (NB. I'm new so not certain that even that is the correct way to make such edges in my models)..

ADDITIONAL: In trying to debug this, I notice the adjacent faces which I also cut with knife-tool are just registered as single faces still, this obviously what is causing my problem. (another pic...)

ADDITIONAL 2: I know see i could delete those faces and make two new ones in the place of the old ones. This has fixed the problem almost (ie. the outer side, of that outer-rim is now a complete separate edge loop). BUT - I still have issue where the loop carries through my junction on the X-Axis (note I have this problem on the inner edge and outer edge of the vent feature).... final pic attached here:

Any help hugely appreciated. Many thanks

In case anyone reads this in future with a similar confusion. The answer was that I had used 'F' to fill between the two vertices next to my knife cuts. But I didnt realise this didn't turn the one face into two. All I had to do was then delete them faces and make two there using the new edges. (hope that helps)


Can I use the sapling addon in Blender render instead of Cycles I have created a scene in blender render and looking to add trees, and now I only see tutorials to make sapling trees in cycles, not blender render. I cant see how to key out the black alpha parts of the leaves in blender render. Is it possible?

The sapling addon only creates geometry for your tree, not materials, and has such it is mostly render engine agnostic.

That means you can use it with any render engine you like, the addon only creates the shape for your tree and probably does some basic UV unwrapping for the leaves which can be used on any material.

Material creation is then up to you, and as no effect on the way the geometry was created. If you want to create materials for your tree you must search for adequate tutorials for Blender Internal material system.

If you want the transparent parts of our texture to affect your leaves you should tick the appropriate box in the texture settings to affect material transparency Under the Properties Window > Textures > Influence > Alpha


shadow not rendering This is driving me insane !

I have been making a simple scene for a point&click game. Most of the models are 'done', and I now want to set up the lighting.
I am using Toon shaders for my models. I have added 1 hemi lamp, and 1 sun in my scene.

When I look through the camera, in the editor, I can see shadows in the sofa (left img). When I render the scene (Blender internal) there are no shadows (right img). And why is there such a difference in the way the scene looks ?

What settings could I inadvertently have changed ???
I have been trying to fix this for 2 days already ... I am getting desperate  :-)

Thanks for your help !

I know this is an old question, but --

are you sure you have shadows turned on in the render panel?

Under the render panel (the one with the little "camera" icon), scroll down to the "Shading" roll-out, and be sure you have "Shadows" checked.

Otherwise your shadows won't render.

Shadows are a two-step thing.  Once you've refined them in your lighting panel, be sure to turn them on in your render panel.


Move and rotate an object according to travel distance and direction between objects I need to rotate the target object an equivalent distance to the distance between two objects in the direction of the travel distance between them.

I've tried to subtract them and get the rotation_difference between the subtraction result and a zero rotation axis mathutils.Quaternion() but the result is different from what I need.

import bpy
import mathutils

selected_object = bpy.context.object
car_f1_location = bpy.data.objects['car_f1'].location.copy()
car_f2_location = bpy.data.objects['car_f2'].location.copy()

direction_vec = car_f2_location - car_f1_location
direction = direction_vec.rotation_difference( mathutils.Quaternion() )

selected_object.rotation_quaternion = direction

But the resulting rotation is different from what I want.

I figured out that I needed to use to_track_quat() instead of rotation_difference() to get the direction along this vector.

import bpy
import mathutils

selected_object = bpy.context.object
car_f1_location = bpy.data.objects['car_f1'].location.copy()
car_f2_location = bpy.data.objects['car_f2'].location.copy()

direction_vec = car_f2_location - car_f1_location
direction = direction_vec.to_track_quat('Y', 'Z')

selected_object.rotation_quaternion = direction


Object is acting as a mask I have an object in my scene which is acting as a mask, but i need it to be just a regular object. Here's a gif:

It's not just the render view but it also renders in the final image as a mask. This does not happen in eevee, though. Both of the objects have a Principled BSDF material and the object which is acting as a mask DOES NOT have a holdout shader. I also tried going through some of the options in the object properties, but nothing changed.
Here's the blend file:

You have it as "Shadow Catcher" you need to select the object and go to Object properties > Visibility > Shadow Catcher (uncheck this one)


Graph Editor - Can I make proportional editing affect all the curves? When I use the Proportional Editing option in Graph Editor it only affects curves that have nodes, selected by me. Why doesn't it affect all the curves? Is there a way to make it affect all the curves?

Essentially I want to select just one node on one curve and drag it with Proportional Edit on, affecting other nodes on all the curves. Can I achieve that?

Select all with the letter A.  There is the Box Select.


How do I swap Y and Z axis on bone? For some reason Blender 2.8 creates bones with Y axis going vertical (up-down) and Z axis going horizontal (front-back). I need to align bone axis to global axis, where Z is up-down and Y is front-back (as seen at picture). How can I do so?

I'm trying to follow this guy's tutorial, but for some reason when he creates bones they have correct axis placement bu default, and my blender swaps Y and Z axis.

You can't change the bone local axis, for example the tail will always point to the local Y axis.

I think you are confusing the global axes and the local axes. Actually when you choose to display the bone axes (in the Properties panel > Data > Display) it will display the local axes of each selected bone. Same as if you switch the Transformation Ortientation dropdown menu from Global to Local and select a bone, as you can see in my screenshots.

It's useful to display all the bone axes as it allows to align the axes of several bones, for example.

You can change the bone (and not axis) orientation in Edit mode with ctrlR and align it with the global with ctrlN. When you'll create some bone poses in Pose mode, you'll use R to rotate and X for example to rotate on the global X axis, and double X to rotate on the local X axis.


Objects in group make the entire group move When I try to move or rotate an object in a group, it also moves the rest of the group.

I see something at the bottom of the screen when I try to rotate it that says:

Rot: 0.00 (Smooth) Proportional size: 1.00

I must have accidentally hit a key that toggled this action. What key is it and what mode did it put me in?

I tried restarting Blender and reopening it but that didn't fix the problem.

Hitting the O key (thank you, @LeoNas) fixed the problem for me. If anyone knows why, please edit this answer.


How to get a list of used resources via python? I am able to program simple things in Python but I am not very familiar with Python in Blender. So I would really like to know, if there is a simple way to list all the resources (textures, font files, etc) that are used in the project.?

You should be check and use the API... in this case the data

https://www.blender.org/api/blender_python_api_current/bpy.data.html

https://www.blender.org/api/blender_python_api_current/bpy.types.BlendData.html#bpy.types.BlendData

import bpy

d = bpy.data

## example for textures
textures =  d.textures

for texture in textures:
    print(texture.name)

#example for materials

materials = d.materials

for material in materials:
    print(material.name)


What's causing the colorful artifacts? I've been using Musgrave textures for years, but in 2.79, I am getting some ugly artifacts along the edges of the object. It doesn't happen in the preview render, only in the final render. Is anyone else getting this? It can easily be recreated by simply connecting a Musgrave texture straight into a diffuse shader and rendering with Cycles.

Just checked with my file and I can verify, it looks like the denoiser is the problem just check it off. Its weird.

Its hard to tell with the 2nd picture but there is definitely some weird artifacts. (click image to view them better)

Its real bad with princpled shader


Can I run Blender on my universities server through SSH? My university gave me access to the institutes mainframe via Putty for programming purposes.I dont know anything about servers or these connections but I was wondering if it was possible for me to render on it? Or even run programs if possible.

Yes, this is absolutely possible. With SSH, you can access the command line remotely (as SSH is Secure Shell). If you have the command line blender installed on the server, you can run a command to render a .blend file.

In some situations we want to increase the render speed, access blender remotely to render something or build scripts that use blender command line.
One advantage of using command line is that we don't need the X server (in case of Linux) and as a consequence we can render remotely by SSH or telnet.

To render an image:
blender -b file.blend -o //file -F JPEG -x 1 -f 1

To render a movie:
blender -b file.blend -x 1 -o //file -F MOVIE -s 003 -e 005 -a

From http://wiki.blender.org/index.php/Doc:2.4/Manual/Render/Command_Line
On CentOS, you would downloaded either by source, or with yum install blender. The yum method is better as it installs dependencies too. Root privileges might be necessary however. Contact administrator if you don't have them and ask him to install it. There are also pre-compiled binaries on Blender.org to eliminate the dependency issue.


OSL `noise_turbulence` function I found that people use noise_turbulence function in noise writing. Also i noticed that it was used in wave texture node implementation using osl here:https://svn.blender.org/svnroot/bf-blender/trunk/blender/intern/cycles/kernel/shaders/node_wave_texture.osl

But there's no any function like that in OSL-Languagespec. So how to write something similar?

Thank you

The reason that function does not come in the OSL Language Specification, it because 'noise_turbulence' is in fact a function done in OSL, and not hard coded into the OSL source.

It's located in the 'node_texture.h' (along with the voronoi function), and it can be found in the \blender\2.XX\scripts\addons\cycles\shader\ folder.


How to use different texture images I want to import a '3ds' model into Blender. I have the '3ds' file and several 'jpg' files:

image_bump.jpg
image_color.jpg
image_illumination.jpg
image_specular.jpg

Note: the website states that the models are already uv-unwrapped and come with the textures.

So, I get a '3ds' file with these textures.
When I try to import the '3ds' file into Blender, I only get the model without the textures applied.

So my questions are:

Is it even possible that the textures are applied and "saved" in an '3ds' file?
Is it common that textures are applied in an '3ds' file?
Can Blender open the model with the textures applied?

So, because I thought that maybe this isn´t possible at all, I tried to add the textures to the model myself, with limited success.
I habe been able to add one jpg as Texture for the material of the model.(using Blender Render).
But I was neither able to assign more materials to the model nor assign more textures to one material.
(My thought was that I should try to assign all 4 jpgs to the model)

When using Cycles render I was able to create multiple texture nodes, but was not able to use all of the on the model.(through mix shader)

So my most significant question is:
Am I on the right track to import the model, or is this done in a completely different way?

My problem is that I do not know much about blender or 3dmodelling in general.
However I also think that you don´t have to know much about it, because I am intending to buy already finished textures, so I guess it shouldn´t be too hard to just convert them into a file format that is suitable for me.

Any help or instruction to get into the right direction are highly appreciated.

EDIT:
Okay, I found out that getting the Model to be displayed correctly in blender has noch much to do with getting the Model correctly displayed in an own written application.
(I thought that I had to do some work on the model, then export everything(model,material,textures) into one file and then load this file in my application.
)
As this is the blender subsite i´ll accept Buthur´s answer, cause he told me how to get the model working in blender!

Thanks to all of you!

This is a possible cycles shader you can use with your textures.

The "?" indicates you can plug the color map or not.


Weird noise inside Fresnel glass Have weird effect within the Fresnel material, actually want to produce acrylic. Please help!!

After increasing sample and denoising strength

This looks like you have the denoiser on and it created these artifacts because your render contained too much noise or extreme bright highlights. Try to increase the number of samples or increase the feature strength of the denoiser.


Positioning a movie clip over still images using green screen I have managed to make a clip of myself and used greenscreen effectively. I have two issues that im struggling to sort out

I am doing an advice clip on property where I have greenscreened myself talking through the points. I want to be able to move myself to the right of the screen to not obstruct the stills that are background and showing the parts of a house i am talking about. I can only seem to move the whole screen

thank you

Do this in the compositor.

Positioning the greenscreen element can be done with a Distort>Transform node, moving the Values for X and Y will give you control of Horizontal and Vertical.


Duplicate object and scale across bezier curve I'm trying to make an object be duplicated AND scaled along a bezier curve, however, the only ways I've found, namely using a lattice modifier or using an empty, both seem to distort my objects and I really need it to be scaled evenly, as in (1.0,1.0,1.0) per step.

Does anyone know of a solution for this?

Here's what I'm working on:

The image on the right, with pink arrows, show a distorted version I mocked in Photoshop just to illustrate how I want my objects to "shrink", but I don't want that kind of distortion. I need each objects to decrease scale evenly on all axis (I guess?). Thank you very much!

Actually, the using and empty object as offset was right! I re-did all my steps and I got it to work exactly as I needed. Part of the answer to my question is here:
Repeating objects along a path

While that answer above covers duplicating the object along a bezier curve, it doesn't address how to control the scale or rotation of each duplicated object, which I found somewhere else I can't remember. To acomplish the scaling effect however, you need to uncheck relative and/or constant offset in the array modifier and use an object offset instead. The object you need to use as offset is an Empty. The Empty object is the one you will scale, in my case, to create a correct (without distortion) transition from big to small, of each element in the array, across the bezier curve. The file below can be used as a reference!

woman.blend

There are some details in regard to where to position the empty object, the bezier curve and the object being duplicated. By default you must place the object and the empty at the origin of the bezier curve. From there, play around with the empty until you get the desired result! Important: make sure all rotation and scaling properties of the bezier curve, the object being duplicated and the empty are set to 0 (reset). To reset those properties just select each one of them and press "Ctrl/Cmd + A" and choose "Rotation and scale". Hope it helps!


iterate through all selected objects, but do a different operation to each one I'm making a script which places the selected objects in a row, so I need to loop through all selected objects and move them in an axis by the same offset relative to the last one. All objects start off in the same place, say 0,0,0.

I have these constants:

rowLength = 5
objectNumber = 0
horiOffsetAmount = 0.1

So say I have 3 objects, the first object stays in the same place:

bpy.context.object.location[1] = objectNumber*HoriOffsetAmount (0*0.1 = 0)

Then I want to set the object number for the next object to be 1 greater

objectNumber = objectNumber + 1

But how do I actually make this work? At the moment it just offsets the active object, so I need to go through all the selected objects, making each one active in turn, then doing the offset, how do I do this?

Here is my current code:

import bpy
context = bpy.context
scene = context.scene

rowLength = 5
objectNumber = 0
horiOffsetAmount = 0.1
if objectNumber < rowLength:
    for obj in context.selected_objects:
        bpy.context.object.location[1] = horiOffsetAmount*objectNumber
        objectNumber = objectNumber + 1

So the problem is is that this is only affecting the active object, but I want it to go through so object 1 is offset by 0, object 2 is offset by horiOffsetAmount, object 3 is offset by horiOffsetAmount*2, object 4 is offset by horiOffsetAmount*3 etc....

Fortunately, your code can be made a lot simpler. In Python it is rarely needed to iterate over a collection and keep track of an index yourself, thanks to the built-in enumerate() function. Here is how I would do this:

Update: I've adjusted the code below to take the row length into account, and stack the objects in a grid.

import bpy

offset_y = 2.5
offset_z = 3
row_length = 5

for nr, obj in enumerate(bpy.context.selected_objects):
    row = nr % row_length
    col = nr // row_length
    obj.location = (0, row * offset_y, col * offset_z)

I have also renamed rowLength to row_length, as in Python usually local variables are all lower caps with underscores.

The trick is to first compute the row and column number given the object number, and then compute the Y and Z coordinates from the row and column.


How can I view textures without a material? (Blender 2.8) How do I view textures on my objects without using Materials? I'd prefer not to have to make a material for every object since they don't transfer over to Unity very well. I'd rather just see them all unlit, flat shaded.

Thank you for your help!

Without a material, as far as I know, you can't view a texture.

You can view the texture in Solid Shading mode using Texture as Color without shaders and material output.

This mode uses UV mapping of a mesh directly, no Vector transformations available.


turn splines from 3d into 2d using animation nodes I have a list of splines created using a loop, how can a I turn each one into a 2d spline using animation nodes?

It is important to note I just have the spline there is no no spline object output.

The dimensions is a property of the Curve Data Block not the splines themselves, thus there is no distinction between 2D and 3D for splines.

A 2D curve just ignores the z axis of the spline points and also ignores the tilt and radius of the splines, so you may do that manually if that is your objective.


Using a series of Text objects in an array I've been trying to use an of array text objects for equidistant placement around an empty, but I could never accomplish this.  Is there a way as shown in this photo (the speedometer numbers).  I know that the values are different and an array would have the same text values.

You can use the Clamp To Constraint on a Bezier Circle to get this, you have to do each separate piece of text, but you can use the same curve. Like this:

To rotate the text move along whatever axis (in my case it was the Y). To rotate a certain number of degrees you can use this formula: (r/90) * degrees. So if you want to turn 90 degrees and you have a radius of 3 then just move the same distance as the radius. Also check Cyclic if you want the text to be able to go more than a full circle.
To continue just do this:

To figure out how far to move the text each time I used that equation. For me it was: (1.5 / 90) * 270 (3/4 of a circle) This gives 4.5, then you want to split that distance between 10 items, so you get to move it 0.45 on the -X axis in my case.


How to generate a synthetic data similar to the real image I have a real image and I need to generate a synthetic image that is very similar in term of shape (I do not need to be very detailed). I am wondering how someone can do this using makehuman and blender. The background is not important. I want just to synthesize the person. Here is an example.

Here is a basic answer for such a broad question...

Since you say detail doesn't quite matter, you may find something like this interesting. for this approach I used meta spheres, and then  converted it over to a mesh.

Just so I steer clear of any trouble, here are is my source of the image used:
Pixabay Image Reference

Here are the results, and the Blend File:

Blend File:


Array modifier questions from a beginner I am following a tutorial at https://www.youtube.com/watch?v=emT-CL957HE
Around 19:30, how does he turn off the array modifier for the duplicate? No matter what I do, they seem to share the same behaviour ie shadow the parent - can't figure out how he did it in the video.

Some other questions:

-What is the significance of Ctrl-L (at 18.30 and 20:00) and when is it used? I can't find any good info on the net that can provide a good example of the usage especially in the above context.
-What is the purpose of clicking Apply? Is there something that is irreversible once Apply is clicked?
Thanks in advance.

19:30 He basically duplicate the set of windows with CtrlD and then proceeded to deleting the array modifier that was copied during the duplicate fuction.

18:30 Ctrl L - It's basically a quick method to select a mesh and all it's joined elements. This is extremely useful if you have multiple sub-meshes joined together to form the main object. Sometimes you may want to select that one sub-mesh to apply a material or hide it temporarily.

Applying a modifier makes it permanent and irreversible. However you can undo it if it's still within the undo range. Usually you will want to apply modifier at the end of the modeling process.

Extra Note

Personally, I usually just hit L, this works in UV editor mode too when you want to select a UV island.


The Lattice deformer lack something I have noticed when trying to use the lattice deformer it doesn´t have an option like in other programs to fit the lattice to an object size. It would be a nice addition to have such option. It would avoid too much guesses. Cinema 4D have this option in the lattice deformer.

There is a request over "Rightclickselect" website for the Blender team to take under consideration for something like this. for now, there are some add-ons like simple lattice that you could check
https://github.com/BenjaminSauder/SimpleLattice


Hair outside vertex groups I had my beard attached to the right vertex group, and combed in the right direction very nicely, then I edited some vertecies somewhere else on the model, checked in object mode and the hair is coming out randomly all over the model and the beard is splayed all over the place and doesn't comb properly.

Certain editing operations that add new vertices can change vertex order in the model, which breaks certain things (shapekeys, baked physics sims, combed hair).

There should be an option under particle settings to clear the particle edit (i.e. the combing) from the hair so you can do it again.

In general, you shouldn't add hair until you are satisfied with the mesh and don't intend to add to it. Another way of handling this is to duplicate and separate the parts of the mesh that you wish to add hair too, and add the hair on them rather than the original model. You can then make it so only the hair and not the new mesh sections get rendered in the particle settings.


How to duplicate an object along with its parent/children relationships using Python in Blender 2.9x I have the model of a vehicle body with its wheels and empty coordinates systems at the wheels which are all parented sequentially to the vehicle body. I would like to ask how it is possible to duplicate all the objects and the subsequent relationships using the Python API. In the following image, you can see the relationships that I described; I would like to duplicate this.

I used to bpy.ops.object.duplicate to duplicate the selected objects coming from the select_set() method.
In this way, the underlying parent/children relationships are maintained during the duplication.


How do I combine 2D and 3D animation together? Would it be possible to use 3D animation using Blender and put it in a 2D software animation such as Adobe Flash professional?

Combining video images with 3D generated imagery is possible as long as the video in question is encoded using a format supported by blender.

Blender has no support for Flash so the images would need to be transcoded first using a different program.

Likewise. Blender cannot export video on Flash format. You would need to render first on a video format (or image sequence) and encode into Flash with a different program.


Is it possible to make half of an object semi transparent and the other half non-transparent? For example I have an object like a cube. I know that the transparency of my object can be set by the alpha. But is it also possible to just make half of the cube semi transparent and the other half non-transparent?

Thanks for your help!

Yes, this can be done by assigning different materials to the same object as shown below.

I added a cube to the scene at origin and scaled it to be bigger
Then I added a sphere to the origin which is now located inside the cube
I added a material to the cube as shown below:

I then checked and turned on the transparency and decreased the the Alpha value as shown below:

Then I added a new material and set its color to red as shown below:

Then I switched to edit mode, switched to face mode and selected couple of faces and clicked assigned to the red material as shown below:

Then render and as shown below the grey material is transparent showing the sphere inside while the red material is not:


snap_cursor_to_selected with context is incorrect I would like to snap the 3D-cusor to an object. After that I would like to copy another object to the position of the 3D-cursor. The code is as follow:

Code sample:

for area in bpy.context.screen.areas:
    if area.type == 'VIEW_3D':
        ctx = bpy.context.copy()
        ctx['area'] = area
        ctx['region'] = area.regions[-1]
        bpy.ops.view3d.view_selected(ctx)
        bpy.ops.view3d.snap_cursor_to_selected()
        obj.select = False
        new_obj.select = True
        bpy.context.scene.objects.active = new_obj
        bpy.ops.view3d.snap_selected_to_cursor(use_offset=False)
        break

Python error is:

RuntimeError: Operator bpy.ops.view3d.snap_cursor_to_selected.poll() failed, context is incorrect

Modified code sample:

for area in bpy.context.screen.areas:
    if area.type == 'VIEW_3D':
        ctx = bpy.context.copy()
        ctx['area'] = area
        ctx['region'] = area.regions[-1]
        bpy.ops.view3d.view_selected(ctx)
        bpy.ops.view3d.snap_cursor_to_selected(ctx, use_offset=False)
        obj.select = False
        new_obj.select = True
        bpy.context.scene.objects.active = new_obj
        bpy.ops.view3d.snap_selected_to_cursor(use_offset=False)
        break

Python message:

TypeError: Converting py args to operator properties: : keyword "use_offset" unrecognized

I use Blender 2.77a. What can I do? Many thanks for our help.

You should override all operators that depends on context as follows :

for area in bpy.context.screen.areas:
    if area.type == 'VIEW_3D':
        ctx = bpy.context.copy()
        ctx['area'] = area
        ctx['region'] = area.regions[-1]
        bpy.ops.view3d.view_selected(ctx)
        bpy.ops.view3d.snap_cursor_to_selected(ctx)
        obj.select = False
        new_obj.select = True
        bpy.context.scene.objects.active = new_obj

        # take new copy of the context because it is outdated now
        ctx = bpy.context.copy()
        ctx['area'] = area
        ctx['region'] = area.regions[-1]

        bpy.ops.view3d.snap_selected_to_cursor(ctx, use_offset=False)
        break


how can i change a value which is common in all selected objects in one go? how can i change a value (in my case "space") which is common in all selected objects(in my case bones) in one go.
I have copy rotation on my finger bones and because default space is world space i need to change it to local space. Right now I am doing it individually( each finger have 3 bones so it means 12 times i need to change it which is quite laboring task).
so in short i want to know if it is possible to select all finger bones and change its space to local in one go rather than doing it individually.(copy attribute doesn't work because target objects are different)
https://cdn.discordapp.com/attachments/502168598450798592/747089000988409916/unknown.png

As long as these bones have the same constraint, select them, select Local in the contraint Space dropdown menu, but don't click on it (!!), instead press AltEnter


Draw in a region not found in space type I'd like to create a footer where there's no "FOOTER" bl_region_type
for example in the 3D view,
it seems impossible to do in python?
is this hardcoded in C++?
import bpy

class HELLO_PT_world(bpy.types.Header):
    bl_idname      = "HELLO_PT_world"
    bl_label       = "HelloWorld"
    bl_space_type  = "VIEW_3D"
    bl_region_type = "FOOTER"

    def draw(self, context):
        self.layout.label(text="Is This Working?")

print("Trying to register")
from bpy.utils import register_class
register_class(HELLO_PT_world) #-> RuntimeError: Error: Region not found in space type
                               #   Well I want to add a new region in this space... Duh...

Easily checked.
The type of region available to each of the area types is probably in the docs somewhere, however it is easily checked using the python console.
With a 3d view area as the variable area (C.screens.areas[3] in this example)
>>> area
bpy.data.screens['Scripting.001']...Area

>>> area.type
'VIEW_3D'

>>> for region in area.regions:
...     region.type
...
'TOOL_HEADER'
'HEADER'
'TOOLS'
'UI'
'WINDOW'

if it's not there, it's not possible with python.
Somewhat related https://blender.stackexchange.com/a/161773/15543


IK-constrained bones change position in the pose mode I was following a tutorial on rigging and everything went fine until I tried to parent my mesh to the rig, only to discover that when I switch from edit/object to pose mode (before skinning the mesh), two lower leg bones change the original position. It looks like they are being pulled by the IK.

This causes deformation when I skin the model and I'm sure it will cause problems when animating. I kinda found a solution where I had to rotate these two bones in the pose mode (although the mirror poses wouldn't paste for some reason from one side to the other), but I am not satisfied with it and I'd like to know whether anyone has an answer for this.

Why did it happen? Is there any way to deal with it? Below you can find a couple of images that show the problem and here is a link to my .blend file.

When I have this problem I go to Pose Mode, select the bone concerned, shift it to where it's supposed to be, Press CTL-A and select -
'At Rest '.

Check it in Edit and Object modes to see it doesn't move back again.
Do this for each bone that's out of place.

In your example I'd be rotating the bones above the yellow ones, which I think you might have tried already(?)


pink texture on imported model. How to re-link the texture? Once again, the pink texture.

Here are the steps I am following:

Download a Blender-specific file from Kitbash 3D

Unzip into a clean folder. Two files show, a Blender file for the Kitbash buildings and a folder of KB3D textures.

Run Blender, open the Kitbash buildings file. Textures are pink.

Go to File >> External Data >> Find Missing Files

Locate texture folder and click on Find Missing Files

This opens the folder, listing the texture files. Click on Find Missing Files again

Result - NOTHING!

What am I doing wrong? I've followed the recommended procedure, but it just doesn't work.

If you look at the file paths they are most likely not relative in the original blender file hence they wont be found. The way the blender file was packaged probably wasnt correct.


Cloth simualtion (pinning) multiple times on the same model I'm working up a concept for an interior scene, and not wanting to miss any details, I want to model the window coverings as well. For what I have in mind, I'm pretty sure will need to use cloth sim with pinning, but the pinning application is the problem. With as many places as the object will need to be pinned during the sim, I don't know how to go about setting it up. I've attached a basic reference for an idea of what I'm going for. This will be rendered in cycles when all is said and done also.

For such a model it should be sufficient to model it by hand using the cloth simulation would be a task too complicated for a model such as this. Using box modeling strategy and maybe subdividing the faces would suffice.

This is Unless you will be animating the model too, then cloth sim is the way to go.

Define the basic form of your model.

You will want to apply Edge Crease at the top and bottom of the model.
Apply a subdivision modifier.


Automatic Weights failing I'm trying to rig a digitigrade model (which is already a challenge in itself), but I've hit an impasse where I try to generate Automatic Weights and it just fails, saying "Bone Heat Weighting: Failed to find a solution for one or more bones". How would I go about fixing this? I'll attach my Blender file.

For this instance, selecting all the vertices and doing Mesh->Vertices->Remove Doubles will solve it.

In general, for automatic weight painting, your model must be very clean, with no duplicate verts for example, and not be rotated nor scaled.


How to get rid of internal shadows/blackness in glass/transparent/refractive materials? So I'm trying to make some very refractive glass in Blender Cycles. I've tried using the mix shader with Glass, Trasparency, by a factor of Is Shadow Ray + Is Reflection/Trasparency Ray etc, and I've also messed with every setting in the Light Paths section of the Render Properties.. but nothing will get rid of these black corners (see picture below), even though there is nothing black or unlit in my scene.

In the past I've used Cinema 4D, and I would just turn off every channel in a new material except for Trasparency, and then just mess with the Refraction value, and I would get a very clean, realistic-looking glass material (see picture below). You can still see a few black spots I think, but, it just looks so much more refractive and clean. What I'm wondering, is what Cinema 4D does by default in this scenario, that Blender doesn't, and what settings I need to adjust in Blender to get the same result as Cinema 4D's default Transparency/Refraction settings. Any help would be so much appreciated!! Thank you!! (I've searched through YouTube, and Google Search, and this website a ton looking for every related keyword I could think of, but haven't found the answer to this issue yet :o the closest thing I found was this What's the difference between refraction and glass shader? and at the end of the answer the guy even says he doesn't know what causes the black bits)

I see you have Transmission bounces set really high, but I think one of the causes might be a lack of Glossy bounces which is actually what handles all the reflections on the Glass shader. Without it, Glass would just refract and be transparent.


Modeling a low poly tree I've been modeling a low poly tree and i was wondering if i could add a branch to the tree without having to subdivide the tree a lot of times, thanks in advance.

You can use inset (I) to create the base of the branch. That way you can avoid having ngons.


Blender Dev: Hide Custom Properties? I was wondering if there is a way to hide custom properties we add to objects in our add-ons - to keep them from being displayed on the side (N) panel:

Some type of "internal only" option?

As an artist, I've always hated how addons clutter up this area. Especially when we (the user) want to maintain our own custom properties that get exported to game engines and such. It makes a mess. I saw a similar question here Hide custom properties in the UI panel with python, but I believe it was misunderstood.

p2or: When Developer Extras is disabled, the properties should not show up... so artists won't see them (usually).

Answer by p2or. Leaving this here until he returns and posts this as an answer. To sum it up, there is no reason to hide these properties because they are not shown to users unless Developer Extras is enabled.