Where does Blender store log information? It would be useful to know where Blender log files are stored on Mac, Linux, and Windows. It could help with troubleshooting crashes and other issues.

The paths for the crash logs are platform dependent. The following information can also be found in Blender's manual.
If you intend to add these information to a bug report, please attach the logs as file.
Windows
On Windows the location is determined by the environment variable TEMP. If you haven't modified this environment variable, it will point to C:\Users\[your username]\AppData\Local\Temp\. In order to locate the crash log, open the Windows Explorer (Win+E) and type %TEMP% into the path bar. The name of the crash log be the same as your project file, but with the file extension .crash.txt. If you haven't previously saved the project before, it will be blender.crash.txt.
Linux
On Linux the crash log is written to the /tmp directory. The name of the crash log be the same as your project file, but with the file extension .crash.txt. If you haven't previously saved the project before, it will be blender.crash.txt.
macOS
The crash log will be presented through the macOS Crash Reporter. You will have to copy the text and save it in a file yourself.

Additional information can be retrieved by starting Blender with debug command line flags.
Windows
The Windows version provides batch files for convenience that allow to create log files without using the command line. They are located in the same directory as the blender.exe.

blender_debug_gpu.cmd (--debug and --debug-gpu flags)
blender_debug_gpu_glitchworkaround(--debug, --debug-gpu and --debug-gpu-force-workarounds flags)
blender_debug_log.cmd (--debug and --debug-cycles flags)
blender_factory_startup.cmd (--factory-startup flag)

Double-clicking on the batch script will start Blender with the listed debug flags and write log files to %TEMP%\blender\debug_logs. Once Blender has either crashed or was manually closed, the Windows Explorer should automatically open and display the log files. If Blender was able to start, then this will also include a file that contains the system information blender_system_info.txt.
Linux
The log file creation requires to redirect stderr and stdout into a file. Open a terminal, navigate to the directory where Blender's binary is located and then use the following command or a variation with different command line flags:
./blender --debug --debug-cycles > ~/blender_debug_output.txt 2>&1

The resulting log file will be placed in your home directory, assuming that your terminal supports the alias ~ for it.
macOS
The log file creation requires to redirect stderr and stdout into a file. Open a terminal and then use the following command or a variation with different command line flags
/Applications/Blender.app/Contents/MacOS/Blender --debug --debug-cycles > ~/blender_debug_output.txt 2>&1

The resulting log file will be placed in your home directory.

Blender's command line also allows to configure additional logging options for more fine grained reporting.


Driver not always visible in the graph editor? I have encountered a problem where my driver would not show in the graph editor while viewing Layer 1 and layer 11. I discovered that moving the wheels in question would show the driver in the graph editor in layer 3? Although the driver worked in the said layers but did not show.

You have Show only selected enabled in the graph editor:

While this setting is enabled, only drivers and fcurves belonging to selected objects will be shown.


Why cant I see the loop cut line on one side of the mirrored shape I'm new, so this may sound stupid.

When I make a loop cut, I can see where it is on the original side, but not the mirrored side. Is there some option or setting I need to change in order to fix that?

There are two options to display the result of the modifier in edit mode:

(form the Blender Manual)

Box
Displays the modified geometry in edit mode, as well as the original geometry which you can edit.
Triangle
When enabled, the final modified geometry will be shown in edit mode and can be edited directly.

Enabling the triangle will allow you to "adjust edit cage to modifier result" :


How to find which machine rendered a specific frame in a render farm I have 6 servers rendering the same project (not using the Network Render add-on). All of the servers are exporting into a shared network folder.

Some frames have issues; how can I find the faulty machine?

You can do this by adding custom metadata to the image using a Python script that is executed by each server. In the network folder, create a script named metadata.py with the following code:

import bpy, socket

name = socket.gethostname()

bpy.context.scene.render.use_stamp_note = True
bpy.context.scene.render.stamp_note_text = name

In your render command, add the -P flag with the path to the script, e.g.

blender -b path/to/file.blend -P path/to/metadata.py -o path/to/image.png -a

This stores the name of the machine in the "Note" section of Blender's metadata. You can view the metadata as described here to see which server is giving you trouble.


How do I select an object in the 3D viewport? I am trying to select the cube that in the middle of the scene. How can I select it? All I see is a crosshair appearing everywhere I click. Is this a bug?

That circle/crosshair is the 3D cursor.
To select you need to Right click instead of Left click.
You can change this behavior in File > User Preferences (CtrlAltU) > Input:

Open the User Preferences:

Go to the Input tab. The select left/right options are under Mouse:

If you want to save these settings as the default for the next time you open blender, click  Save User Settings in the Header (at the bottom of the window):

This is one of the most controversial parts of blenders UI.
For some further information you might want to check out:

"Fixing Blender – Part 1: Why It’s Broken" by Andrew Price

This video by Sebastian König explaining some advantages to using RMB to select

"Fixing Blender – Part 2" by Andrew Price

This 3 hour discussion about Blender's interface

"New Blender UI Proposal" by Andrew Price

The manual on object selection


Command for creating an object of custom size The default command when creating a cube at the origin is the following:

bpy.ops.mesh.primitive_cube_add(view_align=False, enter_editmode=False, location=(0.0, 0.0, 0.0), rotation=(0, 0, 0), layers=(True, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False))

since I am not bothered about rotations and layers I can keep only the location like so:

bpy.ops.mesh.primitive_cube_add(location=(0.0, 0.0, 0.0))

This creates a UNIT cube at the origin (0,0,0).

My question is: Is there a way to add the dimensions of the cube I want, within that line somehow?

I am not asking about using a scale command after creating it... but rather creating it in the desired size straight away...?

Yes, you can use radius

bpy.ops.mesh.primitive_cube_add(location=(0.0, 0.0, 0.0), radius=2)

See the documentation for more details.

radius in this case is the half of the cubes edge length, so

bpy.ops.mesh.primitive_cube_add(location=(0.0, 0.0, 0.0), radius=edgelen/2)

would build a cube with edge length of edgelen.

Answer uses the Python API of Blender 2.72


Lighting specific objects in cycles with volumetric atmosphere I'm trying to set up a night scene, and having trouble getting the lighting right. Here's my first stab at it:

I like the lighting on the tree, but the cloak on the left is too dark.

I wondered about splitting the scene into two render layers, kind of like this:

I thought I could adjust the levels of the cloak in the compositor, but I can't figure out how to recombine the layers. Similarly, I tried adding extra lights to the cloak layer, but that interferes with the volumetric effect in an undesirable way.

Is there a good way to light the cloak, without affecting the rest of the scene?

A possible soution is not using volumetrics in the world setting but creating a solid that contains the whole scene with volume scatter shader.
Have that solid be in only one layer and have other layers with no volumetrics to light the objects.

For example on a scene like this:

I added a cube that surrounds the whole scene and added a volume scatter node as volume to create the volumetrics.

on a separate layer I have the object on the left with separate lighting and no volumetrics.

I render both layers separately and combine them in the compositor:


Why isn't my textured UV map showing? I'm trying to texture this 3D model of a squirrel, and I want to see how my eye placement looks on the model. I imported the textured UV map into blender (see the lower window), but it doesn't appear on the 3D model (see the upper window). How can I get my textured UV map to show up?

Make sure your viewport is set to texture view.


What is Freestyle chaining? In the Freestyle render settings under the Freestyle Line Style rollout there are a group of settings having to do with chaining.

I have played around with these settings in a number of ways and haven't really found any noticeable impact on the render.  So what is chaining and what does it do?

Consider the lines as "a whole" or "individually"

As reported in the manual, "chaining" is a parameter that controls the way in which lines are rendered.

If enabled, Blender will draw each line as if it was connected with the previous; on the other way, if disables, it will render each line separately.

You can see the effect by increasing line thickness and zoom in till you can see where one line ends and another starts:

While the same object with chaining enabled is:

It is useful to make custom line styles. Notice in the examples below how the same thickness modifier brings to different results:


how to remove this black shadow from around a transparent texture i have a transparent material for blush but the problem when i deselect it i get a black shadow around it i don't know what the reason so how to remove this shadow in material mode ??

i founded the solution here link to source

  Go to the object panel in the properties and check Transparency in
  Display tab for all object you want to see transparent. make sure that
  you have the correct object selected.


Seeing other mesh vertices while editing another one? How can I make it so that I'm able to see the vertices of other meshes while I'm editing other ones, if it's possible?

What I'm trying to accomplish is seeing one mesh's vertices while working on a separate mesh entirely.

So is this possible?

If you just need to display the edges, you can select the object, go in the Properties panel > Object > Display > Click on Draw All Edges and Maximum Draw Type > Wire.

But otherwise there is an addon called MultiEdit: https://www.dropbox.com/s/xtxbhxxw9qriti2/MultiEdit_1_0.zip?dl=0

Download and install it, then select both your objects and, in the left panel (activated with T) > Tools > Multiple Objects Editing > click on the MultiEdit Enter button. Click on the MultiEdit Exit when you have finished.


Using Array modifier, is it possible to gradually increase the offset? I have an oblong circle of sticks (using array and curve modifier), but I would like to increase the offset gradually in two places(as shown on the screenshot). Does anyone have tips on how to accomplish this?

You can control the density of the sticks around the curve by using DupliFrames, and adjusting the 'speed' the stick 'travels' around the curve.

