text:
Strange clipping on blender donut
I'm trying to learn blender and started with the blender guru's donut course. I've made it to part 4 level 1 and after modeling the icing, my donut always ends up with one two areas clipping. I've started over several times and followed the instructions exactly. I don't know what I'm doing wrong.

Hard to tell. Maybe something went wrong when you copied to vertices to create the icing. How it looks like when you disable the Solidify modifier? (monitor icon on the modifier) and how it looks in edit mode? Or upload the file so someone can have a look.

Upload your blend file so we can take a look at the file
here's the link https://blend-exchange.giantcowfilms.com/

Here it is

Problem: You probably wanted to make a drop shape for the icing. The Snapping feature is activated, and this pulled some vertices to a random spot somewhere. Now you have three faces on the bottom of your icing that go from one side to the other.
Snapping is the magnet icon. When it's activated the vertices snap to the mesh that is near. Sometimes it can happen that it attaches itself to a random spot of the donut somewhere. That's because "near" is, for example, x-z wise in the front view but not y-wise (to the back). So it's pulled back along the y-axis while x and z positions are only adjusted slightly.

It's easy to fix:

turn off the Snapping feature
select the icing object in Object mode and isolate it by pressing Numpad / (or menu: View > Local View > Toggle Local View). Then you will see only the icing. Inspect the bottom.
go the Edit mode (Tab). (Most of your icing mesh is hidden, reveal it with Alt+H (or menu: Mesh > Show/Hide > Reveal Hidden))
select the renegade vertices and move them into place.
switch to Object mode (Tab) and leave Local view (Numpad /) to see the result

Yes it worked, thank you! I'm very new to this and there's so much to learn.


text:
How can I make grease pencil be effected by shadow?
I'm using grease pencil in surface draw mode to make my scene look painted, but I'm not sure how to make grease pencil respond to shadowing. I know grease pencil can't cast shadows, so I set my geometry to shadow catcher and to not render in viewport or render, but my grease pencil is still lit up behind other objects. How can I make my grease pencil respond to shadows? (I tested with both EEVEE and cycles.)

source: Stack Exchange

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

sort: votes


