text:
How can I force blender to use texture from a modified imported object?
[ADDED LATER]
In desperation I RENAMED the offending texture files and rebuilt everything which fixed the problem. Still it would be interesting to find out why removing an imported object and replacing with an imported rebuilt object with different sized texture files still resulted in the exported texture file being the same as the original.
I imported a glTF object (wooden bench) into an existing Blender 'project' saved (the Blender file) and exported all to an extended glTF. I then discovered that one of the textures was not 'square' ie the dimensions were not to the power of 4 and so I used my image editor to resize the texture file for the imported object (wooden bench) and saved. I then started Blender with a 'black canvas' imported the glTF (with the resized texture file) and exported as glTF so that I would have a 3D object of the wooden bench with correct texture image to be used in other projects. I checked the dimensions of the output texture file and they were correct.
I then opened my original Blender project, removed the old object (wooden bench) and imported the modified wooden bench and exported as glTF. The output texture files are the OLD ones ie the texture file with the incorrect dimensions. Somehow Blender is picking up the texture file from elsewhere not the imported object.
How do I fix this?

Please do not add "solved" as part of the title. Mark the answer that
helped you as accepted instead (https://i.sstatic.net/qBQh7.png).
Please take the [tour] to understand how the site works. Read also:
what does it mean when an answer is accepted?

Please remember not to put an answer in your question. Instead, at least write the answer as an answer.

Thanks guys. I am learning more about how this web site/forum works which is VERY different from any other forum I have ever used. I added the answer to my question BEFORE I noticed (at the bottom) that I could 'answer my question.' I added SOLVED as that is the method in many other forums (so that readers can see at a glance that they don't need to add anything).

In desperation I RENAMED the offending texture files and rebuilt everything which fixed the problem. AND this model is the ONLY model with the textures so it wasn't a problem with another model having the same textures. Still it would be interesting to find out why removing an imported object and replacing with an imported rebuilt object with different sized texture files still resulted in the exported texture file being the same as the original.


text:
FBX export operator - How can I change the scaling mode?
I want to change the scaling mode in blender

based on documentation I can do it:
apply_unit_scale
apply_unit_scale (boolean, (optional)) – Apply Unit, Take into account current Blender units settings (if unset, raw Blender Units values are used as-is)

apply_scale_options
apply_scale_options (enum in ['FBX_SCALE_NONE', 'FBX_SCALE_UNITS', 'FBX_SCALE_CUSTOM', 'FBX_SCALE_ALL'], (optional)) –

I tried to change the scaling mode to unit scaling in blender but I don't know why it didn't work
import bpy

bpy.ops.export_scene.fbx(apply_unit_scale=True)
bpy.ops.export_scene.fbx(apply_scale_options='FBX_SCALE_UNITS')

I have this error in the console:

I also tried to copy and paste the example in the console but I have same error!:
bpy.ops.export_scene.fbx(filepath="", check_existing=True, filter_glob="*.fbx", use_selection=False, use_active_collection=False, global_scale=1.0, apply_unit_scale=True, apply_scale_options='FBX_SCALE_NONE', bake_space_transform=False, object_types={'ARMATURE', 'CAMERA', 'EMPTY', 'LIGHT', 'MESH', 'OTHER'}, use_mesh_modifiers=True, use_mesh_modifiers_render=True, mesh_smooth_type='OFF', use_subsurf=False, use_mesh_edges=False, use_tspace=False, use_custom_props=False, add_leaf_bones=True, primary_bone_axis='Y', secondary_bone_axis='X', use_armature_deform_only=False, armature_nodetype='NULL', bake_anim=True, bake_anim_use_all_bones=True, bake_anim_use_nla_strips=True, bake_anim_use_all_actions=True, bake_anim_force_startend_keying=True, bake_anim_step=1.0, bake_anim_simplify_factor=1.0, path_mode='AUTO', embed_textures=False, batch_mode='OFF', use_batch_own_dir=True, use_metadata=True, axis_forward='-Z', axis_up='Y')

You can. However, you would have to specify a valid file path in order to make it work.

You need to set the file path where you want to store the output.

Something like: https://blender.stackexchange.com/questions/169537/exporting-multiple-meshes-individually-at-once/169820#169820 ?

@brockmann yes exactly thank you!

https://blender.stackexchange.com/a/6174/15543

oh sorry for this stupid question
as Robert Gützkow and brockmann mentioned I didn't set the path
import bpy

#example path to store files
path = os.path.expanduser("~/Desktop")

#export fbx
filename = path + 'Test.fbx'
bpy.ops.export_scene.fbx(filepath=filename, use_selection=True,apply_scale_options='FBX_SCALE_UNITS',apply_unit_scale=True)

os.path.join() method in Python join one or more path components
intelligently. This method concatenates various path components with
exactly one directory separator (‘/’) following each non-empty part
except the last path component. If the last path component to be
joined is empty then a directory seperator (‘/’) is put at the end.

import bpy

# importing os module
import os

#example path to store files
path = os.path.expanduser("~/Desktop")

# Join various path components
filename = os.path.join(path, 'Test.fbx')

bpy.ops.export_scene.fbx(filepath=filename, use_selection=True,apply_scale_options='FBX_SCALE_UNITS',apply_unit_scale=True)

Instead of setting path manually, I use this solution

Recommend use os.path.join() or have a look into pathlib if you haven't already.

@brockmann thank you. I actually don't want to set the path manually is there a way to set the path by the browser for export_scene.fbx?

Pass "INVOKE_DEFAULT" as first argument. See Execution Context in the API docs. This will open the file browser with the settings applied, but you still need to select the location.

Depends how the UI should look like and where do you want to have it. In general such basic questions have an answer here already, just search for it or explain in detail what you'd like to get and why other answers are bad @SeyedMortezaKamali

source: Stack Exchange

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

sort: votes


text:
How to install "Cycles Minecraft Rig BSS" (Blender 2.9x)?
We are trying to install Rymdnisse (Cycles_Minecraft_Rig BSS Edit V6.5.zip) add-on for Blender 2.9. We go to Edit > Preferences > Add-Ons, and install from MacBook Downloads folder.
It says it installs, but we cannot locate the add-on in the Community, Official or Testing lists to select it to make it active.

The link you sent was about a Minecraft rigs collection. Rigs are not add-ons. If fact,rigs are very different from add-ons and cannot be installed but imported into the scene

It's a rig, not an addon. You need to append it into the scene.

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


text:
Light, stop using Nodes?
After clicking "Use Nodes", how do I "unuse" Nodes, other than pressing CTRL+Z?

Select the light, open the shader editor and clear the Use Nodes Checkbox

This won't delete the node tree but will stop using nodes.
You can open the shader editor by going to the dropdown menu in the upper corner of the 3D Viewport, clicking and selecting Shader Editor. (shortcut Shift–F3)

or you can switch to the Shading tab in the top bar menu.  The Shading editor will be the bottom editor.


text:
How would I procedurally texture a marble tile floor without the texture spreading across every tile?
Basically I have a tile which I duplicated using an array modifier to make the floor:

Then in the node editor I created a procedural marble texture using nodes and got this:

The problem with this image is that it looks like the texture is spread across every tile, making it look unnatural. Is there a way to make the marble texture random for each tile?
Here is the blend file:

Are your tiles individual objects or are they different objects?

....in other words, would it matter to you if you had to apply the array modifier?

Also see this answer: https://blender.stackexchange.com/questions/28838/how-can-i-create-a-staggered-repeating-procedural-pattern for ideas

Please only use http://blend-exchange.giantcowfilms.com for the blend hosting. Using pasteall in six months your file will be gone, and the link dead.

One way of doing this would be:
Separate all your tiles as a single object so you can use the Object info node random output in order the create a tile black and white mask:

You can then create another wave texture and combine it with the one you already have using the tile mask as factor:

You obviously need to change the texture coordinate of the second wave to create variation. Put a color ramp node and play with its value to have stronger difference:

http://pasteall.org/blend/index.php?id=50740
As @robin betts points out in the comments, if you need to keep the array modifier you can duplicate the object, do the same process, and bake the mask into a file image. Or if you want to keep a "semi" procedural creation use dupliface instead of the array.

This method uses the array modifier, so you do not have to do any destructive editing to your object.
Here I modeled a single tile and use two array modifiers to make the floor.
Note the two extra vertices (highlighted in red) in the bottom left and top right corners of my tile. They are there to make the space around the tiles. It can be done in the array modifier, but doing it this way makes the nodes much easier (we do not have to worry about scaling the coordinates, or finding magic values).

With the object out of the way, here is the material.
(click for full size)

That all may look complex but it really is rather simple.
First off you have to understand that the generated texture coordinates, go from 0 to 1 across the original object. The texture coordinates just get extrapolated out for the distance of the array modifier. (Which is why you were having the texture go across the whole floor.) In the top part of the node tree, the two Modulo nodes (math nodes with the operation set to Modulo) are what break up the texture coordinates for each tile.
This is what it looks like with just the two Modulo nodes. Very repetitive, but we have tiles, well one tile.

That is half of the problem solved (by just four nodes).
All that is left now is to randomize the location of the texture, so there can be more then one tile.
To add randomness I'm distorting the texture coordinates with a Voronoi texture, but before that I'm distorting its coordinates. (This is the whole bottom part of the node tree.)

The four math nodes, in the blue, are to pixelate the Voronoi Texture so there is only one color per tile. That texture is what adds the variance. The way this works is the texture coordinates driving the voronoi texture get "Rounded" so instead of a nice gradient there is only one value. Thus only one point from the voronoi texture gets used.
Here is what just the voronoi texture looks like after the texture coordinates get rounded.

Now on the other side of the voronoi texture I split the color, and use one channel for each the X and Y.The Math node set to multiply is to get bigger variance. Normally the color goes from zero (black) to one (white). Offsetting the texture by just one would not be enough. The value in this math node does not matter much, but I found it looks best when set to about the size of the array, in my case seven.
Last step is to add the two separate coordinates together (the tiles and the randomness). That is done using a Vector Math node set to add.

Here is the complete blend, minus the duck.

We need to talk about the ducks...

@X-27 "the ducks?" :)

You can try the brick texture to separate each tile. Here, I tried editing your file to get something that you wanted.

I was helping someone else with this issue a while ago so I'll be happy to elaborate.
To change the colours and almost every setting, ONLY use the encircled Brick node.

This setup will give you:

Simply change the colours in the circled brick node to suit your needs and the variation of colour and the patter colour will change. You can also try changing the distortion and scale values of the noise textures to suit your needs.
If you want the file here's the drive link: Link


text:
Why "dimensions" attribute is not working on blender 2.8?
This code should resize objects. It works great in 2.79, but not in 2.8.
I get this error:

AttributeError: 'bpy_prop_collection' object has no attribute 'dimensions'

This is my code, I can't find the error:
   #SCALE AUTOMATICALLY

    dimX = bpy.context.scene.objects.dimensions.x
    dimY = bpy.context.scene.objects.dimensions.y
    dimZ = bpy.context.scene.objects.dimensions.z

    multiple = 5 / dimZ

    bpy.context.scene.objects.dimensions = (dimX * multiple, dimY * multiple, 5)

Are you trying to change the dimensions of every object?

FWIW I dispute the claim that the code posted works in any version.

You're referring to multiple objects, which altogether have no attribute "dimensions". Each individual object has, though:
for obj in bpy.context.scene.objects:
    dimX, dimY, dimZ = obj.dimensions
    multiple = 5/dimZ
    obj.dimensions = (dimX * multiple, dimY * multiple, 5)

Be aware that division by zero could be an issue. Also I'm not sure if all objects have dimensions (cameras?). You could add if obj.type != "MESH" or dimZ == 0: continue as the second line of your forloop.

or obj.dimensions *= multiple


text:
Iterated edge drawer animation nodes
I have a set of lines instanced along a curve using "Replicate Matrix" and "Object Matrix Output."

My goal is to loop through the instanced lines and, for each one, get a random point on it, find the nearest point on the next instanced line, and make edge between them. The end result I want is edges drawn through all of the instanced lines, looking something like this:

I've tried to do the following way. First, a loop that runs through the lines and finds edge starts and ends:

The "random point" comes from the Random Number that inputs to the Get List Element, which has the vertices from the first line. I then pass these edge starts and ends out of the loop to draw the edges.

This works to some extent, but I'm having problems achieving the result I want. The result I actually get is more like this:

Edges are drawn between adjacent lines, but only between the two lines currently being compared in the loop. And the number of edges being drawn between adjacent lines increases as the loop runs. I don't understand why that is. And the edges don't accumulate as the loop runs - so the edges drawn on first iteration aren't preserved in the second, etc.
To try to fix the second, accumulation issue, I tried to make this second loop, which would save all the edges the loop calculates:

But this hasn't worked. The list in the Append gets longer after each iteration, but each element in the list gets written over with a single vector value. You can see that happening, e.g., in the Viewers connected to the Append to List nodes. It's weird.
So, that's where I am. I can't figure out how to turn something like the second drawing into something more like the first. Maybe I'm going about this whole thing the wrong way! But even just figuring out how to get the Append node to hold values across iterations would be awesome.
Here's the .blend file:

What do you mean by "get a random vertex", a vertex from where? Can you make a simple illustration to illustrate what your inputs are and what the output is expected to be?

Thanks so much for responding! I made some big edits to the question, which I hope make things clearer, both what I'm after and how I'm trying to get it. Please let me know if I should provide more info.

I think uploading your blend file could help... Imagine people trying to understand your nodes just reading them without knowing exactly which part is connected to which from an image to another... you can upload your file here http://blend-exchange.giantcowfilms.com/

Thank you! I uploaded the file -- I didn't know how to do that.

Are your "lines" just line segments? I mean, are they parallel to each other and flat as you illustrated or are they just line-like meshes?

The lines are nurbs paths. They are instanced along a 3D spiral curve (from the "extra curves" add on). The lines are parallel, but not exactly as I've drawn them, since they are instanced along the spiral.

By looking at your file, If I understand what you want to do. There is a much simpler way to do it, I can write an answer about that if you like, but we won't be using your original approach, would you like to see another approach?

Absolutely, I would be happy to see another approach. I'm still curious about why the approach I'm using isn't working -- am I using the nodes / thinking about their functions in the wrong way? -- but I would be more interested in seeing something that works.

Ok, I will try to write an answer now. The problem is, I am not using the same AN version as you, so your node tree fails to work on my system, that's why I can't debug or try to understand why your approach isn't working. But I can try to fallback to an older version and try to add an answer on why it isn't working later.

A spiral or a helix is described using the set of parametric equations as follows:
$$
\begin{aligned}
x &= R\cos{t}\\
y &= R\sin{t}\\
z &= \delta t
\end{aligned}
$$
Where $R$ is the radius, and $\delta$ is the vertical frequency of the curve. By implementing this, we get:

Now, we are going to move the points of the helix with a random amount in the direction of your choice, I can see you are offsetting them in the direction of the $x$ axis (This is the equivalent of sampling a random vertex along your instanced paths), so lets do that:

The points we just computed act as the first vertex of each edge, the other vertex can be computed mathematically or just by using the Project Point On Line node, the line starts are defined as the position of the next point and the ends are defined as the position of the next point plus some value in $x$ just to define the direction. To the location of the points of the next points, we simply shift the vector list backward, by doing so, each point is aligned with the one following it. Then we create the edges from the points and their projection. The node tree is as follows:

And the result is as expected (The horizontal lines are just for visual aid, not part of the implementation and they are the lines you originally had in your file):

You may notice that there is an extra edge going from the last vertex to the x axis, this is due to the fact that after shifting, the first vector became aligned with the last, and this is just a normal consequent of doing so. To fix that, just remove the last vector and last edge from the output using the slice  or remove list element node.

Wow -- thank you! I've got this working, but I'm still studying it. Conceptually, the work of the Shift node is hardest thing to get my head around, but I have some sense of it. One big problem I'm having is the Project Point node. Yours seems to accept a Vector List, while mine only accepts Vectors. So I have to step through the spiral vector list to generate the edges, and so I have the problem of getting edges only between adjacent points. Am I missing something there? Is the Project Point node that accepts vector lists only in the newer version? I have another question...

Which is: if I wanted to find the second vertex of each on another line or shape, rather than just in any old direction as defined by the Vector Math node, I would put the vertices of other other line or shape into the Line End in the Project Point node, right?

@Chris Yes, the Project Point On Line was vectorized in the new version I am using. So you have to create a loop for that node (A loop that only contains the node). I am not sure what you mean by the second question. Can you elaborate on that?

OK great -- this gets to the heart of my question. So I got the edges drawn. When I plug the various vectors into a loop as iterators, then I get all the edges at once. When I plug them into the loop as parameters, I can iterate through the loop and draw each edge individually. And the edges "accumulate" in the way I'm looking for: a new edge each iteration, between adjacent vertices, and edges drawn on previous iterations are still there. But this leads to the second question...

My original goal was not necessarily to draw an edge at every vertex in a spiral, but to draw edges between, e.g., adjacent lines instanced on the vertices of that spiral. That's why I was using the Object Matrix Output node, Object Mesh Data node, etc. But when I try to use the current solution in this way, I get my original problematic result. I can't get edges between adjacent instanced shapes to "accumulate" in the same way. I have the sense I need another loop for that, but I don't know how to do it. (Is this too much discussion for comments?? Should I ask another question?)

@Chris I am not entirely sure what you mean by "accumulate" and "each iteration". Do you mean that you want the edges to be drawn one by one as the animation is played?

Yes, exactly. I keep saying "iterations" because I'm thinking about it in terms of iterating a loop, either by hand or with time info. But, yes, I want edges to be drawn one by one.

@Chris Simply use the Slice List node to slice the edges list, where the time from the Time Info node goes into the end index.

Thank you so much for your help with this! I've been working this afternoon and have managed to get everything working using the Slice List node as you suggested. I've even been able to extend this solution back to my original problem, using a few other instances of Slice List and Shift List. These uses of both these nodes have kind of blown my mind. Thanks again!

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


text:
Why archipack menu only appears when object is selected?
I've had my first experience using archipack with Blender. I've already had an issue that I haven't found covered elsewhere. Blender crashed while performing an archipack task and, upon restarting, the Archipack menu had gone from the sidebar.
If I create an archipack object with the Add Mesh option then the menu appears whilst this object is selected, but vanishes. Should I deselect that object? I know I could carry on with the Add Mesh option but I find it slower and am much faster with the sidebar interface opened. Any suggestions on how I can restore this functionality?

Archipack tab is "contextual", meaning it is only available when an archipack object is selected.


text:
Set a projector at UVProjection modifier (script)
I am trying to create a script that involves the creation and setup of a UV Project modifier. When it comes to set the UV Map of the projector, there is no problem at all:
import bpy

bpy.data.objects['piece'].select_set(True)
bpy.ops.object.modifier_add(type='UV_PROJECT')
bpy.context.object.modifiers["UVProject"].uv_layer = "UVMap"

But when I'm trying to set the projector object, I find no way to do it, as "projectors" property seems to be read-only:
https://docs.blender.org/api/current/bpy.types.UVProjectModifier.html?highlight=projection%20modifier
Q: Am I missing something or precisely that property is just not scriptable?

Similar to How to add modifiers using python script and set parameters?, the recommended way is to add a new modifier to an object using ObjectModifiers.new() which returns the reference to the modifier and allows to assign whatever you like:
import bpy

# Get the object in context
obj = bpy.context.object

# Add the modifier to the object in context
modifier = obj.modifiers.new(name="project", type='UV_PROJECT')

# Properties
modifier.uv_layer = "UVMap"
modifier.projector_count = 10

for p in modifier.projectors:
    p.object = bpy.context.scene.camera

projectors property is of type bpy_prop_collection, which is essentially a list of object references. In order to assign an object to each Object property of the modifier, you would have to assign an object reference like bpy.context.scene.camera.

Thank you very much. It worked just fine and did what I was expecting. My strategy consisted of seeing the info window and try to copy/paste instructions into a script in order to automatize them, but it seems it is not working like this. Best regards

Glad it helps @JaimeFinat


text:
How to duplicate a certain collection using Python?
Is it possible to duplicate a collection from a Python script? When I do it manually, the Console shows bpy.ops.outliner.collection_duplicate(), however if I call it from script, there is a problem with context:
RuntimeError: Operator bpy.ops.outliner.collection_duplicate.poll() failed, context is incorrect
Does that mean that collection_duplicate() can be called only from the Outliner editor? If so, how to 'fake' it from a script?

This will duplicate the active collection in the outliner:
import bpy

for window in bpy.context.window_manager.windows:
    screen = window.screen

    for area in screen.areas:
        if area.type == 'OUTLINER':
            override = {'window': window, 'screen': screen, 'area': area}
            bpy.ops.outliner.collection_duplicate(override)
            break

From the documentation example here: Execution Context

Works great! Thank you!

API method
If you know the collection you wish to dupe, and the collection you wish to parent to, consider something like below.  Because a collection can have many parents, I'm not totally sure without using the outliner how to determine which instance of the collection is being duped, and hence where in the hierarchy to paste.
As a test, I've copied the context collection to to the scene collection, with and without linked data.  Using a method that recursively creates a new collection and populates it with object copies from the source.
EDIT. Have added a look up table with original -> dupe to change a dupes parent to a dupe (if duped).  Other things to consider here are driver variable targets, constraint objects, modifier objects.
import bpy
from collections import  defaultdict

def copy_objects(from_col, to_col, linked, dupe_lut):
    for o in from_col.objects:
        dupe = o.copy()
        if not linked and o.data:
            dupe.data = dupe.data.copy()
        to_col.objects.link(dupe)
        dupe_lut[o] = dupe

def copy(parent, collection, linked=False):
    dupe_lut = defaultdict(lambda : None)
    def _copy(parent, collection, linked=False):
        cc = bpy.data.collections.new(collection.name)
        copy_objects(collection, cc, linked, dupe_lut)

        for c in collection.children:
            _copy(cc, c, linked)

        parent.children.link(cc)

    _copy(parent, collection, linked)
    print(dupe_lut)
    for o, dupe in tuple(dupe_lut.items()):
        parent = dupe_lut[o.parent]
        if parent:
            dupe.parent = parent

# test call
context = bpy.context
scene = context.scene
col = context.collection
print(col, scene.collection)
assert(col is not scene.collection)
parent_col = context.scene.collection

copy(scene.collection, col)
# and linked copy
copy(scene.collection, col, linked=True)

Note
For a totally linked copy, ie the objects and collections within are linked copies then
cc = collection.copy()

will do the trick.
Related
Change active collection

Thank you for a detailed answer. I tested it and it works as described. I marked another answer as correct because it appeared earlier and is a valid answer to this particular question. I also like your answer because it is a good working example of how to manipulate objects and collections.

Cheers and No probs. On a purely semantics lilt:  Despite the big green tick, it's "accepted"  (by you) rather than being "correct" which implies other answers are unaccepted rather than incorrect lol.  If I had my way would change SE such that any or all answers could be accepted. and one is "favoured"  To quote RickyBlender "Happy Blending"

Thank you for the explanation. I think "accepted" makes more sense :)