Starting with a curve and a stick, all origins at 0:
(Here, we're arranging 120 sticks)

Assign a 'Follow Path' constraint to the stick, with the curve as its path. Do not hit the 'Animate Path' button.
Set the stick's 'Duplication' method to 'Frames' with the Start at 1 and the End at 120.
Adjust the curve's 'Path Animation' > 'Frames' to 120.
Right-click, and insert keyframes on the constraint's 'Offset' field: 0 at frame 0, 120 at frame 120.
With that field active, open a graph editor window to see the F-curve of its animation.

You can now control the density of the sticks by altering the F-curve. I changed the end-keys (V) to 'Vector' type to begin with, to start with a straight line and even distribution. I then inserted 'Vector' keys at frames 30 and 90, converted them to 'Automatic', and rotated them a bit to get the distribution shown.

The illustration shows: The result from above, The F-Curve,  all the relevant panels, and the timeline.


What context should be passed to screen.area_move() to make it work? It seems it's possible to use screen.area_move because it is accomplished in the Pie Menu Editor addon and there's a thread on blenderartists.org where the author demonstrates using an operator from his addon to run screen.area_move. I'm wondering, how did he accomplish this?

#Just quickly converting the example code from the thread
C = bpy.context
a = C.area
x = a.x + (a.width >> 1)
y = a.y + a.height
C.window.cursor_warp(x, y)

#Replace Pie Menu Editor timeout operator (which I don't have access to) with timer app handler.
#bpy.ops.pme.timeout(delay=0.0001, cmd="bpy.ops.screen.area_move(x=%d, y=%d, delta=-100)" % (x, y))

def move_area():
    bpy.ops.screen.area_move(x=x, y=y, delta=-100)

bpy.app.timers.register(move_area, first_interval=1)

I've tried emulating the code posted on the thread and substituted his timeout operator with a timer apphandler. The apphandler works, but the context is still not correct. Also no combination (that I've tried) of override context passed seems to work.

Examining Blender source screen_ops.c the only poll for the operator SCREEN_OT_area_move seems to be for the position of the cursor:

ot->poll = ED_operator_screen_mainwinactive; /* when mouse is over area-edge */

Which I've managed to provide but still doesn't seem to be enough. Anyone ever get this particular operator working, or in any way figure out how to programmatically change the x, y, width or height of an editor?

Timer threads have little sense of context.

As outlined here

Context is incorrect when calling from a timer

need to pass some context to the timer.  In this case I've passed a copy of the text editor context when hitting the button.  Pretty sure just the screen is required context, or at most the window and screen.

Note found that calling the resize operator with no delta and moving the mouse worked from within a timer, however it is STICKY and a mouse click (or other events) are needed to unstick the mouse from moving the area.  Not sure how to release.  It is actually quite a handy way to resize the panels.. but still not quite right

import time, bpy, functools
from bpy import context

def snooper(c, w, a, x, y, delta, poll_retries=500):
    #bpy.ops.wm.redraw_timer(c, time_limit=0, iterations=10)

    while not bpy.ops.screen.area_move.poll(c, 'INVOKE_REGION_WIN'):
        poll_retries -= 1
        if not poll_retries:
            return None # out of retries

    # should poll now
    bpy.ops.screen.area_move(c,'INVOKE_REGION_WIN', x=x, y=y)

    y += delta
    w.cursor_warp(x, y)
    return None

if __name__ == '__main__':

    context = bpy.context
    a = context.area
    w = context.window
    x = a.x + (a.width >> 1)
    y = a.y + a.height

    w.cursor_warp(x, y)
    bpy.app.timers.register(functools.partial(snooper, context.copy(), w, a, x, y, delta=100), first_interval=0.2)

Scissor sets

Looked into the screen areas a while back re overriding context.  Recommend matching areas by the midpoints of edges and if both edge lengths also match they can be "pseudo joined"  into a new area until we have one full window area with instructions on how to split back.  Not unlike a binary tree.

Doing something similar here would be the go, giving the option of 1 to 4 possible resizes..  by looking for any "pseudo joined" areas in tree that have context.area and another area from the screen areas collection.


Move video clips in one place I just finished editing a video, and I realized that some video clip files used are still in the client's USB flash drive :( Is there a way (like a python script) to tell Blender "gather all the material used in this .blend file in this directory"?

How can I give him his drive back, without risking coming back to this .blend file later to find files missing?

Close Blender. Copy the files to your local hard drive. Unplug the USB drive. Open your file in Blender. Hit File -> External Data -> Find missing files. Select folder containing local files. Hit Find missing files.


Floor tiles material - match size for multiple rooms in house I'm making a house from a floor plan.

Each room has its own plane to be unwrapped and assigned the same tiles material.

Whenever I unwrap a floor plane and assign its material, the material scale is different for each room and I have to eyeball the scale to make the tile seams align.

Is there a more efficient way of unwrapping all planes so the tile seams align properly, or do I just have to give in and make all floor planes into one object?

Cheers.

EDIT: Added picture

In the picture below you can see the floors were unwrapped but each floor scaled differently. On floor has small tiles and one has large tiles. I'd like to unwrap each floor so they have exactly the same scale.

For a floor material, there's no need to use UVs.

Use the position vector on the geometery node to get an even (world space) mapping for the floor. You can then just use box mapping and adjust the scale in the material. It will be applied at the same global scale regardless of individual object rotations or scale.

It will also be 'stuck' to global position so moving the floor will result in the texture sliding across the surface. If that isn't desired you can apply scale and use the object vector.


About Extruding Faces As we know, plane kind of meshes have only one face. My mesh has 2 dimentional faces on the edge.I want to give those faces alittle thickness so it would not dissapear when looked from backside. But when i exture the face, it extrudes only edges, not face. i tried it both way. Why does it do that ?

My Mesh:

Face extruded both way to experiment:

Ok, i chose those faces and unjoined from rest of mesh and tried again. This time it worked. So it must be faces, next to them, causing the problem. But when i unjoined and extruded those faces, shading looked alittle weird. Also i didn't want to apply solidify to the whole mesh to prevent from unnecessary polygons. In the end, this is what i made.

I made over the mesh.

1.I applied solidify on a basic cylinder

2.Then gave details to outer face only and my problem seems to have fixed


How to connect two vertices? I forgot how to connect two vertices.

The documentation says I need to press "J" but nothing happens.

I figured it out again... you have to press F.


Area Lit with Volume Lighting My understanding is that if a light is brighter, it will light a larger area. (Like a point light.) If I try this with a volume light, it seems to only light an area proportional with its scale, not its brightness.

Here is an example:

Emission set to 10:

Emission set to 100:

Emission set to 1000:

The .blend I used to test this is here.

Is there a way to light a larger area without changing the scale of the volume?

The light does travel farther, its just that volume lights take longer to resolve. If you up your samples you should see the light extend further. You could also use a standard emission shader without volume which will render faster.


Exclude one metaball from interacting with another metaball only In the image below, Is there a way to make A and B not interacting with each other, but both interact with the U meta-balls?

I need to prevent A (specific metaball) from connecting to B even if there surfaces intersect, but both (A and B) should keep connected to the U.

Hard to explain.

There isn't much that can be done in this case. Metaballs do not have a lot of functionality in Blender. You could just insert a plane between them and set it to negative. It does deform them, so it is not ideal, but there are no other solutions as far as I am aware if you want to keep them as metaballs.


How to focus on different windows across multi-monitors to hit a hotkey? Every time I point my mouse over a frame, it gets focus for its specific actions and hotkeys. But, when using a multi-monitor setup which opens different windows, I can't get them focused unless I click anywhere in the interface or hit the window bar. This occurs on Windows and Mac OS X.

This is annoying because I have to click first and then do a PAN or ORBIT command, for example.

This is an issue with the window managers in Windows and MacOS. There's a chance that this might be addressable in Blender's source, but my guess is that it's a non-trivial problem. A work-around would be to try to force Windows or MacOS to use a behavior common in Linux window managers called "focus follows mouse", or "sloppy focus".

Unfortunately, this is not default behavior in either of those systems. In Windows, you can do it manually by tweaking the UserPreferenceMask in the registry. In Mac OS, it's complicated by the fact that you have the persistent menu bar at the top... but you should be able to get focus follows mouse using a utility like Zooom/2.


Blender 2.8 edit mode. I can see through parts of my model I finally decided to start using blender 2.8, I've gotten a lot of things looking right again but I've ran into an issue in edit mode, I can see through parts of my model at times, and if i zoom out I can see all of the facedots. Is this a bug, or a new feature?

A little more information and visual examples would be helpful to verify exactly what is going on. It could be a couple things. Could be a feature or a bug(given the fact that 2.8 is still in beta). I want to lean more towards a possible bug.

There is a feature that can do what it sounds like you might be describing, in terms of "seeing through the mesh". However it appears disabled in your Header at the bottom of the viewport.

The button in the Header  allows you to make the whole scene transparent when enabled. Therefore see through the mesh. But only seeing the face dots and not the wireframe is why I think its a bug.

Image 1 transparency of the scene is disabled.

Image 2 transparency is enabled.

According to your image you are using v2.80.39. I am using v2.80.45 and cannot recreate your issue exactly.

I would recommend updating to a newer version of the beta(nightly builds), and see if the issue remains.

I could be wrong, but unless someone else can state otherwise and educate us both, I'm guessing its a bug.


What happened to my meshes? I'm pretty new to Blender so I don't know if this is my stupidity or something else. I realized that my icon for meshes changed and I can't access them. I don't know if its something I did because every model I try to work with has the same problem. Sorry if this is a really simple problem but I really need to know.

How my mesh icon looks now>

How the icon used to look>

Perhaps, you are looking at the material data-blocks (i.e. the first image you have put it up here) instead of the object data-blocks.

Look out for Blender File as a Display Mode on your Outliner. You should have all the data displayed that is present on your current Scene.


How can I get the dimensions of a newly-created material node via Python? I am using a Python startup script to add repetitious details to
a scene.  Arranging the nodes of the network for a new Cycles material
is cleaner if I know the size of each node as it is created.  The height
and width attributes are not correct, but the dimensions attribute
is accurate — once it is set up.

What I am looking for is a way to get the dimensions attribute
updated right after the node is created.  (My current workaround
uses a table of node sizes.)

If I run the equivalent of

    import bpy
    mats = bpy.data.materials
    mat = mats['GlossyGreenMaterial']
    nods = mat.node_tree.nodes
    newNode = nods.new('ShaderNodeBsdfGlossy')
    newNode.name = 'Glossy BSDF added'

to set up the node and then immediately execute

    print('newNode.dimensions: ', newNode.dimensions)

it will display

    newNode.dimensions:  <Vector(0.0000, 0.0000)>

If I bring up the Node Editor so the node is drawn and then
execute the print statement again it provides the expected

    newNode.dimensions:  <Vector(150.0000, 142.0000)>

Is there some update routine I could call as each node is
added that would cause the dimensions attribute to be set?

Thanks,
Roy Earle

