text:
Keep a fixed distance between two bevelled surfaces
I'm not sure to use the correct words. Anyway, here what I did:

created a bezier curve
duplicated it
bevelled the original one with the round option (but I should work even with an object)
created a curve to be used as bevel object for the second one

Now I have this situation:

At the end, the inner object will be "subtracted" from the outer one, in order to make a "trench" inside.
My goal is to define a constant distance between the surface of the outer object and the surface of the inner one, along all the path.
I tried with either scaling or offsetting the bevel object but it does not keep the distance along the path. Ideally, I would define this distance in mm. I understand it depends on the two curves and the shape of the bevels. I'm not sure if it is even possible...

You got lots of answers in just an hour, lol, but the simplest way to get what you want is not to use two curve objects, but to use a single curve object with a solidify modifier.

@Nathan feel free to add your answer if you want to!

If your bevel curve-object is 2D, you can make it with holes, simply by including more splines:

Yo may have to  Edit Mode > Header Menu > Segments > Switch Direction on the perimeter of the hole, to get inner face's normals to point in the right direction .. ( 'Face Orientation' overlay shown, above)

Great idea! But I'd prefer to keep them separated since changing the outer shape would affect the inner one too...

If i understand correctly what it is you're trying to do, I would do it in a different way.
You want to make some sort of tunnel where the inner walls are evenly distanced from the outer wall.
You can create one part of the tunnel, a thin loop of faces for example. The shape of the outer + inner tunnel.
Then i'd create a curve object, starting from a circle or other.
And add an array and curve modifier on the tunnel part you modeled. Adjusting accordingly.
Is this what you mean? Do you need more info on what I mean exactly? let me know!
good luck! :D

Yes, exactly! The only downside I see in you approach (but perhaps I'm wrong) is it modelled ad hoc. Since the outer shape can be modified a bit (i.e. make it bigger or smaller at some points) I would be nice a simple way to create again the tunnel without designing it manually from scratch!

Anyway I'm going to play with your hints!

You'd like to have some variation in shape on the outer part? thats understandable. I'd apply the array and curve modifiers after I have the desired shape and then use 'proportional editing'  with 'connected only' selected to drag some parts out.

Here are some pictures illustrating what I mean :)

The 'deform axis' ofcourse depends on your own scene and objects. Play around with it until it looks good!

Thanks! Very interesting! I'll give it a try

Playing around with the great hints of user Ward D, I find a simpler method that can be easily followed again if the outer shape changes:

edit the outer shape
select an edge loop on the inside surface
CTRL+D to duplicate, ESC to leave it there and P to separate
then convert it to a curve
now I can bevel it with an object and define a distance from the surface changing the offset value

The upper left corner is wrong of course, but this is just a dummy example.


text:
Assign NDOF button action
In Blender 3.6.0 under Ubuntu 22.04 I'm trying to configure my SpaceMouse Compact buttons.
In the configuration panel I first tried to emulate a keypress:

but in Blender it has no effect. Then I restored back to the button behavior and configured a new key assignment in preferences:

But still pressing the MouseSpace button does nothing.
What should I do in order to use my buttons?

Blender 3.6 isn't even in beta yet so you'll have to ask the developers that one!

Does it change so much just for a key assign?

No idea. If it works in 3.4.1 (the current released version) I'd report it as a bug via the Help > Report a Bug menu in Blender.

Seems like device driver issue, not a bug in Blender. Even if it was a bug in Blender, one could set up the device's driver to activate some keyboard combo that you normally don't use like Ctrl+Shift+Alt+] and then use a regular hotkey set to that in Blender.

True. That's why I wondered if it worked in 3.4.1.

@JohnEason I installed v3.4.1 and it does not work either. In the keymap preferences window, if I click on the "type of event" field, Blender says "press a key". I click my button and it recognize it as "NDOF Button 2". Hence the device driver is fine.

As I said you should report it as a bug.

source: Stack Exchange

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/

sort: votes


text:
Edit the resulting NURBS surface of a bevelling
These are the editing handles for a NURBS torus:

Let's say I want to create a "torus" on an arbitrary NURBS curve. I read I need to use the bevel feature:

(by the way, I was expecting a smaller extrusion, given the small circle)
If I edit the resulting solid, I get the UV editing handles of the path:

Instead, now I want to edit also the whole object, having the handles like the first torus above. I looked at the "convert" options, but I found nothing useful.
What I have to do in order to edit it as the resulting NURBS surface, without loosing the possibility to edit the initial curve?

https://blender.stackexchange.com/questions/58564/curve-bevel-function-scale

@DuarteFarrajotaRamos interesting, even it's not the same kind of manipulation I've in mind, actually

By the way, why in the examples the extruded shape maintains its size, while in my case doesn't?

My answer there is explaining all the reasons and methods to control the size of the extruded shape.

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
Strange shadows in 2.8 rendering with Eevee
When I render my image with Eevee, I have strange blocky, dotty shadows that appear in the image. If I zoom in very, very close in render preview they disappear. See below images for an example. Does anyone know what is going on here? Shall I report this bug to blender, or is this a modeling issue by me? (I'm brand new, hence the doughnut scene)

Zoomed in:

Super close:

I figured out the error. Having multiple light sources with contact shadows on appears to be the issue, I just toggled around until I had one primary light source with contact shadows on. Cross contacting generated these blips.

Very very interesting, thank you for sharing


text:
Where to set up in Blender if I want the rendered picture to be 300 PPI when view in PS?
If I want the picture I render to be 300 ppi when I open it in photoshop. How to set up in Blender?
Thank you very much for help.

I see. Actually there is no need to cauculate by myself. Photoshop will cauculate it for me. For example, I I want a 210297 mm A4 paper to be printed with 300 DPI. It will be 24803508 pixels. Then, when I'm going to render, I will set 2480*3508 in belder. Correct?


text:
Missing "Building Objects" addon in V2.79
I installed Blender V2.79 just a few weeks ago.  I cannot find "Building Objects" in the Add-ons.  Is there a way to fix this, such as downloading it?

Never heard of this addon before.
Apparently you can download it from this github repository though it hasn't been updated in a while.
There's no guarantee it will work under current versions of Blender.


text:
Shadow artifacts in Eevee

As visible in the image, the render is showing artifacts near close edges. Cycles is not showing any such problem.
Now, I am planning on adding a lightsabre in the scene and would like to render it in Eevee, for the Bloom. So, how to remove these artifacts?

In Render Properties, under Shadow, you can pump up Cube Size to attenuate those artifacts.
Also, those artifacts may appear in the Viewport, but be less visible while Rendered. This is beacause Viewport and Render don't necessarily have the same Sampling (in Render Properties / Sampling).


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

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

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

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

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

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

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

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

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

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

from mathutils.geometry import distance_point_to_plane as dp2p

TOL = 1e-4

context = bpy.context

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

bm = bmesh.from_edit_mesh(ob.data)

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

Doesn't matter really, but could you avoid the repeated mwi @  in the loop by defining the plane in World  Space, rather than in ob 's space, and comparing there, instead?

For sure, my usual MO is globals, changed my mind and went local (instead of converting norm to global) . Edited: Much cheaper to only make convert to local space matrix once per object.

@RobinBetts leads to a question on error aggregation on  multiple  bm.transform(mw) .... select ... bm.transform(mwi) on bound edit meshes,  Is a quick call. Have instead often made a copy of the bound edit mesh to transform and select back using indices of  original.

From what I have tested this works perfectly. Thank you so, so much! I did a little reading about float points, and you can not have "true" perfection in terms of a point lying perfectly planar to another point; there is always some sort of inherent inaccuracy, correct? That I assume is why there is a tolerance there. Anyway, thank you for this!

One way to do this would be via a vertex weight proximity technique.
Start by scaling plane up a billion-fold or whatever (about the median of its vertices would be fine), so that the face actually represents the plane, rather than the bounded plane (face.)  Then, give the cube a new vertex group and assign all verts to it.  Give the cube a vertex weight proximity modifier, targeting plane, referencing that vertex group, on geometry/face mode, with a highest of 0.0 and a lowest of 1E-31 (or whatever).  Apply the modifier, then run a weight paint/clean operation if needed.  Only verts that were within 1E-31 units of the plane remain assigned to that vertex group.
Clearly, with the x1 billion scale and the 1E-31 proximity modifier, this is valid only to a certain precision, but you can get any particular precision you'd like (and we're talking floating point values, so there's not really such thing as perfect precision anyways.)
I'm not sure that I understand your "even better" question, but if A, B and C are points on cube that you want to select on the basis of proximity to the triangular prism, I think you can see that you can use the same technique (obviously, don't scale the prism up a billion-fold.)
Not Python, but you indicated an openness to any technique, and of course all of the operations I mentioned should be perfectly scriptable.
Just to make sure you know, that the fact that a point exists on a plane does not mean that any faces that it is part of are co-planar with that plane.  A might be on the plane while B, C and D are not.
(And if you're curious, how I'd handle the linked problem is by running a shrinkwrap->outside followed a vertex weight prox.  I don't think it's the kind of answer the original asker was looking for, but it may be the kind of answer you're looking for.)

Hmm, I couldn't get that to work. I found some Python code that does almost exactly what I want, but it is a bounding box instead of just a line: https://blender.stackexchange.com/questions/75115/select-objects-in-a-specified-region-with-python
and
https://blender.stackexchange.com/questions/74162/selecting-vertices-within-a-box-defined-by-exact-coordinates


text:
How do you unwrap a tileable arch?
I'm having trouble with unwrapping and retopologizing this model here:

Here is my topology:

Is there a better way to topologize it? And how should I go about unwrapping this so that I can map a horizontal trim sheet to it and have it look nice? I got kind of close, but there's distortion and it just isn't right. I overlapped the two sides of the mesh into one set of UV as you can see here:

Any advice is welcome, except if you're going to say it's impossible. I won't accept that as an answer and I will hate you if you say that, and I will specifically try to find a solution just to spite you.

You could do the other way around: Enable the Correct Face Attributes option, then flatten the topology in the 3D view. As Gordon Brinkmann says, for the flattening, you can select the vertices bottom to top and use Active Element as pivot point, then S + axis + 0:

You can also cut with the Knife tool (K to activate, A to cut orthogonally since 3.0), then delete the left part:

For the flattening, why don't you select the vertices bottom to top and use Active Element as pivot point? That way you don't have to move it after flattening...

sure, I'm going to add that in my answer

I mean it's not less work or easier, it just helps keeping the position of that top vertex  ;)

yes I know...  ;)