text:
The edges of the baked low-poly normal map are not smooth and are jagged
I am trying to bake a normal map of a sculpted body model on retopologized low poly model. Unlike to tutorial video on youtube(https://www.youtube.com/watch?v=Zxl38NpPWdo&list=PL6B1Babb0QiM5TQ6HlrI2OavuXnsMuO-O&index=136) my baked normal map divided by tiles of retopology. The border should be smooth and not choppy, but my result is not like that. I followed the steps in the tutorial video exactly, but what did I set up wrong?

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


text:
Adding browser field and setting variable
Good day, all!
I'm trying to create very simple addon that will makes my everyday life a bit more convenient. It applies all transformation of selected object, deleting all material slots and export two versions of selected object - triangulated and quad version.
Here's my code:

import bpy
import os

basedir = os.path.dirname(bpy.data.filepath)
selection = bpy.context.selected_objects

# if not basedir:
#    raise Exception("Blend file is not saved")

view_layer = bpy.context.view_layer

obj_active = view_layer.objects.active
selection = bpy.context.selected_objects

def main(context):

    for obj in selection:

        obj.data.materials.clear()

        bpy.ops.object.transform_apply(location=True, rotation=True, scale=True)

        bpy.ops.object.modifier_add(type='TRIANGULATE')
        bpy.context.object.modifiers["Triangulate"].keep_custom_normals = True

        obj.select_set(True)

         # some exporters only use the active object
        view_layer.objects.active = obj

        name = bpy.path.clean_name(obj.name)
        fn = os.path.join(basedir, name)
        path = "D:/SVN/Characters/Models/"

        bpy.ops.export_scene.fbx(filepath=path + name + ".fbx", use_selection=True)

        bpy.ops.object.modifier_remove(modifier="Triangulate")

        print("Triangulated mesh has been written:", fn)

        bpy.ops.export_scene.fbx(filepath=path + name + "_quad.fbx", use_selection=True)

        print("Quad mesh has been written:", fn)

        obj.select_set(False)

        view_layer.objects.active = obj_active

for obj in selection:
    obj.select_set(True)

class SaveTrisAndQuad(bpy.types.Operator):
    """Export quad and triangulated meshes, apply transforms and delete materials"""
    bl_idname = "object.savetrisandquad"
    bl_label = "Save tiangulated and Quad mesh"

    def execute(self, context):
        main(context)
        return {'FINISHED'}

# Creating Panel ======================================

class RedNeckPanel(bpy.types.Panel):
    bl_label = "RedNeck Tools"
    bl_idname = "OBJECT_PT_redneck"
    bl_space_type = 'VIEW_3D'
    bl_region_type = 'UI'
    bl_category = "RedNeck"

    def draw(self, context):
        layout = self.layout
        obj = context.object
        row = layout.row()
        row.operator(SaveTrisAndQuad.bl_idname, text="Export Mesh", icon='EXPORT')

# Creating Panel ======================================

from bpy.utils import register_class, unregister_class

_classes = [
    SaveTrisAndQuad,
    RedNeckPanel
]

def register():
#    bpy.utils.register_class(SaveTrisAndQuad)
    for cls in _classes:
        register_class(cls)

def unregister():
#    bpy.utils.unregister_class(SaveTrisAndQuad)
    for cls in _classes:
        unregister_class(cls)

if __name__ == "__main__":
    register()

It works just fine, but the only problem is that "path" variable is hard coded. How can I add browse button to be able to choose a path to save file to and how can I set a "path" variable from this selection?
Can someone please point me in right direction. I've tried to google it, but can't really find what I need and blender API documentation is kinda confusing.
Thanks.

Does this answer help? (I don't know python myself.)

Thanks. This actually helps me to add a button that opens a browser, but I can't figure out how I can get selected path and use as a value for variable "path" in my code..

How about this one?


text:
Blender Molecular Script not working
I have recently been working with Manaflow's liquid physics and saw a youtube video on the molecular script. I downloaded the 2.8 version of the script, and installed it into blender, but in the 'n' panel, I cannot see the options like it shows in the tutorials. I am using the portable version of blender 2.8. I tried it on portable Blender 3.0, and even downloaded the 2.7 script and tried it on blender 2.7. It is not working. Is it because I am using the portable version?

Please clarify your specific problem or provide additional details to highlight exactly what you need. As it's currently written, it's hard to tell exactly what you're asking.

Could you please add a pointer to where you downloaded the script from and perhaps the youtube video?  Also, it would help to know how you installed the script and get a screenshot of the info window showing any messages from around that time.

No Problem! I downloaded it from this github page: https://github.com/scorpion81/Blender-Molecular-Script/releases

I unfortunately don't have a screenshot at this moment, sorry

I tried to install the script 2 different ways. I tried installing the zip file from the preferences menu under addons.

I also unzipped the file in the scripts folder in file manager for blender

I installed it in 2.93.6 from the zip file.  It took a minute, but eventually it showed up in the add-ons list and I enabled it.  Then I added a particle system to a plane and went to the Particles Properties tab in the Properties editor.  The Molecule panel is present and so I tried to bake a simulation.  That "did something" but I don't know what to expect.  If you couldn't get that far, I'm guess it is because you're using the portable version, but that should show up as errors in the info window.

Okay thanks, I will try that out.


text:
Why wont my soft bodies collide with each other?
I have 3 soft bodies in my scene that I am making. All 3 objects have collision and softbody on. I have a plane that they land on that also has collision turned on. The soft bodies collide with the plane, but not with each other. Self collision is also turned on for all of them.

soft bodies won't collide with each other. Just join them so that they are one mesh, then it works.

Okay, thanks for the feedback! This really helped.

you are welcome!

Soft bodies won't collide with each other. Just join them so that they are one mesh, then they will collide with "each other" - although they are one mesh now ;)


text:
Some of the Blender shortcuts don't work
After formatting, I reinstalled Blender. I reset the shortcut keys as they were originally used, but some shortcut keys do not work.
It doesn't work even though there are no overlapping shortcuts.
If change the shortcut key to something else, it will be applied, but the shortcut in the image above is convenient for me, so I want to keep using it.

I've had a problem where a screenshotter program was interfering with Blender shortcuts, overriding them. Maybe you have a program running that hijacked those shortcuts.

https://blender.stackexchange.com/questions/78085/why-is-undo-redo-not-working

The currently installed screenshot program is only the Windows default capture tool..u_u


text:
How to rescale smoke domain without having smoke rescale
I'm fairly new to Blender, and I was trying to do an animation involving a smoke trail. The method I'm using is a UV Sphere follow a Bezier Curve, and then adding the quick smoke to the UV Sphere. I've seen tutorials on Youtube where they rescale the smoke domain, and the smoke emitted remains untouched. However, when I try to rescale my domain to fit the Bezier Curve, the smoke also scales out. Similarly, when I move the domain, so too does the smoke. This confuses me because the in the tutorials this does not happen. Are there any settings I am not aware of or something I'm not understanding?

can u link such a tutorial? sounds weird so...;)

@Chris this is the one I was using, the part I'm talking about is at 2min40s:   https://www.youtube.com/watch?v=hMh0pyMt1YE


text:
How can I take 4 cubes of different sizes, attach them together, have them move as one object, and set the origin to one corner of the 4 cubes?
I have figured out how to use the 3D cursor (placed at the corner of one cube) and a selected vertex of another cube and snap them together. I can repeat this process to get all 4 cubes positioned where I need them. Now I need to be able to set a new origin at an outside corner of one of the cubes and be able to move all 4 connected cubes as one during an animation.

parent them to an empty that you put at the corner?

There are several ways to do this, the easiest of which would be to join (shortcut Ctrl–J) the four cubes into a single object. Next would be to parent each of the three cubes that do not have the corner you want to use to the cube that does.
In either case,

select the cube that does have that corner.
go into edit mode.
select just the vertex that you want to put the origin at.
move the 3D cursor to that point. (shortcut Shift–S2)
go into object mode.
set origin to 3D cursor. (shortcut Right-Click and select Set Origin → Origin to 3D cursor)

That will move the origin to the correct corner.
(or you could, as suggest in a comment on the question, add an empty at that corner and parent the cubes all to that empty.)
The first approach, joining the meshes, works best if you don't want the 3 dependent cubes to move away from the cube with the corner.  The second approach, parenting the dependent cubes to the cube with the corner works better if you want the freedom to move the cubes with respect to each other.  The third approach, parenting to an empty, is on a par with the second approach, but requires an additional object, the empty.
There are other ways, using constraints or drivers, but delving into those would just be an exercise in over elaborate design.

As moonboots commented, here you go:
Add an empty to whatever place you like (corner of your cube).
Select all your cubes, Shift-Select your empty at last.
Press CTRL-P.
Now if you move or rotate your empty, all cubes will move with it.

This solution has the advantage that you still can move each cube on
its own.


text:
Subdivision Surface Mesh Issue

Just making this anvil off a tutorial trying to get back into the motion after a long hiatus and I'm having a large issue with the Subsurf modifier.
My mesh is all looped very well and every face is a quad with motion going in every direction. I don't know if it is a bug or a setting problem. No matter how many loop cuts I add or how many I move it doesn't seem to fix the issue.

could you have double geometry? the imager is not enough to understand...

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


text:
Can't find Audiofile in the Filebrowser
I've written a script which creates an an audio visualizer.
The python console gives me this error:
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape

location: <unknown location>:-1

I'm not able to find the audio file in Blender.
As it didn't work within the script I tried to import the audio via the File Browser, but as I tried to import the audio file from the File Browser, the File Browser also didn't show me the audio file at the location it was supposed to be at.
I'm sure it has to be Blender. I've found the file in every other application. (VLC, Windows Media player)

What type of file?  What format/codec?  Mp3, WAV, Flac?

I found the problem.
I entered the error into google and found the solution. I used backslashes instead of just slashes. This was the cause of my error.
Sorry for waisting your time. I should have googled the error right away.
AliSot2000

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


text:
My Object Isn't Showing Up When I Import It!
I've successfully downloaded many 3D objects off different sites (mainly SketchFab) and viewed them in File Explorer and other programs, but when I try to import them into Blender, they appear in the blender file view but are faded and don't open when I click on them.
I did some research and found out how to install add-ons. I did so with the SketchFab add-on and successfully imported it into the scene collection bar. But it didn't appear in the grid user perspective. When I selected it in the scene collection bar, it showed a miny orange dot (probably the file minimized to the dot).
I did some more research and tried many different suggested methods such as clicking the (.) or delete button to center on my object or changing the size of the objects in the dimensions tab, but nothing worked. I even tried saving my 3D files as different file types, but nothing worked.

Blender does not open external formats with the same dialogue as its own format. You have to choose File -> Import -> {the correct file format}. As for the orange dot, that is the object’s origin, and will show no matter how big or small the object is. Speaking of which, it is far more likely that the object is too big rather than too small. Considering that you also made several severe terminology mistakes (for example, one doesn’t import an addon), I have little doubt that the Sketchfab addon is working correctly, but you are somehow not following the instructions for finding the imported model in your scene correctly. What were the dimensions of the model shown in the Item tab of the 3D Viewport editor Sidebar? If they weren’t all zero, there is some geometry there. You also didn’t say what you changed them to, so we have no idea if that was effective or not. When someone said to press [Numpad . / Delete] to frame the selected object, they did not mean to press the period key or the regular delete key, but rather the decimal point key on your number pad. Pressing regular period only works if you have Emulate Numpad turned on in settings. If you don’t have a number pad on your keyboard, just use Shift + C instead, as the effect is similar.

Additionally to pressing Numpad . it might help to press A beforehand to select all, to make sure there is something selected to center the view on (although after importing the model should be selected by default). Shift+C on the other hand does not care if something is selected. @TheLabCat Of course I know you know that, it is just an additional tip for Samuel.


text:
How can I convert a normal map to a "tangent map" of sorts? for use in an anisotropic shader
(Blend file is at the bottom of the post)
The tangent node doesn't have any input for a normal map texture so it's always just the raw per-vertex values. If you wanted to make an anisotropic shader using the vertex tangent then the none of the normal map details would carry over.
I have this set-up here which gives me exactly what I'm looking for, however it's effectively just recreating the "normal map" node but with the tangent and normal vectors swapped.

So my question is, is there a way to get this same result using a normal map node? If I try taking the cross-product of the normal map node's result and the UV tangents (as mentioned in this post How would I get the full TBN matrix from just a normal map?), it gives me a working "bitangent" map, but if I try taking the cross-product of the normal map node and the bitangent, it gives me this weird low-strength tangent map that I can't seem to fix.


text:
Multiplicative Alpha Blend mode
Blender used to have an "additive" and "multiplicative" alpha blend mode in the ~2.79ish days before it was removed in favor of a simpler setup. The additive blend mode is still easily replicable with an "Add Shader" node, but I'm not sure how or even if it's possible to recreate the multiply blend mode in modern versions.
A comment on the original issue for the change seems to imply that it is/was possible to recreate both setups, but I don't know how accurate that is now.


text:
I need help making a cartoony rubber/slime-like material
I want to replicate the same material/effect as the little guy in the GIF below. I’ve tried layer weight nodes but I need the light to as if “remove” the darker color of the character and add more of the fresnel.

Hello, it's not clear what you mean by "but I need the light to as if “remove” the darker color of the character and add more of the fresnel", could you please elaborate?

Do you perhaps mean a translucency effect?

@moonboots so basically when you use the layer weight node and add a light to the scene, it doesn’t effect the colors, only the object. I want the colors to warp around the light when it hits the object.

I believe I've mimicked the look fairly well. Using a Principled BSDF shader as the base:

Set the Base Color as desired.
Set the Roughness to something low (I chose 0.2).
Turn the Subsurface Weight all the way up.
Set the Subsurface Scale very high (I chose 0.8 m).
Set the Specular Tint to match the Base Color.

This is my resulting node setup:

This is how it looks on Subdivision Surface smooth-shaded Suzanne:

Hope this helps!
S.D.G.


text:
how can I overlay a normal map on an object that already has small repeating texture maps
i have a texture image that is quite small so i need to repeat it alot to make it look right on my model, i also have a normal map that is the correct size for the polygon i want to place it on. i would like to place the normal map over the repeating textures so one normal map is the size of 10X10 images of the texture. i basicaly want to know a way i can project the normal map over a section of the object that has nothing to do with the texture node

You just need to use 2 Mapping nodes, plug an Input > Value node into the Scale input of the Mapping node of your image texture and set it to 10:


text:
Need help with creating space between books (Geometry Nodes)
I need you guys help with creating space between the tilted books.
In my geometry nodes, it does create the "correct" amount of space when the books are rotated to screen left, but not screen right, as you can see on the second picture.
(Don't know if this helps): The geometry nodes group books->bounding box ->Vector Math Multiply changes the distance between the books. But it only does it when it rotates to the left.
What do I need to add, so that when the books rotates to the right they create same distance and don't overlap?

Does this answer your question? https://blender.stackexchange.com/questions/271450/

Nothing stops you from using arbitrary shapes, but for a cuboid shape rotated just around one axis, you can heavily resample one side (as a single line) to raycast on the previous books to get a very nice, "nested" (multiple books) overlapping:

The setup uses a repeat zone - it has to, because the way previous books overlap affects current book's position, so the collision calculation can't be parallelized - not without some compromises with realism.

You may spot above, that because I raycast only from the "left" side, two books almost laying flat can fail to raycast properly and overlap a little. You could of course fix this as well as raycast from all points of a book to support all arbitrary shapes - but it would by slower.
Below I subdivide from all sides of a rectangle (before it's extruded to a cuboid):

For 'production' you could maybe subdivide edges differently based on which edge it is, because you likely care more about the left edge than any other and in fact you don't care about the right edge at all. Or you may wnt to resample by length, but then you need to split the edges first and convert to curves…

Very nice! ... but you forgot the bookworms.

@quellenform https://imgur.com/a/wkbV8N2

Wow thanks! Just one question, how would I go about adding the book to this? Can i just use the group node (second pic) or would I have to insert the whole thing (first pic) in some manner? https://imgur.com/gallery/blender-knlIElD
Hopes it makes sense, I'm not that strong on the terminology

Watching this another solution with better performance came to my mind:

youtube video

Conceptually, I couldn't figure out how to make it work by using raycasts without a repeat zone: you raycast, and find the first collision - but the collision position is before the offsetting happened. You can't make an accumulated value control the accumulation value. - it seems you made it work, but I don't quite have the time to analyze this. I know it breaks for some big x size values. Mine breaks too, in my case just because I naively only use the left side of a rectangle for raycasting - is it the same for you?

I am offseting all books by its larges dimension x2, then random rotate, then rycasting all left front edges to left and front right edges to right, then selecting the shortest raycast distance in "lets call it gap ID" and accumulating this value. I am sure it can be polished even better. But still cannot find some performance workaround for my similar question https://blender.stackexchange.com/q/322996/180447

Just for clarity on what I mean, open the uploaded file and set the max x to 2.2 - then the 7th book overlaps https://i.imgur.com/lYQQPhO.png and with 3.3 also the 4th book overlaps. Maybe it's just raycast sampling not being dense enough? But it wouldn't explain this example: https://i.imgur.com/eLJWb2B.png

It is just concept idea, Iam comparing the distances in the gaps between two books only, thats probably why..:\ and even more precision for sharp angles can be added by including all 3 vertices facing the gap instead the long edge verts only...

https://imgur.com/a/C5AhaCY

Yea that's the additional edge check, however, my last example is something different. I think you can't just fix it without sequentially calculating stuff.


text:
How to composite frames after rendering has completed?
I am trying to render an 8,112 frame animation at 4K 60FPS with Blender, using the compositor to add some post-process effects such as chromatic aberration.
When I begin rendering, it renders and composites each frame one-by-one, which causes the compositor to initialize and de-initialize every single rendered frame, which increases my per-frame render time by over double what it is without the compositor.
Is there a way to make the frames render first, then composite all of the frames after rendering has completed, such that the compositor only has to initialize once and de-initialize once? As the initialization sequence takes a lot more time than actually compositing the image.
For reference, my project is EEVEE, with the export format set to FFmpeg (Matroska Container, H.264 Codec), if that helps with my issue.


text:
My obj file not showing red colours when imported
New to Blender. I have an obj file that clearly shows as red on Mac OSX. This is the only file I have. It looks like the following when I preview it in my Mac.

However, when I import it into Blender, it's all grey under the "Layout" tab. I don't understand what happened.
(https://www.dropbox.com/scl/fi/4d3zuufhxcis1ifm5x8gj/B.obj?rlkey=i5fc7u1pcu38j7vh4sdq1tbes&dl=0)

Usually materials don't transfer 1:1 between different softwares. You have to set up the material in Blender.

As @Jakemoyo says, materials don't transfer and in fact there are no materials at all on the object after importing it into Blender. It also has terrible topology!

You only have an OBJ file. When you open this OBJ file with a text editor (i.e. Notepad), you will notice that it only defines vertices and faces but does not include any material definitions. To have at least some basic material properties on the model, the OBJ file needs to be accompanied by an MTL file which is also defined in the OBJ file. However, only simple materials are supported in this format. Other than that, please read https://blender.stackexchange.com/questions/57531/fbx-export-why-there-are-no-materials-or-textures


text:
Need help with rotating different faces of a rubik's cube with python API. When different faces are rotated sequentially some cubes start to act up
Pls help
now these first two rotations got animated fine

but in the third rotation one object started moving along a different axis
(even though there are other objects just like this one(been in the same roation before))

and when more rotations are added more blocks start behaving differently.
Here is a sample function:
The wrt_global is a list of dictionaries keeping track of the global axis to the axis of individual objects. (The commented out part is solutions I've already tried).
def rotate_front_anti(f):
obj=list(bpy.data.objects)
for sq in obj:
    sq.select_set(state=(sq.location[0]>=2))

#bpy.ops.object.origin_set(type='ORIGIN_GEOMETRY', center='MEDIAN')
ob=bpy.context.selected_objects

for i in range(0,len(ob)):
   ob[i].rotation_mode='XYZ'

for i in range(0,15):
    for j in range(0,len(ob)):
        ob[j].keyframe_insert(data_path = "location", frame = f, index= -1)
        ob[j].keyframe_insert("rotation_euler", frame = f)

        #ob[j].rotation_euler = (Matrix.Rotation(math.radians(-6), 3, 'X') * ob[j].rotation_euler.to_matrix()).to_euler()

        if wrt_global[int(ob[j].name)]['x'] == 'x':
            ob[j].rotation_euler.x += math.radians(-6)
        elif wrt_global[int(ob[j].name)]['x'] == 'y':
            ob[j].rotation_euler.y += math.radians(-6)
        else:
            ob[j].rotation_euler.z += math.radians(-6)
        #ob[j].rotation_axis_angle=(math.radians(-6),1,0,0)
        ob[j].location[2],ob[j].location[1] = new_coords(ob[j].location[2],ob[j].location[1],1,1,6)
        ob[j].keyframe_insert(data_path = "location", frame = f, index= -1)
        ob[j].keyframe_insert("rotation_euler", frame = f)
    f+=1

for  j in range(0,len(ob)):
    temp=wrt_global[int(ob[j].name)]['y']
    wrt_global[int(ob[j].name)]['y']=wrt_global[int(ob[j].name)]['z']
    wrt_global[int(ob[j].name)]['z']=temp

bpy.ops.object.origin_set(type='ORIGIN_GEOMETRY', center='MEDIAN')
return f

Gimbal lock has been occurred for using rotation_euler. Can you try rotating matrix_local or matrix_world. It also has the advantage of simplifying the calculation of the rotation position from the rubik cube origin.


text:
Why does my donut look different in wireframe mode compared to Blender Guru's donut?
I have been stuck on this issue for a while and haven't been able to figure what I've been doing wrong. So I was hoping someone here might have the answer to my question.

well the main reason is, and i know, you don't wanna hear it: but you didn't follow his tutorial exactly. Without doing anything other than he does. I know this, because i often made that mistake too. e.g. as beginner i often scaled in object mode although the tutorial made it in edit mode. I thought: ok, it's the same. And yes, i learnt it the hard way: it is by far not the same. In the end the result might look totally different. So either you start over again (what i did often) or you provide your blend file so we can check it out...

I don't know why his looks like that at .01 thickness (he may have change his units/scale), but if you increase the thickness of your solidify modifier, you should see what he sees (whether it is accurate or not is another thing). I also agree with Chris on this one, I always recommend that every time you make a mistake in the donut tutorial, close the file and start over from the very beginning. Seems like a drag, I know, but the repetition will help your navigation "muscle memory" and it will help you become much faster and more comfortable with the program in general.

You didn't apply scale to your icing.
In object mode click the Icing. Press Ctrl+A and then select Scale.\
Edit: Since your icing comes from your Donut you should do the same to your donut


text:
Blender To Source Filmmaker "Exported 400 bones, but SMD only supports 128!" Error
The Armature I added with Blender's Rigify plugin initially did not contain 400 bones. After building the rig, I think I did something wrong. I don't know exactly what WGTS rig either. When I click on the WGTS rig group from the top right menu, I see that there are several more of the same bone. To the right of some bones are written IK and FK. I don't know what they mean, but I'm sure I'm working with FK bones. By the way, the WGTS rig group is faded and if I click it, many bones expand into a list. I don't know which bones to remove.Let me tell you the steps I followed. I imported and combined 3 different models. I added Armature (Human-MetaRig) with Rigify. I placed the bones and generated the rig. I deleted the previous Armature and switched to Automatic Weight Painting with the generated rig.

When you create and edit a Metarig, you are creating a simple placeholder that will mark some locations in space, the Generate rig function will then create the actual rig, which is quite complex because it has a lot of useful functions.
Basically different kinds of bones are created: counting bones layers from 00 to 31, in the 31st layer you will find a copy of the metarig bones (ORG suffix), in the 30th some machinary bones that are supposed not to be touched by the user (MCH), and in the 29th layer all and only bones that actually deform the character (DEF).
All others layers contain nothing but control bones, which do not show as classic octahedral shape: they use all widget meshes (WGTS) to better suit the needs of animators to watch their model while animating. So in the WGTS collection there are meshes, not bones, as you can tell by their orange triangle icon in the outliner (bones have green bones instead).
The correct way to export a rigify animation is to perform the actions into Blender, when finished create  an animated copy of the rig, go to 29th bone layer, select all DEForming bones, go to pose mode > pose menu > animation > bake action (Clear constraints, visual keying, overwrite current, clean curves).
In this way you can delete all bones that are not in the 29th layer and export a simple deforming rig that doesn't refer to any special Blender function (like constraints or drivers) and can be easily used in game engines or others animation softwares.
FK stands for Forward kinematics, and it's the process in which you move and rotate a chain of bones one by one until you reach the desired pose.
IK is Inverse Kinematics, in which you move an end of a bone chain (i.e. a foot) and all the chain follows that movement (i.e. all the leg). Both are useful, so Rigify lets you switch from one set to the other.

Dude I'm a little confused. You told me to create an animated copy of the finished rig. Let me tell you what I did. I copied my current rig with Ctrl+C and then pasted it with Ctrl+V. But even though I copied the rig once, 2 rigs appear. I skipped copying for now and followed your other instructions. I clicked on the Rig and selected the DEF layer. Then I clicked Pose Mode. Then, holding down my mouse, I selected all the bones. I cooked the rig following your instructions. I tried to delete all the other bones except the DEF bones.

The 4 VIS bones (VIS_upper_arm_ik_pole.L , VIS_upper_arm_ik_pole.R , VIS_thigh_ik_pole.L , VIS_thigh_ik_pole.R) not deleted. I can only delete if I select this bones from the list. I just don't know if they matter or not. By the way, if I'm not mistaken, the DEF layer is in the 30th place.

In the Outliner header there is a filter icon, in which you can enable the arrow icon (selectable option), then turn the VIS bones into selectable bones, then delete as usual (they are not deforming bones so they are unuseful in the export). Use shortcut A to select All. Bone layers, as any list in the hood of the software, are counted starting from 0, so I call it number 29 for Python scripts consistency.

Understood. I followed your instructions and it works. Problem solved. Thanks.


text:
How can I move bones in the Weight Painting section ? (DEF Bones)
I'm having trouble controlling the weight painting of the generated rig. Is it possible to move bones and paint weights at the same time ?

I tend to keyframe parts of a rig going through some extreme ranges of motion.
Then you just scrub the timeline while editing weights.  Does that sound like it would help?

Can you also tell me how to do this ? I'm not entirely familiar with Blender.

Ha!  I, too, am a newcomer to Blender.  I can give you the right breadcrumb trail of terms to look up, though I'll leave it to the veterans for a deep dive.

Basically, the  bone systems (joints if you're a maya alum) are "Armatures".
Armatures are the "Object" level and can be edited spatially in "Edit" mode but you'll be doing the animating in "Pose" mode.  When you are in Pose mode, you can set keyframes on the PRS of individual joints or control shapes that the rig might possess. (Different rigs might handle it differently).   I hope that's not too confusing and gives you  a little bit of a springboard to learn about the Blender way.  Happy Blending!


text:
How can I fit the eye texture in the photo to the UV Sphere?
I'm trying this process, but when I pin the eye texture to the front, the tissue goes inside as if there was a black hole in the middle of the sphere. Actually, I don't know anything about UV Editing. Right now I'm just going to use it to shape the eye tissue into a sphere. I don't know exactly where I should click after the process in the picture. By the way, after creating the uv sphere, I rotated it on the X axis and added an eye material.

put your view in front of the eye in Orthographic view and unwrap with the Project From View option, it will also project the iris on the back but you should not care

A quick way to do it would be to put your view in front of the sphere in orthographic view and unwrap with the Project from View option:

Then in the UV Editor scale and move the UV until it fits:

Here is the result:

Of course the iris will be projected on the back of the sphere as well. If it bothers you, you can correct in Texture Paint mode: Select the back part of the mesh, move its UV and put it over a blank background:

Now in Texture Paint mode, either use the Clone brush to pick a sample of the texture or use a white color to paint on the back:

It's working. Thanks.


text:
How can I align the center of the eyeballs?
I want to fix the small dot on the left to the center of the eyeball. I will do this to properly export the rotations of the eyes.

the small dot is the origin, in Edit mode select the vertex you're talking about, press Shift S > Cursor to Selected, then back to Object mode, right click > Set Origin > Origin to 3D Cursor should work

Your method works, but after this process I have to click on the eyeballs and use the Apply All Transforms option. This time, the size of the eyeballs becomes very large.

maybe take a look at the Properties panel > Object > Transform > Delta Transforms and make sure they are set at their default values?

Now the eyeballs are working the way I want. I reopened my Blender file and applied the Apply All Transform option to the eyeballs first. Then I changed the center of the eyeballs.  Problem solved. Thanks.


text:
Flip a single hand rig to use with right hand, for Leap Motion / Ultraleap
In the first image I have a rig for the left hand in the way that Ultraleap requires, I've tested this and it works in Unreal no problem. An example of this is in the first image.
I now need to make a rig for the right hand that looks like the second image. Simply mirroring or symmetryizing along X/Z didn't work for me. Notice how the bones axis has been set to poke out the back of the hand but still along the normal of the mesh, how is this achieved without re-rigging?
It's like the individual bones have been mirrored rather than the rig as a whole, if you see what I mean from the images.
I feel like this should be really easy, but I can't for the life of me figure it out.
Any ideas?


text:
Unfolding a 3d object into a 2d plane
I got the following 3d model of an exhaust pipe:

The model consists of multiple cylinders and flat cones.
I want to print out the cutting shape of those and therefore need to "unfold" the cylinder/cone into a flat plane. There are programs, that can do that but they are not free (the difficulty is, that the top/bottom of some cones is at an angle, wich seems to be more complicated)...
Is there a way to do this in blender?
Thanks in advance!

there is a built-in addon called Export Paper model which allows you to unfold your mesh so you can later on print it and reconstruct the shape with paper based on the pattern
You can manage the way the model unfolds in edit mode with seams and by using the unfold button on the side pannel

I had to do some trickery to get everything right because exporting everything at once generates to many numbers. I couldn't even see the whole shape. But exporting every part separately, everything worked out perfectly :)

If you want something that you can print out in 2D and assemble into the final shape, your 2D version needs to have zero distortion.  The tradeoff for distortion is seams: to do that, you need to cut the surface.  Frequently, our intuitions about how things need to be cut are off.
This cylinder can be mapped onto a flat surface with only a single seam:

But this cylinder cannot:

We can see that our angles have changed; less obvious is that our lengths have changed as well.  In order to create a 2D map of this shape that is free of distortion, we need to use many more seams:

Once seamed, we can use Blender's unwrapping to create a distortion-free 2D mapping, provided that we mark enough seams to allow it to do so.  Once we unwrap, we no longer need any addons to turn the 3D shape into a 2D shape.
We can use geometry nodes:

I send the UV map as a vector input to the modifier, then I rip the mesh's edges to allow seaming; then I set the positions to the unwrapped positions; then I scale by the ratio of the square root of the area of the first face to get the same world size as my mesh (since there is no distortion, this proportion is the same for all faces); then, to eliminate unnecessary seams,  I merge by distance.


text:
Delete all mesh parts that can not be seen from outside
I have a mesh that resembles a miniature and is supposed to be 3D-printed. It seems like it was created in a 'messy' way because many parts of the mesh grow inside and create cavities causing the prints to fail. All the vertices of the mesh are connected and I am trying to find a way to get rid of all the internal mesh parts.
It sounds so easy to delete every vertice that can not be reached by a ray from the outside through the faces of the mesh but I just can't find a solution.
In theory I could probably select all vertices in edit mode form one side and repeating that from all possible angles until I have all vertices selected that can be seen from the outside. But that is not practical since the model has over a million vertices and many small details and bulges that make it unfeasible to get even close to selecting all the vertices even when I decimate the model first. And since there are so many vertices and operating inside the model with the camera is very hard I also gave up on deleting every unwanted vertice by hand.
All answers I found online from selecting non-manifolds to hollowing, solidifying, extruding, remeshing or scaling the model down to hollow out a duplicate with it did not work.
Any new suggestions would be highly appreciated.


text:
Weight paint sample group is showing all recently edited groups
rather than displaying the group my cursor is hovering, its showing all of the groups i've recently painted on


text:
Why is my character's backpack pointing in a different direction in Half-Life Model Viewer? (Blender To Source Filmmaker)
While my character is connected to the rig, the backpack model in the photo is looking in a different direction. But if I use the Clear Parent option after right-clicking on the model, the backpack is facing the right direction in Half-Life Model Viewer. But this is not the solution. The rig works fine but I think the rotation problem is in the rig. But I don't know what to do.

I would check docs on the addon you’re using to export the model.

This is impossible. I don't have such a problem yesterday and the same plugin was installed. But I still deleted the existing plugin and downloaded the latest version. This action did not solve my problem.

I said check docs, aka the documentation. Not check the version.

I can't check the files as I don't understand the Python language at all.

I mean the documentation on the addon as in the instructions on how to properly use it as provided by the distributer. This appears to be an issue with the addon, not with blender.


text:
Instances won't align with normals
So I've been experimenting with trying to align these instances with the normals of another object, and I can't get more than one to rotate. This also included rotating with anything else, like a random value or something, I cant get more than one to rotate.
Any help would be super appreciated!
Using blender 3.1.0
.blend file

Supposing, that you want to align the local z-axis of the toruses to the normals, the following steps lead to this solution:

Realize the instances of the top/bottom points:

Switch the Object Info node of Plane.001 to relative:

You will have to adjust the BezierCurve, to place the toruses on top of Plane.001. Currently most of them lay inside.

I want them aligned to the normals of the linked object (Plane.001)
Ideally, they would rest on its surface


text:
How would I join two rotation vectors in geometry nodes?
I've been stuck on this for quite a while now, I'm trying to combine Rotation 1 with Rotation 2 and it's been doing my head in.
I'm trying to instance 5 or so objects and rotate them away from select objects. I've done that successfully, but I wanted to also randomly rotate all objects on the z axis and a small amount on x and y except for the ones rotated away from the objects.
I'm able to either rotate all objects randomly or rotate away from an object, the issue is combining the two.
Any help is tons appreciated!
Using blender 3.0.0
Blend File
Nodes:

First Rotation:

Second Rotation:

if i understood you right, you wanna do this:

as you can see by changing the seed in the node tree i only randomize the instances which are not near the spheres.
you can do this with this node setup:

Awesome, that worked great, thanks man!

Thank you very much! You are welcome!


text:
Shape key value 1.0 doesn't match mesh in edit?
first time posting, but I can't find the solution anywhere, perhaps not wording it right. It is probably something simple but I've yet to encounter this issue despite having made a number of characters and animations.
I made a mesh for a dog, setting up various shape keys for blinking, opening the mouth, etc. Now when I go to the manipulate the shape keys' values (Ex: Value 0.0 = mouth closed, Value 1.0 = mouth open) even with the value set to 1.0 the mouth only opens about 30% of the way. The vertex group for that shape key looks fine in edit mode but for some reason the mesh won't go further than around 30% when the value is set to 1.0. This is true for all the shape keys associated with this object.
What really bugs me is that this mesh is a copy of an original mesh in the same instance and the original's shape keys work just fine. I know I can increase the max range for the Shape key, but that does not solve the problem. Using Blender 2.93.1
Anyone encounter this issue or have suggestion?

What are the values of the "mouth" vertex group?  Take a look at the group in weight paint mode.

THAT was it, thank you.  The weight value was quite low, blue. Setting it to max, red, put things where they needed to be. Never been an issue before. Thank you again Nathan.


text:
Rigging help required please
Please let me start by saying I am a newbie to rigging and this has driven me mad...
I have the following...

Post/peg "C" is fix in x,y and z but can pivot.
Point "A" will follow a fairly small circular arc and by doing so, move and rotate "B". This in turn will rotate arm "2" around the pivot peg "C".
I have tried to build out a set of bones to do this with IK etc but there is always something not quite right.
It took me a while to understand chains with an IK point on "2" from "C", but in limiting the chain to 1 "2" moves but only in the axis that "A" is moved.
I hope that makes sense and any help would be great. I have learnt loads from youtube video and articles but I am still missing something.
Thanks

This one was fun because it took me a while to see the obvious.  The trick for the I/K rig has two parts:

is the 2 bone is the disconnected parent of 1 bone as well as the disconnected parent of b bone.

The 1 bone is not a deforming bone, but a parallel 1 bone def is.

From left to right, the bones are

c bone is not strictly necessary. Its vertex group consists of the "C" cylinder.
2 bone is positioned so that its head is the pivot point for block "2" on "C" cylinder and its tail is the pivot point for block "2" on "B" cylinder. Its vertex group consists of block "2".  It has no parent.
b bone is present so that "B" cylinder will move more or less correctly.  It is parented to 2 bone. Its head is also at the pivot point for block "2" on "B" cylinder but it is not connected to 2 bone. Its tail is at the pivot point for block "1" on "B" cylinder. Its vertex group is "B" cylinder.
1 bone is positioned so that its head is the pivot point for block "1" on "B" cylinder and its tail is below the pivot point for block "1" on "A" sphere, so that it is parallel to the 2 bone. It is parented to 2 bone but it is not connected to 2 bone. It is not a deforming bone.
a bone is positioned so that its head is the pivot point for block "1" on "B" Cylinder and its tail is on directly above that point.  Its location is locked so that it can't move on its Y axis, which happens to match the Z axis of world space.

directly above the 1 bone is the deforming bone for the 1 block, 1 bone deform.  It's head is on the tail of the b bone and its tail is on the tail of the a bone.  Its vertex group is the "1" block.
The IK constraint is placed on 1 bone.  a bone is the IK target.
1 bone def has a Copy transforms constraint on `1 bone, in local space.
NOTE: Since the IK constrain has stretch off, it is possible to pull the a bone far enough as to disconnect the cylinder from the object.  You could fix that with further constraints, but it might be easier to just have the animator not overextend the rig.
Since that explanation is a bit wordy, here's the sample file

Hi Marty, Thanks for the response and the work and the example. This has given me more to think about. I am really keen to get rid of the vertical pitching that occurs (or is it lateral roll.?) is this is meant to represent a rigid set of metal pins and arms that can't twist. Is there any way of stopping the twisting...?

I have to think about the twisting some more.  One way is to put a Limit Location constraint on a bone and limit its motion range to the area where the roll doesn't happen, but there should be a way that allows a bone more range of motion.

I figured it out.  I'll update the answer shortly.

@Parathon did my updated version work for you?


text:
Applying texture to a single face
I am very new to Blender, and I am using the program mostly to learn how to apply a texture pattern to thing I will be 3D printing. So far I've learned pretty easily how to apply a Displace modifier to an object, the issue is I don't want to completely distort the entire mesh, but I can't seem to control that. I have tried unwrapping the UV, doing a Smart UV project, and using Project From View (Bounds) options and using the UVMap as the coordinates for the Displacement, but it seems to still be distorting the entire object. I have added a few pictures of what I've got set up, I'm sure I'm just missing something minor but any help would be appreciated.
Thanks!

In edit mode, select the faces you want to displace and assign them to a vertex group.
Then use this group in the displace modifier.

That did the trick! Thank you.


text:
How to make wireframe from inside an object visible?
I'm currently working on a Blender project that requires creating a model with an internal wireframe. This means the wireframe should be part of the model's internal structure, visible through the exterior. But when i use the wireframe modifier it only shows the external wireframe like an overlay. Can anybody help me?

Do I understand it correctly that you want the edges as real geometry like the wireframe on the outer edges? In this case I'd go with the answer by @moonboots - just asking in case you only wanted some kind of overlay in the final render. By the way, sorry for how McLane killed your brother Hans.

no i need the wireframe on the inside as real geometry. I will ask a more specific question that goes more in detail in a bit. So that the purpose gets more clear. Just wanted to get the general understanding first, and also wanted to help keep this platform clear and clean for others to search for similar problems. It's about 3d printing and needed support...
And Thank you for your condolences. (thats my actual name haha)

The wireframe modifier creates wire from the edges of faces, you need to add interior faces for it to work. https://i.sstatic.net/416IH.png however you'll see that the inner wires are messed up as this is not really supported. Suggest taking the skin route as illustrated by moonboots

You could use the Skin modifier instead, use CtrlA to thicken the edges in Edit mode:

Thank you very much! and sorry for the rookie question. But maybe it will help other newbies as well.


text:
add edges only on the z-axis (with geometry nodes if possible)
I have a model (picture 1) that has some modifiers added to make it look like an abstract wireframe thing (picture 2). The Modifiers are: subdivision surface --> decimate --> displace --> subdivision surface --> wireframe (maybe will be exchanged with skin to show internal wireframe) --> subdivision surface. I weightpainted it to make it look more organic. The plan is to 3d print it and make light shine through from the backside so it casts shadows (for a kinetic sculpture). My problem is that i like the big holes because it will let a lot of light shine through it but the 3d printer will have problems to print such long overhangs. My plan was to add more support edges but only in the z-axis so that when viewed from top the added edges are hidden es much es possible. Preferably i want to add them non-destructive/procedurally AND not only on the outside mesh but also on the internal to fill the volume with support. Is that possible with geometry nodes? Thank you very much in advance - this community already helped me a lot.


text:
Curve, depth - question
why is this happening? why is the shape not round but oval? if i press Alt + S the shape will become normal, but the slope will change, and I don't need the slope to change. I want to understand where the error is, why this happens?

Push Ctrl+A and make sure your scale is applied.

Hello and welcome. Please use a title that matches the content of the post. It should read like a question, be descriptive but succinct, unique and identifying, summarizing the problem so that anyone searching for similar issues is likely to find this. Remove anything superfluous, avoid using words like "this", "help with", "issue" or "question about", instead describe what "it" is. Remember, your title is the first thing visitors see, answers you get depend heavily on it. See What is the problem of asking “How do I do this?"


text:
Error while trying to export .blend project to GLB
I got this error while i tried to export the blender project to .GLB file.Im using Blender 4.1:
Traceback (most recent call last):
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\__init__.py", line 1131, in execute
    return gltf2_blender_export.save(context, export_settings)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_export.py", line 39, in save
    json, buffer = __export(export_settings)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_export.py", line 56, in __export
    __gather_gltf(exporter, export_settings)
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_export.py", line 85, in __gather_gltf
    active_scene_idx, scenes, animations = gltf2_blender_gather.gather_gltf2(export_settings)
                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather.py", line 30, in gather_gltf2
    scenes.append(__gather_scene(blender_scene, export_settings))
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_cache.py", line 36, in wrapper_cached
    result = func(*args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather.py", line 84, in __gather_scene
    node = gltf2_blender_gather_nodes.gather_node(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_nodes.py", line 48, in gather_node
    children=__gather_children(vnode, export_settings),
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_nodes.py", line 95, in __gather_children
    node = gather_node(c, export_settings)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_nodes.py", line 42, in gather_node
    mesh = __gather_mesh(vnode, blender_object, export_settings)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_nodes.py", line 314, in __gather_mesh
    result = gltf2_blender_gather_mesh.gather_mesh(blender_mesh,
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_cache.py", line 36, in wrapper_cached
    result = func(*args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_mesh.py", line 58, in gather_mesh
    primitives=__gather_primitives(blender_mesh, uuid_for_skined_data, vertex_groups, modifiers, materials, export_settings),
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_mesh.py", line 135, in __gather_primitives
    return gltf2_blender_gather_primitives.gather_primitives(blender_mesh,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_cache.py", line 36, in wrapper_cached
    result = func(*args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_primitives.py", line 57, in gather_primitives
    blender_primitives, addional_materials_udim = __gather_cache_primitives(materials, blender_mesh, uuid_for_skined_data,
                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_cache.py", line 36, in wrapper_cached
    result = func(*args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_primitives.py", line 124, in __gather_cache_primitives
    blender_primitives, additional_materials_udim, shared_attributes = gltf2_blender_gather_primitives_extract.extract_primitives(
                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_primitives_extract.py", line 30, in extract_primitives
    primitive_creator.manage_material_info() # UVMap & Vertex Color
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_primitives_extract.py", line 398, in manage_material_info
    base_material, material_info = get_base_material(material_idx, self.materials, self.export_settings)
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\material\gltf2_blender_gather_materials.py", line 542, in get_base_material
    material, material_info = gather_material(
                              ^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_cache.py", line 36, in wrapper_cached
    result = func(*args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\material\gltf2_blender_gather_materials.py", line 74, in gather_material
    orm_texture = __gather_orm_texture(blender_material, export_settings)
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\material\gltf2_blender_gather_materials.py", line 304, in __gather_orm_texture
    occlusion = get_socket(blender_material, "Occlusion")
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\material\gltf2_blender_search_node_tree.py", line 242, in get_socket
    return get_node_socket(blender_material, type, name)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\material\gltf2_blender_search_node_tree.py", line 206, in get_node_socket
    nodes = [node for node in nodes if check_if_is_linked_to_active_output(node[0].outputs[0], node[1])]
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\material\gltf2_blender_search_node_tree.py", line 206, in <listcomp>
    nodes = [node for node in nodes if check_if_is_linked_to_active_output(node[0].outputs[0], node[1])]
                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.1\4.1\scripts\addons\io_scene_gltf2\blender\exp\material\gltf2_blender_search_node_tree.py", line 425, in check_if_is_linked_to_active_output
    sockets = group_path[-1].outputs
              ^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'Material' object has no attribute 'outputs'

What I have figured out there is some error with "occlusion" but I'm not quite sure. Is there any way that i can find the name of the material that is causing this problem?

Hello and welcome. The exporter should have handled the exception gracefully and provide informative error messages rather than crashing or throwing unhandled exceptions. That can only mean that this is a bug. This is Q&A site run by volunteers, we are not programmers nor in any way associated with the Blender Foundation, decision making nor development process of the software. For bug reports please see Where to Report a Bug


text:
How to change from weight paint to automatic weight
I’m really new to Blender.
I was moving on to rigging a model and was supposed to select ‘with automatic weights’, but selected ‘with empty weights’ or Paint Weight, I think?
When I click Ctrl + P on the mesh and armature, it doesn’t come up with the options anymore, and I don’t know how to undo it.

The easiest option would just be to clear the parenting and do it again, though I wonder why you can’t undo.
The second option is to:

Select the armature.
Go into Pose mode.
Select all bones with A.
Go back to Object mode.
Select the mesh object.
Go into Weight Paint mode.
Assign the weights automatically from the 3D Viewport header Weights menu as shown here.


text:
How to extrude along normals in Blender 4.2?
How to extrude along normals in Blender 4.2?
I can't do it like the picture

this is mine

That’s not even the same tool…

Apply the scale to your object in Object mode (Ctrl-A > Scale) first then Alt-E > Extrude Faces along Normals with the faces you want to extrude selected in Edit mode.

so, do you want extrude the edges straight accroding the normal like in the first picture?

If i understand your question, you can use Mesh Tools add-on its built-in add-ons
you can install through extension
and then in N Panel > Edit > Edge Tools select Offset Edges

Thanks Bro! I Love You


text:
Dissapearing bugs in 3d perspective
I just want to finish my 3d modeling of characters in different shapes and sizes but my user perspective shows nothing even though my outliner says I have 3 pictures in the viewport
Cat still frame but impossible to see due to viewport errors

Check the empty image's options, it could be set to not show up in perspective:

Check in your Overlays dropdown at the top to see if you may have inadvertently turned off "Extras." This will cause objects of various types to become hidden, including empties.


text:
Geometry Nodes -- exclude vertex group
I'm using geometry nodes to deform meshes using Noise on all 3 axes, like this

Click images to see full res
But there is one mesh where I'd like to discard the z-axis noise for a certain vertex group. That is, I'd still like that vertex group to be deformed on the x and y axes, just not on the z axis.
Following this discussion from another thread, I was able to use a 'boolean NOT' to exclude a vertex group, but it discards changes on all the axes, not just z.

Also tried separating them and using a mesh boolean but I was not sure of the wiring. I'd appreciate any help

Your selection mask should modify only the Z coordinate. To do that, you need a Switch node connected to the Input Boolean (this must be unconnected from the Set Position node) and to the Z socket of the Combine XYZ node. True/False sockets of the Switch node should be connected to 0 for nodes not to change and to the Noise Texture node for the others.

@StefLAncien that worked beautifully! I used a float switch. Thank you so much.

Use 'Switch node'.
Here you can see checking in 'Switch node' is vertex in vertex group, then return 1, else return 0.
Multiplying (1,1,0) (for vertex group) on noise texture vector I get noise vector with 0 on Z axis.


text:
Material not exporting/importing
I am doing a project in which I designed a simple environment in Unity (four rooms with furniture). I exported it to Blender in an fbx format.
It seems to have exported fine, expect that I can't see the materials or textures.  As you can see from the picture, there is a material assigned to the floor but it is still pink.
I also do not understand why some objects, like the walls of the table showed in the picture are not pink as the setting are the same.
I am completely new to both Unity and Blender and the goal is to ultimately export the environment to OGRE.
I have been reading many forums and tried many different things but so far no luck! It might be a simple fix but I do not know where to start looking.
Any help would be appreciated it! Thank you:)


text:
Smooth normals look bad when deforming the mesh
I will show the problem using a hand model as an example. I have a hand model that is trying to "save polygons" (not low poly). And to make such a model look good, I smoothed out its normals. But when I try to deform such a mesh, for example by attaching a rig to it, the normals remain the same. This exposes the rough edges of the "polygon saving" mesh. Sometimes this also causes artifacts during shading.

And so the question is: Is there a solution to this problem, besides actually increasing the polygons?

Sharp-edge normals are really meant for non-deforming hardsurface meshes. If your model is so low poly that its shading looks bad without sharpedges then I would see if adding a Weighted Normal modifier smooths it out a bit. But generally people don't put sharp edges on animated meshes, to my knowledge.


text:
Smooth Transfered Normals
The shading on my character's face looks generally good, but the shadow below the jaw looks terrible. I'm making a game model, and it's extremely important for me to keep the polygon count low. I want to achieve the result on the left screenshot. On the right is what I have.

I use DataTransfer with the "Projected Face Interpolated" method to move custom normals from the low poly model to the detailed head. That's where these artifacts come from, but this method of creating custom normals is too convenient for me to just give it up.

Do you have any tricky options in mind to smooth out the existing shading? Shade smooth is already enabled.

You can't use standard phong interpolation between vertices, for the effect you're going for, you need to define some focal point, somewhere around the eyebrow, and transition the normal based on distance from it. Or bake to a texture.

I suggest to display the split normals to be able to see what you're working with. You can do this from the Mesh Edit Mode Overlays (only accessible while in Edit Mode).

Then, I suggest to select the vertices that have normals issues and try the operators under Mesh > Normals.  I think Smooth Vectors or Reset Vectors may be what you're looking for. You can also try rotating normals manually using the Rotate... operator under the same menu (shortcut R > N > X, Y, or Z for constrained rotation).

I was able to achieve a favorable result.
To summarize, I did three things.

I added topology in the place where there should be a clear separation between highlighting and shadowing.

I changed the low poly mesh experimentally until everything looked a little better. In the end, a well-working option was an elongated jaw. (The effectiveness of this point is affected by point 3)

I selected the face and its side parts in a vertex group. And added a new DataTransfer (hereinafter DT) to the main DT, the task of which was to rotate all the normals of the verteses of this vertex group out of the ped. Only after this is the DT applied, which transfers the general normals of the head. This creates the necessary contrast between the lower and side sides of the jaw (sry for the tautology).

I took into account all the answers. Thank you very much for your help (●'◡'●)


text:
Modeling specific triangular folds on clothes
I want to recreate a specific effect of folds on clothes from a reference. The folds have a recognizable triangular shape and many straight lines. I ask you to suggest a way to recreate the folds as close as possible.

Even if the topology ends up being just awful, it won't be such a big deal.

It's not gonna be super simple, I would start with a cloth sim to get yourself close, then sculpt any extra detail, then flatten the surfaces, sharpen the creases and maybe the do a Decimate modifier set to Planar. The last step is only necessary if you actually need it to be flat faces, and will absolutely wreck the topology. It's possible you could get the final stylized look in shading instead of going for actual geo.


text:
Any Python code examples of bmesh operations on multiple objects?
I'm trying to iterate through multiple selected objects and perform bmesh operations. Unfortunately, I get errors such as index 0 out of range when trying to perform basic tasks such as selecting vertex index 0 on the next object in the selection.
I can iterate through objects and perform bpy operations, and I can perform bmesh operations on single objects fine. Unfortunately I get stuck when I try to perform index specific bmesh operations when iterating through all selected objects.
Would anyone be able to give me a basic example that would iterate through selected objects and e. g delete vertex with an index of 0 using bmesh? I'm using Blender 2.8
Thanks.

Example of bmesh operation on multiple objects https://blender.stackexchange.com/a/128263/15543

Thanks, that gave a great example, just what I was after.

This is an example based upon batFINGER's link that uses a vertex index.
import bpy
import bmesh

context = bpy.context
mesh_obs = [o for o in context.selected_objects if o.type == 'MESH']
bm = bmesh.new()

for ob in mesh_obs:
    me = ob.data
    bm.from_mesh(me)

    bm.verts.ensure_lookup_table()
    bm.verts.remove(bm.verts[0])

    bm.to_mesh(me)
    me.update()
    bm.clear()


text:
Blender file taking over an hour to load, is this normal?
System spec: Threadripper 12 core, SSD, 32GB RAM, 2080ti
File details: 40MB .blend 10 million verts in a curve.
File creation details: Curve created via importing of a very large and complex SVG
Blender version: 2.8
System utilization at time of file read: CPU 5%, RAM slowly gets to about 2.5GB.
The initial SVG import took about 90 minutes but I expected that after it was imported and saved as a blend file, it would be much faster to load up, as no SVG import is needed. It still takes over an hour to load and doesn't seem to be using more than 2 cores.
Once I'm in the file it cannot be worked on as just doing something as basic as switching to edit leaves me sat there waiting for it to switch modes. After 15 minutes of waiting I gave up on it, as waiting more than 15m to switch modes would be just unusable. I do plan to split my curve into multiple pieces, but I can't until I can edit it. I can break it up within the SVG, but it save more time if I can just do this in Blender.
Any performance tips would be most appreciated. Thanks.

10m vertices in a curve are a lot, especially since a bezier is subdivided even more between its control points. With a 2D curve, the filled shapes have to be calculated; another unoptimized step.
Some ideas.

Simplify the svg before exporting (in the exporter application).
Separate the svg in object mode. F3 > "Separate" [search]
Reduce the Preview Resolution of the curves.

I've looked at the Separate option, but this is offers no options that will separate anything in object mode for my object. I'm trying to convert to mesh at the moment ( so I can go into edit mode, select a bunch of verts, and separate). Mesh from curve appears to be only using 2 cores also, so I'm expecting this to take about 90 minutes for each step. Is it normal for it to keep using only two cores for tasks like opening files and curve to mesh?

Yes Blender is not optimized in that area. I will look into separate, if it realylly isn't builtin, I can show you how to script it.

There are three options, Seperate by material (not useful for me in this situation), Separate by Selection (not useable in object mode), Separate by loose parts (there are no loose parts). If you know of a way of scripting the chopping up a curve that would be very appreciated. It's a road network curve so it's all flat, being able to chop this up into equal pieces would be extremely helpful, thanks.

Could you upload and link the file?

If it is a network with intersections, those will be the loose parts.

After converting to mesh (it's just finished) I realized my SVG created in inkscape is wrong. I'm going to go back to the beginning and look at splitting my original source into multiple svg pieces. For what I am doing this will be my best way forward in light of Blender not being able to utilize more than two cores for the tasks I want to do.


text:
Proportional move?
If I have e.g a train track mesh, and I want to move one end of the track mesh down on the Y axis by a whole track width, is there a tool that would allow me to do this. I am aware of proportional scale and proportional rotation and have used these before to create twisted chair legs. What I would like to be able to do is like this but I'd just like to be able to do a loop select on the end edge, move it on the Y axis, and have all of the other edges along the track move down proportionally. Is there such a thing as proportional move as I can't see one? I've tried selecting every edge except the first, Y to split, and then tried moving the end edges but with no joy. It's not like I can scroll wheel with move to select the area I want to influence.
Any help would be appreciated, thanks.

Proportional editing works for translate (grab) operations as well as rotate and scale operations.  Select your edge, enable proportional editing, and g y to grab constrainted to y axis.  You'll see the rest of the same mesh get affected proportionally.  (If they are separate meshes, make sure you don't have "connected" enabled in your operator panel.)

Thanks Nathan, I've just tried it and I can't get it to work.I'm using 2.8 if that makes any difference. Alt-select to select edge, g, then y, grabs it and locks it into y. Made sure proportional editing is selected. It just moves the edges I have selected. Strange. No scroll option to select size of affected area. Not that I care about that though, I just want to proportionally move the whole mesh.

Your suggestion works fine with a new project. For some reason it's unhappy with the mesh/file created in 2.79b within 2.8. Look like some of my verts are unselectable on the corners. Don't know how it's got messed up, but at least I know what to do now, thanks.


text:
How to get ouput from existing group
i'm new from blender python scripting.
i've create a group node with output, the code are same that:
test_group = bpy.data.node_groups.new('testGroup', 'ShaderNodeTree')

# create group outputs
group_outputs = test_group.nodes.new('NodeGroupOutput')
group_outputs.location = (300,0)
test_group.outputs.new('NodeSocketFloat','out_result')

...
test_group.links.new(node_add.outputs[0], group_outputs.inputs['out_result'])

All works fine, but how i can get the group_outputs for linking new node if group already exist?
Thank you so much


text:
Where is the surfaces panel?

Image showing what my Blender workboard looks like right now.

what is a surfaces panel? Btw how did you manage to move your right menu to the left like this? It is impossible to pull to the left in default file

The surfaces panel is a panel in Material Properties. I cannot answer the second question because I do not know... I downloaded a preset for the head and it was just like that.

You need to select that top one material or add new one to have access to material settings, at this moment in the screen you have not selected any material, without material you cannot access it's settings

I have done that, I just forgot to show that in the screenshot :/

can you send that file to me here? use https://blend-exchange.com/ or something


text:
combining alpha over nodes
I have two masks of different parts of a picture.  In each mask I want to completely replace the colors in the mask...a different color for each mask. Should I be trying to do it in the compositor like this, and if so what is the node I am missing?  Or is there a better way for this noob?  Thank you so much.

Another "Alpha Over"

ok here is one way is figured out how to get my result!


text:
Blender Eevee, When i go to render mode i have lights but when i accually render it, the light is gone
All My graphics card is updated, i just wanted to make a video, but this happen
Specs : Blender 2.93.3, Eevee render.
Problem : Has light in render mode but no light when accually gets rendered
Hope Somebody can come up with a solution :)

I can see that your lights are visible in render but is everything that should be visible visible in render as well? If yes it probably is that you must have forgot something or did some little mistake that may have caused this. GPU is surely not the problem because you can see some lights

can you share your scene? Delete everything that is too big to transfer or personal and share your scene and those lights

I see a lot of collections, which is disabled in viewport but active in render.
One collection has a big amount of light sources. I think you don't know that currently EEVEE is limited by 128 light sources, so then the collection with light sources is enabled during render, you simply run out of light sources.
Probably, you should either disable hidden collections in render too (click on photo camera icon where eye icon is disabled) or disable collection using checkmark icon (both ways should work):

woah, didn't know about 128 lights, great info +1


text:
Camera affected to my view
I want to bring the camera to my view, and it dont work.
I saw a lot of answers saying that Ctrl + Alt + Numpad 0 was working, but when I do this it open this Pie menu.
I know that I have enabled it myself, but I dont remember how to disable it lmao...
Can someone tell me the shortkey or something to get rid of this Pie menu ?
Thanks a lot ! Sorry for taking your time :)

For an alternative method see the answer in this question https://blender.stackexchange.com/questions/211293/pressing-ctrl-alt-0-is-not-working-for-me

Please clarify your specific problem or provide additional details to highlight exactly what you need. As it's currently written, it's hard to tell exactly what you're asking.

I do not know the shortcut, but is this what you meant?

Yes, it could !! Where did you find it ?

When you're in the viewport, and press "N" key, you'll get these menu
In that goto View--> Camera to view

It worked ! Thank you a lot <3

@Wide Hello and welcome. This site is not a regular forum. Please don't reply "Thanks" as an answer or comment, instead upvote the post that helped you. If you feel it completely solved your issue consider marking it as accepted.


text:
Problem using rigid-body physics with a Trebuchet
Blender newbie here. I was trying to follow the tutorial: "Blender 2.8 Physics Tutorial - Make a Working Trebuchet!". And I am struggling with the physics part. I keep getting a result that looks like this, despite following the steps. Any help would be appreciated. Link to the file.

Nevermind, my problem was that I duplicated the axle, so I assigned the wrong items for a rigid body constraint.

Hello and welcome. Instead of having users go through links and external sites please use the builtin tools to embed images in your post. See How to upload an image to a post? or GIFs


text:
Recently unparented object doesn't behave independently blender python
I'm trying to simulate stage seperation of a rocket and it requires unparenting the object. It was first parented so it could follow the same route as another stage, but when it was uparented, the object refused to behave independently. File here

Most likely your object still has a keyframed transform. It's better if you provide enough information in the body of your question rather than having users download random files. Cheers :)

I'm not sure I understand, I don't see any keyframing on my object other than the parent object. Thanks in advance.

Your simulation is going to run a very long time. In fact, your python code mentions frame numbers beyond where you have the end set.  Perhaps you could point out the approximate frame range where the problem is easily visible?

To clarify, the issue is happening at frame 250, as you can see in line 118 and beyond, Stage 1 is suppose to "unparent" and separate. And I'm aware the frames are off, I miscalculated the amount of frames required, Thanks in advance.


text:
Set current rotation of an object to its default
I have built a rocket model with it upright, but its rotation is off.

I want to change all the values to 0 so it can be a more manageable "default" state. The thing is, when I change them to 0, the model flips. I'm trying to keep the model the way it is, but set the XYZ rotation to 0

CTRL-A to apply the rotation?

Wow, didn't know it was that simple. I'm still a beginner so thanks!

No problem. As they say, we were all beginners once.


text:
Programatically unparenting an rigid body doesn't work (with file)
I parented a rigid body to another rigid body. The parent rigid body is keyframed. I want to remove the parent and any lingering keyframing from that parent. Programatically, I tried to remove the parenting from the child rigid body. It works perfectly in viewport, but not at all when scripting.
What I've tried goes something like this:
    if bpy.context.scene.frame_current == 50:
       bpy.data.objects['ChildObj'].select = True
       bpy.ops.objects.parent_clear(type='CLEAR')
       bpy.data.objects['ChildObj'].select = False

Another thing that may contribute is that the parent rigid body is a compound parent.
In my case, the issue is happening from line 118-122.
The file is here

I believe this method of selecting objects is deprecated since V2.80. Which version are you using ?

The current way to remove the parent is to simply set it to none, ie bpy.data.objects['ChildObj'].parent = None  You don't need to select or deselect it.

This worked for me on 3.0.0 , thank you!

@MartyFouts, if I wanted to clear but keep transform, how would that work programatically, thanks in advance!

Ah, see this answer  basically, you need to apply the transform manually.


text:
Make a group of objects act together without joining in python
I have a multi-stage rocket. Each stage is seperated at a certain time through scripting and hence can not be joined with the others. I want all the parts of the rocket to rotate as a signle object, as shown:

Doing this programatically, this is what I've came up with:
for i in range(250):
    stageOne.rotation_euler[1] = bpy.data.stageOne.rotation_euler[1] - radians(1) #Rotating 1 degree every iteration
    stageTwo.rotation_euler[1] = ....

and so on. I've tried having the origins of the object at the same spot, but that does not execute the desired result. Instead, I get something like this:

One way is to parent the other objects to the one you want to rotate and leave them parented while you are rotating that object.  The code is something like obj2.parent = obj1. You can remove the parent when you're done.

That seems to work; however, when playing the animation, it seems to glitch: https://gyazo.com/637bbcc25dc9e7c0e5ae37352ac65177. Do you have any Idea why that might be?

No, sorry, I don't understand the glitching; although it does look like a problem with your graphics card might be the source.


text:
How to programatically rotate a rigid body?
I have a rigid body being affected by gravity. I want it to rotate as it accelerates. When choosing the animated option for Rigid Body, my object stops being affected by gravity. What I've tried goes along the lines of:
for i in range(250):
     bpy.context.obj.rigid_body.kinematic = True
     onj.rotation_euler[1] = currentAngleList[i] #currentAngleList is a list of angles my object rotates at
     bpy.context.obj.rigid_body.kinematic = False

Which has no result on rotation.

Firstly, don't keep setting "kinematic = False".  That will prevent animation on the object.  Set it to True once.
Then, you'd also want to set rotation KeyFrames to the angle list, so that it attains the currentAngleList[i] at frame[i].  So it is animated just like any other object, as described here.
Here is a scripting fragment, sans your array and loop:
import bpy

rb_obj = bpy.context.selected_objects[0]
rb_obj.rigid_body.kinematic = True
rb_obj.animation_data_create()
# replace the next statement with yer 'for' loop:
i=1
rb_obj.rotation_euler[1] = 11.0
rb_obj.keyframe_insert( data_path="rotation_euler", frame=i )


text:
Parenting results in spontaneoudly moving objects (File included)
I have a rocket with multiple stages. All of these stages are rigid bodies, but they're parented to the topmost stage. They're moving up because I switched the gravity upwards to mimic rocket acceleration. I've figured out the cause of the spontaneous movements was when I parented my stages. However, I can't figre out why they move the way they do. Sample of their movement: https://gyazo.com/336e608baa81561455d3afa57a33fdc6 I've scripted their parenting, although I don't think that's the issue either. Here is the file

Hello and welcome. Instead of having users go through links and external sites please use the builtin tools to embed images in your post. See How to upload an image to a post? or GIFs

if you click on one of your child objects and check the rigid body section you will see:

So change your "needle" shape to "compound parent" and hopefully it works now as you wish.


text:
Smoke is very blurry
I have a simple smoke simulation (90 divisions), however render/viewport looks very blurry today (but was better yesterday, and I wouldn't know what I changed).
Smoke Material is quite basic. I tried to apply steps from Smoke looks blurry even though resolution is set to a high value but result is too artificial.
Any idea what I should tweak to get a better smoke render/viewport quality ?

I don't know the dimensions of the objects in the screenshot, but to me this looks relatively normal for 90 divisions, since this is still quite low.

The cube has the default size of 2m. However can it be linked to the fact the density was set to 50 ? I can make it smaller ben then the smoke is too transparent.

I don't know, you said it was better yesterday. Was the density lower yesterday?  In the Material Properties tab, what do you see under Settings > Volume > Interpolation? Is it "Linear" or "Cubic"? Cubic can help reduce smoke blockiness with lower division settings, but looks more blurred in my opinion so I prefer Linear.

Thanks, it's indeed already on Linear. I have tried with bigger object size and it looks less blurry now. Since yesterday I remember having played with Density mainly.

Well, in general you can say almost every value you're tweaking can result in major differences in appearance of the smoke. Okay, this might be exaggerated. But even seemingly simple things like Resolution Division which at first sounds like it just brings more detail, can change the flow behavior a lot.

What I often do is to use File::Recover::Auto_Save to find a version that gets me back to what I liked, and possibly Save_As so I can compare settings to see where I went astray.

I'd say increasing the resolution of the smoke to at least double what it is now will definetely make it look less blurry and blobby. Adding some noise in the smoke settings might help too.

Have you tried ticking the noise box? It adds lots of data on top of the original smoke


text:
Unable to extend baking / simulation end frame for soft body animation
I am building a soft body animation, and want to Simulate up to eg frame 140, check simulation and then simulate frames 141 - 200, and so on...
However to change the simulation start and end frames, it obliges to delete all the Bake and restart simulation from scratch. Why ?

That's not really efficient to resimulate everything each time, especially for animations that are 3000 frames+, and with simulation running 2fps.

Is there an efficient way to run simulations, freeze them, then continue them ?


text:
Massive amount of objects / characters in Blender
Coming from the Maya world, I had plugins to generate massive amount of objects with minimal impact on performance (like Miarmy or Golaem), and had zillion of options to place and animate them. Do such plugins exist on Blender ?
I am trying to reproduce such kind of concepts:

You may want to take a look at Geometry nodes (included) and animation nodes (not included, but free)

Blender has particle systems and old boid-particles.

That looks amazing, thanks a lot !

Thanks to help provided, I could investigate the Geometry nodes and outcome is barely great for a simple implementation.


text:
Increase flow of smoke
I have a scene with a smoke/gas domain and an inflow sphere emitting smoke inside. How can I increase the flow of generated smoke on Blender 3 ?

In your inflow settings check the "initial velocity" and increase the speed:

if you have negative speed against gravity, adding noise might be a good idea:

Thanks. Does that really make more smoke, or does it just make it faster ?

If it would make it just faster, the domain should be filled with the same density as without speed after a while, shouldn’t it?

Good way of seeing things. Seeing your Stackexchange score, I will consider you're right :-) However I simulated with -100m/s (I want the smoke to go down), and it doesn't give me the impression the domain really fills in faster. And I find this approach a bit artificial in the sense I have to anticipate the direction of the smoke. Some burning wood types will generate more smoke than others, but the smoke will move at the same speed. Or am I seeing it wrongly ?

well....whatever you do with Blender is artificial ;) i quickly made this test with default cube, quick smoke and a speed of 30 m/s: [1]: https://i.sstatic.net/iruK3.jpg

Hint: add some noise, if the speed is negative, it really looks smaller ;)

with this: [1]: https://i.sstatic.net/aQ2Hp.png i got: [1]: https://i.sstatic.net/9OyHY.png

Cool thanks ! I saw based on your comment that by increasing Normal (tried with 50) had a desired effect too


text:
Count of instances in Geometry Nodes
I am using Geometry Nodes in Blender, based on an input image, and scaled instances based on the image color. Is there a way to know how many instances are display (scale > 0) ?

There is Point Separate which you could use based on this condition, and see the resulting spreadsheet.

Just check BEFORE you instantiate if the value of your scaling is greater than 0, and use that selection when instantiating.
After that you can query the number of instantiated objects with the node Domain Size.


text:
How to position instances of geometry nodes?
I would like to create a precise number of geometry nodes and then position each instance based on some code.

The only way I found to place these instances is the apply the modifier, separate by loose part and then change the coordinates of each created object.
However is there a way I can do that directly within the node tree, by e.g. passing a vector list as input to the Points Positions node ?

One way to bring an arbitrary list of positions into geometry nodes is to encode the positions into a texture.
testList.txt:
0.5 0.5 0.5
0 0 0
1 1 1
1 0 0
0 1 0
0 0 1
-0.5 -0.5 -0.5
-0.8 -0.8 -0.8

EncodeVectorList.py:
import bpy
import csv

filepath = bpy.path.abspath("//testList.txt")

results = []
with open(filepath) as csvfile:
    reader = csv.reader(csvfile, delimiter=' ', quoting=csv.QUOTE_NONNUMERIC) # change contents to floats
    for row in reader: # each row is a list
        results.append(row)

# The 8 here is the number of points
img = bpy.data.images.new("testImg", 8, 1, alpha=False, float_buffer=True, is_data=True)

# Adds an unused alpha channel for formatting reasons and flattens the list
img.pixels = [item for sublist in [color + [1.0] for color in results] for item in sublist]

For Blender at least, colors are stored as floats, so any position values should be valid.
Node setup and result:

Make sure to set interpolation to closest on the Image Texture node.


text:
How to assign rigidbody to bmesh
I am creating a shape with bmesh (for performance reasons, I am using bmesh rather than primitive_cube_add) and want to assign a rigidbody to it, however I get error:
RuntimeError: Operator bpy.ops.rigidbody.shape_change.poll() failed, context is incorrect. What am I doing wrong ?
unkapla = bmesh.new()

bmesh.ops.create_cube(unkapla)
me = bpy.data.meshes.new("Cube Bmesh")
unkapla.to_mesh(me)
ob = bpy.data.objects.new("Cube", me)
bpy.context.collection.objects.link(ob)
bpy.context.view_layer.objects.active = ob
bpy.ops.rigidbody.objects_add(type='ACTIVE')
bpy.ops.rigidbody.shape_change(type='BOX') --> Error

Missing "select_set(True)".

Thanks a lot, that made it


text:
Display and animate object in local axis
I would like to rotate an object along one on its local axis ; while I can do this via the viewport by selecting Local orientation, I would like to set keyframes using the Transform panel. However the transform panel always seems in World coordinates. How can I display (and hence keyframe) the Transform panel in local axis / coordinates ?

The transform, keyframed or not, is in local axes.  You may be misunderstanding what local axes are.  For an object that is unparented, they happen to be the same as world axes.  But imagine if you keyframed rotation, relative to the current direction that a face pointed (not the same thing): what is its unrotated rotation?  0.  Then rotate it-- now what is its rotation, relative to the current direction of a face?  It's still 0.  Rotation has to be defined relative to something else.

Ah you were fully right, thanks. My object was child of another one !


text:
Set position in geometry nodes makes object disappear
I have a simple object whose position I would like to link to another object.
I append a Geometry Node to that simple object, use the Set Position field and plug a vector to the Input position (later on the vector will come from the other object's position). And the object disappears. How come ?

You set the position of each vertex to (0, 0, 0) so rhe whole mesh is shrunk down to the origin point.

If your objective is to translate (not to deform) the object the GN modifier is attached to, I would recommend a Transform Geometry node over a Set Position node because it is optimized when the same displacement is applied to all the vertices.

...or, if you want to use the Set Position node, do not plug a vector in the Position input, but the Offset. This will move all vertices by the amount of the vector relative to their original position.


text:
How do I make the weights symmetrical?
Good day all. I hope you are well.
So today I was messing about on this random character. Made with mirror mode then applied it once done. Made the armature, used the symmetrize option on the legs only.
Tried to sign automatic weights. All is on the left side but the right...? Completely not!
Is there a way how I can mirror the weights from the left over to the right?
Thank you for your time.

apply mirror to the mesh before parenting amature,

I think my mirror mode you mean a mirror modifier. Not sure what’s going on here…


text:
How to make a cylinder smooth without smooth shading?
I want to 3d print a .stl file of a cube with a cylinder coming from it, but blender's default cylinder isn't smooth, and smooth shading is just an optical illusion. I don't know if I should just use the sub surface modifier a lot, or something else?

Hello :). If you need more edges, simply increase them to a higher number, when adding the cylinder. Default 16 is rather low.

I want it to (hopefully) be perfectly smooth, like how it LOOKS in smooth shading

You cannot technically do this in blender. However, you can increase the number of faces to the point where the printer’s resolution dot is bigger than the width of the faces. I think this is impractical however, and recommend you print it out a little rough, then do some sanding work.

I'll try it, one last question though, if you turn on smooth shading and then put the file in something like unity or unreal engine, will it still be smooth since it technically doesn't change the model?

I don’t know. It probably should, though, if Unity uses normals for its OpenGL rendering at all.

To be safe, I might use custom split normals data instead of “auto smooth,” or even use and apply the “edge split” modifier if that doesn’t work.

Simply adding a lot of verticies looks great!