There seems to be a solution to this (see below). Keep in mind, though, that while in general this approach is not recommended, in some cases it may work just fine.

Add this call to your script to force a re-draw, which will update the node’s dimensions properly.

bpy.ops.wm.redraw_timer(type='DRAW_WIN_SWAP', iterations=1)

Tip: if you add multiple nodes to the hierarchy (via your script) it may be smarter to add all nodes first then call this only once to minimize messing with blender’s drawing loop.

You can read more about this here:

https://docs.blender.org/api/2.79/info_gotcha.html?highlight=redraw#can-i-redraw-during-the-script

To be honest, I don’t understand exactly why blender doesn’t update the node’s dimensions right after it is added to the node hierarchy. It may be just an oversight, or perhaps blender really needs to re-draw everything once before it can figure out the dimensions.


How to achieve the round corners of a black piano key? I'm trying to model a black piano key using Blender but I'm facing some difficulties when trying to recreate the rounded upper front edges of the black key.

The closest I have come to achieving this is by first beveling the two front upper vertices in the corners using the Ctrl Shift B command. Then beveling all edges except the edges of the rounded corners. However, as you can see, the subdivided result is far from perfect!

Maybe I should try a completely different approach? What do you Blender experts make of this?

Thanks in advance for any kind of input!

The algorithm used for subdivision surfaces works best with quads. You have many n-gons in your mesh, which will lead to artifacts.

You should at least convert the front and top face to quads. You can do that in two steps: select the top and front face and press [Ctrl+T] to triangulate them.

Now select two triangles that you want to merge to a quad and press [Alt+J]. Repeat until you have no more triangles.

To keep the edges sharper, add a bevel modifier on top of the subsurf. Now you can control the roundness / sharpness through the bevel's "Width" parameter.

The result should look like this:


How do I fill in missing faces? I am kind of new to blender and I was working on a player model. I ran into a problem where I dont have faces on the arm pit. I dont know how to fill them in...
I am really sorry if this is a dumb question.

There's multiple ways so let me explain them to you because things like these can really speed up your workflow

You can select any number of vertices (at least 3) and press 'F' to create a face between these vertices.

As you have probably already figured out, quads are the faces you want to go for so ideally you want to select 4 vertices to create a face.

Alternatively you can select two opposing edges to speed things up.

In your example you have like a row of unfilled faces, so you can just select the top edge of the last face before the missing face and press 'F'. Blender recognizes the pattern based on the surrounding faces and fills the next one it. This only works if you have one row of missing faces (in other words: have faces on 3 of 4 sides).

Another technique that's really handy is the grid fill. I think there's no shortcut for this out of the box so just hit F3 to open the search bar and type in "Grid fill". This is especially helpful if you need to connect multiple faces that would result in a grid. An example: a cube that doesn't have a top face and is subdivided 3 times on the sides. Select the edge loop of the top and use grid fill to create top faces based on the subdivions of the sides.

Hope that helps, happy blending!


I want to apply an additional texture to my cup on the faces selected in the top screenshot. But the Normal UV map currently takes up all space The cup is from Blender Guru's tutorial: https://www.youtube.com/watch?v=BIUDZZMfGNI&list=PLjEaoINr3zgEq0u2MzVgAaHEBt--xLB6U&index=18
Now I want to add a new texture on the side of the cup just to see if I can, it will be a transparent logo I made in photoshop, so it's not water droplets.
I figured adding a new material slot would work to then apply a new texture - but it quickly gets lost when I try to select the face on the cup, maybe I am doing something wrong in setting up the new material, if at all that is what I need to do.
Do I add a new UV map somehow, if so how do I plug it in?
I am quite new to Blender (2.92.0)

You're almost there. Here's how you do it.
First add a new material: Select your object and in materials settings press the +, then press New and name your material.

Next create a new UV vertex group, and unwrap it: Switch to UV Edit mode. Select the vertices or faces you want to add your new material too. Add a new UV Map and name it, then U unwrap your selected vertices, make sure you have your new UV Map selected in the active UV layer in the upper right corner of the image editor window.

Assign your texture: Back to Layout mode. In Edit Mode. Keep your vertices or faces selected, make sure the new material is selected in the Materials settings window, click Assign. Then you have to add the image texture. Go to the Shader Editor. Shift+A to add nodes. Add an Image Texture node and a UVMap node, set it up like in the image below. Depending on the look you're after, you may want to adjust some settings, like Transmission and Roughness.

Yours will look better than this with some fine adjustments.


Is it possible to render vertices in Blender? Is it possible to render vertices with materials applied on them?

I subdivided a mesh, and deleted all the faces so only the vertices were left.
I could theoretically apply cool effects on them (I think it could be useful in motion graphics), but I could not apply materials on them or paint them in vertex paint mode.

I'm new to blender and i might do something wrong though. I would appreciate any help, thanks.

Why do I need it:
I've tried to replicate some of the trapcodes particle effects, but it was kind of hard to do this with Blender particles, which are really great by the way.

it might has something to do with my lack of experience - anyway I couldn't do it. And I think since blender is 3D software in the first place it could have some other ways to do it.

You can use DupliVerts to achieve an effect like this. Compared to other methods for rendering vertices, DupliVerts are going to give you by far the most control over materials, though the procedure for using them is slightly more complicated. They also have the advantage of working regardless of which render engine you are using.

To use DupliVerts to render vertices, follow these steps:

Add a new mesh object (I prefer using spheres for this) and scale down to your desired size
Using the Transform panel (N), move that object to the exact same location as the object you want to render the vertices of, by manually entering in the coordinates
Now hold down Shift and select your target object. Make sure both the target object and your sphere are selected, and that the target was selected last
Press Ctrl+P and parent the object
Go to the Properties>Object panel, scroll down to "Duplicate", and select "Verts"

Now you will a copy of your sphere positioned at every vertex of your target object. You can now choose which materials to use for each of the objects. If you want to render only the vertices, then assign a Transparent material to the target object, and a visible material to the dupliverts.

My result, using DupliVerts on an Icosphere with and orange diffuse material in Cycles:


File browser in Blender is very slow I work with windows 10 pro. From Blender version 2.76 and also in later (also 2.78c) is the opening of file browser very long. A workflow is not possible.
Is a solution to the problem known?

The problem is solved. A dvd drive was faulty. After deactivating the drive, Blender 2.78c now runs smoothly. For this idea, I thank Duarte Farrajota Ramos,


Shader node link connector invisible blender 2.82 I downloaded Blender 2.82 its good, but my problem is that the shader node link is invisible while dragging to connect another node. Any solution?

I had the exact same problem.
I updated the driver of my graphic card (AMD Radeon™ HD 8750M) and now is all good, i can see the node connector.
Hope it helps.


Simplest way to drive a pose bone's global location When you drive a pose bone's location, you're actually driving its local, rather than global location (I guess that's true for any location, but still worth mentioning).

I've been trying to find the easiest way to drive the global location.
I already know I can find the global location using either of these methods:

poseBone.matrix.to_translation()
armature.matrix_world * pb.matrix * pb.location

So I thought that I'll write a custom driver function that will find the global location and drive the local location values according to a converting back from global-to-local.

But I can't seem to convert the global value back to the original local value. I tried:

armature.matrix_world.inverted() * pb.matrix.inverted() * globalLoc

And just:

pb.matrix.inverted() * globalLoc

But I could not get that original local value back. Since the order of these mutliplications is important, I tried to re-order the multiplicated variables in any arrangement possible but no luck.

I'm open to other methods for achieving this or any suggestions on how to solve it this way.

I already know I can find the global location using either of these methods:

Both will not give you the correct global matrix. The first lacks the armature object transformation and the second is twice multiplying the pose_bone location - it's in pb.matrix already. So the way to get global location is:

pbone_global_loc = (armature.matrix_world * pbone.matrix).to_translation()

And the way to get the pbone matrix back is:

pbone.matrix = armature.matrix_world.inverted() * pbone_global_loc

If the pbone_global_loc is 3x3 make it 4x4 with:

pbone_global_loc.to_4x4()


What is the unit of measure with the ruler tool? When I use the ruler tool, it gives a very accurate reading, with many numbers past the decimal point.

However, what am I reading?  Is it giving me this in meters, centimeters, inches?  And is there a way to specify this in preferences somewhere?

By default it uses blender units (BU), which are equivalent to meters. You can specify imperial or metric units in Properties > Scene > Units:

Also see:

Blender units vs metric
How do blender units and meters, feet, or yards correlate?
What is a sensible scale to work with?


How do i duplicate previous key frame to another frame using python so far i have done this

import bpy
scn = bpy.context.scene
obj = bpy.context.active_object

animData = obj.animation_data
action = animData.action
fcurves = action.fcurves
current_frame = scn.frame_current

#bpy.ops.action.copy()
k1 = bpy.context.scene.frame_current
bpy.ops.screen.keyframe_jump()
k2 = bpy.context.scene.frame_current
bpy.ops.screen.keyframe_jump(next = False)

k3 = bpy.context.scene.frame_current

k4 = bpy.context.scene.frame_set(k2-1)
k5 = bpy.context.scene.frame_current

for fcurve in action.fcurves :
    for p in fcurve.keyframe_points :

        if p.co.x == k3:
            p.co.x =k5

but this only move previous key frame to the k5 value .. i want to have duplicate of previous key frame

I've found it practical to keyframe_insert it:

keyframe_insert(frame=k5,data_path=fcurve.data_path)


Can you change the color of camera composition lines? Sometimes, its hard to see the composition lines with white objects in the background. I know it is probably in the themes in the settings I just can't find it.

The option to change the composition lines in the camera is located in the User Preferences Themes tab under 3D View. Its called View Overlay.


Why is it creating two vertices in the same spot? So im new but im going all out and trying to model a pistol and for some reason when im about to start beveling the edges, it messes up because there are two vertices located in the exact same point.  So I have to move one out of the way, then delete one, then create new faces.  Its very frustrating and I cant think of anything im doing wrong.  All I know is that it seems like it might be happening when I do a "loop cut" I think is what is called. (hitting ctrl+R)