@batFINGER Hey, someone on a related answer pointed out that while your solution copies a collection and all its objects, it doesn't retain the parent relationship between them. Do you think it would be possible to edit the answer to add it to the features ? (I may be able to do it if you don't mind)

Alright, awesome ! :)

Gorgious is right, it doesn't retain the parent relationship between them which gives impredictibles results, would be nice to fix this, thanks

After a lot of trial and error (mostly error) here is a routine I came up with to copy one collection to a new collection by name. You can copy the inner objects as linked objects with the third parameter.
def duplicateCollectionByName(origName,newName,linked=False):
    original_collection = bpy.data.collections[origName]
    new_collection = bpy.data.collections.new(newName)
    bpy.context.scene.collection.children.link(new_collection)
    new_index=len(bpy.context.scene.collection.children)
    bpy.ops.object.select_all(action='DESELECT')
    for obj in original_collection.objects:
        obj.select_set(True)
    bpy.ops.object.duplicate_move_linked(OBJECT_OT_duplicate={"linked":linked, "mode":'TRANSLATION'})
    bpy.ops.object.move_to_collection(collection_index=new_index)
    return new_index

It is cool that when you perform actions in the Blender scene you can see the code spit out. Too bad it is wrong 90% of the time. Well, not "wrong", but it often uses commands that simply don't work inside python. I have performed tasks then copied/pasted that command into the console and most times it just throws an error. That is frustrating.