Thank you, that did it. I made an arch the normal way and cut it like that like you showed. There's still a bit of distortion, but it's pretty small so I'm not sure that it matters.

you may be able to fix it if you move the UV vertices a bit

@GordonBrinkmann + moonboots .. Definitely the cut, not the scale, IMO, for good practice. There are all sorts of reasons you might want to preserve the direction of the radial edges, further down the line.

@RobinBetts For good practice, yes. I just wanted to say how the scaling could be done better if you use that method (and the cut method wasn't edited into the answer when I commented)


text:
How to compare a value and then return that value instead of 0 or 1?
I have this node setup here:

And for all values greater than .5, return that value down there. For all values less than .5, return those values up there. Instead, these nodes either output 0 or 1. Is there a way to output the input value instead?

You can use something base on this setup:

Each multiply node will return either 0 or the R value. Then if you add their results that gives you R back.
Or this one:

Get 0.5 if R is bigger else R. Or get 0.5 if R is smaller else R.

Thanks. Would something like this work too? https://imgur.com/OJNWJJ0

Yes that can give you a smooth comparison. Also you can have a look to smooth minimum or smooth maximum.


text:
can't see fire in render
I made a fire+smoke simulation as shown:
then when I render, it shows only the block of domain but I want to see fire in rendered view please help me how to fix it the screenshot of rendered view is:

does the domain object have a domain materiel ? if it does not (have a materiel) follow this tutorial https://youtu.be/u-zK7Bu8cAI.


text:
Can't see material on my object

As you can see I have applied these nodes to my object but the object has the same material as in the begining,but in a preview menu I can see the material applied,please someone help me,your suggestion and answer is highly appreciated.Thank you!!

Does it show correctly in Render View? You are in Texture view and the has some limitations.

Probably you added material in stack but didn't assign it to any faces (note that there are 2 materials on your object). Also node connected to Material Output might not be the final in the tree, thus Material shading will show you approximation for that one

Hi, can you provide the .blend file to take a look?

I think, mr Zak is right. Check this https://blender.stackexchange.com/questions/516/add-different-materials-to-different-parts-of-a-mesh/517#517


text:
I could not see compsiting,scene in blender

In the upper part as you can see there is no scene,default it has gone to 3

The top header I can see in your screenshot belongs to a second 3D view window. Turn it to an Info window ("i" icon) and you will find what you're looking for.


text:
can't see mesh in camera view
First I have a huge scene
Then I addea a camera and I chose that given view and pressed clt+Alt+numpad 0
then it shows like this
I tried increasing decreasing focal length,size of camera,shift+f to move my camera but nothing worked anyone got a idea??please share if you know,, your answer is highly apprecited

The Problem is that the camera is too far away for the default camera to see.
To fix this, change the clipping under the camera settings to something higher until you can see the object you are looking for. Depending on how far away the object is, you might have to set it quite high.

Just press the home button when you are in the camera view. No need to adjust clipping. At least that's how I solved it for myself after several unsuccessful searches.


text:
Problem reflection between the floor and the room
I don't understand why I have the red colour on the white wall. It seems to come from the floor, a red carpet. I would like to remove this colour and keep the wall white. Do you know how to do this?
I use Cycles, and put a denoise to remove the fireflyes.
I put the picture of the scene, and my shadering for both.

Room

Floor

Wall
Thanks for your help

Actually that's how it is in real life, here is a real photograph:

Light bounces off colored surfaces and the color gets spilled onto other surfaces. To get rid of it you can do one of two things, disadvantage is both are unrealistic:

Go to the Object Properties > Visibility > Ray Visibility and disable Diffuse and Glossy. This way the red color floor is not "visible" for the walls and they don't get red. Problem is, no light bounces off the floor onto the walls and they stay very dark.

Another option would be to create a material for the floor where you use a Mix RGB node to switch between white and red, and as a mix factor you take a Light Path node and use the Ray Depth output. This way only watching the floor directly shows the red color, the other objects "see" the white color. Advantage is, there is bounce light brightening the walls.

Thanks a lot
It works.

Your wall has the roughness less than 0.5 I guess that's why it is reflecting. Increase it, you'll get the desired result.

Even rough surfaces bounce off light, a bright saturated red will illuminate the walls with red even with a roughness of 1 and a specular value of 0.

You are right, that's why I said only to increase some roughness so that it would get the some realistic effect as light bounces from object to another object. Applying a Texture to the wall and then making the roughness a little high will make it look more natural, it will have little bit of red reflection as well.

I would suggest you try it for yourself. Since dielectric materials have a colorless reflection, actually increasing the roughness will increase the bounce of colored light instead of colorless reflection. So contrary to your guess decreasing the roughness would help more than increasing, but still won't "keep the wall white" as asked for in the question.

I see, thanks for the Info, since I'm still learning, this was quite helpful

Hey both,
Thanks for your help. I have tried to decrease and increase the roughness, the specular, ect,... nothing was working.


text:
Rotation and Translation with the mouse in 3D view stopped to work
I had Blender 2.9 and I noticed that I could not rotate and translate around the object with the middle mouse and the Shift + middle move shortcuts.
I installed Blender 3.2 but I still have the same problem. I have tried different solutions found online but nothing works.
I have tried on different Blender files, I still have the same problems and I use the default settings (no custom).
Do you know how to fix this?
Thanks for your help

Have you tried with another mouse? - That sounds like a hardware problem to me!

Hi John, thanks for your message.
I did and it works!
The trick is the thumbwheel of the mouse works for the zoom but the push button of the mouse does not work anymore. So I did not think about it.
Now it is solved. Thanks for your help

Glad to hear it! Something that you never expect to go wrong! :^)


text:
Colour problem: floor too dark
I changed my Blender version from 3.2 to 2.92 for a project.
When I rendered my scene in 3.2, I had no problems.
However in 2.92 I have that:

The floor is too dark. I'd like something a bit brighter.
My texturing node is:

Does someone know why the floor is so dark and how to fix that?
Thanks for your help.

hello, maybe share your file? https://blend-exchange.com/

I share the document at this address:

thanks but you first need to pack the images, maybe share just the floor

How I can send you the images?
With the previous link I can only share blender files (.bleng)

pack the images (File > External Data > Pack Resources) and use https://workupload.com

Thanks. You can download the images here https://workupload.com/archive/Tb67zEmt

I've downloaded 2.92 to test it but it makes it crash, I hope someone will tell

I am sorry to hear about that.
Thanks for your help.

I found the problem. It is on the normal map!
In the 3.2 version, I assume, the normal map and the deplacement map can be connected as shown in the following picture

However, this does not really work in the version 2.92, and makes the texture looking darkest.
The correct connexion is the one shown in the following image

Both connection set ups are wrong, but the first one more so. In it, there is a Normal vector being plugged into the height input of a Displacement, then that vector is plugged into the Normal input of the BSDF. Why is the displacement node even there? The second node tree fixes that, but both trees have image color being fed directly into a Normal Vector input, when they should be converted with a Normal Map node first. This answer is incorrect.

Even for the displacement map?
I found an the internet the same connect then on the second image.
Moreover, they are not image color, but normal and displacement maps.

What comes out of the node is a Color  value, wether it is meant to be used as a Normal  vector map or not. As mentioned, it needs to be converted with a Normal Map node, as is properly used for the material Normals in the second tree. Implicit conversion to a vector does not generate an error (Blender can do it), but it leaves the intended vector offset in all positive directions, and with improperly scaled strengths.

I got it. Thanks for the correction. I did not know that.


text:
How to set up natural lens distortion?
I want to introduce distortion into my render, but I would like to introduce "natural optical distortion", i.e. the distortion of the default lens.
Do you know how to do this in Blender?
Thanks for your help.

Have you tried the lens distortion node already: https://docs.blender.org/manual/en/latest/compositing/types/distort/lens_distortion.html ?

Thanks for your answer.
Yes I tried the lens distortion but it is not what I would like.
Thanks, brockmann, maybe this question can solve mine.

Yep, that's the more accurate way.


text:
How to create a Texture and mix nodes in the compositor with python
I would like to create a mix and texture node in the compositor with python.
Here is my code:
import bpy
import os

from bpy import context, data, ops

#*******************Texture*********************************
#Creation of a new texture
bpy.ops.texture.new()

#Give a name to the texture
bpy.data.textures["Noise"].name = "Noise"

#Define the type of texture, here noise
bpy.data.textures["Noise"].type = 'NOISE'

#*****************Compositing ******************************
#To have more light on the picture and something more realistic
bpy.context.scene.view_settings.view_transform = 'Standard'

#Switch on nodes and get reference
bpy.context.scene.use_nodes = True
tree       = bpy.context.scene.node_tree

#Clear default node
for node in tree.nodes:
    tree.nodes.remove(node)

#Creation of the input, where the image is loading
image_node          = tree.nodes.new(type='CompositorNodeImage') #  Create a new image node
image_node.location = 0,0

#Create mix node
mix_node = tree.nodes.new(type='ShaderNodeGroup')
mix_node.location = 0,0

#Create texture node
texture_node            = tree.nodes.new('ShaderNodeTexImage')
texture_node.location   = 0,100
texture_node.texture    = bpy.data.textures["Noise"]

#Creation of the final node (Compose = storage of the final result)
comp_node          = tree.nodes.new('CompositorNodeComposite')
comp_node.location = 400,0