edit: Ok now after playing around trying to see what the problem is, it got worse.  I didn't change any settings but now every time I try to move a vertices or an edge it just has multiple copies under it. I'm literally unable to do anything to the model without messing it up now.  Please help

In Blender, sometimes you can create faces or edges without knowing. For example, if you tried to extrude a face, (shortcut E), but then you canceled the operation with escape, you might not notice, but a new face have been created over the one you was selecting, and its now in the same position!. This might be how the problem that you have was started.

One solution might be in the Mesh> Cleanup> Degenerate Dissolve menu found in the 3D view header while in edit mode.


My objects/planes aren't selectable anymore Firstly i apologize if this has been answered over and over again, but i've recently gotten into blender in the past week so i'm still new to everything, but when i opened my blender file that i've been working on; my objects/planes aren't selectable at all.
I'm able to select the cube, but not my bigger plane/object i've been working on.

You are in Edit Mode. Press Tab to leave Edit Mode and return to Object Mode.


How do I create a physics interaction followed by an explosion (that continues the physics)? I am relatively new to blender, and while I am pretty conversant with the main hard-modeling tools, I'm notso-hotso when it comes to physics. So I'm experimenting with some simple forms and interactions to get the hang of things.
Within my simulation, I have the following setup:

What happens is that, in the first few frames, the objects 'settle' (thank you gravity). Then, a number of frames later, the 'Cube Exploder' explodes. However, my simple sphere, which correctly obeyed the mesh-outline of the cube, just hangs in space instead of obeying the new reality of an exploded cube.
What's more, there's an odd discrepency between what I see in the viewport versus rendered mode.
Viewport
Just me in the 3D viewport in lookdev.

Rendered
A proper render using the Workbench engine.

As you can see, in the preview, the sphere actually enters the concave indent, whereas in the rendered view, it does not. In either event, both result in an explosion where the sphere does not respect the new cube-destroyed reality.
My objective is simply to cause the sphere to fall to the ground as the explosion is occurring.
Thanks for your attention.

From OP is not clear if Explosion Modifier is requirement or you just went the way you know.

version Fracture Modifier
Primarily designed for this was Fracture Modifier (non destructive), but it is not included in recent official experimental builds. One build I found in early 2.80 version on Graphical.org so you can check.

In this example

Rigid Body set to all three objects (as you did)
Sphere increased to 10 kg
Cube - Fracture Physics Properties enabled Constraints with Breaking lowered to 0,5

With additional setup you can achieve explosion effect as well.

version Cell Fracture
Similarly you can achieve it with destructive way Cell Fracture add-on to generate shards + add Rigid Body, but with more manual setup. Destructive means - once generated you would have to care about a bunch of objects (sure they can be placed in one collection). In this example they are generated from Particle system, but you can use GreacePencil to draw breaks in your style.

In this example

add Particle System to Cube (Emit from Volume)
search for Cell Fracture (after you enable it User Preferences > Add-ons of course (usually useful to set some low Margin like 0.001, that creates gaps between shards so its more stable in later Rigid Body sim.)
Move Shards to Collection so its easier to manipulate with them or parent them to Empty
select Shards (with one active) and search for Rigid Body > Add Active
for explosion you don't need Constraints between shards, so I just animated Dynamic checkbox by keyframes (OFF/ON) on frame 45 under Physics Properties > Rigid Body > Settings panel (I just could not find how to do for all shards at once ... hm)
to let shards explode I used another Icosphere in center of shards as Collider Rigid Body – Static with animated Scale (and disable from visibility)

Note: When Cell Fracture was in golden age of 2.79 there was an another add-on Constraint Builder that generates connections between shards with breakability. But I didnt find any similar for 2.8x


How to add horns onto a character I'm trying to model one of my D&D characters in blender. I've already thrown together a rough reference sheet, and I've gotten decently far on her head. I'd like to at least rough out her horns before I move onto the body, but I realized that I made a grave mistake: I have no clue how to extrude part of her head in a way that would let me shape her horns how I want without wrecking the mesh.
 Is there anything I can do to work around this? I'd really like to keep it all as a single mesh, if possible.
Please let me know if you need me to elaborate on anything, or provide something to help!

You need to make sure that you have enough geometry, i.e. 4 squares, then you make a 8 vertices circle (ShiftAltS to transform to sphere) that you can extrude.


Why does editing leaves behind the previous mesh? I don't know what exactly to ask for but every time I try to edit this mesh, it leaves behind the old mesh; occasionally with a connection to the edit. Please help. I can't find a way around this issue.

There is a active Mirror Modifier on your Object. However the mirrored Object is not a half Object but a full Object already. You can see this also by the mirrored vertex transformations on the other leg. So either cut your mesh in half and still use the mirror modifier, or delete the mirror modifier


Cannot find the node called texture coordinate in blender 2.79? I'm following a tutorial and in my node editor I don't have the texture coordinate node. I'm using blender 2.79, any idea where it is or what replaces it?

Since Blender render (internal) is missing that (shader) node, I guess you have maybe not set Cycles as render engine:


Color panel in the properties section is changed I was using blender and might've accidently pressed some keys and so when I go to my section to add color it is not at the original perspective that I want it to be. I need this back because it gives me like 3 options for color and none of them add nodes to my node editor. please help.

How do I change it from this perspective

Back to this?

Did you accidentally change to Blender render instead of Cycles? At the top bar in the 3D editor try switching it to Cycles Render. Hope that helps :).


Limited options in a certain area? Ok so i am a bit of a noob in blender, so I need help with this.

I am trying to texture something, but there is no texture button where there should be, because the blender edge window cuts it off
here's a picture

You have two options:

Hover your cursor over the buttons, press Mouse Scroll and drag it left/right
Place the cursor on the window edge and expand the panel with LMB


Display the Operator properties of an Active Add Primitive operator is it possible to display the Operator properties of an Active Add Primitive operator in a Custom Panel
as in the following figure:

For cylinder, I have enter radius and height, ...

You can display them, but i think you will get convoluted code.

def draw(self, context):

    # ... earlier stuff.

    operators = bpy.data.window_managers["WinMan"].operators
    if operators and operators[-1].name == 'Add UV Sphere':
        this_op = operators[-1]
        col = layout.column()
        col.prop(this_op.properties, 'segments')

But you'll notice you can drag the slider, it will update the visible value but not update the actual value of the active operator.

Then dynamically populating the UI with properties:

 >>> bpy.data.window_managers["WinMan"].operators[-1].properties.items()
 ...[('size', 2.0), ('view_align', 0), ('enter_editmode', 0), ('layers', <bpy id property array [20]>), ('location', <bpy id property array [3]>), ('segments', 9)]

so..

def draw(self, context):
    obj = context.active_object
    mode_string = context.mode
    edit_object = context.edit_object

    layout = self.layout
    col = layout.column()
    col.label(text="Generate objects:")

    if mode_string == 'OBJECT':
        layout.menu("INFO_MT_add", text="Add")
    elif mode_string == 'EDIT_MESH':
        layout.menu("INFO_MT_mesh_add", text="Add")

    operators = bpy.data.window_managers["WinMan"].operators
    if operators and operators[-1].name == 'Add UV Sphere':
        this_op = operators[-1]
        col = layout.column()
        for k, v in this_op.properties.items():
            col.prop(this_op.properties, k)

Would produce this, by inspecting the items in the properties of the current operator.

But, there are fundamental problems with this. You would have to limit somehow the kind of Operators to show in this list. Right now i've limited to Add UV Sphere, if you don't do that it will show all most recent Operator properties even if they aren't a Primitive operator..

So you might construct a set of Operator names to allow..

showable = {'Add UV Sphere', 'Add Cube', ....... }
if operators and operators[-1].name in showable:
   # ... display them as shown above

And still you won't be able to tweak these props. :(

Seen as the operator has a perfectly good Operator Properties panel accessible from F6, and the panel also appears in the 'TOOLS' shelf, I'm inclined to discourage trying to do this. -- But it's an interesting thought experiment.


Objects disappear when adding boolean modifier I am following an example from a book using Boolean modifier to cut hole in an object. I have two 3D objects overlapping and when I apply "difference" operation, the first object disappears. It's only one edge of the first object that's causing this problem- when I move the second object to other edges it works.

I am very new to Blender, is there anyway I can attach my Blender file for all to see?
Thank you

The reason the boolean operation fails is because you have duplicated geometry.

Enter edit mode, press A to Select All, then press the Space Bar and type Remove Doubles.

The boolean should work now as expected:

\


How can I import BI materials from another blender file with python? I have many files containing different parts of my blender internal material collection. How can I make a script which imports all of them into another blend file?

There is some archaic way you could do this with bpy.ops.wm.link_append() but a better way is to work with the api available via bpy.types.BlendDataLibraries.

import bpy

# using a relative path
path = "//file_name.blend"

with bpy.data.libraries.load(path) as (data_from, data_to):
    data_to.materials = data_from.materials

As a sanity check or for logging purposes, you can loop through what was appended and see if everything is there as it should be

for mat in data_to.materials:
    if mat is not None:
        print(mat.name)

As it relates to many files, it should be simple enough to extend the script to also loop through a list of filenames to append materials from. A final note, the materials appended have no users so make sure to stick them somewhere before closing your file.


object completely disappears in sculpt I have been doing Andrew Price's anvil tutorial repeatedly with quite a few restarts from scratch.  My latest attempt was fine through completion of UV unwrapping.  then I entered sculpt mode and the anvil goes completely invisible.  I deleted the file and restarted, getting very little done before entering sculpt just to see and again the object is completely invisible.  I tried changing matcap and managed to get a dark gray silhouette.  I am linking to my .blend

Havent you entered the edit mode then hid the object and then went back to layout? The object stays hidden in edit mode so does in sculpt but not in layout, you just have to go to layout enter edit mode alt+H to make visible everything and then you can change to sculpt.


Mirror command messing up UVs in 2.9 I just updated to 2.9 and am experiencing some strange behavior with the Mirror command and mesh UVs. Is this a bug or some weird setting I don't know is enabled?
Here is my setup:

If I go into edit mode on the cube, Shift-D duplicate the mesh, mirror it across the X axis with the 3D cursor as the pivot, it at first seems OK but after exiting and entering edit mode again, the UVs of the mirrored portion of the mesh are messed up.