Here is a version I came up with.
It preserves the hierarchy but does NOT copy the object data.
Copy the data along the object and rebind them if you want a deep copy.
#=====================================
def clone_collection(src : Collection) -> Collection:

    sc = bpy.context.scene

    # create a new collection to collect copied objects
    clone_collec = bpy.data.collections.new('clone')

    # add the created collection to the scene
    sc.collection.children.link(clone_collec)

    # duplicates 'src' collection root objects recursively
    for obj in src.objects:
        if (obj.parent == None):
            clone_object_recursive(obj, None, clone_collec)

#-------
def clone_object_recursive(obj : Object, parent: Object, clone_collec : Collection):

    copy = bpy.data.objects.new(obj.name, obj.data)
    copy.parent = parent
    copy.matrix_local = obj.matrix_local
    clone_collec.objects.link(copy)

    for child in obj.children:
        clone_object_recursive(child, copy, clone_collec)


text:
How to load and display an image in the image editor using python?
How could I load an external image and display it in Image Editor automatically?  Basically the same as when rendering an image and displaying the Render Result.
I'm already able to load the image programatically. However, I don't get how to display the image in the Image Editor.

If the image editor is used in one of the visible areas of the current workspace, you can iterate through bpy.context.screen.areas to find the one with type IMAGE_EDITOR. The image that is shown in the editor can be set through the space of the area.
An image can be loaded through bpy.data.images.load().
import bpy

img = bpy.data.images["Render Result"]
# img = bpy.data.images.load(filepath)

for area in bpy.context.screen.areas:
    if area.type == 'IMAGE_EDITOR':
        area.spaces.active.image = img


text:
Is there any way getting a more accurate behavior of the pie menus on hover?
The snapping menu specifically is giving me trouble when ever I hover over what I want it just doesn't seem to highlight correctly. I've never been a fan of pie menus they seem to slow me down as my eyes are scanning in all directions rather then just up and down like 2.79 I'm miss clicking more with these new pie menus then I ever did with the old menus in 2.79.
Is there anything that can be done about this is been a problem since Beta?

Pie Menu Settings

Pie Menus
Animation Timeout
Length of animation when opening Pie Menus.
Tap Key Timeout
Keystrokes held longer than this will dismiss the menu on release (in 1/100ths of a second).
Recenter Timeout
The window system tries to keep the pie menu within the window borders. Pie menus will use the initial mouse position as center for
this amount of time, measured in 1/100ths of a second. This allows for
fast dragged selections.
Radius
The size of the Pie Menu set with the distance (in pixels) of the menu items from the center of the pie menu.
Threshold
Distance from center before a selection can be made.
Confirm Threshold
Distance threshold after which selection is made (zero disables).

Setting from python console:
>>> C.preferences.view.pie_menu_threshold = 1
>>> C.preferences.view.pie_menu_radius = 20
>>>

I have tweaked these settings in the past little improvement but setting the threshold lower does seem to help a bit. Thanks for the answer!

Pie menus are reliable with cursor near the center.
Their precision decreases the farther you're from the center.
The UI could definitely be improved, but it works reasonably well.


text:
Weird grainy texture in default brush in paint texture mode
I'm using Blender 2.75, I made a model and UV mapped it to a black image, then colored it using texture paint mode brushes without problems as it was mostly solid colors with blurred transitions. Today I changed the mesh and had to unwrap again, but I lost parts of the texture and decided to paint it again.
The problem is that the brush now shows a weird grainy texture. I checked and no textures are assigned for the brush. I tried other brushes and they all present the same behavior. It's looks a pixelated brush that looks very ugly and I cannot make it soft no matter what I change.
The weird part is that the brushes work normally in the UV Image Editor. This only happens in texture paint mode if I paint directly on the model.
Could it be a bad setting? is this a common problem/bug? what can I try to solve this without losing the part of the texture that is correct?

check your UV map. After you edited the mesh, that might of messed it up.

I discovered it was the mirror modifier thanks

I discovered that I had not applied the mirror modifier and that was causing the issue, apparently it was putting the model over itself and the brush did not know which one to paint.
After applying the mirror modifier and making sure I did not have double faces it worked fine.

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


text:
Is it possible to create (render) animated transparent filters?
I would like to know if it is possible to render a transparent animation in Blender to use it as a filter to record video as snapchat does it but with static png filters?

Not really png are static, i am looking for animated filters to add on top of recording video.

@johnconnor render as a png sequence with transparent background.

Thanks for the answers, i will try it out and come back to tell if it worked.

authors: Анастасия Малиновская


text:
Compositing Render layers node two scenes two resolutions
The context :
I have two scenes let's call them S1 and S2.
S1 has a camera of a resolution of 1080*1080 (square).
S2 has a camera of a resolution of 1080*1920 (vertical).
I have created a composition in S1 that looks like this :

I get a rendered image that is a square whereas the render layer should be vertical. I wanted to have a vertical image inside a square canvas. I know i could have used a image node or movie node directly into S1 composition. I just want to be able to compose multiple render layers with different resolution into a square canvas. How could it be achieved?
Thanks for your help.

Hi. Please only ask one question at a time. You are welcome to ask multiple questions but as separate posts. I suggest editing your question down to just one question (by using the [edit] link below it) and asking the other one separately. Thanks

Hi Ray, i added the second question because it is related to the first. I ll edit and put the second question into a new post i guess the probability to get an answer could be higher.


text:
Why does baked position pass look different than connecting position to base color?
When baking a position pass with Bake Type = Position, the position looks binary - each color channel is either completely white or completely black, with no gradient between them. Here is how it looks like on the default cube:

When connecting Geometry -> Position to the shader, and baking the Diffuse pass, I get something else, which is what I would expect when baking the position:

What am I missing, and how do I make the position pass look like the second image?

Cannot reproduce your problem with bake of position.  Can you provide file?  Want to see bake settings, image settings.  In meantime, simple workaround: plug position into output, bake emission, same as baking any arbitrary value (not really sure why position bakes were even implemented like this, this is a road that ends in sadness when we have forty screens of bake types....)