path  = 'D:/Documents/Cours/PhD/2A/Validation Blender model/Behave as the reality/Same model Simulation and Reality/Triangle pattern/3.5m/'

image_name = 'image name'
img_path   = path + image_name

#Loading the image
img = bpy.data.images.load(img_path, check_existing=True)

#The image is put as the input of the node
image_node.image = img

#*****************Link nodes***************************
links = tree.links
#links.new(image_node.outputs[0], comp_node.inputs[0])
links.new(image_node.outputs[0], mix_node.inputs[1])
links.new(texture_node.outputs[1], mix_node.inputs[2])
links.new(mix_nodel.outputs[0], comp_node.inputs[0])

When I run my script I have on error on the creation of the mix and texture node.
I check on the internet, and I found nothing.
How can I fix that.
PS: I did not put the picture I am using. You can use one of yours.

You use 'ShaderNodeGroup' for creating mix while it should be 'CompositorNodeMixRGB'. And the same is with Texture, it should be 'CompositorNodeImage' if you need an Image Texture or 'CompositorNodeTexture' if you need a noise texture. You can find out proper names with Python Console autocomplete, they are detemined in .bl_idname attribute of each node.

It works.
Thanks a lot


text:
How to choose the correct number of bounces in the light paths for photorealism?
I would like to know how the max bounce works in the scene settings, and how to set the values of the different parameters (diffuse, brightness, transparency, transmission, and volume) for photorealistic applications.

There is a Full GI preset (accessible via light paths panel), https://blender.stackexchange.com/questions/76878/what-values-should-i-use-for-light-paths

Yes, thanks a lot
Sorry I did not find this post

Glad I could help @Noella


text:
Blender render compositional framing different from viewport camera view

Hi There, I'm trying to render out from a scene which has only one camera (the default one).  The render output is giving me an entirely different viewing angle from the camera view in viewport. This isn't a clipping issue - if you move the camera (locked to view) you can see the rooftop geo of the buildings to show it's in the correct place.
The viewport is showing camera view (button zero on numpad), with the passepartout - I've edited this to show a direct comparison below.
There is only one camera in the scene, and this is highlighted in the outliner and zero (Ctrl + Zero too) in the viewport.
Really, quite confused on this - so any help would be much appreciated!

Not for sure this is your issue, but a common mistake is to assume that since you happen to have only one camera in your scene, you can take it as given that you're always looking through a renderable camera any time you're looking at something in the 3D View. That's not the case. There's the view of your currently active camera, which will be the one that renders, and then there is your current POV in the 3D view, which may or may not correspond to the POV of the active camera at any given moment. What you always see in your outputted renders is the view of the active camera.

@R-800 Thanks for answering.  How can you tell if the view in 3D view is the view of your currently active camera? I'm using the zero command to navigate between camera perspective view and user perspective, yet the rendered result is way different, almost as if the Camera were positioned much lower in the scene.

Typically, you'll see a big yellow rectangular frame in view around your scene when you're seeing things through a camera. If you don't see that, you're likely only looking through the 3D view POV, but not through a camera. You can force the currently active camera to take on the same POV as the current 3D view by pressing Ctrl+Alt+Numpad 0.

@R-800 in that case I definitely am looking through a camera.  It's bizarre, no matter where I move the camera in the scene, the render is always at a point lower than where it's set in Viewport.
I've tried the timeline to see if there was a keyframe, but there doesn't appear to be.  It seems like the render is offset from the viewport...

Howabout you share your file? https://blend-exchange.com/

@R-800 - thanks for taking the time to answer my questions.  I worked out what it was..  one of the displacements on the model was set to render off!  Phew!  Thanks for your help!


text:
Prevent flip fluids simulation from generating random flying particles
I feel a little bit stuck on my personal project and thought that it might be helpful to ask for help here.
The thing is, I desire to make flip fluids sim flowing out of skulls eyes straight down(similar to how any liquid falls down in real life), but I just can not figure out how to force it to fall down, for some reason simulation is random and liquid is just flying out of skull's eyes instead of flowing down(check pick)...is it because of scale/world settings or must I work with force fields? Any advise?
I will attach blend file just in case anybody feels like educating me.
Thanks in advance <3
link to blender file download

If you select your domain object and checkout the physics properties under "enable surface tension" you will find:

If you hover your cursor over the question mark you will get:

so it should be clear what to do:
either uncheck surface tension...or decrease tension...or increase number of allowed max frame substeps.

I am blind. Thank you for healing my eyesight, kind man)


text:
How to sculpt and move that figure around
I am kind of new to blender and am just getting use to making things that remain in one position. This question might not make sense but I was wondering if there was anyway, once you've finished modeling say a human body could you put it in a different position, (say in a bath tub with legs up on tub) without sculpting a different thing. Like could I grab parts of my first model whos just standing straight and put them in different positions without messing up the whole mesh? Every time I try and move a body part the whole thing gets messed up. I hope that makes sense... thanks!!!

This is done by constructing an armature of bones and rigging the model to the armature, then you move the bones around to move the model.  (I'll let somebody with more experience in the process give a full answer.)

In Sculpt Mode there's a relatively recent addition called the Pose Brush.  It attempts to move parts of your model as though you had rigged it with a skeleton.

I don't have the pose brush, do I have to download a new version of blender? or can I just add it from the settings in the version I have now??

@Clowncar416 It was added in 2.83 it looks like - https://youtu.be/OrhfjhdlRUc

I don't think you have to do a face set setup to use the pose brush I was just trying to find what version it was added in

Okay thank you so much for your help!! :)


text:
High poly mesh too high
I'm new to blender so I'm very confused and don't really have a work flow yet. I blindly sculpted a model and now the poly's are too high to texture paint or vertex paint it. I know I have to like retopologize it or UV unwrapp it, but I'm super new at this and am just confused on what to do next and how to go about it. Could anyone give me some insight on the steps I should be taking after building a high poly mesh and not wanting to lose detail? (3,314,926 verts) Thanks!!!

Hello :). I don't sculpt, but Blender has some rather powerful remeshing tools. Might be worth looking into...

What kind of model is it? Humanoid? A common workflow is to sculpt a high poly version, then do retopo or reshape a low-poly base mesh to create a low-poly version, (optional: add multres modifier and add more details), finally bake the normal map to get the details on the low-poly model. Have a look at the sculpting an old man in blender series.

Maybe you can try to use the "Decimate" modifier.
It will try to reduce the number of poly but keeping the global geometry of your mesh.
You can also search for some retopology workflow, or some addon.
And last, you can try to use some other tool for Blender like Instant Mesh
https://github.com/wjakob/instant-meshes

With the release of Blender 4.0, there are some methods for decreasing your poly-count.

When you get to the Sculpting menu, go to 'Remesh'. If you remesh at a low amount, then your model will increase in polys. But at a higher amount, the polys will decrease.

Repeat the steps above, but when you've remeshed (make sure Fix Poles is enabled for this method!), go into the Data menu on the right and open the Remesh menu there. Make sure Quad Mode is picked and you can freely tweak the parameters once opened.

As mentioned by B.Pader, you can use addons and help make your retoplogy easier.

Although, here's some advice that I believe will bode well with you in the future. Quads are your best friend in modelling, especially if low-poly and high-poly workflows are established in your pipeline. I believe Option 2 is a very ideal method of retoplogy in my opinion.
Wishing you the best of luck on your journey!


text:
Freestyle "Material Boundary" not working?

I am trying to add an outline around this geometry, that is overlapping a plane. This is not the result I was hoping for. I thought the checkbox "Material Boundary" would solve my problem but it doesn´t really seem to do anything. Please help D: (using the newest version of blender)

This is not an error. Unfortunately, freestyle cannot detect face intersections, even if they have different materials. You can use inset face or a loop cut and slide to try and put an edge there for freestyle to use, but unless there is an edge there or an outline, there will be no freestyle.


text:
Scaling one object to the exact size of another
I would like the pink object(high poly mesh) to have the same, scale, size, and location as the green object (low poly mesh) in the pic below this so I can bake the high poly mesh to the low poly one.
How can I do it pls?

To use the same size use Dimension values seen in Side panel. To match Scale than Apply Scale for both. To match Location you would have to move Origin of both objects at the same place in edit mode, like Snap Origin to a Vertex, or try "Origin to Geometry" there is a chance it will match for lowres-hires.

Very easy:
Select the object you want to adjust the scale (rotation,position the same way)
Shiftclick then the object of which you want the scaling to be transfered. then go to the item-tab, right-click on scale and choose "copy all to selected" to transfer x-y-z-scaling or "copy single to selected" to transfer the scaling of the direction your mousecursor was hovering.

This also works in several other input areas of blender!


text:
Modeling Lines still rendered issue
I do not know why the modeling lines of this ship turret I am working upon are still visible when I render them.   Can someone why and how to remove them from render?   The rest of the ship as you can see is fine.  Thanks

first of all, you are in render preview, not in actual render and I am sure there won't be visible in final render... secondly you are probably making those parts with some addon? Is it using modifiers? Can you share more information about that object? It also may be object properties

Go to your object, navigate to Object Properties (orange square) and check this option:

Is wireframe active? If yes, deactivate it, problem solved

Wireframe was active.  I removed it and the lines went off.  Thanks.  I am plating the turret with a plates generator addon which had wireframe display on.

great, it is a good thing for things like that when you can see those lines always visible, some people prefer it this way

@ronin074 As MikoCG said in the question's comment, this is only a render preview, which is why there are also overlays shown like you can see the grid and the 3d cursor and things like cameras and lights. If you turn off overlays in render preview, these will all be invisible - and the wireframe as well.


text:
Modeling a sword handle - Problem smoothing it out
I am currently trying my first steps at modeling and currently trying out a sword.  I progressed well so far by modeling the blade and good part of the crossguard.  I decided to model half of the handle to have a good idea of the proportions I want.
Here is the work so far.