Any clue what's going on here?

This is due to a new feature, which attempts to correct face information (typically UV maps) when modifying the mesh.
In edit mode, look at the options top right of the 3D view and uncheck "correct face attributes".

Intended or a bug in that case... maybe a bug.


Mirror X topology problem i've run into a problem here.

When i want to use mirror X topology option in edit mode - my mesh gets distorted in the middle and cannot find any options to fix that.

BLEND:

Your model is not constructed with x-mirror perfectly and the armature is not placed in the exact middle of your mesh as shown below:


Is it possible to create vector fields based on a math equation? If creating a vector field based on an equation is not possible, how create an equation-free 3-D vector field in blender?

The arrows should have color based on the magnitude of force they exert on objects. It would be great if the Vector field, can actually exert forces.

I understand that it's not possible to list everything in a single answer, but if someone can guide me in the right direction, it would be highly helpful.

Something like this

EDIT:
Someone has actually done this, I precisely want to do something like this.
https://www.reddit.com/r/blender/comments/8aqyns/vector_field/?utm_source=share&utm_medium=web2x

You could use mesh arrows to do it.

First, you need to create an arrow and the object that controls the field (in my case an empty named CTRL), then add a Track To constraint that points to the control.

Then you'll need to create your grid, which can do using this script:

import bpy
from bpy.app.handlers import persistent

dim = 10   #number of arrows on an edge og the cubic grid
spacing = 1
ctrl = bpy.data.objects["CTRL"]     #the control object
maxScale = 0.2
minScale = 0.01
distRange = 5

obj = bpy.context.selected_objects[0]

parent_coll = bpy.context.selected_objects[0].users_collection[0]
coll = bpy.data.collections.new("Grid")
parent_coll.children.link(coll)
for i in range(dim):
    for j in range(dim):
        for k in range(dim):
            new_obj = obj.copy()
            #new_obj.data = obj.data.copy()
            new_obj.animation_data_clear()
            coll.objects.link(new_obj)
            new_obj.location = ((i-dim/2)*spacing, (j-dim/2)*spacing, (k-dim/2)*spacing)  #define arrows positions (here they are centered on the world origin)

            #add drivers on the scale
            for t in range(3):
                driv = new_obj.driver_add("scale", t).driver
                driv.type = 'SCRIPTED'
                driv.use_self = True

                dist = driv.variables.new()
                dist.name = "ctrlName"
                dist.type = 'SINGLE_PROP'
                dist.targets[0].id = ctrl
                dist.targets[0].data_path = "name"

                driv.expression = "getScale(ctrlName, self, "+str(maxScale)+","+str(minScale)+","+str(distRange)+")"

def getScale(ctrlName, obj, maxScale, minScale, distRange):
    ctrl = bpy.data.objects[ctrlName]
    dist = getDistance(ctrl, obj)
    power = ctrl.scale[0]
    scaleRange = maxScale - minScale
    dist = dist/power   #distance is affected by the control size as well

    if dist > distRange:
        scale = minScale
    else:
        scale = scaleRange/(distRange**2)*(dist**2) - 2*scaleRange/distRange*dist + maxScale    #Here you define your scale function

    return scale

def getDistance(ctrl, obj):
    sum = 0
    for i in range(3):
        sum += (ctrl.location[i] - obj.location[i])**2
    return sum**0.5

bpy.app.driver_namespace['getScale'] = getScale

The first part takes care of duplicating the arrows on the grid. As you can see, at the top there are some parameters you can change without going too much into the code.

The second part of the script creates and runs the drivers that control the scale of the arrows: it's a function that takes some of the parameters at the top of the script and calculates the scale of every single arrow. I strongly suggest you to check and modify the function to fit your needs, expecially if you are working on a scientific project.

The way I set it up is using a normal quadratic interpolation:

this is not very good looking, but you'll have the pick the interpolation you prefer. Also, note that in the script the size of the control affects the field as well.

For the color, there is just one material that calculates the distance between each arrow and the control (the control's position is gathered with 3 drivers) and feeds it in a ColorRamp

This is the final result with the download link of the project:

There are many things that can be changed or improved, but I stopped here because this might be enough for you. Possible changes could be a different interpolation function for the scale or the color (because right now they work on a 2 different interpolations, but it's possible to join them together); some custom properties to store the parameters in the GUI, so that you don't have to run the script again every time you make a change; you could want to change only the length of the arrow instead of all 3 dimensions; etc...

After an extensive correspondence we came up with a broader solution, available on Github at https://github.com/Hilicot/Blender-Field-Generator


how to smooth jagged edges? Please see attached picture.  Blender seems to have trouble with curves.  Even after applying "shade smooth" or "line by crease" from MeasureItArch, the curves still appear jagged.
I originally thought it had to do with imported WRL files, but I had a similar issue with a cylindrical shape created in Blender, too.  Is there a good way to smooth these curves out?  Thank you.

This is entirely normal.
You can turn up the resolution of the curve in the Properties editor.
Explanation: In CG, all surfaces are secretly made up of flat pieces. The trick is to get enough of them that you don’t notice. Shade Smooth fakes the way light interacts with the surface into looking more smoothed, but does not alter the geometry. If you 3D printed a model in two versions, one shaded smooth and the other shaded flat, they would come out the exact same way.


knife tool not ending I'm just starting to use the knife tool and, after I finish using the knike tool, I can't seem to get it off of the knife tool. How do I get it off of the knife tool?

If you selected the knife tool in the sidebar on the left, you can just select a new tool (Select Box, the top one, is the default):

Here, the knife tool is selected, so any time you click, it will use the knife. Just select the first box, and it will go back to the default.

Personally, I just use the knife tool by pressing k, and then after i press space to end the cutting, it will automatically go back to normal mode.


Problem of 3D object rotation using manipulators Some time ago I began to study Blender. I did not have problems. Recently, after the break, I downloaded version 2.79 and I immediately had a problem. I can not rotate a 3D object using the manipulator. Regardless of the choice of the arc, the blender rotates the object around the vertical axis Z. Attempts to mark another axis in the group of check boxes "Constraint Axis" do not help. Can someone help me? Thanks in advance.

In case anyone else has the same problem: Careful with Alt,  (comma) this shortcut enables Manipulate center points. With that enabled, rotation and scaling will not have any visible effect on the objects.


How do I change right click to left click when in timeline mode? As you can see in my preference, it is set to left click so that when I click on an object I can click on it using the left button.

Unfortunately when I am in the timeline mode, when I have to click on a key frame I have to click using the right button, not the left button because I have changed this setting. Is there something I can do so I can use the left button when in timeline mode instead of using the right button?

Found this online and it worked for me:

The Timeline scrubbing is under: File > User Preferences... > Input > Animation >Change Frame (Timeline Scrubbing).

The "Change Frame" default was set to "Action Mouse"(I still have no idea what action mouse button is).

I changed that to "Left Mouse."

However since Left Mouse in Timeline was already used for interacting with the "Time Marker" in Timeline, I had to change that input to something else(I changed it to Middle Mouse).


How to make the mesh not bumpy? On subsurf modifier How to make the mesh not bumpy? (Like the images below) It has subsurf modifiers and adding loop cut isn't work anyone know how to handle it thanks

You must have a ngon at the top, you need to inset once or twice:


Model shows no edges Exported a model with default values from latest version in fbx, then imported to Unreal Engine 4. But the edges are missing, why?

The answer is: Remove any world position offset textures from your Unreal material, and the space should go away upon saving.


My model was animation ready then the hair stopped following the model With my model, I finished rigging it, all of the hair followed the head and it was perfect. Then I added a skirt and rigged it and suddenly the hair is leaving huge chunks of it behind and now I'm absolutely crushed.

Why did the model suddenly play up on me like this? I tested it and everything was fine but now the hair is suddenly refusing to follow the model.

Plus due to copyright(since this model is for a game) I'm not allowed to upload or share it, which makes the situation even more grim.

Can anyone think of what is causing part of the hair to stop following the armature?

When I click on the vertex group for the head bone, it shows the entire head and neck highlighted with the parts of the hair also highlighted that moves but when I try selecting all of the hair and clicking "Assign" the neck becomes stiff and refuses to move like it did before. I'm seriously out of ideas at this point.

I found out her to fix it but I also want to explain the difference so this makes more sense:

Because I had edited the model(shoes, skirt, clothes) it made the model stop following the armature, so when I used Automatic Weights on it, the hair didn't follow the model's head like when I first tried rigging it.

To fix this and get the model's hair to follow it's head, rig it how you normally would(in this case, automatic weights) then select the armature and go into pose mode. Once you do this, select the headbone and then select your model again.

Go into weight paint mode and paint the hair so it's all red, then go back to the armature's pose mode and rotate the head to check if you selected it all.

This is how I got the hair to follow the model's head and because my model has several textured planes, this helped me avoid the nightmare of having to delete them all(and I have everything as one object) to remodel the hair, so I hope this helps you if you're stuck on this issue :)


FBX export missing cloth modified mesh Ok I spent hours trying to figure out the cloth modifier trying to get the cape in the pic to work properly. I FINALLY GOT IT lol. Now im having the issue of the exporting it. In blender it works and shows up perfectly fine.

Idk if its a setting in blender or not but i export to an FBX and import it in UE4. the cape wont show up.

im breaking my head over this so if anyone knows something i dont it will be greatly appreciated! :-)

I think the answer is you dont use blender for unreal cloth. I think you make the cape in blender same as any other mesh, then import it into unreal and do the cloth there. Unreal used to use something called apex cloth (which it still can), but now also has its own cloth authoring tools.

Here is a link to a video showing unreals clothing system, if you skip to 5:00 exactly it will show you how to author cloth with the new system in ue4.

https://www.youtube.com/watch?v=4ZN3WHh3M9M