I have a workaround (baking the base color as diffuse, or emission as you suggested), was just trying to understand why Bake Type = Position isn't working for me. I need to do this with scripting and using the Position type will be a bit simpler than creating the shading network, if it worked. I start from the default scene with the cube, add an Image texture node with a new image (tried with float32 and without), and use the Cycles Bake menu with "Position".

My reproduction was make a cube, set bake type to position, put a 32 bit non-color image node in the material, and bake.  And I got your last image, not your first image.


text:
Spiral wrap around hydraulic hose
I'm trying to make spiral wraps for my machine kind of like the ones in the picture.
The spiral wrap is around hydraulic hoses that moves so the spiral wrap need to deform with the hoses. I have got the hydraulic hose figured out but I can't find the solution for the spiral wrap. Is there a relatively easy solution to this? I potentially have to make a lot of these.

Anyone else who have had the same problem? I'm thinking there must be someone else who have had the same challenge but I cant find anything wilts searching online.
Thanks in advance!

https://blender.stackexchange.com/questions/139523/how-to-model-the-curly-cable-part-of-the-phone https://blender.stackexchange.com/questions/157053/creating-a-spiral-along-a-bezier-path/ https://blender.stackexchange.com/questions/166252/animating-rocking-horse-with-a-spring-base/ https://blender.stackexchange.com/questions/282515/how-to-make-braided-tubing/ https://blender.stackexchange.com/questions https://blender.stackexchange.com/questions/58959/how-to-model-braided-nylon-sleeve

Hello and welcome. This question seems to have been asked before in multiple forms over time, and already has various answers but you never acknowledged any of them. We are not sure if you aware of the existing posts but none of the described techniques address your particular requisites, or you simply didn't do any research at all. Could you [edit] you post and clarify how your question differs from the suggested duplicates? Otherwise could you rephrase it to focus on a particular step you are stuck with?

Thank you! I was not able to find any of these when I searched, but I'm new to finding things to this site so I'm not quite sure how and for what to search for.


text:
About animating a skined rigged character
I'm new here and new to animation in blender. My question is, is it possible to animate a part of the character when they are already skinned and rigged? I'm talking about animating the actual model, not the bones or rigging.
for example. I select my character and go into edit mode, then apply a keyframe to a part of their skin, than move that skin out to create a bulge, and then create another keyframe.
Is it possible or not after rigging?
Any help in understanding would be greatly appreciated. Thanks

Thank you. I will try shape keys. :)

You can use the shape keys, example:

You can also use the Animall addon to animate vetices, it may be more flexible than shape keys.


text:
Mask Brush Not Showing in Sculpt Mode
When I select the Mask tool in Sculpt Mode and try to paint, nothing shows up.
Mask is turned on in Overlays and set to 1.0.
The Strength is set to 1.0.
Any help would be greatly appreciated. Thank you!

Ctrl M used to be the shortcut to hide the mask but it doesn't exist in the latest versions, what version are you using? Maybe share your file: https://blend-exchange.com/


text:
Clothes shrinking inside my character
I've been doing a character for the last days and I'm currently trying to make some clothes, I had some prototypes done and after finishing some corrections to my characters mesh I applied the subdivision modifier, right after that all the clothes start shrinking inside my character

Can you please add images? It's extremely difficult to say anything without them.

Nevermind, I fixed it accidentally, I think what happened was a wrong orientation of the faces and it was fixed when I recalculate them for the mesh painting, thanks anyways


text:
Animate cloth squishing breast with physics
I have a character with breast physics made with cloth simulation and some clothes (made also with simulation) but I'm trying to add an squish effect to the interaction of the breast and the clothes, how can I achieve that?

Maybe this video will help you https://youtu.be/sgnA3bxykdI

I like to use a mesh deform modifier for squishy things:

Once  bound, you can animate the mesh deformer to deform the modified mesh.  Here, I'm using a shapekey on the mesh deformer to do so, but you can also use an armature or physics.
If you want to interpolate smoothly from something mesh deformed to something undeformed, you can use vertex groups, or you can create a shell for your mesh deformer:

Notice the normals-- it's not a solidified mesh, both surfaces' normals point outwards.  Animate the inside and leave the outside unanimated, and you'll get smooth interpolation from deformed, at the bound border of the inner shell, with undeformed, at the bound border of the outer shell.
If used in conjunction with an armature, I'll usually use a bone-parented mesh deformer with a dynamic bind:

