Mesh halves have different colors (normals recalculated and doubles removed) I have a problem with my model. Using mirror modifier or duplicating and scaling -1 on the X axis sometimes results in an half darker than the original one. I have recalculated normals and removed doubles but the problem doesn't get solved. I hope you will be able to help me]1

https://drive.google.com/open?id=0B08odNC5CcQEYkZRdmpYYzRSZWM .blend file

if you'r referring to the different left/right shades your model shows above, imho @Duane Dibbley in a comment to your question has the cause and the solution. I'll try to show some details about how to "solve" this issue.

Your model in 3d view is lit by 3 opengl (invisible) lights, which - by default - are not "aligned" with your model, so they cast light and shadows on your model asymmetrically. This is why you get that impression in 3d view.

Your scene has a "real" lamp object, which will light the rendered view, but also is not "aligned" with your model: if you align it on X, and move a bit in front of your model, the rendered view will be perfectly lit in a uniform and symmetric way (even enabling the smooth shading):

To have the same lighting in the (opengl) 3d view, you have to make the (invisible) opengl lights "aligned" with your model, although it could be a bit difficult, but you can try, and you can also switch 2 of them off: open the user preferences panel, go to "system" tab, and try switching off two of them, and then try to make the remaining one "centered" (this is difficult because you can only operate on a small "disc" with the mouse cursor...). Here an example to give you the idea:


Selecting all coplanar vertices from another mesh Let's say you have this cube here, with points A, B, C, and D, which are all on the same plane.

Then, let's say you have a plane that is perfectly co-planar with points A, B, C and D. It is a separate object that can be joined with the original object. Here is a visualization.

What I need to do, in Python ideally (but for the purpose of this question any solution would be good) is to select points A, B, C and D as they rest on the same plane as the second object. It should be possible, because they are perfectly co-planar.
There is also a previous question on here that asks how to select all vertices inside of a 3D object. It is similar to this one.
How do I select all vertices within a specific 3D area?

Also, even better, is if you could do the same for an object that is not a plane, but also has no volume, like this:

Select all co-planar verts in other edit meshes based on 3 selected verts of active mesh.

3 selected verts form a plane. The coordinate of one and the cross product of vectors formed by two "edges" is the normal.

For all other meshes select their verts based on there distance from plane defined in step above.

mathutils.geometry.distance_point_to_plane is a utility function that returns the distance of a point to a plane.

The vert coordinates of other meshes are converted to the local space of active object to perform the test. Could instead use global coordinates. To make a local normal global see Python: vertex normal according to World

Test script. Select objects of interest and enter edit mode (2.8+). Select 3 verts of same object and run script. Any verts in the same plane (within tolerance) are selected in other meshes.
import bpy
import bmesh

from mathutils.geometry import distance_point_to_plane as dp2p

TOL = 1e-4

context = bpy.context

ob = context.edit_object
mw = ob.matrix_world
mwi = mw.inverted()
obs = [o for o in context.selected_objects if o.type == 'MESH']
obs.remove(ob)

bm = bmesh.from_edit_mesh(ob.data)

# using face normal
'''
f = bm.faces.active
plane_no = f.normal
plane_co = f.calc_center_median()
'''
# using 3 verts from select history
v1, v2, v3 = bm.select_history[-3:]
plane_co = v1.co
plane_no = (v1.co - v2.co).cross(v3.co - v2.co).normalized()
# should assert all verts and not inline.
for o in obs:
    bm = bmesh.from_edit_mesh(o.data)
    M = mwi @ o.matrix_world
    for v in bm.verts:
        v.select_set(
                abs(dp2p(M @ v.co, plane_co, plane_no)) <= TOL              )
    bmesh.update_edit_mesh(o.data)


Bend oval mesh around cylinder I'm pretty new to blender and followed a few tutorials to learn the basics. Now i'm trying to create a beer bottle scene for one of my customers. The Neck and backside label were no problem since i could copy parts of the bottle. But the oval front label drives me crazy. I didnt get it to bend around the cylinder I've tried to follow to some bend-tutorials but im keep messing it up. I've tried the warp feature as well as the simple deform modifyer.
Does anyone know how i can achieve this:

Thanks!!!

You can either reate a b&w ovale image that you'll use as a mask for your bottle material, or create an object for the label itselt. In that case you can use the Knife Project tool:

Create a plane, subdivide vertically. Create another object, a circle that you stretch on the Z axis and that you put in front of the plane:

In Object mode, select the ovale, shift select the plane, switch to Edit mode, go in front view and in the header menu > Mesh > Knife Project:

It has cut the ovale shape on the plane. Ctrli to invert the selection and delete the edges to keep the ovale:

Apply the Rotation of your label, give it a Simple Deform modifier / Bend mode, bend as much as you want on the Z axis, give it a Solidify modifier if you want:

Or (but it will be less accurate as it's an anamorphosis):

Duplicate your bottle, create an circle in front of it that you stretch on the Z axis:

Select the ovale, shift select the bottle, switch to Edit mode, go in front view:

Go in the header menu > Mesh > Knife Project:

The ovale shape has been printed on the bottle, you can keep the ovale and delete the rest with Ctrli to invert the selection and X > Delete Faces. Then you can give it thickness with a Solidify modifier.


How to edit a duplicated animation? I've followed this question because I want to split an animation into run/walk/attack.

I've entered the dope sheet, duplicated the animation (and pressed the F) and renamed them appropriately. But since I'm very n00b, I don't know how to set the starting time position for each animation...

[EDIT] The original animation is run, then walk, then attack. I want it to turn into 3 different animations. Right now I have 3 duplicates of the run, walk, attack; I'd like, for example, to cut out the "run" and the "attack" from the "walk" animation.

I assume you're going to be using NLAs.

Since I've been unable to find a good explanation of blender's NLAs, I've decided to write a bad one and hope that feedback lets me improve it over time:

https://docs.google.com/document/d/1WrrdFpZ-VC7taxu4iD3hZIowYvyM953iZpBwkZ78PgA

I will include a (soon-to-be-outdated) copy of the "splitting actions" section here:

  This is probably the most difficult of the workflows.  When you are
  starting out with NLAs and haven't become comfortable creating small
  reusable chunks you will often realize "I wish I had split this up
  before now."

  The essence of splitting is to create a copy and delete part from
  each.  Let's refer to those two parts as A and B.

  Imagine your action is currently the primary action.  Use the Dope
  Sheet/Action Editor to give it a "good" name (maybe "AplusB").  Then
  use the double-down-chevron to move it into an action strip.  Create a
  new track and create a new action strip in that new track that refers
  to the same action.   You now have two action strips referring to the
  same action datablock.  Go ahead and create a third action strip
  referring to the same action datablock as a sort of information bunker
  in case you make a mistake later on.

  Make one of the strips active and hit the Tab key to start editing it.
  Use the Dope Sheet/Action Editor to make a single-user copy of the
  action (click the [3] button).  Now give it a name that identifies
  which half of the action it will become (maybe "part B").  After that,
  you can delete all the keyframes that don't belong in the action
  (delete the A, leave the B).    Memorize the name of the new action.  Hit Tab to stop editing that action strip.  Now change the Action of the action strip  to refer to the new action.

  Make the other strip active and hit the Tab key to start editing it.
  Use the Dope Sheet/Action Editor to make another single-user copy copy
  of the datablock (click the [2] button).  You can rename it (maybe
  "part A").  You can now use the Graph Editor to remove all the B
  keyframes and leave the A keyframes.  Don't forget to point the strip at the new action.

  Before you test the animation you should discard the 3rd (information
  bunker) action strip but not before you click the [f] button to force
  blender to not garbage-collect the AplusB action.  That way you can
  still recover it later if you find problems with the animation.


Export model without materials? Any way to do it? Or maybe turn materials "off" temporary? The problem I am trying to solve is this: I make a model with different materials only to create a material ID map. If I export it as FBX to Substance Painter, it has several "texture sets" (equal to the number of materials) once loaded in the latter app. That adds an extra step to the workflow: merging maps after export. If I could "turn off" materials before exporting from blender it wold be much easier.

Mind: I obviously can just delete materials before exporting, but I fear that when iterating on some changes I might forget to revert the deleted materials and loose all my data.

Okay, if exporting as Wavefront's .obj file there is a check box "Write materials", unchecking which solves the problem. .obj is widely used and will work in my case.


live unwrap missing form 3d viewport options I'm in blender 2.91.0 and in the 3d viewport UV menu the live unwrap option is missing.
any opinions?

It seems like there are 2 Live Unwrap.
The first one is in the Options or in the N panel > Tool > Options, it will automatically refresh the UV map whenever you change the seams of the object:

The other one in the UV Editor. According to the docs, it "continuously unwraps the selected UV islands while transforming pinned vertices":


Particle emitter is still visible when rendered even when "Emitter" option is already disabled So I have this plane which emits small glowing orbs using hair particle (I'm stimulating a firefly field). I unchecked the "Emitter" option in particle settings as well as the "Transparent" option in render settings so that I will get the fireflies with a transparent background, the reason is I want to add a glow to it in the compositor.

The problem is, the plane is still showing in rendered viewport shading and also in the actual render, I don't know what to do anymore :|

Hoping someone might help me, I attached my file here: Blender File

Thank you in advance. :)

I downloaded your .blend file and solved it. The trick is the following:

Add a new vertex group, and assign every vertex to it.

Put a mask modifier at the end of your modifier stack and make it use the new vertex group, you should turn on the small double arrow button next to the vertex group input field to invert the mask selection. It will hide the original mesh.

like this:


How can I get a remote computer to automatically render a blender file I have a computer at home that I want to use for rendering so I can continue using my laptop.
Is there a way I can send a blend file to my Desktop which will automatically be opened and rendered for me.

Yes, there is. Automatically scheduling it will be a bit of a hassle, though (if you want to do that).

Rendering it

Blender can actually be run from the command line (Terminal on Mac, cmd on Windows). You can render a file like this:

blender -b path/to/file.blend -o whatever-####.png

On Mac, prefix this with /Applications/Blender/Blender.app/Contents/MacOS/ (replace /Applications/Blender with wherever you installed Blender). I don't know what to prefix it with on Windows.

Try this out, and it should spit out a .png image file in the current directory (another name for folder), which should be your home folder.

Rendering it remotely (on Mac)

You can just transfer the file to the remote machine and run the above command. This is for controlling it from the work machine.

Open a terminal on the rendering machine and type hostname. (You only need to do this once.) Then go to your work machine and type ping whatever.local, where whatever.local is the output of the hostname command on the other machine. You should get a continuous stream of output. Hit Ctrl-C to stop it. This step is to make sure that the two computers can see each other.

Now run this command, which does something very interesting:

ssh yourusername@whatever.local

yourusername is your username on the remote machine.

It'll give you a scary "identity could not be verified" warning the first time you connect. Just type "yes" to continue. (It can't tell the difference between a new machine and an impostor.)