smoothing issue with tris sometimes when i work with tris or i change the flow of the topology on the z axe i encounter some shading issues with smooth shading, if i decrease the normal shading it gets fixed (10 degrees) but i need it higher.
i see it happening most of the times with tris even if i see some game models with tons of tris and no shading issues ( most of the times to make holes or circles.
i dont know if its a limitation of blender or something else, here an example:

shading

topology

I solved the issue by flattening all the faces and vertices of the side i wanted and i “mark sharped“ all the border edges


Traceback (most recent call last): I am currently learning Blender on Ubuntu 18.04 for openFOAM meshing. I was going through a tutorial today and the error in the image came up when I clicked on "Build" in the swiftBlock tab. Not entirely sure how to proceed.

Thanks in advance.

While I do not know a lot about this "OpenFOAM", it seems like it is a language or library designed to run on blender in order to generate meshes. According to the error, it says ZeroDivisionError: Float division by zero.

This is Python's (language blender is coded in) way of telling you that you are trying to divide a number by 0. I recommend checking your OpenFOAM code for instances where you do such a thing. The error also points you to the line of code that threw the error, so you might want to look at that closely.


Rigid body constraints and animation I have two rigid bodies linked together with a constraint. The problem is I need to animate the second rigid body at one point in the simulation. But as soon as I turn on "animate" in the rigid body settings, it seems like the object is no longer reacting to physics.

So my question is this:
Is there a way to drive rigid bodies that have constraints with animation keyframes, while they also participate in the physics simulation?

Here's an animated gif to illustrate:

The animate checkbox itself can have keyframes.  You can have it controlled by the animation system at the start, then turn off the Animated checkbox with a keyframe and physics will take over.  This is a common technique for launching projectiles.


How to move selected vertices on Z axis by 1mm I'm very new to Blender and I'm having difficult doing what I would of assumed to be a basic thing - yet I'm not finding how to do it. I have several vertices selected and I would like to move them up and down on the Z axis only WITHOUT using the mouse - super inaccurate. Is there a way to have the selected vertices be moved on the Z axis by entering the value somewhere? When I do so on the right in Object > Transform, it just moves the entire model/object.
Further more, I'd like to have these vertices be moved by 1mm increments.
Thanks

Edit: I figured out to do it by typing - very odd way. Push/Pull > Z > value. I assume there's a place to input the increments now to be mm, etc for the values entered?

You can type in your transforms if you call the transform using direct shortcuts to begin with (G to move/grab, R to rotate, S to scale).

Just hit the key for your transform, here G, then the key of the axis you want to move in, here Z, then you can type the amount of transform you want and press ⏎ Enter.

Unfortunately, you can't write "1mm" and press ⏎ Enter: it only takes numbers and simple maths operations, it uses the units set in your scene settings.

Blender is set to meters by default, so for moving by one millimeter you will have to write 0.001 (with a dot, not a comma) and hit ⏎ Enter.
You can also just type in the new global or local coordinates of your object in the Transform input in your viewport's sidebar. You can even let Blender make the maths operations for your by putting your cursor at the end of the value you want to edit and write simple maths like +0.01 or -1, ...

TL;DR type GZ 0.001 and ⏎ Enter.

If you will often need to type in millimeters, then it will be faster for you to set the units to milimeters so you don't have to convert millimeters to meters all the time.

Head over to the properties editor, Scene tab (white triangle icon), Units tab, and change the Length unit to millimeters. This just changes how units are displayed, it does'nt change any scale internally.


Accessing weights of a bmesh I triangulated a mesh using bmesh.ops.triangulate, and I don't know how to access the weights of vertex groups. The traditional MeshVertex has a groups field that contains these weights. I tried to find it in the bmesh layers, but there are no layers in it.

Is there any way to access vertex weights from bmesh, or is it only available in MeshVertex.groups?

I think it's

layer_deform = bm.verts.layers.deform.active
assert layer_deform is not None

bm.verts.ensure_lookup_table()
bmv = bm.verts[0]
bmv[layer_deform][vertex_group_index] = weight

# or
names = tuple(vertex_group.name for vertex_group in obj.vertex_groups)

for vertex_group_index, weight in bmv[layer_deform].items():
    name = names[vertex_group_index]
    print("Name: %s, Weight: %f" % (name, weight))

Links:

bmesh.types.BMLayerAccessVert.deform
bmesh.types.BMDeformVert


When dragging to re-parent in the Outliner, I'm not getting any visual feedback. How do I fix this? In a video I just watched it looks like this:

But I never got this "Drop to Set Parent" overlay or anything like it.

I'm on 2.77a on Windows 10. Also never got this on 2.77.
What's wrong here and how do I fix it?

Thanks,

Chris

The problem is caused by the Window Draw Method in the User Preferences > System menu. When this is set to "Full", the overlay isn't drawn. Changing it for example to "Overlap" fixes the issue. (however, there are other problems that arise in other parts of Blender when Window Draw Method is not set to "Full")


How to make displacement to effect all the surface? The displacement only working on the side of the woodblock, how to make it on the top of the surface? I have already added subdivision, and still, nothing happens.

Thanks~ :D

You need to do several things:

Select your plank and in the Properties panel > Material tab > Settings > Surface > Displacement, enable Displacement Only, otherwise the Displacement node won't give anything.

Give your plank a Subdivision Surface modifier so that it has geometry to move.

Switch to Render mode to see the result, apply the scale of your object so that you have a 1/1/1 scaled object, you'll see that it will go crazy because of your settings.

So just adjust the settings (didn't try to understand all your nodes organization though).


How to properly use the Child of constraint with bones I am trying to get 2 bones to follow each other using the constraint system.

Trying to get the hand to follow the pump here. Both bones are individually configured correctly...

This is what happens when I add the constraint. Anybody understand the problem here?

Hit the Set inverse button in the constraint settings

Set Inverse
By default, when you parent your owner to your target, the target becomes the origin of the owner’s space. This means that the location, rotation and scale of the owner are offset by the same properties of the target. In other words, the owner is transformed when you parent it to your target. This might not be desired! So, if you want to restore your owner to its before-parenting state, click on the Set Inverse button.

https://www.blender.org/manual/rigging/constraints/relationship/child_of.html


reflection in mirror i wanted to reflect the  3d model  in mirror. i added a plane and i have increased metallic nature to 1
and  decreased roughness to 0
 but i have added a background image hdri  before.so its reflecting the background image not the 3d model .
so how can i get rid of this  problem ?
 if i remove the background image hdri . its not reflecting anything at all
 in top view i can see a little bit of reflection..

I assume you are using Eevee as it seems in the second screenshot.
In Eevee to get better reflections you should use "Reflection Cubemaps" or "Reflection Planes".
You can find them in "add menu" > "light probe".
Since your mirror is a plane object I suggest you to put a reflection plane on the surface of the mirror. Here you can see the difference:

This is without reflection plane.
And this is with a reflection plane on the surface of the mirror object:

HDRI image should not affect objects reflections, only background reflection.

You can read abount reflection cubemap/plane here: Blender 2.81 Manual - Eevee Light Probes


How can I import an image sequence into blender So I have a video and a image sequence  that I want to stick together using alpha over nodes.
My background is a .avi video, and I want to put a image sequence with alpha
transparency over it.

I use a image node and import all my png's.

and set the node to image sequence.

But when I move up and down my time-line the images don't change.
What should I do?

The Frames value in your Image Sequence node is set to 1, so it will only show the first frame of the sequence. Set that value to the total number of frames in that image sequence and you should see it update. You may also want to enable Auto-Refresh so you can see updates as you scrub.

That said, if you're just doing an Alpha-over, it would probably be way more suitable to do this in the VSE.


Bezier curve between faces of different meshes Help me please to set up nodes, so that curve will be instanced between every two faces of different meshes.

Faces should be selected by index, like 1-1, 2-2, etc.
Curve should be directed along faces' normals.

I've replicated something partly similiar to my needs from this answer, but it is limited to only 2 faces inside one object.

Loop over both the polygon centers and polygon normals of both mesh and create some between each two centers using the normals as handles:

Or by using the Instancer node:


More than 5 mix/principled shaders turns material pink in material preview but not in rendered preview? No missing textures I'm doing a 3D map with a single material only using masks to change between terrain types, but once I add more than 5 mix/principled shaders the material turns pink, this issue just happens in the material preview window, not in the rendered preview.

Like so:

And as you can see it is not a missing texture issue either since it previews just fine if done separately.

I need to fix this otherwise I can't paint on the masks, so if anyone can shed light on the situation I would be grateful, thanks!

I couldn't make the file size lower than 30mb since there are a lot of textures, I hope a google drive link is acceptable? File

So I changed all the Principled BSDF shaders to simple Diffuse BSDF shaders, like Craig suggested and it worked! Don't know the exact reason why it worked but I guess the Principled BSDF is too complex for putting a bunch of them in a single material. Anyway thanks for the help again.


Cannot merge adjacent vertices I'm really struggling to work this out. I've uploaded my file here:
https://drive.google.com/drive/folders/12SsWvjO9dYfF3BEPrZmdNJyiH8FAqiRd?usp=sharing
I made some curved stairs. Basically, I want the steps to stay nice and sharp, but I'd like to smooth the vertical, curved sidewalls of the staircase. Currently I can't auto-smooth because all the steps are individual pieces that are not connected. I've tried merging vertices and faces by distance, but I just cannot work out how to join them.
I hope this makes sense, and thanks in advance for any help! :)

To get the result you want with smooth sides and better geometry there are a lot of steps necessary, but I can show you how this is achieved. For most of the following actions it's easiest or most comfortable if you use Vertex Select in Edit Mode.

Select everything with A, then press X > Limited Dissolve. This gets rid of several vertices you don't need anymore.

From the menu choose Mesh > Clean Up > Split Non-Planar Faces.

It's important that the side faces are split at the vertices where they bend towards the front, so make sure the Max. Angle value in the split options is set low enough so that there appear new edges between those vertices marked in the image.

For the following steps you need to set the Snapping to Vertex. You can also enable the Snap Tool (the magnet symbol) or later hold Ctrl while moving things to temporarily enable snapping.

Now you have to make cuts in all front faces of each step (except for the smallest one). You do that with the Loop Cut and Slide tool. Enable it by pressing Ctrl+R, then move your mouse to one edge of the front face of the higher step behind the smallest step. Make sure you're on an edge above the small step to definitely cut the higher front face, not the backface of the small step. Click to cut the face, then slide the cut up to the corner vertex of the small step.

With the Snap tool enabled (or holding Ctrl for temporary snapping if the tool is disabled) make the loop cut snap to the corner vertex and left-click to place it there. Now you have to repeat this for each following higher step.

For the following actions make sure you have Options > Auto Merge enabled. Next, select all six vertices between a smaller and a higher step that are supposed to be more or less aligned vertically (see left side). A good way to do it is to use the X-Ray or Wireframe mode, go to the Top View and select the very close vertices with Box Select or Circle Select.

To align them all, hit S to scale, then Shift+Z to constrain scaling to X and Y axis, hit 0 to scale to zero and left-click or Return to confirm. The vertices are aligned now but kept their distance vertically. You have to repeat this for all rows of vertices where the back and front of two steps meet.

After aligning all vertices like that, the Auto Merge option ensures that where two vertices shared the same location, they got merged into one. The only problem left now are the remaining inner faces that were on the backside of the steps. Deselect everything with Alt+A or double-tap A, go to the menu, Select > Select All by Trait > Interior Faces.

This selects all faces hidden inside the mesh. To delete them hit X > Delete > Faces. You can now go back to Object Mode.

Switching back to Solid View everything's shaded flat. Right-click the staircase > Shade Smooth.

Now the staircase looks terrible although you have Auto Smooth enabled. The problem is you have set it to 105°, which means Blender smooths even over the sharp 90° corners. To correct this, set the value to something that is in any case below 90°, usually the default 30° are sufficient, maybe go up to 45° if that doesn't seem to be enough. Et voilà, it's finished.


blender 2.69: Texture is not shown correctly I have created two objects: plane and polygon. Then i joined them together to new mesh. For that new mesh i created a texture. Texture is shown in texture view, but not in cycles render completly. Only one object displays the texture but not the rest.

Picture is here:

Is that a bug? Perhaps i made something wrong.

This could happen if both objects already have a material before being joined. Blender will copy all materials assigned in the source object to the destination object, all faces still assigned to the same material prior to joining. When you're creating a new texture, it's only assigned to one material, so it doesn't show up on faces still assigned to other materials when rendered.

The object's UV image could still be shown as you intended in the viewport, because it's assigned through image attribute of the object's UV map. It doesn't rely on Texture data at all. But what's rendered, do rely on it.

If this is the case, remove the unwanted material's slot, assign faces from the other object to the intended material, or assign the same texture to all materials in the object.


Orange in timeline, playblack won't go to frame 1 I've accidentally set some markers in my scene, and now Blender has locked on to a section of my scene. Please help me remove the markers! Thanks.

oops, I immediately solved it right after I posted. I unchecked this little box and it went away. Maybe If I leave this here, someone else with the same problem can find this and solve it too.


How do I fuse objects (like cubes and cones)? I am making a trident for a fish game where you control the currents to guide fish around. I wasn't thinking ahead and didn't use the extrude tool to add other parts and now I have to connect them. How would I fuse them together? Also, I have to put cones on the ends, so does it matter if it is a cone, a cylinder, a cube, or whatever object it is that you are fusing? Or if it is two different objects? And can you un-fuse them?

I know that this is kind of more than one question crammed into one, but it is all the same idea, right? (I was going to end it with the questions and that last one wasnt very Blender related)

You can join two objects with Ctrl+J:

Make sure that the object you want to have the modifiers for and the origin of the combined object is the last selected and the outline is lighter orange.

To separate again, Tab into edit mode and hit P > loose parts

note from author: Sorry for the terrible trident model. I didn't have motivation to try harder.


Convert sequence of 3D points into a BVH file [I reformulate the question to something more concrete]

I have 2 different .bvh files with 2 poses. From one pose I want to find the transform to get the second pose.
If I compute the rotation to align one bone to the other bone (see Figure  1)

I get that I should rotate Z axis 45º, and if I put this rotation in Pose mode I can align the 2 bones (see Figure 2)

However, if I write 45º in the .bvh file the alignment goes completely wrong (see Figure 3)

I think probably rotation should be expressed in armature coordinates but I can't find how to do that in the .bvh files.

Retarget animation

of one rig to another which differs only by rest pose

Given your two example bvh files produced rigs, toy_example_source and toy_example_target It looks like you want to do same as this qanda

Since your two rigs only differ by rest pose can snap target to source using a global copy transforms constraint. The new transforms of the snapped bone can be grabbed from the pose bones matrix. The local coordinates of the new transform using Object.convert_space(...)

Edit the name of source and target rigs to suit.

import bpy
from bpy import context

remove_constraints = True
scene = context.scene
rig1 = scene.objects["toy_example_source"]

rig2 = scene.objects["toy_example_target"]
if not rig2.animation_data:
    rig2.animation_data_create()
rig2.animation_data.action = None

# add copy transform constraint to each bone
for pb in rig2.pose.bones:
    ct = pb.constraints.get(pb.name)
    if ct is not None:
        ct.influence = 1
        continue
    ct = pb.constraints.new('COPY_TRANSFORMS')
    ct.name = pb.name
    ct.target = rig1
    ct.subtarget = pb.name

action = rig1.animation_data.action

f = action.frame_range.x
# add a keyframe to each frame of new rig
while f < action.frame_range.y:
    scene.frame_set(f)
    for pb in rig2.pose.bones:
        #pb2 = rig1.pose.bones.get(pb.name)
        m = rig2.convert_space(pb, pb.matrix, to_space='LOCAL')
        if pb.rotation_mode == 'QUATERNION':
            pb.rotation_quaternion = m.to_quaternion()
            pb.keyframe_insert("rotation_quaternion", frame=f)
        else:

        # add rot mode checking
            pb.rotation_euler = m.to_euler(pb.rotation_mode)
            pb.keyframe_insert("rotation_euler", frame=f)
        pb.location = m.to_translation()

        pb.keyframe_insert("location", frame=f)
    f += 1

# set constraints to zero or remove entirely.
for pb in rig2.pose.bones:
    ct = pb.constraints.get(pb.name)
    if ct is not None:
        if remove_constraints:
            pb.constraints.remove(ct)
        else:
            ct.influence = 0


Setting transparency on mesh from inside, but not outside Horrible title, I know. I doubt transparency is even what I need. Hopefully I can clarify what I'm trying to experiment with:

Two ico spheres share the same position, subdivisions, and rotations. Only difference between them are their scales, so one is inside the other. Outer sphere has an opaque material applied. Is there a material, or effect I could apply to the inner sphere, that would allow a camera object at the centre to see outside of the two spheres?

Only thing I can think of is to put a camera object at the normal of each face on the external sphere, then assign individual materials to the corresponding inner sphere faces which would display the camera views. However, that seems like a time intensive task, and a nightmare to organise. Wondering if there's a more elegant way to achieve the same effect.

I want to thank you for this question because I learned something in researching the answer.

Things have changed. Here's how you can do this easily in 2.8.

There is a backface culling option when in Edit Mode from the Viewport Shading Menu pulldown, BUT this is NOT what you want. Leave it alone. :)