The bone-parented mesh deformer follows the bone by transformation, echoing the mesh deformation; then, it deforms the mesh in the new positions of the deformer and the modified mesh.
(You could also do the mesh deformation before the armature, with an unparented mesh deformer, but then you can't reasonably animate the deformer with physics.)
If there are multiple layers, and they have reasonably similar topology (or enough vertex density, distance that it doesn't matter), you can bind both to the same mesh deformer and get the same deformation:

This is like what I already have, I made a mesh wit the shape of the breast and bound it to the body with mesh deform and apply cloth physics, then i parent that area to some bones with a few modifiers that allow me to have a good jiggle physics and interaction/deformation with external objects but when I try with clothes the mesh goes thru the breast, i solution this by adding collision modifier on both but now it acts as if the breast was A solid object even if it's jiggling, and if I turn the collision of in the breast it acts as if the cloth is a solid object with cloth physics

Use the same deformer for clothes and body to prevent clipping.  But really, it sounds like you have a lot of details that you neglected to mention in your question, and maybe you should ask a question that focuses on what you want to achieve, what you've done so far, and how what you've done so far falls short for you.


text:
My animations stopped working
After completing the last animation, I noticed that half of my animations stopped working correctly.

hello could you please share your file (only the armature)?

@moonboots I am a first time user of this site, could you tell me how to send you the file?

link

thanks but these are not the same armature and actions than what you show, maybe the keyframes are for bones that doesn't exist in your armature?

Yeah, thanks, I just saw that the bones have the wrong names on the armature.

The bones of your amature don't have the correct names so they can't be animated by the action.


text:
Is there a keyboard shortcut to open and close these areas?
I accidentally closed the panel that has a red circle (I dont know the name of it lol). I had to close everything and load the project again and untick the 'load UI' to restore that panel again. Is there a shortcut to open/close it similar to properties and toolbar panel?

I tried the answers from the duplicate but I'm talking about specifically the panel on the right side with the red circle on it. I'm just wondering if it has a shortcut button like the toolbar T and properties N panel.

Actually your highlighted area consists of 2 Area types (called Outliner and Property Area) rather than one Panel. Related questions: https://blender.stackexchange.com/questions/8384/how-can-i-reset-my-menus and https://blender.stackexchange.com/questions/34174/can-screen-layouts-be-locked/34183#34183

Very likely that you pressed Shift+Spacebar by accident and toggled the 3D view fullscreen.

FINALLY so its shift+spacebar.....THANK YOU SIR! :D

@Shaun, yes Shift+Spacebar will toggle full screen for any view area the mouse cursor is in.

Just keep the cursor in the 3D View and press Shift+spacebar.


text:
How to stop blender from generating duplicate vertices on export?
Yes, I know, use Mesh -> Clean up -> remove by distance.  I did that, and in blender, it appears as if things are all fine and dandy, I made 3 cubes and made pyramids at the end, total vertex count is 18, makes sense to me.  Export object as gltf, and I get... 84 vertices...

This is the GLTF report

gltf image, and my blender:

You can see in the bottom corner, 18 verts....
And for the final touch, here's the output from my tiny_gltf loader c++ program, which outputs vertices, and says the number of vertexes and indexes.
{NORMAL: 1}
{POSITION: 0}
{TEXCOORD_0: 2}
COUNT 84
INDCOUNT 96
(1, 1, -1)
(1, 1, -1)
(1, 1, -1)
(1, 1, -1)
(1, 1, -1)
(-1, -1, 1)
(-1, -1, 1)
(-1, -1, 1)
(-1, -1, 1)
(-1, -1, 1)
(-1, -1, 1)
(3, 1, -1)
(3, 1, -1)
(3, 1, -1)
(3, 1, -1)
(3, -1, -1)
(3, -1, -1)
(3, -1, -1)
(3, -1, -1)
(3, 1, 1)
(3, 1, 1)
(3, 1, 1)
(3, 1, 1)
(3, -1, 1)
(3, -1, 1)
(3, -1, 1)
(3, -1, 1)
(1, -1, -1)
(1, -1, -1)
(1, -1, -1)
(1, -1, -1)
(1, 1, 1)
(1, 1, 1)
(1, 1, 1)
(1, 1, 1)
(1, -1, 1)
(1, -1, 1)
(1, -1, 1)
(1, -1, 1)
(1, -1, 1)
(1, -1, 1)
(4, 0, -0)
(4, 0, -0)
(4, 0, -0)
(4, 0, -0)
(-3, 1, 1)
(-3, 1, 1)
(-3, 1, 1)
(-3, 1, 1)
(-3, 1, 1)
(-3, -1, 1)
(-3, -1, 1)
(-3, -1, 1)
(-3, -1, 1)
(-3, 1, -1)
(-3, 1, -1)
(-3, 1, -1)
(-3, 1, -1)
(-3, 1, -1)
(-3, -1, -1)
(-3, -1, -1)
(-3, -1, -1)
(-3, -1, -1)
(-3, -1, -1)
(-1, 1, 1)
(-1, 1, 1)
(-1, 1, 1)
(-1, 1, 1)
(-1, 1, 1)
(-1, 1, 1)
(-1, 1, -1)
(-1, 1, -1)
(-1, 1, -1)
(-1, 1, -1)
(-1, -1, -1)
(-1, -1, -1)
(-1, -1, -1)
(-1, -1, -1)
(-1, -1, -1)
(-1, -1, -1)
(-4, 0, 3.01992e-07)
(-4, 0, 3.01992e-07)
(-4, 0, 3.01992e-07)
(-4, 0, 3.01992e-07)

Look at all those duplicates! how do I stop blender from ruining my meshes on export?
This doesn't really answer my question, but I found a temporary work around by copying the vertices on the mesh and deleting the old one.
Q: Is this just a really bad bug or something?

something hidden in the outliner?

@AllenSimpson I undid what I just did, and there did seem to be like 5 duplicate collections... and 4 meshes... I was on the scene instead of blender file menu.  Yet multiple times I removed duplicate vertices, and when I move the selected object, there's no objects underneath. So I don't understand how these random objects got left around.

Maybe this https://docs.blender.org/manual/en/2.80/addons/io_scene_gltf2.html#meshes

It is incorrect to assume the number of glTF verts will equal the number of Blender verts. Each glTF vert has a unique normal for example, while each Blender vert can have a different normal for each poly it is in. Your model uses flat shading and you can see each vertex has multiple normals.

To handle this there are "duplicate" glTF verts (that have the same position, but different normals). The same thing happens for all other "vertex per poly" data, like UVs.
"Duplicate" verts are inserted only when necessary, so turn off export of anything you don't need—normals, tangents, UVs, vertex colors, materials—to get a smaller glTF vert count.

This appears to be the issue (though there were 6 extra vertices unaccounted for when I just reran only re-nabling normals)!  I didn't think about the normal aspect of this, indeed for indexing to properly work each normal would need to correspond to a duplicated vertex.


text:
Shortcut to quickly add texture in the shader editor doesn't work?
I am trying to add textures in the Shader Editor using the shortcut Ctrl+Shift+T, but nothing happens.
When I first came across this shortcut watching a tutorial, it worked perfectly fine but the next day I opened the same project it didn't work anymore. And since then, still doesn't work.
I have updated Blender to 2.91.2 in order to see if that would fix the problem but nothing changed.
Would you know what's the problem or where I could find that shortcut in the preferences in order to see what's wrong or just add the shortcut if it doesn't exist?

Did you accidentally disable the "Node Wrangler" add-on?

Make sure you have the Node Wrangler add-on enabled.


text:
How can i loop animate a set of images in animation node?
I have a set of images to make a slideshow. I want to use animation node addon to animate the images.
All the images will have the same animation but will stay in front of the camera with different duration.
How can i do that?
The simple slideshow i have done so far as an example :

Thanks.

Hello, could you tell us more : How familiar are you with the add-on ? What have you tried ? Where are you stuck ?

Hi, i have done very simple node trees, i am trying to increase my knowledge on the add on and do more complex technical node trees. This is what i have done for the slideshow, you can see on the original post i edited. I have been struggling to animate objects with the same animation looping but with different duration.


text:
Opened up Blender and armature isn't moving the mesh!
I've already created the mesh and armature. I weight painted the mesh and was able to make two, perfectly fine, animations (walking and running). However the next time i opened this file, the armature and animation was still there, however the mesh wasn't moving with the armature. So when i would play an animation all you could see are the bones moving while the mesh stays still. This is the second time that this is happening and i was hoping that there may be another way to fix this rather then re-doing all the bones and weights.
UPDATE:
ok so i was able to find the .fbx (because i also exported it as an .fbx for unity) folder and imported into Blender. Anyway it is now working (except the inverse kinematics disappeared) anyway is there anyway to fix this problem so it doesn't happen again?
Here's a reference that may help

Are you saving your file every 15 minutes or after every period of grueling work?  In the armature modifier panel can you see one or both of the vertex groups check box or bone envelopes selected?  Can you see if the weight groups still exist and have positive value?

Yes i frequently save and i always save before quitting, the weights are still there however the armature modifier is not there (i never applied it though but i do remember it did not have bone envelopes selected when i last used it) BTW: using Blender Render...


text:
Hair mesh not moving with rig
I'm trying to rig and animate a Hulk object I found off the internet. But, when I try posing the armature, the hair texture doesn't move with the rig. I'm brand new to Blender so please walk me through a solution step by step.
Here's a picture of the problem:

I've uploaded my blender file and assets here. Thanks in advance!

You have to go to Weight Paint mode and paint over the hair, or even better all over the head. While Bone.004(which is the head bone) is selected.


text:
How to convert equations to work with Blender and animation nodes?
I have an equation that I'm trying to animate in Blender 2.79b
The equation is.
$$y=e^{{{\log \left(1-x^{{\it (S*T)}}\right)}\over{{\it (S*T)}}}}$$
Where:
T={1.12,0.96}  % The variable **T** would be a slider in blender*
={15.3039,10.3612,7.9153,6.3793,5.3019,4.4955,3.8656,3.3584,2.9405,2.5903,2.2926,2.0367,1.8146,1.6204,1.4496,1.2983,1.1638,1.04377,.93622,.83959,.75256,.67401,.603,.53871,.48045,.42762,.37969,.33619,.29673,.26094,.22852,.19917,.17265,.14874,.12722,.10791,.090664,.075316,.061733,.049793,.039383,.030399,.0227475,.0163414,.0111008,.0069525,.0038286,.0016664,.0004081}

My thought process / how I created it in Octave / Matlab
Step 1.
Evaluate the equation for several values of S and T to see if it works and plot.  See image below.

Step 2.
Evaluate the equation for all the given values of S and T and plot. See image below.

Step 3.
Duplicate object created in Step 2 so I can rotate them at different time values to create / animate different Moire patterns.  See image below.

I'm trying to reproduce it using Blender / Animation nodes. But I'm not sure how to correctly loop through all the different values of 'S'. Then duplicate that object for rotation.
See current Blender file / image below.

The goal is to create different equations and animate them to create different animated Moire patterns.  Something like the example animation below but using different patterns created with equations.

I tried following 3DSinghVFX answer but I had some issues with his/her step 3 some of the options are either missing or other nodes are being added for me anyone know why?  See animation below of what happens (I circled the things that are different in 3DSinghVFX answer in my animation when I tried to create them) I'm running Blender 2.79b.

You need a subprogram to process a list of items, in this case list of integers: https://blender.stackexchange.com/a/131817/7777

This is very easy to do, here I'm showing for a simple equation, y = sin(W*x), where W is a parameter and x is an independent variable.
Step-1
Create two lists, one for the parameter (parameter-1 is as W in this case), and other for variable x. Make a loop using the parameter-1 list as iterator and x-values as an input list,

Step-2
Make a group node (Equation) for y = sin(W*x) equation which later helps you to easily replace with another equation if you want. I'm converting x and resultant y list into a vector list and as output from the group node.

Step-3
Then add this group node into the Parameter Loop which we created in the step-1, and you view the output vector with 3D viewer Node.

Step-4
Last step to convert group node vectors to splines (curves) using "Splines Form Points" node and then as output from the parameter loop. Use the Curve Object Output node to convert splines to a curve object which you can render.

Thanks!! for the help I ran into a couple problems with your step-3 answer.  Nodes are either automatically being added for me or options are missing.  I updated my question to add an animation to show what it's doing.  Any ideas how to fix this?

Parameter-1 is a Float value but not a Float List, you are connecting float list to float that is why list node pops up. 2) Click on "+ New Generator Output" of Parameters Loop node and search for Vector List, then connect the Vector List of Group Node.

Thanks!!!  that did it :-)


text:
Is there a way to utilize emissions in VFX?
I have a piece of footage that I motion-tracked fairly successfully, solved the camera motion, and made it into a 3D scene with that little button on the left of the motion-tracking layout. I then modelled a basic spaceship-thingy and animated it landing, with flames (specifically the fire shader from Simon Thommes) emitting light onto the ground plane (which is on the mask layer).
I would like to add the light from the flames into the footage, but it does not show up. I do see that there is no DiffuseIndirect pass in the compositing setup but I do not know how to mix that pass in and, if I can, whether the light from the HDRI will mess it up.
Is there a way to add in emission so that the render will look more realistic?

Not entirely sure where your particular problem is, but here are some small pieces of advice if you are trying to take the work in this direction. First, if you can, use the camera’s log encoded footage and take it to scene referred for the compositing. Second, specifically regarding emissions, simply use alpha. That is, an emissive-yet-non-occluding value is an RGBA set with zero alpha. It ends up a simple add. Blender is quite broken for many file formats, but EXRs should work here.

A method to get believable light interaction with the environment, is to recreate the environment.

I have chosen this template image. The process will be the same for moving, tracked footage, but the tracking must be very accurate.
I chose this background image by Hans Weingartz - Self-photographed, CC BY-SA 2.0 de. Click to enlarge.

I have recreated the environment with very basic shapes. This result in the following layer setup.

Layer 1: Cg object, which is inserted.
Layer 2: Recreated environment with computer generated light. Try to match the reference as close as possible. I used some simple diffuse, glossy and emission shaders, but you can always try to extract color information from your footage. Especially with high contrast areas like checkboard patterns or dark ridges, you should take great care to achieve similiar color values through your artificial lighting of the recreated environment.
Layer 3: The environment object, but this time with the camera image mapped onto it for maximum accuracy. The background image is just applied as the emission color and this object will be used for the lighting and reflections of the cg object on layer 1.

Now, I create three Render Layers.

environment_clean This is just the recreated environment with virtual lighting on layer 2. Use the exclude layers to exclude the cg model from layer 1 and also the reflection object from layer 3.
environment_shaded This is the same environment as above (layer 2), but this time without excluding the cg model. Although the model is not visible (layer 1 is switched off), it is not excluded and will therefore influence the lighting/shading of the environment on layer 2. Exclude layer 3, since the duplicated environment is still not relevant.
cg model This is the render layer which will render the model on layer 1. The recreated environment with virtual lighting is excluded. The environment with the camera mapped footage on layer 3 will not show up (since it is not checked in the render layer), but will influence the lighting of the model, especially visible in reflections.

Illuminating the background footage
Since we have rendered a virtually lit environment with and without influence of the cg model, we can create the difference between the lighting. We will then apply this difference to the background footage.