Assuming you got your other machine's password correct, you are now controlling the remote machine!

Now copy the file to your render machine, or run this command:

scp yourworkusername@work-machine.local:/Users/.../file.blend ~

This will pull the file to your home folder on the remote machine. (Run hostname in another window to get your work machine's name.)

Now run the blender command above. Repeat scp and blender as necessary. When you're done for the day, type exit to log out of the remote machine.


How to do multiple holes through a cylinder from top to bottom? I'm a beginner so maybe this is really simple, but I'm trying to make multiple holes through a cylinder from top to bottom. As a beginner, I tried boolean, but that of course breaks the mesh into pieces.
I'm sure there's a way how to do it. Thank you very much for answering.

Alright as promised, I am attaching images that should help to visualize what I am describing. It probably is not the only way of doing it, but it gives you fairly nice control, no triangles and subdivides nicely.

First I would create a plane, inset it using I and remove the insides with X.

Secondly I would arrange the shape of holes using the square-holes. I did less than you need, but I am lazy and I think it describes technique well.

Third thing would connecting all the holes using F, using extrusion, and removing doubles every now and then you should be able to get to get the fairly round shaped thingie with holes arranged as you want.

Next, I have extruded border out and smoothed it out pressing Space followed by 1 (this "spheres it out" as much as possible).
At this point I made sure to count how many vertices there are on the border of the object. For me it was 28.

Then I have added a cylinder with the same amount of verts (28) and removed it's cap and then connected it with the hole-thingie, Using F.

Then I have selected the edge and beveled it a bit using ctrl+b.

Finally added subidivision surface modifier and smooth shading.. and you're done :)

I think this information helps you out, if not, let me know, I will try to describe it more clearly :)


How to merge a leg inside a shoe? (physically not connected) I edited a mesh looking like this:

I cut the shoes from the legs, edited the shoe a bit and inserted the leg into the shoe so it looks like this (much better):

There is a small gap between the leg and the "wall" of the shoe.Now the only problem is that I want the shoe and the leg to be connected to each other as one mesh, I want to bridge them somehow without losing that edge contrast, that's the whole point of this project. I tried merging verticies but that didn't solve it (edge got ruined). NOTE:Both shoes and legs count as one object (ctrl+J) so that's not the problem, I want them to be connected via mesh. Does anyone know?

Well here is a conundrum. You want two objects that in the real world are separate to be connected as one. Think about modeling objects like they are in the real world, your shoe is not part of your leg.

I'd recommend you not try to connect the leg and shoe. There is no problem with them being the same object. The issue comes when you try to make everything have the same edge flow.
The leg should be one mesh and the shoe is one mesh (even if in the same object).

What you should do to bridge the gap is extrude the edge of the shoe inwards so that it is inside the leg. (edge is selected in left half of the image below)


Where has the "Normal" Texture paint project option gone in 2.8? I am attempting to project an image onto a model, but faces with a shallow normal to the camera are not receiving protection. The "normal" option used to adjust this in 2.7, how do I do it in 2.8?

2.79 on the left 2.8 on the right.

It is in a different place, but still available under the Falloff menu options.


Why is my Blender UI glitchy when using rendered preview? When I enter rendered preview with cycles, the UI keeps turning black. GIF showing the problem.

I noticed that the problem isn't occurring when I change the "Window Draw Method" from "Automatic" to "Full" in System settings. However, when it is set to "Full", Blender keeps crashing when I try to enter rendered preview.

I'm using GPU rendering with a GTX 1060 6GB with the latest drivers.

I have tried rolling back the GPU drivers, but didn't help. I have also tried older versions of Blender, which didn't help either.

Does anyone know why this is happening?

Edit: I just found this thread on reddit (https://www.reddit.com/r/blenderhelp/comments/6h7aoh/blender_constantly_crashing_and_freezing_on/), where somebody asked a similar question. And the answer was to turn off nvidia shadowplay, or instant replay or whatever it's called. And it worked!

Case closed!


Can Blender be used to send to a factory to create silicone products (mass production)? I got started on a project early January.  The job was to model silicon baby products using reference images he sent and make them look like they were professionally taken in a studio.
I completed the job successfully, but now he wants to use the models I made and have them manufactured and turned into real silicon products and have them mass produced.  He asked if I thought my models would meet the technical specifications to use them produced at a factory.
He wasn't sure if Blender was something like CAD software and I'm not sure either, but I have read that you can create the products in Blender to have them 3D printed, but I'm not too sure this is the same thing.
How is this done? Is Blender enough, do I need some plug-in that will help meet all the specifications, or is this something more suited for CAD software?  He's talking about mass production, so I don't want to mess this up! If more specialized CAD software is needed, is it easy to pick up for a Blender user, and is there an easy one to start of with?

AFAIK, CAD software and blender are not that different, especially for 3D printing. The main difference would be operation, and maybe some tools to make sure the object could be made with a mold. Just do some checks:

Make sure the geometry is watertight, commonly referred to as being manifold. You don’t want any holes!
Double check that all the normals are pointing the right way.
Make sure the mesh is high poly enough that the resulting product won’t look polygonal like a low-res video game object.

If you have already printed a few things with this model and they are totally fine, I’d say you’re good to go. :-)


Sharpen the ends of Freestlye lines I currently find the ends of my freestyle lines to be a flat shape when I want a triangle like shape:

I want the lines to vary in thickness when arriving at a "dead-end", and to fade out to a single point, instead of two that create the flat square shape.

Where can I adjust the end-line thickness of a freestlye line?

This is in Blender  v2.79b.

I've managed to come up with a decent result using the 2D Length and Angle settings.

I first used an Along Stroke modifier (thanks Robin Betts) for the line thickness in the Render Layer Properties -> Freestyle Line Style:

This by itself didn't do much, so messing with some other settings, I managed to get the Min 2D Angle and the 2D Length values to get me a close enough result to the one I 'm aiming for:

This may not be the best way, but for me, it works fairly well.
This is what I now have:

This way does give you different stroke widths on the mesh, giving it a more hand-drawn look which I was hoping to achieve in the first place.

EDIT: I reposted the first pic, which was originally:

This gave the mesh occasional bumps in the lines drawn, but in case anyone wants the curves for the rendered picture above, this is what it used.


Blender 2.9 - how to delete animation action? I got animation action I want to get rid of, how to do it?
Tried to do simple thing as clicking "X" in action editor but it doesn't work.

I tried do it through Outliner window, I found an action, right-click on it, "Delete" and whole rig got deleted.

I am obviously not following Blender UX mindset, I got like couple of dozens cloned actions already, littering whole scene (was experimenting...) I can't sleep knowing they are sitting there.

You can delete them the way you're trying to, maybe it moves your object as it is not transformed by the action anymore:

You can also go in the Outliner, choose Display Mode > Blender File and under Actions, delete the actions you want with a left click > Delete:

Also, if you press Shift and the X button on the right of the action name in the Dope Sheet, it will be marked as 0 (no user), it won't be saved when you'll close your file and in the Outliner > Display Mode > Orphan Data it will be displayed as orphan and you can delete it immediately if you want:


Is it possible to armature a multiple objects? I have a model with weapon and shield separated in objects, but im having a difficulty because i have to merge those objects before adding armature and weights

Yes. Each object can be parented and weighted to the one armature in the same way you would a single model.


Restore vertex groups after live boolean modifier I have several objects that I am combining with a boolean modifier, but I am not applying it as I want it to stay live as the objects move. After the boolean, I want to use other modifiers that need vertex groups, and subsurf that needs crease. The boolean wipes these both out.

I know that if I have a UV unwrap and apply the boolean, I can restore my original seams with the Seams from Islands command. But I am not applying the boolean.

I have tried using Data transfer from a non-booleaned version of the objects to transfer vertex groups and creases, but it does not seem to be working. Is there a specific combination of settings that will make it work, or some other option?

Without knowing your specific setup, I'm going to show a basic example of how to use the Data Transfer modifier to restore either Crease data or Vertex Group data after they have been destroyed/modified by a Boolean modifier from a copy of the object.

Here we have a sphere with some creasing applied to some of the edges of a sphere that has a Subsurf modifier added to it:

And now above the Subsurf I add a displace modifier and set it to only use the bottom half of the sphere by specifying a vertex group:

So we now have vertex and crease data and we can test ways that the boolean modifier might destroy/modify that data and how to restore it.

Here I add a Boolean modifier at the top of the modifier stack (Subsurf disabled):

We can see that actually the vertex group of the Displace modifier has been preserved and is still working as only the bottom half of the sphere is displaced:

However, in the image above we can also see that the crease data has been removed by the Boolean; we no longer have the pinching effect shown in the previous images.

We can now restore this data from a copy of the object. The copied object has no modifiers on it, but it does have the same topology as the original sphere and it does have the creases marked on it.

I add a Data Transfer modifier above the Subsurf modifier, but below the other modifiers. The order is important because if the Subsurf is above the Data Transfer modifier the creases will already have been calculated, so restoring the crease data after that will have no effect. We must restore data then Subsurf so the Subsurf has access to the transferred data before it does any calculations. I choose the copy of the original sphere as the Source Object, choose Edge Data as the type of data I want to transfer and specify the Subsurf Crease option as the actual data I want:

We now see that the pinching is back indicating the crease data has been successfully transferred.