I am quite satisfied with the bottom part where the handle connects with the crossguard.  However, I would like the upper part to finish in a circle as the reference.  I still have not added no bevel, multiresolution or subdivision modifiers in these pics.  Nor any object shade smooth.
I have already experimented with the above modifiers but the results did not change nearly anything of the model.  No modifier seems to have an effect.  Why is this so and what can I do to smoot up the upper part of the handle?

Did you try Smooth modifier?

A smooth and subdivision modifier finally gave me the result I wanted. I also added a top ring to give it a more rounded look by adding a circle mesh to which I added a skin modifier and a smooth modifier. What do you think now? Thanks again to everyone. Learned a bit more once more :)

You can use to sphere operation to make your selection in to sphere.

Once you start the operator, drag your mouse left and right to change the intensity.

It seems that Blender really can do anything... Didn't know about this, thanks.

@JachymMichal Nahh.... Recommend to see Houdini FX newest feature promotion video. That's - not gonna to happen in Blender for decade. But it is a little bit too complicate for sure. Keep it up, Blender!


text:
Rotating blender texture
So I wanted to make a circle with lines on it like this, going this way.

But when I set up my nodes (like this),

the lines looked like this

I want to find out how to rotate the image but it is using blender's "wave texture node" And I can't seem to find out how to do that.
How do I rotate it?

Before your Wave node, put in a Texture Coordinate node (using generate) and this goes into a Mapping node. You can then modify the rotation (depends on your orientation) but here is my setup with a before shot and after shot
Before:

After:

Oh duh. I tried all that but I did it AFTER the wave texture. Thanks a tone.

Note that you have to apply the object's rotation if you modified it in object mode with CTRL + A or else the mapping node rotations may be inverted


text:
Key for remove doubles
Every time I remove doubles, I go space bar, remove doubles, and press enter. What is the "legit" way of doing this? Is there a faster short cut key? If not its fine.

Hello :). Since 2.8 it's ALT+M and by Distance

Since 2.8 it's named Merge by Distance.
Mesh > Clean Up > Merge by Distance
Shortcut: Alt + M > By Distance


text:
How to get to material nodes 2.8
I Am looking for where to edit my material nodes but I can only find the render nodes. I have been looking for quite some time now. I cant find the material node editor.
This is 2.8
Help?

It's now called Shader Editor, is it what you're looking for?

Oh duh. THank you!

In Blender 2.8x you have the option to switch between workspaces for particular tasks. Blender already includes one for creating materials and it is called Shading. The workspaces are listed as tabs in the top bar.

The benefit of using/creating workspaces is that you don't have to change the layout, create areas or switch editor types for a particular step of your workflow. Instead you can simply switch to a different workspace that is already prepared for the task.
You can of course still change the editor type like in Blender 2.79 and earlier. The editor for materials is the Shader Editor.

Thank you thank you!


text:
Blender grease pencil rendering a vector image
Now, I guess I have never tried it but, is it possible to draw an image with the grease pencil and export it as a vector image? I have seen people do the same thing except they put like an SVG (or something vector format) into blender and then there is a grease pencil layer with the image there now.
can you export a grease pencil image into a vector image file?


text:
Python command for selecting bone groups
So I wanted to create a python script to make my animation workflow quicker. So I made a script and it works great. But then I thought about making a pop-up menu for it. I found a tutorial online that showed me how to do it but in his example, he used the command:   layout.operator("mesh.primitive_cube_add")
I tried it out and it worked fine. But I don't want to use the add cube command in my script. Instead, I want to change the active bone group on my armature object but I can't find the command for doing so.
How would I find that command? I tried looking in the info window, but the command that shows up there results in a bunch of errors.

Convert your script to an operator (see examples in text editor python templates) give it a bl_idname and Bob's your uncle.

What do you mean "Bob's your uncle"?

https://en.wikipedia.org/wiki/Bob%27s_your_uncle


text:
How do i start the rigid body dynamic in the keyframe i want?
I’ve been trying to animate a blowing skull, but, when i try to add the active rigid body dynamic, it stars from keyframe 1, when what i want is to start it in the keyframe 267.

Rigid Body Physics activating Later?

Go to frame 266.  Select your rigid body.  In properties/rigid body/physics/settings, check Animated and keyframe it.  Go to frame 267.  Uncheck Animated and keyframe it.


text:
Edit Many Materials at Once [Insert a Group in all materials node chain]
The Situation:
I'm creating a flying photo effect of hundreds of photos, using a particle system.
I've created a custom group that includes lowering transparency based on camera distance, so as you fly through the photos they'll disappear the closer you get so you won't fly through an opaque one resulting in a one frame pop as you fly through it.
The Problem:
I have hundreds of photo's that each have their own materials (imported with 'Images As Planes' add on).
I need to insert this camera-distance-transparency group into every photo's material node set up (pictured below).
Question:
Is there any easy way to do this rather than manually adding this group to hundreds of shaders one at a time? I'm relatively new to Blender so I can't figure out a workaround. I'd think there could be a way to create a 'for loop' script possibly, but I'm not knowledgable enough to be able to create that.
The circled group in this screenshot is what I'm trying to insert:

Thanks for the help!

All somewhat related https://blender.stackexchange.com/questions/133779/find-any-node-connected-to-a-materials-displacement-input-and-replace-it-with-a   https://blender.stackexchange.com/questions/145882/blender-scripting-connect-nodes  https://blender.stackexchange.com/questions/133779/find-any-node-connected-to-a-materials-displacement-input-and-replace-it-with-a

To clarify you wish to add the group node in the link between BSDF output and Material Out input?

Look for Links.
Requested clarification, am making same assumption that you're after adding your group node between BSDF and Material Output.
Similarly to Look for Links method from this answer.  The concept is to look for a certain link in all materials and, if it exists poke a group node inbetween.
Edit To reflect your Node Group

Name of Node Group (groupname)
Name or Index of Input Socket (in_socket)
Name or Index of Output Socket (out_socket)

If there is no node group with groupname as name, do nothing print message.
Look for all node materials links (links) between BSDF  and into Material Outputs "Surface" socket.  Looking at the node type avoids error if the node has been renamed.
If there are links then add a new group node and plug the bsdf out into designated in socket and out socket into material output surface socket. (Need a drink)
Shift the  material output by 120% of group node width, and put groupnode where output node was.
Test script, as always back up first.
from bpy import data

# details of groupnode.
groupname = "NodeGroup"
# sockets to link by name or by index
in_socket = "Shader"
out_socket = 0

# get the group node
group = data.node_groups.get(groupname)

if group:
    # find all the links to poke groupnode into
    links = [
            (mat.node_tree, link)
            for mat in data.materials
            if mat.use_nodes and not mat.is_grease_pencil
            for link in mat.node_tree.links
            if link.to_node.type.startswith('OUTPUT_MATERIAL')
            and link.to_socket.name.startswith("Surface")
            and link.from_node.type.startswith('BSDF_PRINCIPLED')
            ]
    while links:
        nt, link = links.pop()
        # make a groupnode assign it group.
        gn = nt.nodes.new('ShaderNodeGroup')
        gn.node_tree = group
        # put group node at location of output node
        # and move output to accomodate.
        gn.location = link.to_node.location
        link.to_node.location.x += 1.2 * gn.width

        # the sockets
        group_in = gn.inputs[in_socket]
        group_out = gn.outputs[out_socket]
        # make new links
        nt.links.new(link.from_socket, group_in)
        nt.links.new(group_out, link.to_socket)
else:
    print(f"No groupnode named {groupname}")

Assuming you want to add your node group between Material Output node and Principled BSDF node, here's the script.
Also if you want to learn more about nodes with python look here : https://blender.stackexchange.com/a/23446/115433
import bpy

#group = bpy.data.node_groups['your_node_group_name']
group = bpy.data.node_groups['1CameraBasedTransparency']

#get all non grease pencil materials
materials = [mat for mat in bpy.data.materials if mat.use_nodes and not mat.is_grease_pencil]
for mat in materials: #iterate over materials
    node_tree = mat.node_tree #get node-tree of material

    output_node = node_tree.nodes['Material Output'] #get output node of material
    principled_node = node_tree.nodes['Principled BSDF'] #get Principled node of material

    #add a group node in material
    group_node = node_tree.nodes.new('ShaderNodeGroup')
    group_node.node_tree = group

    #link it to Principled node
    node_tree.links.new(principled_node.outputs[0],group_node.inputs[0])
    #link it to output node
    node_tree.links.new(group_node.outputs[0],output_node.inputs[0])

That'll do it. Would also add mat.use_nodes test when making materials list.

added mat.use_nodes

@PavanBhadaja that's amazing, thank you, that was fast and exactly what I was looking for!


text:
How to exaggerate solid surface texture
I’m trying to take a model of the moon like the kind on thingiverse and make all the details of the surface more pronounced. Like make the craters deeper and the ridges higher without really changing the scale of the object whole. The moon is an imported .obj file and I’ve tried the displace modifier but it doesn’t seem to work that way.

Is the existing texture in the geometry, or is it provided by a height/displacement map?

Hi, the texture already exists in the geometry.


text:
How do I create only one of multiple new face outcomes?
I have a shape within another shape and I want to make the space between them into a new face.

I want to fill in the frame but not the actual 4 tiny squares inside.
I have tried selecting all and creating a new face but I can't seem to get that specific face. Help

You can't fill it, because it's not a face.

It seems that there is no easy way to do this automatically in your case.
You can create faces between edges manually by selecting the edges where you want the face to be, and pressing F.

Create the inner faces: Select neighboring edges, and press F

Repeat this for other faces to make the inner cross:

To avoid creating non-quad geometry, we need to subdivide the outer ring to match the edge count of the inner ring. Select the outer edges (you can loop-select by using Alt+ Click), And subdivide them with 2 cuts:

Now we have the same number of edges inside as outside (3 for each side). You can continue this process, making faces where needed, to fill the remaining geometry.
You can also use the Bridge Edge Loops command to fill multiple faces at once.
Alternative Method
There is a much simpler way to create the window-like geometry you want:

Create plane
Subdivide for 2x2 grid
Set the Transform Pivot Point to "Individual origins"

Select all faces; Extrude Individual Faces; Esc to avoid offsetting

Scale (S) the 4 faces to make them smaller:

(This will scale them individually because of step 3)

Delete the unnecessary faces!

Do as the image below shows and fill the inside and the outside.


text:
Scaling Mesh and Amature Together [ShapeKeys]
is there a way to use a ShapeKey on Amature ?
I want to do a Character Creator in Unity.
So I create different ShapeKeys and then adjust them via Script in Unity.
But...
I want to have the modified Mesh to have the correct Armature attached to it, so I can make the basic Animation for each Character-Gender (Male, Female).
I'm relative new to Blender, but I can do some stuff, consider me an Amateur.
Help would be nice :)

While solutions to this are possible, they involve constraints-- which Unity won't read.  Anything you want to do, you'll need to implement in Unity, and the Blender stuff won't matter at all.  To my knowledge, Unity supports bone scaling (incl. non-uniform scaling) just fine, so you should be looking implementing your character creator by modifying the bones' scales rather than via shapekeys.  But know that animation designed for one set of proportions is not necessarily good animation when applied to a different set of proportions.

So rather than creating the Amature in Blender, create it in Unity itself and do the Model itself in Blender ?
I might misunterstood something or was unclear, I use ShapeKeys to define for example the Face of my Model with some kind of old Age.

Create the armature in Blender.  But scale (and or move, rotate) the bones in Unity.  You'll essentially have a "character creator pose" to combine (via matrix multiplication) with your animations.  Combine with shapekeys as needed for deformations that can't be represented by your armature, deformations that don't require any adjustment to the positions of bones.


text:
UV's not on top of texture in UV Editor - How to repeat texture?
I would like to change a UV map of a model. The problem is that only the texture of the head is on top of the texture. Is there a way to repeat the texture so that I can work on other parts as well?

Set Mapping to repeat

Sure, just go to: Sidebar > View > Repeat Image

Thanks so much! I tried to find such an option several times, but I was never able to find it.

wow didn't even know this option, thanks

@moonboots It's weirdly satisfying to know something about Blender you didn't :). Made my day.

well I think you over estimate me a lot, so many things I don't know  :((  but yes this one was basic


text:
Enable/disable Force Field function of keyframe
So I have a simulation where I want some force fields to be working from frame X to frame Y, with the rest of the frames performing other types of simulations... is there a way to achieve this, including via python scripting?
Thanks!

if you are in blender 2.8, you can click the small circle next to the settings you are trying to animate (frame X), which will make it go brown, then go to frame Y and change the value and then click the diamond shape to lock the setting


text:
Dynamic CollectionProperty In Blender
With the given sample of CollectionProperty from blender API page, we can have a collection of SceneSettingItem which stores a 'name' in StringProperty and a 'value' in IntProperty.
import bpy
class SceneSettingItem(bpy.types.PropertyGroup):
    name: bpy.props.StringProperty(name="Test Property", default="Unknown")
    value: bpy.props.IntProperty(name="Test Property", default=22)
bpy.utils.register_class(SceneSettingItem)
bpy.types.Scene.my_settings = bpy.props.CollectionProperty(type=SceneSettingItem)
my_item = bpy.context.scene.my_settings.add()
my_item.name = "Spam"
my_item.value = 1000
# ....
for my_item in bpy.context.scene.my_settings:
    print(my_item.name, my_item.value)

But Can we make it 'dynamic', so we can store something other than IntProperty in 'value', for example 'BoolProperty', is that possible in Blender Python?
To be more clear, I wish to store a Collection in material object, and every entry has a name, type and a value, the type of value can be IntProperty, BoolProperty or FloatProperty, and every material object holds different Collection Entries.

I don't think this is possible (though I would love to be corrected). The (messy) solution I have used in the past is to add separate properties for each type (StringProperty, IntProperty etc.) and then have another StringProperty, called property_type, which tells me which property to access. E.g. property_type might be "string" so I access the StringProperty or property_type might be "int" so I access the IntProperty.

Yes, you are right. The solution I'm currently using is generating a specific setting class for different 'config' dynamically. It solved my problem almost perfectly.

If you have a solution, you should add it in the answer box below so other people can benefit from it.


text:
Editing issues after knife project
After knife projecting, and heading back into edit mode, I find that all the vertices are invisible, and I get a very peculiar way of moving/editing things which is highly inconvienient.
Here is an example of what happens https://gyazo.com/02085eed7b7fc3adfe1b1ec81ab3244a
Usually I have simply copy and pasted everything onto a new blender file and this has fixed it, however on bigger projects that I am now undertaking it has become highly troublesome to copy and paste many objects and parts without worrying that I've forgotten something, and really it's just become a hassle.
If any of you could help with this it'd be fantastic.
Thanks

Knife Project tool automatically switches to Edge select mode.
To switch back to Vertex select, use the icons on top left.
Shortcut: 1

Thanks!! This worked.

Happy to help :). Good luck with your project.

Press 1 (not in the numpad)
At some point you pressed 2.
1, 2, 3 change the way you see and act on the mesh
1 = vertices
2 = edges
3 = faces

Thanks a bunch Daniele


text:
How to create a technical texture?
I recently modelled a music mixing panel (the one in the reference picture below). But now my work in Blender (modelling, unwrapping, shading,...) is done and I need to create the textures (such as the indicators for volume and labels for buttons). I don't have any paid software like Photoshop, but I use GIMP instead. however these kind of drawings seem to be a problem in GIMP (like drawing a line and duplicating it multiple times like the array modifier would do in Blender).
Are there any free programs that make this job easier? I was thinking of using paint or google drawings if I don't find any other software, but that would really be a pain to get it all right. If it is possible in GIMP than also please let me now how...

Looks like the job for a vector illustration application like Inkscape. You could export as a large texture or import the SVG vector file directly into Blender. You can also model those directly in blender as a mix of text objects a bezier curves, if you don't need to export a textured model

Thanks! I'll look into inkscape. But how would I do it directly in Blender?

It looks mostly like white text over a background, so use text objects with a very small bevel factor, or slight extrude. Use bezier curves for non text elements


text:
Should I care about topology after applying booleans?
Should I care about the topology of an abject to which I have applied a lot of booleans? In my case I am not planning on doing any transformations on the face with the messy topology (see picture below). It's basically finished. Do I or do I not have to redo the topology and why?

If the object isn't going to be animated and the topology doesn't cause any problems elsewhere (e.g. because hard edges are used and bad topology becomes apparent), then you don't have to.
If you'd like to retopo a static object, but don't like to spend a lot of time on it, I'd suggest taking a look at Instant Meshes an open-source tool for automatic retopo operations.


text:
How to change object color in viewport in 2.8?
Is it possible in Blender 2.80 to change the color of objects in the viewport? Like this in the previous versions.

The setting is still in the same place.

Thanks! I was looking at the wrong viewport display menu... (the one in the object menu)

@wohe1 No problem. Please mark the answer as accepted if it solved your problem.

I will in one minute :) (for some reason it can't be marked as solved immediately)

@wohe1 Thank you!

For anyone not wanting to view the video (or are also satellite internet users like myself) the step by step solution is thus:

Select the object
Select the Materials tab in the bottom-right menu
Create a new material
Scroll down and you'll see a bunch of collapsed menus
Expand / Uncollapse the menu titled "Viewport Display"
Adjust the settings in here to your heart's content (:

And yes, these do persist through both edit and object modes.
Edit: Ah satellite internet.. the picture just loaded in. My apologies, it's likely that anyone could have figured this step by step process out via the image. I had to sort it out via zoom and enhance 8 bit rendition of a 144p video x.x I swear there's a special version of 144p meant for people with extra low bitrate.

There's another way to do this without committing to making a material (in case you already have some).
Go to Object Properties > Viewport Display and pick a colour.

Then click the little dropdown arrow next to your viewport render settings and under Color, click Object. This will force your viewport to color objects the way you want rather than what their material says.


text:
How to change mesh to Flat or Smooth shading while in sculpt mode?
I am learning sculpt mode and the best way to see the results is by switching from flat to smooth shading in object mode, but the best way to see geometry of what i am doing is best viewed with flat shading. Is there a hot key to toggle flat or smooth shading without having to switch from object to sculpt mode each time?

Only way I know is press your space bar and look for flat and click on shade flat while in sculpt mode. Do the same for switching to smooth.
Hope this helps :)

What if you set spacebar to "play animation". How to get in the menu you're talking about then?

@ChristophWerner Go to edit > preferences > keymap > click "Name" and search for "search" (without quotations) to find the hotkey for your search menu. Here's a screenshot of what that looks like: https://imgur.com/a/iEbikqZ

OK. You mean I have to use the search menu, that is found on the F3 key to search for the "flat" function in sculpting mode? I thought there's a tools menu for sculpting which appears, when pressing a key.

Using the shift key will cause some sculpt brushes to smooth.

This does not answer the question. The question is about shading not about sculpting brushes.


text:
Why my flags "unpin" from the model after 250 frame?
https://www.youtube.com/watch?v=rza8Q04bUxc&feature=youtu.be
Here's my animation, I could pin down that this behaviour starts at 250 frame, whereas full animation lasts 1000 frames. What's the cause of it, how can i fix it?

Check cloth physics Cache. Default setting is a range of frames 1-250. Set it up to 1000


text:
How to get reflections from video
I’m making a car and compositing it onto a scene, how do I get accurate reflections of trees and stuff on the car if the trees are on the video?

using cycles render engine ->
Set up the mirror object. GO to material-> Select a Glossy Shader
using internal render engine->
simply use the mirror option in materials


text:
python 3.6 on blender 2.8
Is it possible to have python 3.6 on blender 2.8 version. I am working on project and want to use blender with external modules but those module are not supported by  python 3.7 yet.