Subtract the environment_shaded from the environment_clean render layer in compositing nodes. It is important the you uncheck clamp, since shadows are going to be values below 0.0 (which we don't want to cut off) and lights are going to be values above 0.0. The subtracted result is the difference in lighting between our environment and the environment influenced by the model. Add this to the background footage. The background image will now appear as if illuminated and shaded by the cg model.
Note, that in the areas, where there are dark colors in the original live action footage, but light color in our virtual environment, the added lighting looks very unnatural.

While shadowy areas would naturally receive light, objects with dark colors won't get equally lighter as object with brighter colors. A quick and easy fix is to only add the light/shadow to already bright areas. We can achieve this by using the original image (modified by a colorramp) as the Fac value for the addition.

Obviously a more convincing image is accomplished by modeling and shading the virtual environment more accurately. (Or combined both.)
Add the cg model (render layer) on top of this modified version of the background using a mix or alpha over node.

Here is the complete node tree.

Render Time vs Workload
The rendering process will obviously take much longer than a simple shadow catcher or other tricks, because it uses three different layers. The two environment layers will take a lot of render time because their noise will accumulate in the subtraction and they usually need a high sample count for the indirect lighting. The setup will however easily produce a realistic render result in little work time.

It worked! The one thing I would add is a picture that shows the entire node setup. Thank you for your help!

@The Added the image.

One last thing. Under the cg_model render layer settings, set layer 2 as a Mask layer. This makes the cg models disappear if they go behind the models of the environment. (Or was this covered in the mask in the node setup? I didn't have any but setting layer 2 as a mask did the trick for me.)

@The Great idea, however, I find it easier to mask out the foreground objects of the footage, than to perfectly replicate the environment. My tracking is usually not subpixelperfect. Feel free to edit the answer to add this info.

When I try this the emissions get all weird. What do I do wrong? https://imgur.com/a/SnL6hXu

@Phönix You didn't do anything wrong. The drawback of this method is, that you have to recreate your environment virtually. extremely well. The colors and shading of the street footag is quite bright compared to the blueish more saturated cg version. That's why your shadow color is way off in composting. You either have to recreate the environment in true colors (maybe with camera projection and baking) or fix the colors in composting before adding the onto the image

@Leander Okay, thanks, yes a mixture of beter enviroment recreation and compositing fix has done the trick. Thank you


text:
How to connect all polygons of the model into one whole?
My model is divided into small polygons, and I need to merge them all into one whole. How can I do it, except to connect all these polygons manually?

Select all (A) then M > Merge by Distance


text:
Exporting a tank track belt as an .stl for 3D printing
I'm trying to make a 3D printable tank model, and have made a set of tracks for it using this tutorial. Unfortunately I can't seem to work out how to export the track links as an .stl so I can easily print them! I wanted the tracks and running gear/wheels/suspension etc to be printed as a single piece (they're not going to be workable as it's intended to be mostly a static model, and having the running gear being printed as one piece for each side of the hull seemed like a sensible solution for ease of printing/assembly) but I cannot export them properly; it keeps exporting the plane array but not the instanced links? I've tried applying modifiers and it makes no difference whatsoever.
Can anyone help?
Thanks!
If it helps, here's a pic of the model so far:

As it turns out to anyone with a similar problem, I just had to go to Objects/Apply/"Make Instances Real".


text:
UV for 20 different parts
So I have this model that is like made from 20 different parts. I want one big UV for all the parts but I want them to be separated, I don't want to glue the model and then cut it again into separate parts. Is it possible?

Many objects, but you don't want to join?  You can use multi-object editing.  Select all the objects, tab to edit, select all verts of all objects, u->unwrap or whatever.

thanks. btw. i'm using 2.79b for some reasons ( this game doesn't have a 3.0 export so I'm forced to use and old blender version ).

Yeah, that turns out to be relevant, no multi-object editing in 2.79.  Should be able to unwrap in a later version and copy/paste back into 2.79-- possibly, as the target of a data transfer for original object-- but untested.  There were also "texture atlas" addons that could do the same thing, but I'm not sure how much luck you'll have finding addons intended for 2.79.


text:
How to set the position of multiple vertices at once to the same global position
I have an object in edit mode. I select multiple vertices. I want to set all of their x positions to the same global position at the same time. The "Transform" panel seems to automatically change into a "Median" mode when multiple vertices are selected, so the operation won't move the vertices to the same global position (instead, the Median).
I read on another post that holding down the Alt key before hitting the Enter key (after setting a value in the X box) should apply the position value to all vertices, but this doesn't work. I'm on a Mac, maybe the modifier key is different.
Thanks

what you could do: press M -> merge at center and then enter the coordinates in the transform panel with alt key

scale them to 0 (1 to 3 axis) and set it from N-panel

You can set the pivot point to the Cursor, put the cursor in the origin and then scale the vertices to 0 in the X axis. Or set it to Active, move a vertex to X=0 and then use it to scale all the others to 0

@Cornivius Why so complicated? Since all vertices should be on the same X position, just scale them to 0 on X directly on their mean position without cursor, then move them to the X location by entering the value.

Thanks these would work, I'm not sure which to accept - I was surprised that this wasn't a built-in option in the transform panel. I had a very large number of vertices to fix so I ended up making a script for it.


text:
Selecting multiple vertices at a time with Python
My goal here is to select three vertices and manually create a face using bpy.ops.mesh.edge_face_add(). However, when I run the following code, no vertices are actually selected. I have been using this (How do I select specific vertices in blender using python script?) StackExchange question and answer to no avail. Sometimes my script will select one vertex, sometimes it will not. It never selects more than one. current_min_vert and the others are MeshVertex class objects, and should be equivalent to obj.data.vertices[n], where 'n' is any prescribed integer. Here is the code:
# Join meshes into one
bpy.ops.object.mode_set(mode = 'OBJECT')
bpy.ops.object.select_all(action='SELECT')
bpy.ops.object.join()

# Set selection mode
bpy.ops.object.mode_set(mode = 'EDIT')
bpy.ops.mesh.select_mode(type="VERT")
bpy.ops.mesh.select_all(action = 'DESELECT')

# Select vertices to form a triangle
bpy.ops.object.mode_set(mode = 'OBJECT')
current_min_vert_copy.select = True
current_min_vert.select = True
current_max_vert.select = True
bpy.ops.object.mode_set(mode = 'EDIT')

The following image is my end goal. The top right vertex is current_min_vert_copy, the bottom right is current_min_vert, and the bottom left is current_max_vert.

Any assistance is greatly appreciated.

Where do you define current_min_vert? The problem might lie here.

@BlenderEnthusiast I define my current_max and current_min verts while looping through all the vertices of my mesh object. When I print out the value of current_min_vert and others, a MeshVertex class object is printed to the command window, indicating that Blender probably recognizes it as a vertex of my mesh.
current_max = np.abs(vertex.co.x);
current_max_vert = mesh_object.vertices[i]
EDIT: My for loop was ill-formatted, so I replaced it with a simpler version.

Please always provide a minimal working example, otherwise it's hard to give a definitive answer.

Blender Python objects are short-lived and can be invalidated by various things like ✲ CtrlZ undo or switching between Edit and Object modes…
Rather than assigning chosen vertices to your variables, assign their indices to your variables, and then change these lines:
current_min_vert_copy.select = True
current_min_vert.select = True
current_max_vert.select = True

to
me = D.objects["name_of_object"].data
me.vertices[current_min_vert_copy].select = True
me.vertices[current_min_vert].select = True
me.vertices[current_max_vert].select = True

Thank you so much, this worked!


text:
Rendering Output suddenly not working?
This is not a repeat of these questions:
No file output after rendering?
How to render an animation as video in Blender?
Blender not rendering animation?
How can I make my Blender animation into a video?
As none of the solutions have helped.
I've been able to render 2 simple animations (in blender render) before without any problems. I made an animation (this time in cycles though) and changed the output folder paths, both in settings>file and properties> render. But there is no new file in the output directory. I can't figure out what I could have done between my last rendering and now to cause this problem.

I've tried with multiple image types (i.e: png, jpeg, jpegavi, etc.) but it makes no difference.
I'm able to save a single image manually from the UV/Image editor (to the output path selected), but it makes no difference when I actually try to render the animation
Running bpy.ops.render.render(write_still=True) in the Python Console doesn't render the animation to the output path selected.
Changing the device from "CPU" to "CPU Compute" doesn't help.
Blender is calculating something, as every time I hit render, I'm notified when the calculation is finished (takes different amounts of time depending on the image output i've selected).
I've tried loading "factory settings" and making a simple animation in there, but it still doesn't render to the folder I've selected.
I have both render output paths (in settings>file and properties> render) set to the same folder.

Not even other forms like this one help:
https://www.blender.org/forum/viewtopic.php?t=19567
These pictures are from the simple animation I made using default factory settings:

Are you stating that no file gets created?  The image created is not what you expected?  or Something Else?

There is no file created at all. I've added some pictures. In this .blend file, there is only one light and one camera, no modifiers, particles, physics or special settings. The file I first tried to render had a few modifiers, more lights, and 2 cameras. But I thought using the simplest example would help narrow down the problem. I feel it's something to do with my settings and not necessarily the file attributes, since I can't render even a simple animation made from the "factory settings" file.

Like it's already advised, open Blender's console (in the top left corner of default window) and set rendering anmation once more. It should write what happens.

@cegaton would you advise that I delete my question?

My renders were not appearing in the output folder as my macintosh was not linked to an icloud account.
Between my successful and failed renders (about 2 weeks) I had deleted my icloud account and created a new one. I periodically received notifications asking me to sign into an icloud account, but since I don't use icloud, I ignored them. Frustrated, I began running virus checks, reinstalled blender and restarting my computer, but it made no difference. Finally, in an attempt to have everything run smoothly, I signed into icloud (after being asked once again).
In lay terms, it seemed apple wanted to be happy before it would let a nonnative program follow the right paths.
After signing into icloud, my renders appeared on the output folder. Hope this helps anyone else experiencing a similar problem.

I had the same problem and it turns out that under "Output" I have to input the path to the entire file and not only the path to the directory I want the rendered video to be.
So this was not working:
C:\someFolder
But his is:
C:\someFolder\myVideo.mp4
Which is odd because I could swear that I didn't have to do this the last time I rendered a video in the sequencer. What is also strange is that there is no error or warning message shown by Blender. It just renders the video and creates no file. Which can be quite frustrating if you waited for hours for it to finish.
Edit: I'm using Blender 3.1.2


text:
Texture isn't appearing in final render
When I render, the image appears in shades of grey instead of in color.

Yes, I know similar topics exist, but I looked in the threads and could not find a solution. I have lighting, I have a texture. As far as I can tell it all ought to be working, but when I render it the image appears in shades of grey instead of in color and I'm at a loss to figure out why.
Here is the top ortho view:

Here is the blender render view:
Here is the Blender file itself: http://pasteall.org/blend/41455
If this has been resolved, and I simply missed the solution elsewhere, I would appreciate being pointed to the resolution since I couldn't find it.

Lets get our thought location to be the MushroomCap texture.  Image above. Scroll down on your Blender application to see the next panel.

Your texture Influence panel settings must have [Color] checked with value 1 as in the image.  This is marked with the yellow arrow.  Geometry [normal] should be unchecked.  Please verify.  The red squiggle X means ... take away the check box in your settings.  Image above. Or you can experiment and see if you like the [normal] influence.  You are an artist.  The [normal] setting does not affect color, it affects whether or not your mushroom has indentations and protrusions, dimples and pimples as a simplified explanation.

Your textures are not present in the file posted, therefore I placed some random texture to your mushroom for testing, with no artistic effort. This new texture can change the settings in the texture panel. When you posted your file it has a common mistake .... the textures from your hard drive are not present.  The textures can be packed into the file.  You can search for a info here at BSE Blender Stack Exhange on that topic.  You may not need the correction to the file if the problem is solved.
Feel free to ask any directly related question in comments.  You can vote this candidate answer up or down corresponding to whether it helps or hurts the situation.

Thank you very much! That was the solution that I needed. I'm still learning a lot when it comes to using textures, and I didn't mean not to include it, but activating Color and deactivating Normal fixed the issue. I have also since saved the texture so it will now load up with the file.


text:
How can I make my own mesh and add it to Addmenu > Mesh?
As Blender is an open-source Program of coarse I can Edit its program files !
I want to make my own mesh (Car/Bus/) and I want it become a a regular mesh In add menu like a cube,sphere (Because I use it many times)
Why?
I do not want my mesh to be in file and every time i want to use i must imported.
How Can i Make it ? - Of coarse it will be made with Python - ( Are n't I right ? )
N.B :
Plese in answer Be ware that i am new to blender python. bpy.
Refrence
Consider that this is my mesh:

And I Want Its Shortcut in This Menu Here:

You'd have to create your own add-on for this. First create a Python function that creates the mesh, then create an operator to call that Python function, then add the operator to a menu. There are loads of online tutorials on how to do these things; the Blender API documentation is a good start, as it also includes information about best practices and common pitfalls.
You can check out the built-in Add Extra Objects add-on to look at similar functionality.


text:
How Can I make a Copy of an object multiple Times Knowing that it must be animated as the original?
I was Recently working on a Science project with my Friends in school, And I have to create an animation for the project,But I have a problem in my animation.
Problem :

I have a molecule animated in A noisy way (the three spheres are animated in different ways - The two blue are child of-Parent to- the Big sphere). I Want the whole screen to have the same molecule animated Like it (having an offset between them will bell the best thing ).So how can I do it ?, I accept (Agree With) using particle system,python .....
Reference Photo - This Is what I Want (This is a part of a video)

The easiest solution here would be with DupliVerts:

Take your animated objects and bundle them as a group (Ctrl+G). This is mostly for your convenience later.
Name that group something relevant (Groups panel in Object Properties). Also a convenience.
Back in the 3D View, create a Grid object (Shift+A→Mesh→Grid).
In Edit mode (Tab), scale up the grid so it's larger than your molecule. It's important to do this in Edit mode so your scaling doesn't get messed up.
Select one of the objects in your molecule group and then select all of the other objects in the group (handy shortcut: Shift+G→Group... this selects all of the objects that are in the same group as your active object).
Shift+Select your grid object to make it your active object.
Make the grid object the parent of your molecule objects (Ctrl+P→Object).
In the Duplication panel of Object Properties, click the Verts button.
Boom. You should see a copy of your molecule at every vertex of your grid object. And when you playback your animation (Alt+A), you should see all of your molecules animating at the same time... much like the icospheres and Suzanne heads in this blend file and the screenshot below.

I noticed that you edited your question to suggest a "noisier" animation, presumably with each small animation being offset in time as well. This wouldn't quite do that. You could fake it a bit and give each animation a different orientation and location (you do this with DupliFaces instead of DupliVerts)... but offseting in time is a slightly tougher challenge.


text:
How can I Extrude Objects According to Their Colors?
I am Now making a model for an electrical component (Arduino) , I have an svg image for it , I inserted the image to Blender and I now want to extrude it to be 3D, but I do not want to extrude every object Manualy  .. I want to extrude object by colors.
This is the image :

Note :-

I do not want to use a material which give a 3D Shape
I Want this Via Anything Python,Blender....

This How It looks After importing :

[Its not Seen Clearly visible  because many objects are in the same position]

Could you please show how it looks after importing to Blender and converting to mesh?

Svg is not an image...

@LukeD I added an image.

what you have above imho are several objects of "curve" type (importing from svg gives curves). Each separate "curve" will have a basic material color like in the svg.You cannot extrude curves. You have to convert them to "mesh" objects. Then imho you can select each object by their rgb colors, and extrude them  accordingly. Manually or by python script.

@m.ardito I Converted To mesh , And Now i want to extrude it. How?

@m.ardito you can extrude curves, and you should not be destructively converting to mesh unless needed. See https://blender.stackexchange.com/questions/92632/creating-an-bevel-inset-on-an-imported-svg and https://blender.stackexchange.com/questions/47825/extruding-vector-files-in-blender

...yes, true, sorry :) but, anyway, I would work with real mesh in this case. It's quite detailed and I would like to have mesh tools available (uvmap, eg)... I see no particular benefit here to keep them curves tbh.

see this as a primer for blender python scripting https://docs.blender.org/api/blender_python_api_2_77_0/info_overview.html

about converting to mesh, I said that because I guessed you wish to obtain something like this: https://i.sstatic.net/vQHRw.jpg and maybe add decals and textures to replicate the real thing. This is impossible with just curves, I fear, but quite easy with meshes. I would learn to do it manually first, then try to automate a "perfect" workflow learning blender python scripting...

There may be a good answer within Blender.  But if you just need to get the job done, you could open your SVG file in Inkscape.  Inkscape has the ability to select objects by the same colors, e.g. select one object with the desired color and choose "Edit --> Select Same --> Fill Color".  In this way you could create several SVG files, each containing only objects of the same color.  You can then import each SVG file separately and give each one a group, so that you can select and edit the group easily.
I did this with a circuit board SVG (a two-dimensional one) I found online with the following results:

The curves can indeed be extruded without converting to meshes, simply modify the "Extrude" value under "Modification" in the "Geometry" section of the curve data tab.  If you want to set all the extrude values at once, join the curves first.  This is a good reason for keeping them as curves for as long as possible, btw.


text:
How I can emit Hair particles In arranged ( Grid ) Way?
I want my hair particles Not To Be Placed in a randomly places as default In Blender but, To be placed in arranged Way (Form) .
Here Is My Problem  :

If know how To Solve this Problem
So Please tell me.THANKS

Actually When I Enabled Advanced Options Even Distribution Was Already Enabled And When I Disabled Random Nothing Happened.But When I Disabled Even Distribution It Became Organized But Not In The Way I Wanted it was Placed In A Triangle Shaped Path  .Thank You Any Way.

Sub-divide your mesh and reduce the amount of particles to see the effect. You can put a particle on every face or vertex if you choose.

I subdivided my plane and decreased the amount of the particles but it didn't seem to be different. So can you show Me the Way of  putting a particle on every face or vertex?

Select  the vertices of your subdivided mesh and make them a vertex group
Set a particle system and select Vertex as the emitter.
Add the group in the system's Vertex Groups section (Density field, at the top)

Maybe it works.

Can you please add a screen shot ... so that it is easier for any one who is new in blender ?


text:
How to check if a mesh is a two-sided manifold?
I would like to check if a given mesh is a two-sided manifold rather than something like a Mobius strip. I can use bpy.ops.mesh.select_non_manifold() to check if it is a manifold. But how can I know whether it is two-sided?
For example, the procedure should be able to tell that the mesh created here is not two-sided.


text:
Bones move up on z axis when dope sheet frame slider moved
I'm having trouble inserting key frames to create an animation in blender 2.83.
The issue is that when I move the dope sheet slide to the right (increase frame number), then the bones lift out of my character on the z axis as if he died and the spirit is going to heaven lol.
Can anyone say why this could be happening?

What should I do if no one answers my question?

Delete question and move to decent forum

Suggest add more detail and your own efforts to your question body instead of adding "Unanswered! --->" to the title, Thanks. This will "bump your question to the homepage and get more people interested in" (hopefully) and is the gist of the page linked by susu. Also consider that this page is driven by volunteers spending their spare time answering questions.


text:
Blender 2.8 - show hidden files in file browser?
I'm working on Blender installed on Ubuntu 20.04. I installed my fonts using the Typecatcher in order to get Google Web Fonts. Typecatcher installs the fonts in a user home directory under ~/.fonts/typecatcher/.
Unfortunately I can not 'Unhide' the hidden directory in Blender in order to get access to the fonts (the one with the dot in front). I tried Ctrl-H but that doesn't work. Is there a way to get access to that location or should I just move the fonts to another location?

You can click the Filter dropdown menu (Display Mode) at the top-right of the File Browser in order to enable 'Show Hidden' which displays all files (or just press H to toggle the that mode on/off):

Works perfectly, thank you!

You are welcome @Andreli


text:
How can I get the full path of the selected file from the file explorer?
I have tried in several ways and the only one that worked for me was through a modal that extends from ImportHelper, however I would like to do everything from the main panel:

import bpy
from bpy.props import StringProperty

class MainPanel(bpy.types.Panel):
    bl_idname = "Test"
    bl_label = "Test File"
    bl_space_type = "VIEW_3D"
    bl_region_type = "UI"
    bl_category = 'View'

    def draw(self, context):
        layout = self.layout
        scene = context.scene

        layout.prop(scene, 'file_')

def showPath(self, context):
    print("filepath: ", bpy.context.scene.file_)# return only //x_bot.json
    print("self.filepath", self.filepath)# return error

def register():
    bpy.utils.register_class(MainPanel)
    bpy.types.Scene.file_ = bpy.props.StringProperty(
        name= "File",
        subtype='FILE_PATH',
        update=showPath
    )

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

if __name__ == "__main__":
    register()

bpy.path.abspath()

Returns the absolute path relative to the current blend file using the “//” prefix.

TLDR; Just call bpy.path.abspath(your_path) to get the absolute path representation.

There is no reason to display the absolute path nor convert it because the user can set it to absolute or relative in the File Browser (N):

Also notice: there are several naming conventions like adding a separator to the name of your panel class or using lowercase names for functions and variables (PEP8):
import bpy

class CATEGORY_PT_CustomPanel(bpy.types.Panel):
    bl_idname = "OBJECT_PT_my_panel"
    bl_label = "My Panel"
    bl_space_type = "VIEW_3D"
    bl_region_type = "UI"
    bl_category = "Tools"
    bl_context = "objectmode"

    def draw(self, context):
        layout = self.layout
        scn = context.scene

        col = layout.column(align=True)
        col.prop(scn, "my_path", text="")

        # Print the absolute and relative path to the console
        print ("REL:", scn.my_path)
        print ("ABS:", bpy.path.abspath(scn.my_path))

def register():
    bpy.utils.register_class(CATEGORY_PT_CustomPanel)
    bpy.types.Scene.my_path = bpy.props.StringProperty(name="File", subtype='FILE_PATH')

def unregister():
    bpy.utils.unregister_class(CATEGORY_PT_CustomPanel)
    del bpy.types.Scene.my_path

if __name__ == "__main__":
    register()

Related

How to create a custom UI?
How to create a Folder Dialog?


text:
Why is the X and Y axis on the mirror object not symmetrical
Recently I have return back to blender and try to make a pillar, however when trying to mirror a certain object, I used the [Mirror object] and set it to the pillars but instead of the object symmetrically mirroring in the X and Y axis, it instead mirror asymmetrically however when I add a cylinder in the same location as the pillar along with the same origin and 3D cursor it managed to mirror the object perfectly.
I Would like to know more on why this is happening as I suspect it has to be with the pillars.

Here pillar being used for as a base center for the mirror yet beside its location and origin being in the center it still manages to offset the object.

a cylinder that was added in the same X,Y location as the pillar yet it manages to perfectly have a symmetrical mirror on object

Top view with the pillars being the center for the mirror object

Top view with the cylinder being the center for the mirror object
I am also using simple deform and subdivision modifier on the object that I want to mirror however I cannot replace its origin without the simple deform modifier destroying the object itself.
Another note is that every object in all the photo here has not been rescale, rotated or even moved for each picture only the [Mirror object] from the mirror modifier was used in the pictures.

In your 3rd screenshot which has the pillar selected it is indicating in the Transform panel a Z rotation value of 6.5518°. Could this be causing the issue? Perhaps try Applying the rotation so that the Z = 0° .  To do that, in Object mode select the pillar object > CTRL A to open the Apply menu and choose the Rotation option. To be on the safe side best to save your work before trying this :)