There is, however, one thing to note, and that is the Solver the Boolean modifier is set to use. It's an option on the modifier and by default it's set to BMesh when the modifier is added and is the Solver type I used in this example. However, if you remove the Data Transfer modifier and change the Solver to Carve you will see that the Boolean no longer destroys the edge data, but instead destroys the vertex data:

The displace modifer is now effecting the whole mesh, meaning the Vertex Group has been modified and the pinching the crease data was creating has not been effected, whereas before, the opposite was true. I'm not quite sure why this happens or whether it's intentional, but this allows you to instead preserve the crease data and restore the vertex groups, though this time the Data Transfer modifier has to be above both the Displace modifier and the Subsurf:

(This also means the copy of the object we are transferring from needs a copy of the vertex group instead of the same crease marks.)

There doesn't seem to be a disadvantage to using one type of Solver over the other, but it does allow you to use either Solver (in case you need to use a specific Solver for other purposes) and always preserve the data.

To summarise:

BMesh Boolean Solver destroys Crease data.
Carve Boolean Solver destroys Vertex Group data.
The Data Transfer modifier has to be above any modifier that needs to use the transferred data.

I have added the Blend file so you can see the exact setup I've used (the copy of the original object is on layer 2):


Strange selection behaviour from 2.8 to 2.79b I would like to know why this happens.

As you can see in the image, I create an object in Blender 2.8.

Then, I copy and paste into Blender 2.79b, if I enter edit mode in 2.79 and select a face or everithing in vertex selection, the selection should be orange, but its like it was a problem with normals or maybe Blender 2.8 uses another kind of polygons that other type of software does not recognize at all?

Anyone knows why this happens?

This is happening because of incompatibility between the two versions.

Blender 2.80 differs from 2.79 a lot. The two versions are not 100% compatible. You should not work in 2.79 with data saved or made in 2.80 or you will experience some issues, like for example this what you are seeing in this case.

If you only need to get simple geometry made in 2.80 to work in 2.79, you can export the models in some other format like .obj and import them to 2.79. It will work fine this way. However if you needed to export more complex things like materials, normal data, animation, rigs and other things you may experience a lot more problems and it might not be possible/practical to solve those. It is best to choose a version and stick with it in one project.


Blender has closed when I re-openig some files when I open my saved file it's opened... but when exit the rendered show in uv view and went to the 3D view,  my left click and middle muse work correctly and when i Right click on my object to select it, the program get closed without any error. This Happening is for some saved files, not all of them... and I do the same saving method for all of them. what should i do?

It happened with me too.Sometimes the file gets corrupted.Try copying your object in a new empty blender file and then save it with a different name.It worked for me.


How do I move bones relative to global position rather than its parent? Is there any way I can transform my bone in pose mode relative to the world instead of what it inherited from it's parent in Edit mode?  When I try to do absolute transformations (see red arrow in image), I'd like to zero out everything and have the bone move to 0, 0, 0., but if I zero the transformation it's only relative to parent.

Alternatively, I could use a way to stop a bone from inheriting the move a parent makes between Edit mode and Pose mode.  I already know about dis-selecting "inherit rotation" and "inherit scale" but I still need my bone to inherit those things, just not the move from edit to pose.

For background, I'm taking already created models that have already had their pose and edit positions created, and I'm just trying to modify/add to them.

Oh, and one other way I could solve my problem is if I could parent my bone in Pose mode instead of Edit mode.

A way to do that is, instead of parenting your bone, you could use a "Child Of" constraint on it. You can animate its influence during your animation.

And if you want to push this further, you can even have its influence driven by a controller, parented to your bone.


How to set Z transparency in Blender nodes using the Blender's Render? The context is like this: If you are using the Blender internal (Blender Render Machine) and you are also using nodes, and want to fine tune the transparency by using the Z Transparency value how should you proceed to achieve such setup?

you can use the alpha input on the output node.


Merge object at vertex I have been trying to look this up for a tutorial for the better part of a week, and I've had no manner of luck.

I have two objects - both "cubes" of different dimensions, and I would like to merge them together. One is 4x4x20, the other is 1x20x5. I wish to align a single corner vertex of each object, as if I were bolting a length-wise piece of wood to an upright (which is what I'm trying to model), merging them without having to stretch any individual faces of either object. The entire object will have to move (either one), and I am at a total loss of how to make this happen. Please, someone, tell me what I'm missing.

Simplified screenshot of my desired ending point:

It's not perfect, because I can't get it to be perfect.

Select one of the objects in object mode, change the snap element option from increment to vertex,

Press G, hold Ctrl, and move the mouse to the vertex of the other object you want the first object to align to.


Bevel and Subdivision surface issue I wanted to bevel a corner of a rounded mesh but it glitches out.
This is the starter mesh:
and this is the beveled mesh:
I want to bevel the mesh a lot more but if I do this it looks like this:
With subdivision surface it looks like this:
I checked for duplicate vertices with "Merge by Distance" in edit mode but this didn't help me.
Here is my blend file

The problem is, that you have a lot of long, stretched out faces on the top of the model. Not something you want to have, in general. Consequently, some edges of the top surface run parallel and very close to the (bevel)edge. When you add the bevel, you'll end up with overlapping geometry.
You should try to redo the geometry at the top and generate a more grid-like result.
You can achieve this by deleting all top faces in edit mode. Then, select the edge and press F to create a face. - Then press I to inset the face. Make sure to inset far enough to leave space for the bevel. (While insetting is active, you can toggle the Boundary option by pressing B. This prevents the extra face at the boundary of the mirror modifier.)
Inset once more for good measure.
This is what it should look like:
Then, (IMPORTANT) - Apply the scale of the model, or the bevel will look off. In object mode, press CTRL + A -> Scale.
Edit:
In order to have the Subdivision Modifier behave well, you'll want to add another holding edge on the side part. In edit mode, press CTRL + R to get something like this:


Blender Cycles: Diffuse only lamp I'm trying to create a cycles lamp shader that only lights up the diffuse component of the materials around it. Kinda like having its Glossy component turned off in the Ray Visibility box under the object tab. But it is not working. I seem to be missing something quite basic.

Here's my node setup:

When the material is reflecting sharply (with roughness turned down to zero), the node setup works. But with blurry reflections, it stops working. What is it that I'm doing wrong?

I think it might be the node setup for the light. When I set up a similar scene with a pure emission shader on the plane, everything worked as I think you wanted.

In the scene I have a plane with a 50/50 blue diffuse/white gloss mixed shader, a 100% green diffuse shader and a 100% red glossy shader all at about .2-.3 roughness. There is also the default amount of light being emitted by the world

Finally just to prove that the red glossy plane isn't reflecting the light, I turned off the world light and you can see that the red plane is no longer being lit by any light source and is completely black.

Hope this helps you.


How to add a range of separate images to VSE without merging them in one video strip? I press Shift+A, choose image, then I see the menu for browsing images. So if I select several pictures and add them, Blender will join them in one video-stripe, but I want to avoid that. I want to add a range of separate images at a time to work with them in the VSE.

Add images as usual strip and then use Separate Images to make each image as separate strip.

From manual:

  Y Converts the strip into multiple strips, one strip for each frame. Very useful for slide shows and other cases where you want to bring in a set on non-continuous images.

With strip selected press Y (or open Strip > Separate Images) and choose how long (in frames) each resulting strip should be.

Then you can grab resulting strips as desired.


Boolean intersect with plane makes object disappear I'ts been 10 hours of researching, watching tutorials, trial and error and yet i still cannot figure this out.
I have 2 planes, one being my water for my city and the other being the ground. I'm trying to intersect the water with the ground so it will make a little divot like in the image below but every time I do that the mesh disappears or it won't allow me to even intersect it with the Bboolean modifier.
I tried Ctrl+N, removing doubles, making the ground a cube instead of a plane and yet none of these work.
I'll upload the file below but this is just the current lake I've tried out of the 200 other attempts.
The tutorial I'm following is this https://www.youtube.com/watch?v=i4ySFm4ey9U&list=LLZKTEq5R9PWrJvExEVHgTFg&index=5
At 55:36 mark is where I'm stuck.
If anyone could help it would be very appreciated thank you for your time :)

First. The scale of your plane is set to negative.

Press CtrlA in object mode and select apply scale.

Then the river object has inverted normals.

Make them consistent by pressing ctrl N

Booleans use the direction of the normals to calculate the operation.

Then use Difference to cut out the shape of the river out of the plane:

Some reasons for failed booleans operations:

Non-Manifold geometry
Inconsistent normals
Booleans don't work with curves or text
The scale for the object uses negative values


Retaining a mesh while deleting vertexes So, I want to make a sphere with faces similar to what is seen in the image:

I though I could achieve this by deleting the vertexes in a mesh, while hopefully keeping the sphere shape, but alas, Blender doesn't allow that. Is there something I'm missing or an addon of sorts I can get to help me with this?

There is a dissolve tool that you may find helpful. When you hit X while selecting an edge loop it will give you the option to dissolve edges, which will remove the vertices but keep the faces as close to intact as possible.


importing a good mesh Im importing and svg file and when i go to edit mode get some 1000's mesh and edges,etc. Is there a file to get a clean mesh. Image is attach object mode look fine but when turn to edit mode 1000's of mesh. Is there any other file format which we can get a clean mesh.

blender file

file disappear

There is no other file format that will guarantee a better mesh topology, unless you import as NURBS, but Blender can not import NURBS nor handle that kind of geometric complexity.

As TLousky mentions the results you are getting are totally normal and expected when converting a bezier curve into a mesh. However I would advise to not convert the SVG curve into a mesh, unless you specifically need to and only when you need to.

Keep it as a Bezier Curve object as long as possible, it's non destructive,  will be easier to edit and maintain while being easily editable as a bezier curve handles.

Also have a look at my answer about cleanup techniques for bezier curve objects, useful both for keeping as curve or before converting to mesh for a cleaner topology.

Have in mind that converting Bezier Objects into meshes will always leave a mesh with uneven topology and lots of triangulated edges. You may later clean them up a bit by turning flat faces into NGons.

That won't improve topology nor benefit unwrapping or editing, but it may give a cleaner viewport.