Did you find out if it is possible?


text:
Constraints- My circle is not following the selected path in my follow path constraint
I am trying to make the circle follow the brazier curve path with a follow path constraint but it is only the blue line that is following it.
What am I doing wrong?  Saw lots of tutorials but still, my circle is not following the path.

Thanks, for the help.

If you change your Forward axis (to 'X') it should work.  Have your Forward and Up axis be perpendicular, never the same.   X/Z, Z/X, etc...
Example:


text:
Modeling and Sculpting a Crown
I am progressing on my first Blender sculpt.  I am currently modeling a crown for a statue of a king lying on a marble slab.  Sculpting has progressed well so far as long as it consisted of a subdivided spheres.
For the crown, I decided to try modelling.  I used a cylinder and I am modeling it for the first time. I would like;
1st; to extrude 2 small points upwards at the side of the crown.  I extruded the vertices which I then connected.  How can I then add faces to the joined vertices? Or is there a better way to produce the wanted points?  the point you see in the photo was obtained withe the smoothing tool.

2nd; I would eventually like to sculpt some engravings in the crown.  To do this I added a multiresolution modifier in the layout, in the hopes of adding enough subdivisions to be able to sculpt but the result with the draw brush in sculpting mode is terrible and worst when I put dyntopo on.

multiresolution modifier applied.

Normal draw brush applied.

dyntopo draw brush applied
Thanks in advance for all the help you can give me.

Your first question is not very clear, maybe show a picture of the kind of crown you want to create. If you want to fill a face, select the 4 vertices you want and press F. But instead of extruding 4 distinct vertices, select a top face and extrude it with E then scale down. You can simultaneously extrude several faces as individual faces with alt E, then scale them down with the Pivot Point set to Individual Origin.
For the second question: You can either model or sculpt your ornement. If you choose to sculpt it, the best thing is to keep a low-version of you crown, and once you're good with the sculpted high version, you bake its normals and use the normal map you get to fake 3D on the low-poly. To sculpt I guess you can do it 2 ways: either with the Multiresolution modifier or with Dyntopo. Here is a comparison that might help: sculpting - Everything is edgy and sharp, but I want it smooth

Thanks very much for the Help.  Extruding the faces and rescaling them did the job I wanted.   I set myself a goal to try to model the crown out instead of sculpting it since I want to learn modelling as well.  I then added a couple of subdivisions and flood filled in the resolution I wanted for the engraving part and obtained what I wanted.   THANKS again for the help.

Extruding the faces and rescaling them did the job I wanted. I set myself a goal to try to model the crown out instead of sculpting it since I want to learn modelling as well.


text:
Obtaining a smooth result after modelling
Why is this difference is happening after I tried to Shade smooth this sword crossguard?  One side is smooth and the other on not.
As you can see I only applied a mirror modifier so far to model the other side of the crossguard.

This is a wireframe of the model.

You might have flipped normals on some of the faces.
Select all faces and hit CTRL+N to make the normals consistent.
Also, make sure to check the mesh for disconnected geometry; select the object in Edit mode and click Mesh > Clean up > Merge by Distance. Find a value where the geometry of your model isn't affected negatively. If any vertices are removed you'll see this in the viewport toolbar.

Thanks, I used SHIFT-N instead of Control-N.  And all geometry fixed up.  Control-n only opened a new file. Just for others to know.


text:
Adding an bump node to an emission / image texture
I would like to add a bit of height (bump) to the moon texture here but since I am no node expert all my attempts failed.
Is there a way to add a bump node to the image texture in order to make the moon texture more visible?
Thanks for the help.

technically, you can use Principled BSDF instead of that mix shader and connect all into it with bump node connected to normal

it's not clear what you are trying to do with your node setup, how does your image texture look like?

I'm not 100% sure this is what you're going for, but this is how I would go about setting up something like that. The image must enter the Bump node in non-color space (hence the convert to B&W), and the BaseColor should run through a Diffuse shader which will allow a Normal input (unless you're going for something specific like "toon" or "unshaded"). I also recommend using a Fresnel as a Mix Factor between the emission and the Diffuse, if you want the emission to be part of a "glowy atmosphere" effect (note that I lowered the IOR to 1.05 to achieve this effect).

Another alternative is to use Displacement (though I still recommend the Fresnel). Keep the scale below 0.2 0r 0.1 for the best effect, but you might find even smaller (0.05) works even better:

You could try something like this

Some Texture node -> Connect to Bump node as height -> Connect to normal Map node as height -> Connect to Principled BSDF as normal.

A Bump node output should not be connected to a Normal Map node and a Normal Map node does not have a "height" input. This answer seems confused.

As it’s currently written, your answer is unclear. Please [edit] to add additional details that will help others understand how this addresses the question asked. You can find more information on how to write good answers in the help center.


text:
Animation using Child of Constraint - cannot move the object from original place
This one is hard to explain.
I have worked hard to produce the animation you see below.
My plan was to have the missile launcher animated and packed in the box where finally I could just grab the box and add it to the moving ship.
All works fine when the object stays in its original place but if I move it, some objects (which I used child of constraint modifiers on) stay in their original position ruining the animation. This I know why since I applied the visual data.
Please check this 25 s video to have a clear picture.
enter link description here
I used child of constraint on objects which had to detach from the main object so that I could keyframe the detachment.
I could not find any other way to do so with parenting.
However, I failed, when the object is moved or moving, since I intended for this to be a missile launcher on board a moving ship.
Is there any way I could produce this animation - Maybe with, parenting, baking, or another form of constraint?
If anyone knows of a good tutorial I would be very grateful.

it should work with a simple parent hierarchy, you could also create bones, maybe share your file so that we can test?

Parent hierarchy did not work because I could not keyframe when I wanted the missiles to leave the launchers or the loaders to leave the missile launcher.

maybe check for the Dynamic Parent addon

I had already hear of it.  I will give it a try even if it probably means that I will have to restart from scratch.

Can't say why you're having problems without the file.  As with moonboots, I'd use simple parenting.  To "turn off" the parenting, I'd use copy transforms constraints on the missiles, targeting empties.

TL;DNR:

The child should have an armature with a root bone

Apply the constraint to that bone

The order of operations is important when you turn off the Child-Of constraint:

One frame before the change set the influence to 1 and keyframe it. Keyframe the transformations of the bone.
Move forward one frame.
Apply the visual transform to the child armature in pose mode.
Keyframe the location, rotation, and scale of the child armature root bone
Change the influence to 0 and keyframe it.

Child of Constraints Shot Example is a very short tutorial on how to do this, and I recommend it as a starting point.
Example file
Here is a crude blend file applying that tutorial to your problem:

From looking at your video, I suspect that your problem is when you applied the visual transforms in comparison to when you changed the Child-Of constraint's influence.
In the example, a cube represents your box, a cylinder your launcher, and a cone your rocket.  The example is a shot blocking:

The box moves to a new position
The launcher pops up
The rocket is unparented from the rocket
The rocket moves up and to the left
The launcher pops down.

The rocket has its own armature, but the box and launcher are sharing an armature.  You can give the launcher its own armature and use the same technique to separate it from the box.
How it works
The rocket's armature is given a Child-Of constraint to the Launcher Bone of the main armature.  At frame 10, the influence of that constraint is set to 1 and keyframed. The transformations are also keyframed.
At frame 11, the rocket is ready to launch. This is the frame where the constraint should change, so:

Use the Menu to apply visual transforms
Keyframe the changed location and rotation.  (The rocket will suddenly jump to a new location.)
Change the influence to 0. (The rocket will return to its position)
Keyframe the influence.

After a day of work where I cancelled all previous parenting and child of constraints of all the detaching objects I finally managed to do it by using Dynamic parents addon and without rigging.  Now all the detaching objects are contained in the missile launcher container.  The container can be moved where ever I want, even animated, and all stay in the missile contained.

The dynamic parents addon is at the tope right. Note small missiles in the loader.

Note I moved the main container of the missile launcher and the different big missile loader.  I also tested it by animating the main container from point A to B and all the firing and reloading animation followed smoothly.


text:
How to change the sticking side in Snapping?
I have such an object

How can I change the side of gluing ???

Hello :). This can happen when an object has unapplied rotation. Did you check that?

This post may help answer your question.
https://blender.stackexchange.com/a/167761/41087

could you please share your file? https://blend-exchange.giantcowfilms.com/

I'm sorry, I forgot to say hello. I’m boiling for the second day with this problem =). Hello!

The easiest solution is to move your origin point.

Check Origins ✓ tranform
Enable Vertex snapping and snap your origin point to the lowest vertex
Switch fo Face snapping and snap your object


text:
Set transform of a child object to an arbitrary point using a script
I've been working on a script to assign transforms to child objects, such that the transforms will be transferred to Unity ( relative to the origin set in Blender, along with their rotation ) when using the experimental .fbx options. After another user kindly shared a very helpful script with me, I refactored it to match my requirements. Below is the script.
import bpy
import math
from mathutils import Quaternion

context = bpy.context

bpy.ops.object.mode_set()
baseRotation = Quaternion()
for someObject in context.selected_objects:
    polygonsLength = len( someObject.data.polygons )
    if polygonsLength < 1:
        continue

print(someObject)
objectData = someObject.data
objectWorldMatrix = someObject.matrix_world
objectWorldMatrixInverted = objectWorldMatrix.inverted()

polygonsAverage = [0.0, 0.0, 0.0]
for everyPolygon in someObject.data.polygons:
    for i in range(3):
        polygonsAverage[i] += everyPolygon.center[i]
for i in range(3):
    polygonsAverage[i] /= polygonsLength