In addition to @3fingeredfrog's comment, you say that "every object in all the photo here has not been rescale", but your first three images clearly show on the N-panel that both the mirror object and your original pillar object have been rescaled. While it might not affect the result here, you should apply the scale to both objects with Ctrl-A > Scale in Object mode.


text:
How can I expand the operator panel

I have no idea how I manage to minimize the operator panel but is there a way to resize it to its default size?

This has been asked a couple of times recently but I'm not sure anyone has come up with the reason for it happening. Is this in Blender 4.0? https://blender.stackexchange.com/questions/304869/empty-drop-down-menu-after-upgrade-to-4-0

its still in Blender 3.6.5

as far as I know, it's only effected with my current file that I'm working on.  My startup file does not face this issue and resetting it to factory setting doesn't work either.

The only solution I can figure is going to the property tab and switching that to the 3D viewport, it solves the issue of not able to access the operator panel however it does not solve the issue of fixing the main 3D viewport operator panel.

I've not seen that here (in 3.6.5 or 4.01) but as I said there have been two questions about it here.  F9 should bring up the full menu as long as you've not done anything else in the meantime. (Note that menu disappears the instant you move the mouse cursor off it although you can use F9 again to bring it back.)

Use F9 as a first aid measure.


text:
Force curves to appear in front of mesh
Fairly new so I'm playing around with OBJ mesh imports from SketchUp and Rhino. When I bring in an object, I would also like these lines to display. So, I import them as well in the form of curves, but they always appear in the same plane and therefore are occluded. Any ideas to force them to stay on top? I don't want to use the 'in front' option because then they are visible through the object..