A camera representation is missing from my scene. How can I see it? I will be teaching a Blender class in January and I have downloaded the latest version of Blender.  I am going through the BlenderBasics_4thEdition2011.pdf that I've chosen to use as a text.  I'm creating a text file that is a record of my progress through that book.  Now I've gotten to the camera setup procedure and I can not see a representation of a camera in my scene, so I expanded the transform menu, exposing an auxiliary panel.  Atop this panel is a Scene Tree diagram that shows all of the elements in the scene.  I found that you could right-click on the Camera listed there and choose the Select option that appears atop the choices.  Then with the Camera selected first, I could hold down Shift and RMB on the Empty.  The text says that both objects will be highlighted - though I can't verify that because I cannot see the camera.  I did press Ctrl+T to add a "Track To Constraint" but the next thing the book says to do is move the camera and I can't see it to move it.

To get around the problem I started a new file and was able to move the camera that came with the standard scene.  Is there a way to show the Camera Icon that I am not aware of?

Alt+H, Thanks very much!

This is a very common issue for newer Blender users. There are many hotkeys that they are not aware of, and because of that may unwittingly do something not intended.
This is a prime example of that. You appear to have accidentally pressed H while your camera was selected. This keystroke is the Blender shortcut to hide objects in the viewport. To make all objects in the scene visible again, press Alt+H. This un-hides all objects in the current viewport.


Must bevel be used in every situation? My question is simple: Should I use bevel on everything to make it look more realistic?
On what circumstances should bevel be used?

I have been experiencing artifact problems when I bake normals from beveled high mesh to low mesh.

I guess bevel affects normal map baking. Does it?
Thanks for answers.

Yes. No. It depends.

Objects with bevel are indeed more realistically looking and as probably you know by now, there is not a single known object perfectly sharp. Even sharpest knife in some tremendous magnification will show some "bevel" on its edge.

Question is, when do you need to show it. Firstly lets get trough most commonly used bevel cases.

Bevel High Poly

Most natural one from the bunch. I've used on this example 3 segmented Bevel and 2nd level of Subdivision Surface modifier. It goes to whopping 3,072 tris on a simple cube.

It looks the best out of every other case but it is heavy as hell.

  When to use it? If you are rendering extremely realistic object in a
  closeup or try to keep realism overall at high level.

Bevel Baked

This one is/was mostly used in game industry. It gives you considerably good looking bevel from the distance. This object has only 12 tris! Problem is - you will loose object silhouette and it is kinda not user friendly in Blender.

  When to use it? In game engines for non significant distant objects.

How to: How does normal baking work?

Bevel Shader

This is one of the newest additions to Cycles. It's very similar to the baked one but you have nice control over it. You don't need to create normal maps images, high poly meshes etc. Cons - you can't export it that way, so baking still will be needed for external software and still you will lose object silhouette

  When to use it? Non significant distant objects in Cycles rendering.
  EEVEE doesn't support it (yet?).

How to: https://docs.blender.org/manual/en/latest/render/cycles/nodes/types/input/bevel.html

Bevel Weighted (Hardened Normals)

Also one of the newest things in Blender and by far my favourite. You can achieve it by Bevel modifier in 2.80 (Hardened Normals) or with Weighted Normal Modifier.

This option gives you light mesh (44 tris with 1 segment bevel, 108 tris with 2 segments - example is 2), silhouette and smooth looking edges.

It was highly used in a game Star Citizen, you can read more about it here.

Overall it's not a perfect solution. I don't know how compatible it is with main game engines besides UE4 (which support it) but I know for sure LuxCoreRender can't handle Custom Normals Data.

  When to use it? Games, non significant objects in middle range (with 1
  segment), close non significant objects with more then 1 segment.

Summary

As you can see there is no single answer to your question. You need to choose accordingly to your needs.

I've presented only selected methods easily achievable in Blender. There are more of course.

Or maybe you don't need bevel at all for small details in background - it's your call.

Side note: There are of course more pros/cons and also use cases for every method. I've pointed most relevant from my point of view. If you think that something else should be written in this answer, let me know in comments section.


How do I make the upholstry of a vehicle panel looked puckered by a door handle? Simples.
I just want to create a depression in the panel, as if it was made of leather and the door handle was installed against it.

Here's the best example I could find. Note how the panel around the hardware with the red thing hanging out has caused a depression.  I tried to create more loops and add an inset area on the panel, but that caused the panel to act weird due to my subsurf modifier. I'm hoping there is some deform that will "push in" based on another object

As example, my monkey is the door handle, and my cube is the door panel.

Use for both a subsurf modifier.
Overlap the monkey with the cube
Enable the cube as canvas and set type to displacement

Enable the monkey as brush and set paint source to mesh volume


Cutting a triangular pyramid at precise z coordinates I'm trying to cut a triangular pyramid precisely into two pieces, a lower base part and the upper tip, as shown by the blue lines in the picture.

Vertices A B C must have the same exact z-coordinate.  So when the tip is cut away it will leave a perfecly flat (non-angular) surface.

I've tried subdividing and sliding vertices (Shift V) and trying to snap to a vertex in another mesh (with the required z coordinate), but its semms there is no vertex snapping for slide operations.

I also tried bevelling the top vertex to 0.0001 which allows using Edge loop and slide, but the same issue then occurs, ie no vertex snapping.

I could just add the vertex on each edge and then manually slide into place until I see the exact z coordinate, however I need to do this many times and it is relatively slow and error prone.

Is there a builtin way (or add-on) that simply lets us cut an object into two pieces precisely?

You can easily achieve this with a boolean modifier, using a plane.
Add a plane, set its height to be where you want to cut the pyramid,
then add a boolean modifier to your pyramid, set the plane as the object, and duplicate the pyramid.

One copy of the pyramid should have the boolean operation parameter set to difference (keep the top of the pyramid), while the other should be set to intersection (keep the bottom of the pyramid).

Apply the modifier on both copies to complete the process.


Blender no longer opens my blend file, it loads the Export FBX screen and is stuck there It's completely bizarre, I tried opening the blend file on my other computer, I tried deleting to blend1 file, I tried factory settings, somehow my blend file got corrupted?

Basically I was exporting to FBX, and then it got stuck on that screen, when I exited and reloaded it, it loaded straight to the Export FBX screen, I can't get back to my scene no matter what.

Open the file without the Load UI option ticked

Go to File > Open and browse to open your desired file, but before you open uncheck the Load UI option on the bottom left of the File Browser window.

If not, open a new Blender instance and append your scenes from the previous file.

Otherwise post your file here so we can look at it.


Can't find Denoiser in 2.81a My Splash screen and system-info.txt both confirm I have version 2.81 of Blender.

And yet, when I go to View Layer Properties and Passes I cannot find the sector Data underneath and therefore I also cannot find the Denoiser.

You're in Eevee. Switch to Cycles, if you want to enable denoising data.


Braille text in blender I'd like to use blender to add some text in braille to some blender 3D modela in order to print them via 3D printers.
Is it possible in an easy way? How?

I know nothing about braille but this should be as simple as grabbing a suitable font and extruding it. I tried braille normal from fontspace. Once in Blender, add a Text object, edit it as needed and then navigate to the .ttf font file under Font, the Regular input should be enough.

One you are satisfied, you can edit the Extrude slider for the depth or convert it to an object and play with it some more (booleans etc).


How is the most bottom bar called and how can i access it How is the most bottom bar called and how can I access it?

It is called status bar and can be toggled from the Window menu or with the operator

Screen.show_statusbar


Where is openGL render options in 2.8? Here what options in 2.7x:

Where is OpenGL render options in 2.8?

It appears they are now where all the render options are - in the Properties Editor, Render Tab:

It seems you can also set different settings for the viewport when in 'Solid'mode and have different ones for 'Rendered' mode only. You can do that from the header of the 3d Viewport:

OpenGL render is now accessible from the header of 3d Viewport, Viev menu:


Is it possible to combine two textures? So I made these fenders for a truck and added a picture as material, the flames and red color are both from the same picture but I think it looks kinda boring (It's a big png with an entire colorscheme for other parts as well).

I was thinking about making/downloading an aluminium material and combine the picture and aluminium to give it that shiny look like a real truck. Not sure how I need to do this so any help would be awesome!
edit: here's the link to the image: https://ibb.co/Twc7W9Z
The colors look cool but I wanna give those  parts a material look as well, like chrome, aluminium, etc..

edit 2:
It is now like this:
and I wanna make it look like real material and shine like this:

Yes, you can in many ways. You can just mix RGB:

Or similarly you can mix shaders (here the effect is the same, but with different Principled BSDF settings it would differ):

Or you can do something more interesting:

If you have some specific textures in mind and a specific way to merge them, it would be good if you described them in your question. A texture with scratches could be added based on it's alpha channel for example.


Driver variable prop (ID-block) : referencing the current object I have several objects that share the same material.

This material has a mix shader node, whose the FAC parameter should be linked to a custom property of the object having that material assigned.

From what I read, I need drivers here, so I've set up one (see screenshot).

But I need to set an object as input for the driver.
I don't want to select each object manually.
What I would like is that the driver refers automatically to the current object.

Is it possible, or do you know a better way to achieve this ?
Thanks.

In blender 2.78 (and maybe earlier) there is now the use_self option when setting up a driver.

And with a test script

import bpy

def x(self):
    print(self)
    print(getattr(self, "location", None))
    return 0.0

bpy.app.driver_namespace["x"] = x

After adding the driver expression x(self) to a driver on a cone mesh and a material's emit it prints the following to the system console

<bpy_struct, Material("Material")>
None
<bpy_struct, Object("Cone")>
<Vector (0.0000, 0.0000, 0.0000)>

and to return  custom prop value, or 0 if there is no custom prop of that name.

def x(self):
    prop = self.get("toggleRedWhite", 0.0)
    return prop

PS. the data_path of a custom property is '["toggleRedWhite"]' How can I add drivers for custom properties?


Fix intersecting faces in blender I have a complicated geometry with some really small (not very visible) self-intersecting faces to fix, like below:

I have tried to use the shrinkwrap modifier and wrapped a fine-meshed cube on its surface. However, even though the cube is very finely meshed, the approximation is still not good:

I can use remesh modifier to fix the self-intersecting faces, but it requires an astronomical amount of vertices (deep octree) to maintain the geometry.

Could anyone please help with some ideas? Thank you!

What was the step that introduced this geometry problems? In general it's better to avoid geometry problems at all than to try to fix it. So i would suggest to have an eye at your workflow.

At this point i would retopology such a problematic mesh by hand now. No algorithm can know which vertices to keep and which not. So there is imho at this stage no way around manual work.


How to access the context of a future created screen? In this simple script below, i created a duplicata of the context editor into a new screen. all i want is to know the context.screen.name of both editors.

import bpy
print(bpy.context.screen.name)
bpy.ops.screen.area_dupli('INVOKE_DEFAULT')
print(bpy.context.screen.name) #still the context of the old screen

when trying this script, all it print is the same context.screen.name twice.
How can i access future event like this?

bpy.context.window_manager.windows[-1].screen.name

will be the name of the last created screen.


Show only certain curves of multiple layers in graph editor I'm struggling with the animation workflow in Blender. One of my biggest issues is with displaying only relevant curves in the graph editor. So say I want to change the z-location curves of 20 layers. Is there a fast way to display those curves (and only them) or do I have to open and close 20 little triangles and manually click on the eye-symbol of all the x and y location curves?

That is exactly what the Search tool is used for.

Tip: You can also filter channels by data types with the Filter tool nearby on the same header, if you need to.


List of un-assigned keys in Blender 2.69 How can one obtain a list of un-assigned keys in Blender (i.e. Q, Alt-Q)? Is there a script for this?

I don't think it can be nice and practical to list all un-assigned keys, since there obviously are too many posibilities with combinations. Furthermore, same keys can be used in different modes and contexts without conflicts, which extends the possibilities even further.

However, as gandalf3 suggested, you can view all shortcuts in User Preferences > Input. Also, when switching Filter Type to Key Binding, it allows you to search specific key that is currently assigned:

If nothing is filtered, then congratulations, it hasn't yet been assigned to any operators among all contexts. You can use it 100% safely:


Why would I use the "Film Emulation" feature? From what I can tell, this setting alters the exposure and other parameters to simulate a specific film, however why is this any better than exporting a file format that supports high dynamic range (.exr or .hdr) and then editing in post?

It would seem that using a raw file format would give you much greater flexibility.

The key advantage is that it works real-time in the view-port.
Of course all color manipulation could be done once the file is saved.

However having this apply to previews while you're setting up your scene means you can setup a a rough grade, and then build the lighting off of that. This allows you to get a really good idea of where you need more detail in the render, and also gives you a more accurate representation of how your lighting will look once everything is color graded.

The look settings can also help give a rough grade without much work. There's also the plus that they're based off of real life film types.

There's also a log setting. According to the manual, this is intended more as a way to trouble shoot the image, but it can also be used to get a nice flat image for use when grading.


How do I get a glowing line via textures or materials? I've built objects that use the Halo material but it has a vertex glow. How would I make a whole line glow without dividing my surface into an absurdly large number of vertices?

If you want to do this relatively easily and for certain edges, select the appropriate faces in edit mode and click EDIT->Mesh->Faces->Wire Frame on a duplicate of your original model.

Assign new materials with emission. I recommend just doing a solid material and join the models back together (I really usually work in Cycles, and if doing so you can use a simple Emission shader since Blender Internal doesn't really like emitting from materials in my experience). This adds a few vertices, depending on how smooth you want your outlines to be, but I've found that usually they can be pretty simple. You wind up with something like this:


Bake Fluid to affect Cloth I was exporting the fluid as an .abc file and then reimporting it, hoping I could have it collide with my cloth. I know that the cloth would not affect the fluid this way but I thought the fluid could at least affect the cloth.

I tried baking the fluid animation to keyframes but I am failing at that already apparently. The other day I could export it as an .mdd file and I think that I had it keyframed when I reimported it, but I get an error message both  on export and import of mdd.

Maybe .abc/alembic cache is the better way to export that anyways, but, as I said, how can I have it affect my stupid cloth simulation?

You do not need to export your fluid to have it collide. You can save the bake in your desired location, delete every fluid obstacle but the domain, remove the fluid modifier for the domain, then re-apply it. Now here's where the magic happens: set the object to a fluid domain again, and set the bake location to the same file you used for the simulation. DO NOT RE-BAKE THE FILE OR CHANGE ANY SETTINGS! You should notice that it becomes fluid again. Then add a collision physics simulator to the fluid, and do what you want to it to interact with the cloth. Finally, bake the cloth physics, and it should work.


Share custom compositor nodes among blend files I feel there are some basic nodes currently missing from the node repertoire of the compositor and material editor. One such node (for me at least) is a "vector" node. This would be the 3D equivalent of the 1D "Value" node. Such node would takes 3 inputs X, Y, Z and have one vector output. Why the need for such a node? Some nodes take a vector as input (e.g. "offset" or "scale" etc), but you cannot connect a single value output of a node to the individual values of a 3 valued input. My solution was to create a "vector" group node in which I have XYZ single value inputs and use a "Combine RGBA" node to combine the XYZ values into one 3D (vector) value output. This works fine, however I want to have this custom node available to any of my blend files without having to always use append to grab this custom node any time i need it.

My question is: Is it possible to make a custom (compositor or material) node that is shared among blend files without explicitly importing that node by appending it from another file? .. perhaps via an add-on script that automatically creates these custom (group) nodes using the python node API?

You could customize your start up file.
1. Open your start up file
2. Append the node groups you use a lot, click on the F in the node groups and delete the node groups.
3. Go to your default screen
4. CTRL + U save sart up file.
5. Close your file
6. Open a new file, go to the compositor, SHIFT + A --> group --> your node groups


How to remove the 'Reload trusted' button when opening blend file I would like to try out the new SheepIt renderfarm service with a short film I'm making. The problem is, my short film makes use of the Cookie Flex Rig (http://www.blendswap.com/blends/view/61707). Everytime I open the file on my machine, I have to set 'Reload trusted' to see the characters as the rig uses a lot of python code. However, it appears the renderfarm doesn't ignores this and renders without 'Reload trusted' which resulted in weird artifacts.

How would I go about making my blend file open without the 'Reload trusted' popping up? I've tried the f-curve version fix, removing rigify ui python code, and still get the 'Reload trusted'.

Have you tried activating "Auto Run Python Scripts" in the user prefs?

Setting this option, removed the "Reload Trusted" button whilst using add ons for me.


How do I offset animation start in a linked blend? I have a resource file containing a model with materials and animation tracks (NLA action strips) that I want to re-use in another Blend file.
In the resource file I created a group containing the objects I wanted to re-use (excluding a ground plane, lights, cameras etc)
In my set file, I linked the resource file group to the scene as a group instance.  I've added other objects to the scene and created additional animation tracks.
When I play back the animation, the linked object starts playing its animation track at frame zero.
I'm looking for a way to offset or stall playback of the linked files animation track in the set files timeline.  Is that possible?
If not, is there another way I could re-use my resource file objects and animation in a way that allows me to update the set file if the resource file changes?
I've attached links to files that can serve as an example in this case:

https://www.dropbox.com/s/qdkqh6fgu80hxiv/linked_ani_set_file.blend
https://www.dropbox.com/s/oh3wirvbh02znrt/linked_ani_resource_file.blend

I don't know if you have solved your problem, but, I had the same situation of  your.

I would like to offset the entire linked objects animation, but it don't appear in the NLA panel without make proxies. In my case, my rosource file has more than 50 animated objects, it's impracticable to make proxies of each one and then offset each nla strip.

My solutions was:
When you thing in animation in Blender, think in armatures! Do not animate objects, animate bones! I've changed my resources files and add one armature to each one. Each object is child of one bone, and the animation is made on the bone. Therefore, when you link your resource, you make only one proxy (the armature) and only one nla offset (the armature's nla).

I hope that I've helped


How to setup custom data-structures in blender python? I am currently working on an add-on that is supposed to organise bones into clusters and to do fancy things with those clusters. You can look up the details here if you want.

There is just one problem about my code. I have to come up with a data structure to save said "clusters". My first instinct would be to just write an empty class and fill it with memebers. But in Blender that seems to produce a ton of problems:

import bpy
import os

#cleaning up the console
os.system("cls")

#this class is used to store stuff (oversimplified)
class Foo():
    #just setting up one element
    bar = None

#make instance of Foo()
foo = Foo()
foo.bar = "bar"

class dumbOperator(bpy.types.Operator):
    bl_idname = "test.dumb_operator"
    bl_label = "Dumb Operator"

    importedFoo = None

    def execute(self, context):
        if self.importedFoo.bar is not None:
            print(self.importedFoo.bar + " is here!")

class dumbPanel(bpy.types.Panel):
    bl_space_type = "VIEW_3D"
    bl_region_type = "TOOLS"
    bl_category = "Dumb"
    bl_label = "Dumb"

    def draw(self, context):
        lay = self.layout
        button =  lay.operator(dumbOperator.bl_idname)
        #this won't work
        button.importedFoo = foo

#registering stuff
def register():
    bpy.utils.register_class(dumbOperator)
    bpy.utils.register_class(dumbPanel)

def unregister():
    bpy.utils.unregister_module(__name__)

if __name__ == "__main__":
    try:
        unregister()
    except Exception as e:
        print(e)
        pass
    register()

And even if I would somehow circumvent the problem shown in this example, there is just way more lurking around every corner (e.g. you can't make a CollectionProperty out of instances of custom classes, so layout.template_lists() are unavailable as well).

So why am I even using a custom class at the first place instead of a PropertyCollection? because I have no idea how to make a PropertyCollection out of this:

class BoneCluster():
    """Simple class that is used to store groups of bones and some details about them
    Bones can be assigned to more than one instance of BoneCluster"""
    def __init__(self, name, parentCluster, prefix, bones, constraints):
        #The instances name. Will be set and read by the user
        self.name = name
        #If this instance of BoneCluster is a copy (thus a child) of another instance, a reference to it's "parent" will be stored
        self.parentCluster = parentCluster
        #If this instance of BoneCluster is a copy (thus a child) of another instance, all of the bones names inside it will begin with this prefix
        self.prefix = prefix
        #List of all bones, that are assigned to this instance
        self.bones = bones
        #List of all bone-constraints that link the bones inside this instance of BoneCluster to the corrsponding bones of it's respective parent
        self.constraints = constraints

Has anyone a solution to this dilemma?

Make your custom class a subclass of bpy.types.PropertyGroup, then you use that as the type for a bpy.props.CollectionProperty. See the collection example here.

I expect your collection should be part of the armature data, if you wanted a more global collection add it to bpy.types.Scene.

class BoneCluster(bpy.types.PropertyGroup):
    name = bpy.props.StringProperty()
    # ...

def register():
    bpy.types.Armature.clusters = bpy.props.CollectionProperty(type=BoneCluster)

def unregister():
    del bpy.types.Armature.clusters


Fluid simulation restarts randomly I am a beginner, so I'm just learning how to make fluid simulations in  blender. I have a fluid simulation with a domain, 3 effectors, and the inflow, which has 2 keyframes, one at the start and one at the end. The keyframes are for the use infow checkbox, the first one with use inflow on, and the second with use inflow off. I moved the inflow off keyframe from 40 to another place (I forget, somewhere between 40 - 60 exclusive), and then to frame 60. But, when I play the simulation, at frame 47, it stops and restarts (goes back to where there was only a little fluid in the scene). It also restarted at frame 53. Help! I am using blender 2.82a, and Windows.

Blend file: https://drive.google.com/file/d/1mlmLsOfclxOvEghPIv5HvV3vIm8Scqf1/view?usp=sharing

I see from your file that you are not using the cache. Switch to modular type (under DOMAIN > physics properties > cache) and every time you change something, clear the cache and recalculate it (using the CACHE button under domain > settings).

try this and share your feedback


BGE | run script on startup How should one go about implementing a script that will execute before the current scene loads? For example I am attempting to connect to a tcp/ip server in order to send and receive data between clients. The connection code will be run in a separate thread so not to block any other processes.

My main area of confusion at this point happens to be how to initiate the execution of this script at the start of the program.

I use the next setup.

launcher.blend has a camera and a plane with a python controller that run my script launcher.py and the logic is always sensor > python controller > game actuator:

And the script check for files and...

from os.path import isfile, join
from scripts.settings import Settings
from scripts.functions import erro, install_path

class Launcher():
    """This class launch the game if no problem encountered."""
    def __init__(self, controller):
        """Assing game actuator file name and mode"""
        self.settings = Settings()
        self.gameActuator = controller.actuators['Game']
        if isfile(join(install_path, 'intro.blend')):
            self.gameActuator.fileName = str(join(install_path, 'intro.blend'))
            self.gameActuator.mode = 0
            self.main = self.initialize
        elif isfile(join(install_path, 'menu.blend')):
            erro(self, 'intro.blend file not found', 1)
            self.gameActuator.fileName = str((join(install_path, 'main_menu.blend') if isfile(join(install_path(), 'main_menu.blend')) else join(install_path(), 'erro.blend') ))
            self.gameActuator.mode = 0
            self.main = self.initialize
        else:
            erro(cls = self, msg = 'menu.blend file not found', level = 0)

    def initialize(self, controller):
        """Launch the game menu if settings are ok."""
        if self.settings.read_config_file():
            print('ready...')
            controller.activate(self.gameActuator)
            # at this point, bge should restart and load the new blend.
        else:
            self.settings.defaults_settings()
            if self.settings.read_config_file():
                print('ready...')
                controller.activate(self.gameActuator)
            else:
                erro(cls = self, msg = 'menu.blend file not found', level = 1)
                try:
                    controller.activate(self.gameActuator)
                except Exception as e:
                    erro(self, 'Error fatal!', 0)

def main(controller):
    if not "launcher" in controller.owner.getPropertyNames():
        controller.owner["launcher"] = Launcher(controller)
        return
    controller.owner["launcher"].main(controller)


How can I catch reports from Operators in Python script? Is it possible to catch reports from Operators in a Python script?

For example, the Operator bpy.ops.object.modifier_apply() shows errors in the console when something goes wrong. I'd be happy to have a try... catch... method to handle those.

Same with some addons like 3D Print Toolbox who send back useful info in the console and UI, but I can't seem to find a way to catch those. Is this possible?

Update:
To give a concrete example, this file uses a boolean modifier on two objects and when applied, the Operator returns a lot of WARNING or errors in the console. How could I catch those?

For Operator Error Reports

Catching Errors is handled separately, this example catches the error report and prints it as a string.

import bpy
try:
    bpy.ops.object.vertex_group_add()
except RuntimeError as ex:
    error_report = "\n".join(ex.args)
    print("Caught error:", error_report)

For Operator Info Reports

Python can temporarily redirect the stdout using contextlib, this is ideal since you may not want to suppress output for _all_ scripts, just selectively redirect some output.

eg:

import bpy

import io
from contextlib import redirect_stdout

stdout = io.StringIO()
with redirect_stdout(stdout):
    bpy.ops.mesh.remove_doubles()

If you want you can read the output back out or use it however you like.

stdout.seek(0)
output = stdout.read()
print("Report was %r" % output)


Movie Clip Editor Graph editor: How to edit single motion tracking keyframe? im just messing around with the Graph Editor inside the Movie Clip Editor, and when trying to adjust a single key i noticed the key next to it also moves inversely

is there no way to modify JUST the selected key?

Why do you need to move them? The important thing to understand here is what exactly those graphs represent: they are the speed at which the tracker is moving in an axis. They do not represent placement in x and y coordinates. So if you affect one, the speed at which the next tracking point is moving will also be affected, as the speed is relative to the speed of the previous frame. Notice how they are inversily proportiional?
More info here: Motion Tracking. What do the graphs represent and how are they useful?
To view the motion as coordinates you can create empties out of the trackers to view in 3d space. The tracking constraint can then be converted to f curves and then the motion will be just like regular keyframes in the graph editor
Bake Follow Track constraint to f-curve?


Camera tracking data import Is there a way to import camera tracking data, like .json or .jsx files into Blender?

You can certainly do this the other way round and export to After Effects (*.jsx) using the Adobe After Effects plugin but it hasn't been updated for 2.80.

This has been investigated before please see Does Blender 2.8 have a working import-export plugin for After Effects?

The only truly supported format for tracking data import is *.bvh, again via add-on.

You can always modify the jsx script to import instead, but as it stands I donn't know of any native way to do what you ask.

Perhaps look at this addon from the blendermarket

https://blendermarket.com/products/ae2blend


Motion Tracking objects that go out of frame and re-enter later I am motion tracking a video in which the camera turns away from one scene and then shortly returns to it. However, the segments that went off-screen lose their track and do not continue tracking once the camera returns. I am wondering if there is a manual way to tell a segment where and when to continue looking for it's tracking target. Is this possible to do?

When an object disappears momentarily form the scene (either it goes out of frame and comes back later, or is occluded by other objects) you can track up to the point where it becomes untrackable or it disappears from the frame.

When it re-appears track it with new tracker.

Then select both trackers (using Shift select)

and Join them using Join Track (or press CtrlJ)

That way blender will know that is dealing with the same element and not a new one.

Doing this will allow you to have a more accurate camera/object solve or better motion stabilization, depending on what your goals are for tracking.


joining multi objects in blender to make one object I saw a post asking this same basic question. My situation is this. I have a body that I brought into blender as a collida, three pieces being head, upper body and lower body. The previous answers I see for something like this say to use ctrl J to join. I even see a button to do this. But when I do it the body parts compress horizontally and become even further apart. Also no one mentions what mode to be in such as object or edit mode.
Any ideas let me know please . thank you.

It sounds like you objects may be scaled or have non applied transformations

Joining with Ctrl + J is done in object mode, selecting all objects you want to join and selecting the "receiving object" last.

Try applying all transforms to the objects before joining with Ctrl + A > Apply Rotation, Translation and Scale.

After that also try converting all objects to mesh with Alt + C > Mesh to apply all modifiers and deformations they may have. Only after that can you safely try to join.

Otherwise post your blendfile so we can look at what might be wrong.


How to write a python script that opens My_file.blend and applies a script on it? My main goal is to achieve that this script file will open My_file.blend, apply my script on it, render and save an image to output path

Start with the basics

blender --background my.blend --python myscript.py

where myscript.py contains your logic and

bpy.ops.render.render(write_still=True)

To produce the render

in your script you can change just about anything e.g.

bpy.context.scene.render.image_settings.file_format='PNG'

Set the output filename

You can also pass parameters and include multiple python scripts.


How to add vertices to an object? I somehow managed to delete some of my vertices, as shown in the picture below. Hitting ctrl-z doesn't work.. Is there an easy way of adding those vertices again? I need them to be shaped like the other existing vertices in the sphere.

Use the symmetry:

In edit mode, duplicate all the vertices, and rotate 180° (be sure to have the 3D cursor set at your object's origin), then remove doubled vertices (tune the merge distance if needed).


Blender Old UV applied on top of new UV I've been doing something that may seem weird.

My workflow has been separate objects using loop cut into separate faces. I then use UV to apply a texture to all of these faces. It has been working fine for 2 different maps I've done, but now it's glitching in a weird way. In the photo you can see the outer wall, and a glitching inner wall. The inner wall is not any different than the outer one and was copied from it pre-uv and loop cuts. The outer walls are overlapping in the same way as the inner ones, and everything I do with the inner walls, they keep breaking the textures and applying both a Unwrap and (unwrap) reset texture simultaneously.

This is happening whether the inner walls are overlapping each other or not. So it is nothing to do with the face that they are intersecting as far as I can tell.

Anyone care to explain to me what is going on? Only certain walls are refusing to apply the uv map correctly and there is very little difference between the ones that are and the ones that aren't.

I've added the file here. This isn't the one I took a picture of, but the house in the middle has a wall that is doing the same thing as the the hedges.

I assume the problem is this:

This flickering can have a few reasons, in your case it is an accident that happened while modelling. You duplicated that wall and left the duplicate in the same place. It has a different UV Map than the original, so both walls try to show their (different) texture to the viewer, resulting in a heavy fight.
To resolve it, delete one of the walls. Select one arbitrary face, and run the Select Linked command. Then delete those selected faces:

Do this for all problem walls, and make sure to check the ones that seem right as well. As long as the UV Map is identical, you might not spot the issue at all.


Why are the mesh faces different colors? In the 3D View window the mesh I am modeling appears with two different colors.  The final render has one color.

it's my first day learning blender and I'm following a tutorial to create a house model. In the tutorial the different faces of the house are all the same color, but my faces are having two different colors. I'm wondering why was there a color applied and what does it mean? When I render the model it's all the same color.

While I can't tell you why they're in this state currently, as there are many possible reasons, these colors indicated the direction in which the face normals point. To fix this, you need to recalculate your faces' normals, by pressing Ctrl + N. Alternatively, this can be done from the toolbar (whose visibility is toggled by pressing T),by pressing Recalculate found in the Shading/UVs tab of said toolbar.


How to convert Quaternions keyframes to Euler ones in several Actions? I created a character for a game. It has IK legs. I animated its foot and didn't realize that they were Quaterinon. I made lot of actions with it.

Now... as I will make more actions with this character, I would like to convert every Action with its rotation data to Euler. So, after changing its rotation mode, the bone would have the same visual rotation as it had with Quaternions.

There are some ways to do it by hand. In my opinion, the easiest is:

Select one Action.
Select the bone I want to convert.
Enter in Edit mode.
Duplicate it.
Go to pose mode.
Insert a keyframe LocRotScale (now, it appear as a channel in the Action).
Copy every frame from the first bone and paste them in the duplicated one (select keyframes, Ctrl-C, select channel, Ctrl-V)
Change Rotation mode to XYZ-Euler to the duplicated bone (this step has to be here. If not, it wouldn't have the correct keyframes).
Add a CopyRot constraint to the duplicated bone, copying the visual rotation from the first one.
In the first keyframe, insert VisualRotation Keyframe (selecting VisualRot in keying set).
Press Up key, press I key. Again. Again. Again till the last keyframe.
Select first bone.
Convert to Euler.
Insert a keyframe (to aquire Euler channels).
Copy every keyframe from the second bone and paste to the first.
Delete the second bone and its channel in the Action.

As you can see, it is a big deal to do this with every bone and every Action.

I think, in total, there are 3 ways to do this:

The one I said, by hand.
To make a script that make all those steps, but automatic.
To make a script that include advanced math operation to convert those Quaterion keyframes to Euler ones.
To use "Rotation mode keyframes" in every Action, to respect the correct mode. I mean, to put a Quaternion keyframe in every already done Action and put a Euler keyframe in every new action. (I didn't try this technique, I don't know if it works in BGE)

... any other?

I cobbled together the following python script: http://web.purplefrog.com/~thoth/blender/python-cookbook/convert-quaternion-keyframes-to-euler.html
Here is another update that supports both bone fcurves, and the fcurve groups.
import bpy

def get_or_create_fcurve(action, data_path, array_index=-1, group=None):
    for fc in action.fcurves:
        if fc.data_path == data_path and (array_index<0 or fc.array_index == array_index):
            return fc

    fc = action.fcurves.new(data_path, index=array_index)
    fc.group = group
    return fc

def add_keyframe_euler(action, euler, frame, bone_prefix, group):
    for i in range(len(euler)):
        fc = get_or_create_fcurve(action, bone_prefix+"rotation_euler", i, group)
        pos = len(fc.keyframe_points)
        fc.keyframe_points.add(1)
        fc.keyframe_points[pos].co = [frame, euler[i]]
        fc.update()

def frames_matching(action, data_path):
    frames = set()
    for fc in action.fcurves:
        if fc.data_path == data_path:
            fri = [kp.co[0] for kp in fc.keyframe_points]
            frames.update(fri)
    return frames

def fcurves_group(action, data_path):
    for fc in action.fcurves:
        if fc.data_path == data_path and fc.group is not None:
            return fc.group
    return None

def convert_quaternion_to_euler(action, obj, order):

    bone_prefixes = set()
    for fc in action.fcurves:
        if fc.data_path == "rotation_quaternion" or fc.data_path[-20:]==".rotation_quaternion":
            bone_prefixes.add(fc.data_path[:-19])

    for bone_prefix in bone_prefixes:
        if (bone_prefix == ""):
            bone = obj
        else:
            bone = eval("obj."+bone_prefix[:-1]) # I wish I knew a better way to do this

        data_path = bone_prefix + "rotation_quaternion"
        frames = frames_matching(action, data_path)
        group = fcurves_group(action, data_path)

        for fr in frames:
            quat = bone.rotation_quaternion.copy()
            for fc in action.fcurves:
                if fc.data_path == data_path:
                    quat[fc.array_index] = fc.evaluate(fr)
            euler = quat.to_euler(order)

            add_keyframe_euler(action, euler, fr, bone_prefix, group)
            bone.rotation_mode = order
#
#

scn = bpy.context.scene
obj = bpy.context.active_object
order='XYZ'
convert_quaternion_to_euler(obj.animation_data.action, obj, order)


How to copy bone animations, non-mirrored I have a rig that is not a typical L/R biped. It has N/S/E/W limbs. The limbs have fairly complex rigging that I'd like to avoid having to individually animate. Without the mirror functionality, is there a way to copy action keyframes from "east bone X" to the corresponding north, south and west bones?

Try this. Change your Timeline at the bottom of your screen to Dope Sheet. Next, select the keyframes from your east bone X and duplicate them to your other limbs. You should see under the Dope Sheet Summary each of your limbs. This has worked for me when I need to copy my animations to other limbs. Hope this works for you!


2-sided plane: bottom image flipped? I created a 2-sided plane with an image on each side but the bottom image is flipped.

I saw on another forum that the mirroring the second set of uvs could fix this but I'm new to using uvs in Blender and I'm not really sure what they mean by this. I only see one set of uvs when I went to the uv editor. How would you flip the uvs on the second set?

Blend file (with answer's 1st method fix):

Three possibilities (at least) :

Modifying the scale in the texture panel

Setting the texture (of color2) X scale to -1 will flip the image horizontally.

Adding a vector mapping node

The same principle, but set up in the material nodes :

Adding a second UV map

Create a second UV map in the properties panel using the '+' button (1) and eventually rename it
Unwrap in that new UV map and scale it -1 along X using S+X+-1 (in 2)
Add UV map nodes in the material (3)


Set specular map from alpha channel I'm making an importer for a xbox360 game. Specular data is in the alpha channel of the image. Once I have enabled the alpha for image, blender does: "RGB" + "A" = "ARGB". But I need the "RGB"` to stay "RGB" for diffuse colors, and use "A" for the specular intensity map.

Right now I'm copying the same image with alpha disabled for diffuse, and with alpha enabled for specular, but copying a lot of hi-res textures is not an option.

How do I stop alpha affecting the diffuse colors? Or how do I set RGB for diffuse color map, and alpha for specular intensity map?

[update]

Unticking the "Image sampling -> Alpha -> Use" does not work(the image only becomes darker). Here is the .blend file.

On the image above: At the left, alpha is on - specularity is ok diffuse is not and at the right alpha is off - diffuse is ok but specularity is not

For your first question, to stop your diffuse texture from using the alpha channel of the image, go to the Texture tab and under Image, untick Use  Alpha.

Here is how it looks now as compared to those above.

If you tick Specular under Influence, Blender will automatically use any specular highlights in the image .

Additionally, you can check parts of your textures you want to be affected and or by how much under Influence in the same texture tab.


How to set icosphere's radius Is that possible to set the exact radius for a icosphere somehow? Or if not, how scale/size is related to its radius?

I tried several tutorials but when I measure it in my game, it does not match. The game engine I programmed is exact, so I think the problem is that the radius is not correct in the model.

You can't do this out of the gate. It is by default not proportional in size on the X & Y axis. This shape is way more about equal triangles than it is about radius of a sphere.

Look at the Width and Height properties when the object is at full scale.

Rotate about Z axis 17°

Look at the Width and Height properties when the object is at full scale again.

You might be thinking...

What If I rotate about Z axis 8.5°

now check your Z value and your line of thinking should get you the answer.

Once all your bounding box dimensions equal out, scale it up until it reaches 2.00, and the apply the scale.

Once you have done this, scale will represent the radius of your icosphere.


how can I make more sharp line? I tried to make more sharp.. but it looks like that picture.
I put some subdivision surface.

You have to set the crease not only on the outer edges but on one additional edge at the vertice with the kink. It doesnt matter if it is this one or the other edge.


How do you bake several materials onto one object in Cycles Render? I am able to bake objects with one material, but when there is more than one, an error comes up: No active image found in material "blah-blah". Most materials are used on many different objects, so I made each one a single user copy (clicking the number beside the material name field in Properties > Materials and renaming it descriptively). That didn't resolve it though.
I have been following the steps in this Blender Guru video (which explains how to bake the lighting onto an object's surface so it takes much less rendering to display it in an app like Sketchfab, or so you can work on it displayed in Render mode in real time):
UV unwrap > create and name image > add Image Texture > link to the image just created > make sure that node is selected > Bake. Since in this case the objects had several materials, I added an Image Texture to each one, linked it, and left it selected.
Do the UV maps need to be divided up so they only are for one material each? Does that mean I have to divide up the objects into a group of objects each of one material? What is the best way to do this?

(Oops, the file doesn't have the object selected that I was working on when this cropped up - it is the green floors inside the structure, named Dugout Levels.)

EVERY material (on the active object) needs an active texture. Note: it doesn't need to be connected to anything...just needs to be there with a valid image and be selected. That error report will tell you which material its missing from so you can quickly add it. It would be a good idea to hook a uv map node up to it if you have more than 1 uv map on the object.


extrusion of the face of a 3D model I am trying to extrude the surface of a lower jaw.  The surface from the outside, the inside and the top.  they are selected as one object from the stl file of a mandible.  when extruded in the z axis, one side is extruded (eg the outer) while the opposing side is extruded to the inside of the mandible.  Is there a way to extrude relative to the original object so I end up with extrusion from both sides similar to each other.

Press Alt+E then select Extrude along normals.


Import coordinates from CSV and create sphere at each position I have a CSV containing x,y, and z coordinates. The CSV also has a fourth column containing information on sphere diameter. I need to create a sphere at each coordinate, having the corresponding diameter. Can someone provide me a basic Python script that performs this task? My actual task is much more involved, but I think I can solve it if I have the basics in place.

It has been a while since I have done any scripting, but the below should work based on your description. Note that the CSV file I made for testing included a header row, and the creation of objects for ease of testing was bpy.ops.mesh.primitive_uv_sphere_add()

bl_info = {
    "name": "Blank1",
    "author": "Your Name Here",
    "version": (1, 0),
    "blender": (2, 79, 0),
    "location": "View3D > Tools panel 'T' > Blank1 > Blank2",
    "description": "",
    "warning": "",
    "wiki_url": "",
    "category": "",
    }

import bpy
import csv
from bpy.types import Operator
from bpy.types import Panel

class MeshGenTool():
    @classmethod
    def main(cls, context):
        scene = bpy.context.scene
        objs = importCSV(scene['CSVFile'])
        for obj in objs:
            bpy.ops.mesh.primitive_uv_sphere_add(size=obj[1], location=obj[0])
            MyMesh=bpy.context.object
            MyMesh.name = "MyMesh"

class MeshGenButton(bpy.types.Operator):
    """Execute generation"""
    bl_idname = "object.simple_operator"
    bl_label = "Generate"
    def execute(self, context):
        MeshGenTool.main(context)
        return {'FINISHED'}

# This is based on CSV file having a header row with the descriptions 'x', 'y', 'z', 'd'
def importCSV(CSVFile):
    obj_loc = ()
    obj_dia = 0
    obj_data = ()
    objs =[]
    with open(CSVFile) as csvfile:
        reader = csv.DictReader(csvfile)
        for row in reader:
            obj_loc = (float(row['x']), float(row['y']), float(row['z']))
            obj_dia = float(row['d'])
            obj_data = (obj_loc, obj_dia)
            objs.append(obj_data)
    return objs

class VIEW3D_PT_Blank1_Blank2(Panel):
    bl_space_type = 'VIEW_3D'
    bl_region_type = 'TOOLS'
    bl_category = "Blank1"
    bl_context = "objectmode"
    bl_label = "Blank2"

    def draw(self, context):
        layout = self.layout
        scene = bpy.context.scene
        row = layout.row()
        col = layout.column(align=True)
        scn = bpy.context.scene
        col.label(text="Blank2")
        col.prop(scene, "CSVFile")
        col.operator("object.simple_operator", text="Add items", icon='MESH_ICOSPHERE')

def register():
    bpy.utils.register_class(VIEW3D_PT_Blank1_Blank2)
    bpy.utils.register_class(MeshGenButton)
    bpy.types.Scene.CSVFile = bpy.props.StringProperty(
        name = "CSVFile",
        description = "Path of CSV File to read from",
        default = "",
        subtype = 'FILE_PATH')

def unregister():
    bpy.utils.unregister_class(VIEW3D_PT_Blank1_Blank2)
    bpy.utils.unregister_class(MeshGenButton)
    del bpy.types.Scene.CSVFile

if __name__ == "__main__":
    register()


How to work with three point lighting system? I try to use three point lighting system but I don't know how to put the free light -90 opposite from the first plane.

One method is to set the pivot center type to 3D Cursor, place the cursor wherever you like, select a plane, duplicate it (Shift+D) and rotate (R) along the Z axis by 90 degress (you may type a rotation value using your numerical keyboard).

The other method is using a Mirror Modifier. Choose the axis you want your plane to mirror and input the name of your illuminated object in a window under Mirror Object:. Then apply the modifier.

Go to Edit Mode, select all mirrored meshes (A), then press P-->Separate-->By Loose Parts to make them separate objects. Now select one of them, snap the cursor to the center of it (Shift+S-->Cursor to Selected). Enter the Object Mode and press Shift+Ctrl+Alt+C-->Origin to 3D Cursor to place the origin point within. Repeat the same process with other planes.

You may now adjust the transformations of the planes changing the transformation orientation type to Normal (tap G, R or S twice to make it work).


Weight Painting - Objects Getting Left Behind Primary

I have a single mesh named legs. Armature modifier with automatics weights is used. Part of the glove has correct weights.  The band of the glove does not have correct weights. What action should I take?

Weights of the glove. The appropriate group is selected.

Secondary

Can't seem to figure this one out. I have objects that are joined to others, such as the straps on the arms or the bottom of gloves, and with the default Automatic Weight Paints, they don't get painted and just stay in place. No matter how little or much I paint them, they move, but out of sync. I've tried messing with the Vertex Groups as well - adding the objects to their own group - but can't that to work properly either. Any suggestions?

Thanks

This is the issue I'm referring to... The strap at the bottom of the glove just won't move with the arm/hand. And yet the one in green does with Weight Paints.

Your can choose from a few different options to improve your situation.

Option 01 Copy Vertex weights in Edit Mode

The correct vertex group for the particular band is selected in the UI from the vertex list in the Mesh Panel, as seen in the image below.  Know the band is distant from Bone and currently not attached to body of glove.  The disconnected band is moved .5 Y axis units for visibility.  The band is selected.  A Single vertex is selected on the perimeter of glove as shown by yellow arrow.  The weights of this single vertex could be cleaned up, not shown here.  The Vertex Copy weights button is clicked. Weights are changed.  Disconnected band is moved -.5 Y axis units. Repeat on other side.

This will improve the immediate problem and assist your understanding. Improvement is the goal here and a light discussion of weight assignment.  Not 100% physical realism. If I had more time I would examine and clean up the source weights. Hopefully there will be more steps to improve the model outside this question. Currently the glove can intersect and pass through the organic skin portion of the mesh, which is not high physics realism. Answer time is finite.  In the little experiments I did, this gave the best result in some small amount of time.  Of course the whole mesh could be painted by hand and other controls added, with no automatic weights. More realism would come with larger time consumption.

Other problems will remain which may require a new question.

Copy Vertex Weight Image above.  Note arrow showing single source vertex of the well behaved body of glove.

Option 02. Modify Mesh and Armature Parent again.  Exercise for the OP

Connect the glove band to the the body of the glove. The band is distant from the bone. It is not connected to the body of the glove by vertices.  Vertex connectivity is taken into account for some automatic weights.  Distance to Bone is taken into account.  The details are not discussed here.   Then parent to armature again and test.

There could be an argument to consider the glove as very different than the human skin of the mesh. Some might say the glove is like clothing and should be a separate mesh.

Option 03.  More Weight Paint .. Weight Assignment.

Please paint/inspect again the band of your glove.  Please improve any weight paint results you see below.  2 Options.

Use Weight Paint mode
Edit Mode.  Select the band only.  Select the named group. Assign a weight of 1.0 which is full weight.

Band is not yet painted.

In the image above.  We see above we see your model.  The body of the glove is painted. The band of the glove has zero weights.  In weight paint mode please paint the band.  See how the correct group is selected before we paint. Well there are possible two correct groups as candidates.

Weight Painted Band in the Correct group.

Painting of band has begun.  Red color. In edit mode of the mesh I selected the band prior to my weight painting.

The topic of weight painting can be mastered.  This short answer will not be equivalent to a video weight painting tutorial.

Direct assignment to group in edit mode of mesh.

Weight assignment. See the arrow. Image above.

Showing weight in edit mode of mesh.  See arrow. Image above.


How to emulate MixRGB (Mix) with math node for Grayscale? I would like to do a little research, and I would like to simulate a MixRgb type node with a mathematical node, to mix BW type maps, since the MixRGB mixes 3 channels, it would be enough for me to mix only one (0-1 Bw), but I'm not sure how to test this with math, I tried the Math node "Multiply Add"
I was curious to compare the performance between the RGB type and a node built with single value math, I did not find much about it by looking on the internet
Example:
(I would like to try to emulate, to compare the performances)

This 'Mix Value' node group will emulate the simple Mix of two values:

The inputs are all clamped 0-1
The result is [(1-Fac) * Value 1] + [Fac * Value 2]

You can use this framework to test it:

The outputs of the Mix RGB node and of the combined lower branches, mixing the channels independently, are indistinguishable.
If you want to test the other mix modes, this reference could be handy.You would replace the 'Add' in the node group with the functions described. here's a link to the Blender code, thanks to this answer by @Meng Hui Tan.
Have fun!


How to model the hilt of a sword? I'm kind of new to blender, I've started trying to make some swords, I'm not too bad but I need help with modeling some objects such as:

I just don't know how I should go about making them or how to give them the desired form without making them look absolutely horrible.

Your problem is the curved, tapered and twisted hand protection part? This may be modeled using Bezier or NURBS curves. One curve defines the general curvy outline of the hand protector, a second the cross section (which looks a bit flower-like). This shape can be beveled along the first curve. Moreover it can be tapered and also drilled (tilted) to get the desired shape. Please look it up in tutorials on curve modelling; there are also some basics in the Blender manual (Curves, Beveling, Tapering, Tilt). - Greetings from Suthern Germany, Tschöbbel


How to reset viewpoerts camera angle? Strange question maybe but my viewport camera is skewed on a weird angle.
(like 35-45 degrees) wondering how to fix it.

Hold Shift and press Numpad 4 or Numpad 6 until your camera is at the correct angle.


no faces in edit mode I have been working on a complicated model for a long time and today it suddenly quit displaying faces in edit mode. It appears to be in wireframe, and toggling wireframe does not change that (unattached parts in my project toggle appropriately).  I looked at the object display settings and Textured is selected.  I tried selecting four vertices and creating a new face, but no face appears.  When I go to object mode, the faces appear normally.

This anomaly occurred out of the blue while I was working on the model.  I have not been importing or changing versions or otherwise manipulating the file.

A picture of my model in edit.  Note that the pants have faces; that is part of the larger model no longer showing faces.

My blend file:

The reason the faces are not showing up is because they are hidden.

As Mr Zak suggested;

  Enter edit mode and press Alt+H

This will reveal all hidden geometry.