THere is another backface culling option in the Materials tab of the Properties Panel. THIS is what you want. Make sure it is checked.

Your camera will now render what is on the outside of any object with this material assigned to it, but not what is on the inside of it.

It feels good to have finally learned how this works just now. :)


Resume viewport cycles rendering How to resume the cycles rendering in viewport as in my case it is showing 'Rendering paused'. If it is to do with some additional settings than please ask me but help fix this because I have to render image every time to view what is going on!

To resume preview render, click the icon that resembles a "play button" at the top of the viewport next to the overlays.


How to use camera distance to mix textures? i want to show some textures when the camera is closer to the object and not when it is far, so how can i do this in cycles. is there any particular node to do this trickery or any work around?

You can use the camera data node to control the mixture of two nodes (color mix or shader mix).

Mix nodes expect information on the 0 to 1 scale, so the distance information will need to be scaled somehow or you need to define a threshold for the transition.

As an example: With a math node in "Less Than" or "More Than" mode you can create a distance threshold for the transition.

For a more subtle transition you can use a gradient texture:

Notice that you can usel Z depth as well and use a multiply node to control the transition point.

And for more control a color ramp.

For more info read : Using the Camera Data Node


How to make a grid of objects with individual rotations? My goal at the moment is to create a 2D field of a particular object, with each instance rotated a 45° more than the last. An ASCII art illustration of what I want to get, from a top-down view:

| / - \ | / - \ | . . .
/ - \ | / - \ | / . . .
- \ | / - \ | / - . . .
\ | / - \ | / - | . . .
.
.
.

Well, something like that. I'd have to fiddle with the 2D aspect, but it's first dimension I can't seem to get a hold of, just getting what looks like the object spinning as it moves forward. I can't seem to accomplish this in a way that doesn't involve ultimately duplicating each instance by hand.

Here's what I've tried:

I first reach for the array modifier, naturally, but as you can see it doesn't work; the translation of each object is done to the "local axes"(?) of the previous repetition, meaning it'll spin the array in a circle instead of what I want.

So while searching I learned about dupliframes and tried using that. It takes care of the 45° rotation that stumps the array modifier, but then I'd like to use an array modifier to repeat the group of four I have. That modifier doesn't work:

Not too surprising, considering I am animating an array-modified object now, so I guess I'll just "apply" the dupliframes (make them individual objects) and try to link an array modifier between them. But it creates the same issue as above.

At this point I'd have to apply rotations to get it to work, but in doing so I need to un-share the underlying mesh, and then that ends up not being a solution, since it's no better than manual copy-pasting.

Ideally, there'd be a better array modifier that worked on objects rather than meshes, and that would just let me say "Rotate: (0, 0, -45°)  Translate: (0, 2, 0), on global axes" for a total of four objects and have it handle the apparently super tricky task I want to accomplish (then further modifiers would be able to simply repeat the group of four, of course).

However, since as far as I know this ideal modifier doesn't exist, what's the closest approximation to it? Or am I stuck needing to manually duplicate everything?

(Honestly, if I could just tell the array modifier to be based on the global/world axes instead of local ones, this would already be solved.)

The Sverchok Add-on has convenient nodes for this:

You pick the object you want to duplicate, and you pass it a set of Matrices. These Matrices contain location and rotation data each.