Give your curve a very small bevel:

⎇ Alt-drag this value, or confirm it with ⎇ Alt↩ Enter to set it for all selected curves.
If for some reason (those curves are used elsewhere) you don't want to modify the bevels nor duplicate the curves (⎇ AltD Linked Duplicate would keep them synchronized in regards to the splines data), you can move them to a (new) collection (M, N), and then add a new object and add a geonodes modifier to it:

Amazing, this works. Thank you for the advice!


text:
How to make a 3D model of a bundle of fibers of an organic shape
I'm wanting to make a bundle of fibers to along an organic shape (so not a cylinder). I have the 3D model of the shape (an approximation of a muscle), and I want the fibers aligned to the longest axis. Here is a picture of the model:

So far I've done the trick of selecting all the vertices, doing the 'Checker Deselect' function, separating out the selected vertices, turning those vertices into a curve, and then going to the Object Data Properties for the curve and changing the bevel size from 0 to a nonzero number.

The result is cool but I need the fibers to only run the longest length of the muscle. Is there a function that I'm missing that can get rid of the crossbars?

Hello, maybe you could get rid of the horizontal edge loops?

Automating the process a little:  This geometry nodes set up deletes rings and makes the vertical loops into tubes.

Here is the same object duplicated with and without this GN modifier. (It also has a subdivision modifier with a value of 2.)

There are problems, it works better the closer the object is to a cylinder, as you noted.
The node starts to break if you move vertices on a horizontal edge loop in the Z direction.

This was helpful. This node modification seemed to work well with cylinder derived objects, but broke when they became more non cylindrical. I think it wasn't working when it wasn't able to identify the long dimension? Or something? What happened was that the small triangles that are randomly laid out in XYZ have the fibril structure, so I created a wireframe looking thing but doesn't have any directionality. If you have any direction from there, it would be appreciated. Thanks!

Even with this you can get some uneven shapes, just by moving vertices along X and Y.   But that is the best I have at the moment.  (Maybe you will get additional answers.  Something using texture or displacement is also worth researching.)


text:
Mechanical pick/place - link constrain issue
This is a mechanical pick and placer that takes parts(A and B) and leaves them on a transport belt(Z1 and Z2). I hope to clarify everything with the image below:

I need to move piece A to position Z1 and B to position Z2.
The Y object takes A and moves this to above the Z1 position.
After leaving A at Z1, Z1 moves A in the direction specified by the arrow at Z1.
Z2 follows Z1 and takes the spot previously occupied by Z1.
Y then moves back to pick up B, which is then placed on Z2.
After dropping off B, Y moves back to the starting position, while Z2 moves B in the direction specified by its arrow.
The question is: I made these movements using the "child of" setting, but after the second link, something doesn't function.
For example, when I put the 2nd "child of" to piece A (the one that now is on Z1), it comes back to its previous start position or comes back attached to "Y".
In just a few words, I don't want it to stay attached to Z1.
For this type of animation, is it correct to use the "child of"? Or there is any other method to do this?
In 3DS Max you can decide the frame with the constraint but in Blender I've not found similar settings.

hello, XY are axis and Z is the conveyor with pallets...


text:
Object is not being rendered
I got this project where one object is not being rendered. I already cleared all restrict render, made sure that it is enabled in the render and moved everything from my second collection to my first.
.blend file here:

.blend would be nice to help with solving the problem

Welcome, Red. You may use this link to send your .blend files: https://blend-exchange.giantcowfilms.com/

uploaded the file :)

you don't need to say "edited" in the post :) Check [ask] to learn more.

Alpha is set to zero in the material:

This is not visible in preview as Eevee needs to change the material setting to alpha to be transparent (this is not the case for Cycles).

Oh wow that worked, thank you very much. I dont know how this happened, I did not do anything besides giving it a dark color :)


text:
Is there any advantage in keeping dual video cards?
I just upgraded my graphics card from Nvidia GTX 1660-Ti to Nvidia RTX 2070 SUPER.
Is there any advantage in leaving the 1660-Ti in? The 2070 has shown a 30% increase in benchmark so far!

At least back in the days you could render with dual graphics cards, even if they were not the same model

Yes leave it! You can render with both cards, and the CPU too, all at once. Just make sure you go into Blender parameters and turn them on under Cycles render parameters.


text:
Any way to click and drag the pivot point?
Maya has a great feature that lets you enter a mode where you can click and drag the pivot point to wherever you want.  Blender as far as I can tell only lets you move it to 2D cursor or current selection, which is usually requires several mouse and menu clicks as well as switching between object and edit mode.
This is very inconvenient.  Is there any way to simply click and drag the pivot point and maybe snap it to things the way you can when you've moving a vertex?

..coming up in 2.81. I don't know if it's just click and drag.. but I know you will be able to transform the pivot directly... I haven't tried it yet.


text:
I want to animate a viscous clay-like object (ball shapes)

Actually, I have made a similar post in the past and I know that I can use geometry nodes but I am ashamed to say that I don't understand geometry nodes, so I don't know the right answer.
I tried to use particles and collision, but it was difficult to make the particles viscous, so I gave up.
Which method should I use to make it?

https://blender.stackexchange.com/questions/194011/is-there-any-technique-to-give-a-metaball-effect-to-the-particles-emitting-from/194013

Have you tried changing texture to Voronoi?

If you want ball shapes not to be cut, this is another example:

You can also make this without Geometry nodes. Just make a particle system:

Disable gravity:

Set display as object, with metaball, increase scale to get spheres bigger:

Here is the result:

Thank you so much again!!
I will try both and I will let you know it works or not!


text:
How Can I make the World background Material to be checker Texture?
I am making a cube whose material is reflective plastic [With Principled Shader], And now I want the background to be checker Texture,So that the cube reflect the texture giving a cool sense, My problem is when I choose the checker texture As a background I didn't know the scale of it to be small ... I tried a very big value and i tried a very small value but the two didn't work,what is the value could i choose to make the background checker texture ? I am using cycles render,blender v2.79
I want this to be my background ...

This is my settings [What is missing ?]...

Use a Checkered texture connected to you world background shader, then just provide it with correct texture coordinates.
From a Texture Coordinate node use the Window coordinate output to get a flat 2D-like background.
Adjust the size with the Checker texture Size parameter, and the proportions with a Mapping node.
They should be relative to the Render Output image aspect ratio you have set in the Render Properties tab. For example if rendering at 1920x1080 you would get $1080/1920=0.5625$