smallestDistanceBetweenCenters = 1000000000
closestPolygonToCenter = someObject.data.polygons[0]
for everyPolygon in someObject.data.polygons:
    distanceToAveragePoint = math.sqrt(
        pow( polygonsAverage[0] - everyPolygon.center[0], 2) +
        pow( polygonsAverage[1] - everyPolygon.center[1], 2) +
        pow( polygonsAverage[2] - everyPolygon.center[2], 2) )
    if distanceToAveragePoint < smallestDistanceBetweenCenters:
        smallestDistanceBetweenCenters = distanceToAveragePoint
        closestPolygonToCenter = everyPolygon
print(closestPolygonToCenter.center)

somePolygonInObject = closestPolygonToCenter

somePolygonCenter = objectWorldMatrix @ somePolygonInObject.center
somePolygonNormal = objectWorldMatrix @ somePolygonInObject.normal

rotationDifference = baseRotation.rotation_difference(somePolygonNormal.to_track_quat())
rotationDifferenceMatrix = rotationDifference.to_matrix().to_4x4()
rotationDifferenceMatrix.translation = somePolygonCenter
objectData.transform(objectWorldMatrixInverted @ rotationDifferenceMatrix.inverted())
someObject.matrix_world = rotationDifferenceMatrix

The script finds the mean of the object's constituent polygons' centers, and then picks the center of the closest polygon as the overall object's center. This worked reasonably well, however when checking the resultant transform center, it at times was not within the object or not close to the object's center, as the chosen polygon's center was not inside the object. Image below.

I would like to adjust this script to be able to assign purely the mean center of the polygons as the object center, provided that this mean center is within a  constituent polygon, relative to the origin. In thinking about this, it seems to me that the most reliable approach to checking for this would be some kind of raycasting from the origin to the mean center, and ensuring that one of the polygons collides with this ray, though I'm not sure if there may be a better / simpler approach to this.
How could I perform such a check, and how would I then assign the actual mean transform (which is currently being stored as a simple 3-element array) to the object's transform?
Any help would be greatly appreciated! :)

Use Vector maths.
One of the fundamentals of 3D programming is Vectors. If have two location vectors A and B,
A vector C describing the shortest distance from A to B
C = B - A

distance from A to B
C.length

there is almost never a need to calculate this using the Euclidean distance formula.
Making a small adjustment to answer to Calculating and exporting global rotation of faces created from splitting an isosphere
Instead of choosing the single face find the poly that matches the criteria of the question.

Average the face centers
Sort by distance from face center to calculated average
Use the closest

Since this is returning a face, there is no way (without weird ngons) this can be "outside the faces"
Note this will favour small tightly clumped faces.  Consider perhaps weighting by the face areas How to compute the centroid of a mesh with triangular faces without using Blender's built-in functions?
Also a point on another face may be closer to the median of face center medians.  Aside from raycast, Object.closest_point_on_mesh(...) will also return the face.
hit, loc, norm, index = ob.closest_point_on_mesh(o)

if hit:
    f = ob.data.polygons[index]

Test script: Run in object mode, sets origin to each selected object based on criteria above.
import bpy
from mathutils import Quaternion, Vector

context = bpy.context

z = Quaternion()

def closest_poly_to_centers_avg(polys):
    o = sum((p.center for p in polys), Vector()) / len(polys)
    return(sorted(polys, key=lambda p: (p.center - o).length).pop(0))

for ob in context.selected_objects:
    print(ob)
    me = ob.data
    if not me.polygons:
        continue
    mw = ob.matrix_world
    mwi = mw.inverted()
    f = closest_poly_to_centers_avg(me.polygons)
    c = mw @ f.center
    n = mw @ f.normal

    q = z.rotation_difference(n.to_track_quat())
    M =  q.to_matrix().to_4x4()
    M.translation = c
    me.transform(mwi @ M.inverted())
    ob.matrix_world = M

FWIW I  really loathe this
for everyObject in objects:

having a variable named every object that is one of each, may "read well"  but really? Equally with someObject, somePolygon opposed to simply ob and f

Thanks for helping once more. :) I rarely get into stylistic debates, but since you brought it up, in this case I changed the names of the variables as the single letter variables were unintuitive to me. It may well be a lack of domain-specific knowledge, but I had to spend quite some time working out what each was meant to represent.

Cheers.  See https://wiki.blender.org/wiki/Style_Guide/Python  And yeah, "My bad" mentions to use mesh instead of me or m  and I suppose face or poly over   f or p. .  If in doubt re a variable or what it does please  ask.   Also try and stick to pep8 eg print("foo") not print ( "foo" )


text:
Strange results when using the Cycles renderer
Using Blender 2.91.2
I have a 'simple' two object model of a plastic go-cart wheel - an inner wheel and an outer 'tyre'. I have two different procedural shaders to simulate scuff marks on the wheel. The outer is more scuffed and gouged than the wheel inner.
Within Blender the two objects are correctly aligned, and look right in the Wireframe, Solid and Material preview.
When I Render using the Evee rendered the tyre and wheel stay together and it looks correct.

When I render using cycles and with either GPU computed or CPU Computed; it breaks completely :

No other settings change between the two renders apart from the choice of renderer.
Have I done something stupid ?
PS. My previous models rendered fine with cycles, so I don't think it is my copy of blender or my GPU.

have you connected something to the displacement socket?

maybe related: https://blender.stackexchange.com/questions/212930/how-do-you-remove-the-line-in-the-noise-texture/213041#213041

@AllenSimpson - feel free to add this as an answer as this was correct - thank you.

It looks like you enabled the Displacement and Bump setting, but unfortunately forgot to include a Displacement node before the Material Output.

When you connect a color directly it's interpreted as Vector Displacement which largely translates your mesh.

Learned something new here, thanks :)


text:
How to create cylinder with varying radius at different height
My goal is to create a imperfect cylinder with a script, where some randomness is added to the radius of the cylinder at certain intervals. I am very new to blender unfortunately, and am lost at the approach to take.
I would imagine I would need to generate circle of vertices, connect them with edges, duplicate and extrude, move points and repeat. However, I don't have the faintest idea of the commends I would need for each step, and would appreciate any help/hints.

Is there a reason you need to do this with a script, rather than say a cylinder with a displacement modifier based on a noise texture? If you’re just doing this to learn scripting then of course that makes sense, but otherwise a script seems overkill for this task.

It's part of an attempt to generate a synthetic dataset, something that would be repeated thousands of times.

Bmesh script.

Here is but one of may ways could approach this.
Rib n Bridge

Make growth_segments cirlcles all with segments segments.  Each
has a radius in range (min_radius, max_radius) and the the next is
in the range of  (min_growth, max_growth) above.
A translation matrix, using the accumulative height is used to place
each successive circle.
Each circle is added with bmesh's create circle primitive. On each
iteration a "rib" is the last added segments edges of the bmesh.
Skinned by bridging each rib with its next.
Finally the first and last ribs are ngon filled with the
contextual_create operator, somewhat akin to bmesh's F
"fill" key.

import bpy
from bpy import context # for testing
import bmesh
from random import uniform
from mathutils import Matrix

segments = 16
min_radius = 0.5
max_radius = 2.0

growth_segments = 10
min_growth = 1.0
max_growth = 2.0

bm = bmesh.new()

h = 0
ribs = []
# make the circles
for i in range(growth_segments):
    bmesh.ops.create_circle(
            bm,
            segments=segments,
            radius=uniform(min_radius, max_radius),
            matrix=Matrix.Translation((0, 0, h)),
            )
    h += uniform(min_growth, max_growth)
    ribs.append(bm.edges[-segments:])

# bridge the loops
for rib, ribnext in zip(ribs, ribs[1:]):
    bmesh.ops.bridge_loops(
            bm,
            edges=rib + ribnext,
            )

# fill the ends

bmesh.ops.contextual_create(
        bm,
        geom=ribs[0] + ribs[-1],
        )

# Create object load mesh
me = bpy.data.meshes.new("RandomCyl")
bm.to_mesh(me)
ob = bpy.data.objects.new("RandomCyl", me)
context.collection.objects.link(ob)
# make selected and active
ob.select_set(True)
context.view_layer.objects.active = ob

Matrices
Have used a matrix in the create circle operator to translate to the height

Here I've extended this a bit further to give a panel beaten effect, each rib is now a random ellipse using above min max for two radii, and also rotated randomly 0 to 45 degrees in Z.
A diagonal matrix is a quick way to produce a scale matrix.
Sx = Matrix.Scale(4, 3, 'X')

is equiv of
S = Matrix.Diagonal((4, 1, 1))

Each circle is transformed by R @ T @ S (rotation, translation, scale)
    bmesh.ops.create_circle(
            bm,
            segments=segments,
            radius=1,
            matrix=(
                Matrix.Rotation(uniform(0, 0.7854), 4, 'Z') @
                Matrix.Translation((0, 0, h)) @
                Matrix.Diagonal(
                    (
                    uniform(min_radius, max_radius),
                    uniform(min_radius, max_radius),
                    1,
                    )
                ).to_4x4() # since tanslation mat is 4x4
                ),
            )

Cannot emphasize enough, the better we become at using linear algebra (vectors and matrices) the "easier" it will be to use API methods. Is also generally faster and IMO cleaner.
Spin Profile
Another way would be to make  profile edges on XZ plane and spin it around z axis to make a solid of revolution.

Equivalent of making profile shown on left, and creating mesh by spinning it with the screw modifier (default settings)
import bpy
from bpy import context # for testing
import bmesh
from random import uniform
from mathutils import Matrix
from math import radians

segments = 16
min_radius = 0.5
max_radius = 2.0

growth_segments = 10
min_growth = 1.0
max_growth = 2.0

bm = bmesh.new()

h = 0
verts = [bm.verts.new()]

for h in range(growth_segments):
    radius = uniform(min_radius, max_radius)
    verts.append(
            bm.verts.new((radius, 0, h))
            )
    h += uniform(min_growth, max_growth)

verts.append(bm.verts.new((0, 0, verts[-1].co.z)))

for edge in zip(verts, verts[1:]):
    bm.edges.new(edge)

# spin the sucker