The location data comes from the Plane generator (this generates the grid of locations using a subdivided plane with X and Y divisions (W, H).)
The rotation data comes from the Vector (0,0,1)  node and the integer range node produces a steady stream of 25 or (W*H) sequential integer going from [0 .. 18 .. 36 ... etc]

You might set the step size in the list Range int node to 45 or -45, and adjust the W and H to suit you.

The Plane generator generates coordinates (viewing from topview) from bottom left to top right. If you really want to start top left you would transform the output of Plane with a Rotation node.

I think the benefit of this method is that it's entirely dynamic. You can pick whatever number of rows or columns and the step rotation.


Merging two edges that are identical Yes, I know, OCD is pretty bad :P

And while you're at it, if you want as a bonus :p

There appear to be random faces inside the 3d object itself, or that's what I think by seeing those little dots inside the column, and not in the center of any face.
how do you get rid of those?

As mentioned in comments, multiple vertices that are in the same place can be removed by selecting them, and then pressing W while your cursor is over the 3d view area, and selecting 'Remove Doubles' from the pop-up menu. It is good practice to remove any doubled vertices that sometimes appear due to minor mistakes now and then, by selecting all vertices and doing the same thing.

The last part of your question is a separate matter (and thus preferably would be a separate question for better clarity, but no worries). From what you say, it sounds like this is one object, a column, with everything joined together. If so, you can select everything connected to it by selecting any part of it and then pressing Ctrl + L. Then, select the reverse of that by pressing Ctrl + I. That will leave selected everything that isn't part of the column. You can take a closer look at what it is by pressing . on the Numpad, which zooms to what's selected.


How to create our own procedural texture like the default ones in blender I am not talking about mixing different procedural textures .I want to know the process of making procedural textures from scratch. Thanks in advance

The 'built-in' texture nodes generate their textures mathematically and so most of them can be recreated using Maths nodes - building your own textures is no different.

For example, the Wave Texture can be created by using a Sine function based on the input coordinates :

Or the Checker texture recreated as follows :

Gradient textures follow similar principles - for example, a horizontal gradient :

The Noise, Musgrave, Magic, Brick, Sky textures can similarly be reproduced using maths.

Even something akin to the Voronoi texture can be recreated as detailed in this and this answer.

The Point Density and Image/Environment textures are an exception since those require additional input (the image or point cloud) - although in the case of the Point Density you could theoretically use Combine XYZ or Value nodes to set each of the point coordinates and maths nodes to calculate the proximity to each of those points - but it would quickly become too cumbersome to be practical as the number of points increases.

The 'built-in' textures will always be more efficient that doing these things using maths nodes but they can still be used in combination with each other and additional maths nodes and coordinate manipulation to generate interesting textures.

For further examples, see here and here.


Can I set the default alignment for new objects to "view" (not "world") I'm modelling a real-world object by tracing over some photos, and have multiple 3D viewports open. When I add a new object, it always defaults to "Align: World" and I have to use the F9 menu to change this to "View".

Is there a way to make the default alignment of a new object "View"?

Change "New objects" / "align to" in the preferences:


Why some objects are not mirrored? I copied original objects and mirrored them. But one object never be mirrored. Why does it happen?

The black colour is the original object, and the selected meshes are what I duplicated, and mirrored. However, the middle triangle never get mirrored. I do not know why? every object has the same pivot point (Center) what should I adjust to solve this problem?

2 ways you can mirror

1st method : If yes then delete the half. And the part which you want to mirror is loose or say separate parts so join Ctrl+L and make it one mesh and then mirror it.

or if you do not want to join and keep separate

2nd method : Just group the half you want to mirror. with selected half group press shift+D and without moving just rotate 180 on x axis. (As the 3d cursor is set)


Change of model origin does not export to .ac format I'm trying to modify a model of a windturbine for use in Flightgear. The origin is at present set at turbine level, so when the model is placed in the scenery, it is buried in the ground. I want to change the origin, so that it is at the base of the tower.

In Blender I have "set origin to 3D cursor" with the cursor at the base of the tower. I export to .ac, place the object in the scenery and the origin is still at the turbine level

Some file formats can't store object center information, or simply don't have a concept of a "local origin", and some exporters also don't take into account local coordinates or object origin information.

In these cases all objects centers are generally considered to be at the scene origin or world coordinate [0,0,0]

Try moving all your objects so that their desired centers rest at Blender's scene origin.


How do I curve a section of a model? so I'm new-ish to Blender and currently practicing by just making some random 3D models of stuff. Today I made a model off of this switch:

My only problem is the edge of the switch, its curved but how I have my model, I have it straight as shown here with the vertices selected:

Im trying to bow the edges so that it curves up but I've tried so many things to no success. Any easy way to edit the vertices to curve it up without moving them free-handedly?

This can be done by selecting the bottom two vertices, pressing O, and moving them in the desired direction (be sure to put it on the Sharp falloff type and make the radius large enough using Scroll):

Although you can do this, I would recommend making the switch as if it was in between the two states, so it is symmetrical. You can then easily rotate it.

Start by forming the switch profile. Add a circle with 12 vertices, and in edit mode select all and press S-Y-2, then press Enter to finish. Now select all except the bottom vertices and delete them.

Now you can extrude downwards using E, Z. When scale the new vertices to zero along the zed axis by pressing S-Z-0. Now scale along the Y axis as desired (S-Y).

Now extrude the outline to the desired width using E.

Now you can delete half of the vertices.

And add a Mirror Modifier:

Make sure you select the right Axis, either X, Y or Z. In this case it is Y.

Now any changes you make to the one half are exactly mirrored to the other half. Also, this piece can be rotated easily to animate the switch if ever necessary.

Things you might want to consider:

Bevel modifier/Sub-Division modifier
Re-calculate Normals (Edit mode Ctrl+N)

This should get you a good base mesh to work with, from which you can add specific details.


How important is modeling to scale for animators? Is using real world scale necessary, or just modeling everything proportionately to your characters?

Size is extremely important to animators. The size of the model determines how the animation will look. A building-sized ant-man will have different motion than a tiny-sized ant-man.

But in 3D the scale is relative, you can pretend 1 unit is 1.5m or 0.5foot or anything if everything adheres to it in the project and you don't care about anything outside of project and you communicate what the size is to the animator. But why to complicate life, just make 1 unit = 1m and be it self-explanatory. It's similar reason as to why name everything nicely in the scene - it will work the same as with bad naming, but the other person using that file will have so much easier time having everything self-explanatory named.

Having the scale to real-world units starts being really relevant when simulations come into play. Simulation engines do take size of objects into account. You cannot no longer just make it proportional and pretend the size is anything you want. And animators can do simulation stuff too.


How do I get hair strands to curve in blender? How do I get the hair strands in blender to curve? I tried the forcefield but that didn't work either...

You could try increasing the number of segments. In my image that setting is greyed out, because I've done some particle edit after setting it. It needs to be set before editing the hair. 50 segments, like I have here, is overkill, I just set it to something high.

Lowering the Degrees setting under Render in the Particle settings may also help. To access that setting you'll need to activate Strand render.
You could also fiddle with the B-spline setting, but increasing the number of steps will slow things down.

Here are some settings I've just played with. The ones under Hair dynamics affect how fast and how far the hairs will fall.

And this is what I put together using those settings


Menu list keeps on growing every time I debug my Operator script This is a question about the process of developing an addon rather than a specific error in the script.
I'm creating an Operator that I want to show up in the UV Unwrap menu.  I'm editing the script in the Scripting tab and every time I want to try the latest version of my code, I press the little arrow button to run my script. Unfortunately, every time I do a new entry is added to my menu list, so over a programming session my menu quickly fills up with lots of identical entries to run my operator.  I just want a single menu entry.  I thought my operators unregister() method would take care of this, but it does not seem to.
What would be a better workflow to develop my addon?
import bpy
from bpy.props import FloatProperty

class UnwrapWorldUvOperator(bpy.types.Operator):
    bl_idname = "uv.unwrap_world_space"
    bl_label = "Unwrap World Space Operator"
    bl_options = {'REGISTER', 'UNDO'}

    scale: FloatProperty()

    @classmethod
    def poll(cls, context):
        obj = context.active_object
        return obj and obj.type == 'MESH' and obj.mode == 'EDIT'

    def execute(self, context):
        print (self.bl_idname)
        return {'FINISHED'}

def menu_func(self, context):
    self.layout.operator("uv.unwrap_world_space")

def register():
    bpy.utils.register_class(UnwrapWorldUvOperator)
    bpy.types.VIEW3D_MT_uv_map.prepend(menu_func)

def unregister():
    bpy.utils.unregister_class(UnwrapWorldUvOperator)
    bpy.types.VIEW3D_MT_uv_map.remove(menu_func)

if __name__ == "__main__":
    register()

You can test whether menu_func is already part of _draw_funcs list and if so, do not prepend:
def register():
    bpy.utils.register_class(CUSTOM_OT_operator)

    if hasattr(bpy.types.VIEW3D_MT_uv_map.draw, '_draw_funcs'):
        if menu_func.__name__ not in (f.__name__ for f in bpy.types.VIEW3D_MT_uv_map.draw._draw_funcs):
            bpy.types.VIEW3D_MT_uv_map.prepend(menu_func)
    else:
        bpy.types.VIEW3D_MT_uv_map.prepend(menu_func)

def unregister():
    bpy.utils.unregister_class(CUSTOM_OT_operator)
    bpy.types.VIEW3D_MT_uv_map.remove(menu_func)

if __name__ == "__main__":
    register()


How to make object symmetrical? I have a sculpted object which was edited manually in edit mode. Since than the symmetry was broken. I want to make the object symmetrical, but since it was a sculpted object it was not idencical geometry on both side because of the dynatopo. There is no an edge loop on the symmetry plane.

So I can't select the left or right side properly to delete and use the mirror modifier.

How to make an object like this symmetrical?

To prevent this issue: is there a way to do transforms (transform, rotation, scale) symmetrical in edit mode?

Of course, in the Tools panel (on the left of the 3D view), in the Dyntopo menu, click on the Symmetrize button, but before that, above this button, make sure you've chosen the right axis. And also remember that the object origin will be the middle of the symmetrize effect.