bmesh.ops.spin(
        bm,
        geom=bm.edges[:],
        axis=(0, 0, 1), # z axis
        angle=radians(360), # 2pi one rev
        steps=segments,
        )


text:
diffuse map bake shows weird helper edge?
So I have an image texture.

And I have a (mesh) plane.
And I added a material, the above image texture.
And I assigned the material to the plane.
I made second uv map, and mapped the plane to the first row of windows.
In the original uv map I did the same thing.
Then I bake a diffuse map to the same size image.

At first glance it looks fine. However, if I change white to say blue in an editor, I get this weird line from top left to bottom right.

It's like my plane has been divided in two triangles, and the edge is now being baked as well? I tried many things and can't figure out why this happens. When I subdivide the face into smaller pieces, the 'specs' location do change. How do I get wrid of these specs/artifacts?
(PS total blender newb)


text:
Change the export stl file code from Exported from Blender-x.x.x to object name
I want export model into stl format in ASCII, which Blender can do. However when I open the exported stl file by text, the first line is always like this:

solid Exported from Blender-2.91.2

And the last line is:

endsolid Exported from Blender-2.91.2

I want to change the string "Exported from Blender-2.91.2" to my stl file name, so I have to open my stl files again and again to change the name. This bothers me a lot and I don't know how to fixed it once and for all. I tried to open the addon folder io_mesh_stl(path:2.91\scripts\addons) and find in file stl_utils,line 75:

return "Exported from Blender-" + bpy.app.version_string

Is it because this line? How can I fix my problem? Thanks a lot if anyone can help!

Slippery Slope.
Would investigate doing this in a post pro way, Using something like sed   or python, to run thru stl files and automate the bothersome edit, rather than updating the addon code.
That said, a quick edit to change the header when writing to ASCII
stl_utils.py
def _ascii_write(filepath, faces):
    from mathutils.geometry import normal

    with open(filepath, 'w') as data:
        fw = data.write
        header = _header_version()
        fw('solid %s\n' % header)

        for face in faces:
            # calculate face normal
            fw('facet normal %f %f %f\nouter loop\n' % normal(*face)[:])
            for vert in face:
                fw('vertex %f %f %f\n' % vert[:])
            fw('endloop\nendfacet\n')

        fw('endsolid %s\n' % header)

change the code (circa line 205) from
header = _header_version()

to
header = filepath

or to hack it just to use the filepath stem "/path/foo/bar/stem.extension"
from pathlib import Path
header = Path(filepath).stem

or to hack it just to use the filname (with extension) "/path/foo/bar/filename"
from pathlib import Path
header = Path(filepath).name

Thanks a lot. Your solution seems working. Now it changes to my file path. However I want  to change it to my file name rather than my file path. Is there any way to achieve that?

Seems? Added code to add just the stem of a filepath "/path/foo/bar/stem.extension"

I already tried your way. What I mean is that now the stl file change to:  solid C:\Users-\Desktop\filename.stl   but I want it to be:   solid filename    (just the file name)

Thanks! I used the third way. Now it's working perfectly. The exist of extension doesn't bother me.


text:
Is blender suitable for motorcycle crash simulation? (Semi-scientific)
I’m a long time 3d animator (20 years using 3d studio, Max, Maya). However, I’m retired from CGI work and now I’m MacBook Pro 2019 based. So my software options are limited to Blender or Houdini.
I’m working on an article and video about motorcycle crashes and motorcycle clothing impact protection. It’d be nice to create visualizations which would be fairly scientific. I’ve got a few days using blender and it seems ok. I’d like to be able to display statistics in real-time (velocity, forces, etc)
Any plugins, advice, thoughts on blender’s suitability.

I don't think that blender is the right tool for scientific accuracy. Keep in mind that blender is mostly aimed at video work and gaming asset creation.

Is the kind of crash shown here https://www.youtube.com/watch?v=WSZ8AExo2sk what you are looking for?


text:
Delete nodes that does not contain mesh?
I'm pretty new on Blender and I have a problem.
I imported a quite huge model hierarchy and some node contains no mesh.
Is there a way to automaticaly delete all node that does not have mesh ?

Thanks.

While this may not work for you, you could try selecting all objects, joining them together with CMD+J, then going into edit mode and pressing p and separating them by disconnected.

Going by the names these "nodes" that contain no mesh are Empties. (which have no data)  They are quite likely holding parenting info. However to remove Select > Select All by Type > Empty  will select then X to remove the selection. Ctrl-Z to undo if it goes awry.

@batFINGER , Selecting "Empty" by type select all Empty node even if they contains a mesh. So Deleting them (X) delete everything.

Can try https://blender.stackexchange.com/a/200365/88681

OK. I just learn Python and developped this script :
import bpy

# This script selects all objects hierarchy that have mesh on them
# After executing this script, just invert the selection (ctrl+I) and delete (X)

for o in bpy.data.objects:
    if o.type == "MESH":
        obj = o
        while True:
            obj.select_set(True)
            obj = obj.parent
            if obj == None:
                break;


text:
Is it possible to combine 2 or more textures VIA - BelnderKit add-on
I am trying to make a grassy landscape with a dirt path through it using two different textures found through the BlenderKit add-on. [It's an add-on that lets you search and quickly import assets, materials and brushes into your project]
How would I go about doing this? Example of a 'grass' texture and 'clay dirt'

Is it possible to paint one onto another where the edges of the 'path' would blend in with the grass?
The closest I have gotten is:
which gets me this result:

You could use a third texture to map the transition between the two make it black and white and plug that into the fac of the rgb mix, or even better, have two different principled bsdfs with different roughnesses and use the third texture to control the fac of a mix shader node.

Thanks to Nascent for the awnser.
You just add a new image texture node. Click new and name it. Then add that to the 'fac' of the MixRGB node. Then all you have to do is go into the texture paint tab and make sure you have your new texture selected (I named mine Dirt_Path_PAINT) and draw over your texture in the UV section or for easy use right in the viewport!


text:
In an add-on, receive the path to the file Blender was opened with or its launch arguments?
I want to write an add-on that can open a file opened with Blender (i.e. double clicked while Blender is the default program associated with the file format). That means Blender is opened with launch arguments holding the path to the opened file. This must work for file formats other than .blend, such as .fbx. In the Python code for an add-on, how can I access the path of the file opened with Blender. Or the arguments Blender launched with?

bpy.context.blend_data.filepath - full path and name of opened .blend file. I doubt there is something for imported files, because they are "adding" to scene, not "opening"
For other arguments you can use standard recipe:
import sys
for arg in sys.argv:
    print(arg)

Printing worked perfectly and showed the full file path. Thanks!

Glad to help you. That was a little strange, that I wrote here code for Python 2 when I switched to Python 3 some years ago, and just checked correct code in my Blender.

No problem, it was easy to google why it wasn't working and then fix it.

Alternatively, for getting the path of the opened .blend file you can use bpy.data.filepath which gets you the exact same file path as the above method.

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/


text:
Mirror changes to side of cube across all six sides
I want to create a cube with some general extrusions. This should be the same across all sides of the cube. Is there a way to make this mirrored across all six sides? I know that I could delete the rest of the cube, copy my changes, rotate it 90°, move it down and to the side, and repeat for all the sides, then remove doubles, but I'm wondering if there's a way to make this work in real time.
In the below image, all six sides should copy the changes shown here on the one side:

Modifiers:
You could do this with a Mirror modifier and an Array Modifier:

Delete the excess geometry:

Add a Mirror modifier:

Add an Array Modifier.

Add an Empty rotated -90°, 0°, 90° (assuming the mirror is mirroring along the X axis):

Set the empty as the Object offset in the array modifier:

Result:

Duplifaces:
Another way is with Duplifaces:

Add a cube and a plane.

Parent the plane to the cube (CtrlP):

With the cube selected, enable Duplifaces in the Properties Editor > Object > Duplication:

Edit the plane object:

The duplifaces will be displayed in object mode:

Limitations:

The array modifier method will not rotate the duplicated faces in the same direction: (this is tweak-able by adjusting the rotation of the empty)

Duplifaces do not display in edit mode.

You could select all faces in edit mode A
Inset  I with individual option  I

Invert selection CtrlI
Extrude with E with individual origins

This way you only need to repeat the rotation for all faces.

If you set the transform orientation to Normal you can do the rotation all at once too.

This is exactly the kind of workflow I was looking for. The rotation probably isn't even that important, but I just included it in my example to make the side more interesting.

@Keavon The rotating issue has been solved by gandalf3  see http://blender.stackexchange.com/questions/5060/how-can-faces-be-rotated-around-their-individual-normals

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/


text:
Filling a hole in a face with loop cuts forming a 2-way intersection?
I have a mesh that forms a plane with loop cuts running in both directions. Part of this area is cut out and I need to fill it back up, maintaining the loop cuts in both directions. Is there an automated way of doing this? If not, what's the easiest method?

@NoviceInDisguise I don't think this is really a duplicate of that, this question is asking how to do it specifically while maintaining the loop cuts across the filled area.

This is not a duplicate. That was weird geometry in that question. This is specifically a grid fill (now that I know its name). I have nominated their for reopening.

@Keavon I'm marking it as a duplicate because its basically asking the same thing and the other question has more info.

@iKlsR Ah, yes, this is a duplicate of that. Previously it was marked as a duplicate of a different question which it was not a duplicate of, but the one it's now a duplicate of is similar.

Because the number of vertices are matching on opposite sides you can do Ctrl+F> Grid Fill:

Also found in Mesh> Faces> Grid Fill from the header menu in the 3D view.

Wow! Useful trick! I don't know why but it works properly for me only if I select the two opposite edges (like with 'Bridge Edge Loops' tool) and then press CTRL+F-->Grid Fill. When I select the whole edge loop it merges the edges in a strange way.

As long as the number of opposite edges are equal it should work. If it doesn't you can play around with the 'offset' option.

@Gonzou Try playing with the offset option in the F6 menu.