text:
Smart UV Unwrap Multiple Objects
I want to be able to use Smart UV project on thousands of separate objects in a scene at once.
I'm wanting the result to be as if I'd applied the Smart UV Project to each individual object one at a time.
Using A to select all and SPACE then Smart UV Project just seems to create a problem in sense that when I import even a single object into Unreal Engine it behaves like it has an enormous footprint bigger than my terrain map, even though the object itself does not and is small.
Any advice or suggestions would be most welcome.

Scripting with Python
As you mentioned, Smart Unwrap in object mode takes all the objects as a whole. It's more useful to create a texture atlas, rather than individual UV maps.
Like in most scenarios where a tedius task must be done several times, you can try to automate the process with python code.
You can write a script that iterates through all the selected object of the scene, enter edit mode for each object, select all the elements of the object an call the smart_project() operator.
Blender 2.8+
import bpy

# Get all objects in selection
selection = bpy.context.selected_objects

# Get the active object
active_object = bpy.context.active_object

# Deselect all objects
bpy.ops.object.select_all(action='DESELECT')

for obj in selection:
    # Select each object
    obj.select_set(True)
    # Make it active
    bpy.context.view_layer.objects.active = obj
    # Toggle into Edit Mode
    bpy.ops.object.mode_set(mode='EDIT')
    # Select the geometry
    bpy.ops.mesh.select_all(action='SELECT')
    # Call the smart project operator
    bpy.ops.uv.smart_project()
    # Toggle out of Edit Mode
    bpy.ops.object.mode_set(mode='OBJECT')
    # Deselect the object
    obj.select_set(False)

# Restore the selection
for obj in selection:
    obj.select_set(True)

# Restore the active object
bpy.context.view_layer.objects.active = active_object

Blender 2.7x
import bpy

if bpy.context.selected_objects != []:
    for obj in bpy.context.selected_objects: #loop through all the selected objects
        if obj.type == 'MESH':
            bpy.context.scene.objects.active = obj
            bpy.ops.object.editmode_toggle() #entering edit mode
            bpy.ops.mesh.select_all(action='SELECT') #select all objects elements
            bpy.ops.uv.smart_project() #the actual unwrapping operation
            bpy.ops.object.editmode_toggle() #exiting edit mode

Thanks Carlo, you are an absolute superstar for putting me on the right track with this. I'd no idea you could use python for automation of tasks as I'm new to Blender. Using a "for each" to select each object in a loop and apply the UV Smart Project seems to work perfectly. :-)

I took the origin code by Carlo and have created an small AddOn that can be installed in Blender.
This is my very first Blender Add-On and I'm not a good coder... So it’s nothing special, but helped me a lot.
What it does:

It executes the Smart UV project function to all selected mesh objects in the scene.
Correct Aspect ratio is always ON, Stretch to UV Bounds is always OFF.
After the regular installation in the preferences you can activate the Add-On by pressing the spacebar and type „Smart“ in. Then „Smart UV project selected objects“ appear and you can execute it.

The quick script helped me a lot here. I hope it's something for you too.
Here is the link for the download:
http://www.christoph-werner.de/2018/08/03/smart-uv-project-all-selected-objects-blender-add-on/
Best wishes
Chris

Too bad it doesn't work in blender 2.9. I'd like to use this thing.
edit:
trying change this:
bpy.context.scene.objects.active = obj
to this:
bpy.context.view_layer.objects.active = obj
edit: yes, 2.9 tested

edit: The output of this script creates one UV layout for all objects - it's not good for me, I want each object to have its own uv layout (for lightmapping) - I have to redo it for my purposes. This is my second day with Python, thank you Carlo and Christoph Werner for the inspiration.
edit:
import bpy

print("________________________________________START")

selection_names = [] #declaring array

for obj in bpy.context.selected_objects: #loop through all the selected objects
  if obj.type == 'MESH':
    selection_names.append(obj) #add to array
    obj.select_set(False)

if selection_names != []:
    for obj in selection_names: #loop through array
            bpy.context.view_layer.objects.active = obj
            lm = obj.data.uv_layers.new(name="LightMap") #new UV layer for lightmapping
            lm.active = True
            bpy.ops.object.editmode_toggle() #entering edit mode
            bpy.ops.mesh.select_all(action='SELECT') #select all objects elements
            bpy.ops.mesh.remove_doubles(threshold=0.001, use_unselected=False) #optimize vertex- not necessary for low-poly
            bpy.ops.uv.smart_project(angle_limit=66.0, island_margin=0.222, user_area_weight=0.0, use_aspect=True, stretch_to_bounds=False) #the actual unwrapping operation
            bpy.ops.object.editmode_toggle() #exiting edit mode

print("________________________________________END")

This does not really answer the question. If you have a different question, you can ask it by clicking Ask Question. You can also add a bounty to draw more attention to this question once you have enough reputation. - From Review

Thank you, your comment is very stimulating, however I am just trying to solve the original query so that it works for me in version 2.9. If, due to your high experience, you can solve it, please send a solution. Thank you.


text:
Python to select and delete multiple faces?
I'm trying to select the top and bottom face of meshes and delete them.
So far, the code I have just deletes to first face but not the second. It would probably be more efficient to select both top and bottom together and delete them in one go rather than one, then the other, but I'll be happy with whatever just works. Any help anyone can offer would be most appreciated. Thanks
import bpy
from mathutils import Vector

def NormalInDirection( normal, direction, limit = 0.5 ):
    return direction.dot( normal ) > limit

def GoingUp( normal, limit = 0.5):
    return NormalInDirection( normal, Vector( (0, 0, 1 ) ), limit )

def GoingDown( normal, limit = 0.5):
   return NormalInDirection( normal, Vector( (0, 0, -1 ) ), limit )

def GoingSide( normal, limit = 0.5):
    return GoingUp( normal, limit ) == False and GoingDown( normal, limit ) == False

obj = bpy.context.object

#bpy.ops.object.editmode_toggle()

prevMode = obj.mode

bpy.ops.object.mode_set(mode='OBJECT', toggle=False)

#Selects faces going up
for face in obj.data.polygons:
    face.select = GoingUp( face.normal )

bpy.ops.object.mode_set(mode=prevMode, toggle=False)

bpy.ops.mesh.delete(type='FACE')

#Selects faces going down
for face in obj.data.polygons:
    face.select = GoingDown( face.normal )

bpy.ops.object.mode_set(mode=prevMode, toggle=False)

bpy.ops.mesh.delete(type='FACE')

You can use bmesh and bmesh.ops to do it.
The code is commented below:
import bpy
import bmesh
from mathutils import Vector

def NormalInDirection( normal, direction, limit = 0.5 ):
    return direction.dot( normal ) > limit

def GoingUp( normal, limit = 0.5):
    return NormalInDirection( normal, Vector( (0, 0, 1 ) ), limit )

def GoingDown( normal, limit = 0.5):
   return NormalInDirection( normal, Vector( (0, 0, -1 ) ), limit )

def GoingSide( normal, limit = 0.5):
    return GoingUp( normal, limit ) == False and GoingDown( normal, limit ) == False

obj = bpy.context.object

prevMode = obj.mode

# Will need to be in object mode
bpy.ops.object.mode_set(mode='OBJECT', toggle=False)

# Create a bmesh access
bm = bmesh.new()
bm.from_mesh( obj.data )

# Get faces access
bm.faces.ensure_lookup_table()

# Identify the wanted faces
faces = [f for f in bm.faces if GoingUp( f.normal ) or GoingDown( f.normal )]

# Delete them
bmesh.ops.delete( bm, geom = faces, context = 'FACES_ONLY' )

# Push the geometry back to the mesh
bm.to_mesh( obj.data )

# Back to the initial mode
bpy.ops.object.mode_set(mode=prevMode, toggle=False)

Thank you, that worked great for me on 2.8.

Thank you so much. You've helped me solve a completely different problem.

source: Stack Exchange

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

sort: votes


text:
How can I use the curve modifier with curves that have sharp corners?
is there any way that I can get a mesh to follow sharp corner better. I'm using the array modifier and the curve modifier. As you can see from the image, the corner is very messy, so any suggestions would be appreciated, thanks.

There is no elegant automated solution for this, self intersections are hard to solve automatically and in a satisfying manner. Other than manually tweaking one workaround would be to flip the mesh to the outer contour, admitting it will not yield sharp corners.

I just found answer to my and probably your question -
You want to subdivide your curve to have sharper edges on modified mesh.

No subdivision:

After I subdivided curve about 100 times:

You have to add edgeloops or subdivide the mesh to get smooth deformation:

Plane without Edgeloops:

Plane with Edgeloops:

Thank you, this is very effective for NURB curves, and if I convert my curve to a NURB curve then this loop cutting method is a good one for smoothing out bends. Unfortunately my curve is a Poly curve in the first instance and converting it to a NURB curve creates unwanted shape distortion. If I loop cut my cube 10 times, on a NURB curve it creates a very nice smoothed out bend, but if I use this on my Poly curve it behaves as if I've just made one loop cut on one side of my cube.

Increase curve resolution preview will help with your issue

I can't get my curve to increase in resolution. It originated from a 2D mesh, which was converted to a curve. I tried changing the curve type to Bezier via the Set Spline Type, but any resolution change on this has no effect. If I add a Bezier circle I can see that this works very well to smooth out curves. This issue appears to be because of the handle type. So far it seem like if I change the handle type to one that will allow an increase in resolution the curve gets distorted.

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


text:
Is inset with vertices merging to prevent overlap possible? v2.8
I want to apply an even inset but need to prevent overlap which is inevitable for the shapes I'm working with using the inset tool. Is there anyway I can have the vertices/edges auto merge that overlap?
I've ticked the Auto Merge option for the inset tool but that doesn't work for me, perhaps because the overlap is so great.

Select every vert, hit alt+m then choose by distance and adjust the distance in the pop-up menu in the left bottom corner.

Too much overlap to do that unforunately, it would merge verts I need to keep. I'm talking about a deep inset.


text:
Remove duplicate faces with Geometry Nodes
I'm generating a world made of hexagons with dynamically varying heights.
To improve the performance, I'd like to remove all faces that are duplicates, i.e. that

are directly facing each other (opposing normals and no distance between)
have the same face area

I tried around with raycast and compare nodes but not to a satisfying result. Eventually I'd want it to look like below, that all same-height hexagons have no dividing walls, and only those that have variying heights have.

pls provide blend file so we don't have to rebuild everything manually. thx.

Hello, have you tried instancing hexagons and then using the extrude node with the Individual Elements checkbox off ?

@Chris, how do I add a blend file? Sorry, I'm new to this exchange

Thanks @Gorgius, I just tried that but the "individual" checkbox seems to have no effect.

@Chris I've uploaded the file here: https://www.dropbox.com/scl/fi/lfwrigau9g7amar6uyroe/Hexworld_nodes_36_experimental.blend?rlkey=zz641184bmk57yw193jmk41zk&dl=0

"To improve the performance" - first try with instances. Chances are the performance will be enough. https://blender.stackexchange.com/q/264036/60486

Another possibility:

Its made in two times:
Top part of the node tree: merge only the base vertices, then remove vertices that have more than 3 vertex neighbourg and more than four face neighbourgs.
This first result works well but also removes part of hexagons that are isolated by their height.
Bottom part: merge all and remove vertices that have more than 3 vertices and have 3 faces.
Also works well but also removes part of the contour.
So join the two and merge again by distance.
The result is also around 2.8k vertices.

lemon's approach seemed more intuitive and it worked on first try, thanks you both for coming up with fantastic solutions. I'm really impressed what geonodes can do with a little bit of fantasy and lots of math :P bravo!

you can try this setup here, although i am not sure whether it is very performant - maybe you try that out, i was too lazy ;)

result:
Faces shrink from 3.8k to 2.8k
visualized faces which were deleted:

Hope it helps.


text:
Is there a way to export object view status inside of an asset?
I'm facing a problem with the asset browser :
I'm building up a collaborative asset library through One Drive for team working purposes, containing some rigged characters. Those characters can have multiple different hairstyles, and I am marking as an asset the collection containing the rigged character and its different hairstyles.
I'm trying to make sure that I only have one hair object that stays visible when importing the asset in a new file, but I can't manage to do that or find a workaround that would suit my needs. I could of course just hide manually all the hair objects I don't need every time I import a character collection asset, but the number of different hair objects makes this process tedious.
Any idea or approach that would help me to achieve that would be greatly appreciated.
Cheers :)

There isn't as far as I know. The only way to do it is to create multiple collections each with its own subset of visible objects. You can link all other objects with common visibility status to multiple collections to save duplication. I made an addon to ease creation of instaceable collections and duplicating hierarchies https://blenderartists.org/t/collection-utilities-addon/1229359

One other theoretical way is to control visibility through geometry nodes, but I've never tried it myself, not sure how well it plays with rigged characters

@DuarteFarrajotaRamos Thanks for the input, I'll look into the addon and check what I can achieve with geometry nodes :)

@DuarteFarrajotaRamos seems like going with geometry nodes was the way to go, thanks !
For anyone facing a similar issue, I found this guy solving precisely this (and then just create the asset collection as you like) :
https://www.youtube.com/watch?v=-ONw053FlV0

Thanks for the posts. This is not a regular forum, according to site rules links to answers are not answers if the link goes missing your answer becomes an empty shell without content. Answers should be substantial and stand on their own without relying on external data like links, videos or images. Instead of having users go through external links, either transcribe essential parts of the process here, linking the source, or posts these in the comments section instead.


text:
Faces twists. Bridges Edges Loops Problem
I’m a beginner and I’m following a lesson on internet, the problem is when I’m trying to create a faces between selected edges, my faces twists..
How can I solve it ? I’ve been stuck for hours now ahah I don’t know what I did wrong

Thank you so much for your help !

Most likely there is inverted normals or doubled vertices in your model.

Oh thank you so much!!! Actually it was inverted normals ! Thanks a lot


text:
How can I quickly place assets on a grid?
I'm currently learning Blender and have taken on a personal project of building a city to keep pushing myself. I'm currently designing generic buildings and other assets of varying sizes and shapes to fill out the city. Before I get too deep into that, I'd like to know:

Is there a way to automatically fill out a grid with random buildings without overlap?
Alternatively, a fast and easy method of placing them on the grid from my asset library. (Preferably just have it snap to a vertex and rotate it appropriately)
Anything I could do to the asset files themselves to streamline the process.

Here's a bit of the grid I've got right now:
And here are the work-in-progress buildings:

3.) & 2.):
To manage your assets have a look at Blender's Asset Browser. There are plenty of tutorials on YouTube. When dragging and dropping assets from the Asset Browser Blender already snaps them to your drop target based on the bounding box of the asset. Additionally, starting from Blender 4.0, snapping tools got a huge upgrade with the possibility to choose a "snap base" (lots of tutorials on YouTube for this, the documentation is not very clear currently).
1.) That sounds like a case for Geometry Nodes to me. I recommend taking a look at tutorials on the subject of Instance on Points, Mesh To Points, Realize Instances, Transform Geometry, Translate Instances.


text:
Missing object when rendering using OPENCL GPU and CPU render
I'm new in Blender, so I tried to make an animation following youtube tutorial.
I have problem when using OpenCL for rendering

Some object is missing and the physics on the object is not working. It should be like this (using CPU only/None):

but the result is like this:

There is only one cube appear and not falling.
what should i do?
thanks

https://blender.stackexchange.com/questions/221683/cycles-opencl-and-mesa-driver-support/221710

thanks for your answer


text:
Uniform scaling for multiple edges?
I was making a quadball, and in the way I do it, I take a cube, cut one edgeloop on each axis, and then individually scale each edgeloop to make the cube into a quadball. But I was thinking, to make the perfect quadball, I'd need to be able to scale each edgeloop to the exact same degree. Is there a way to do this?
Please do not recommend other ways to make quadballs, just please tell me if what I'm trying to do is possible.

Cast modifier -> sphere with 1.0 strength is the usual solution, but that will move your corner vertices.

for exact scale, use numeric values, ie, S1.2

@Marty Fouts ‘S’ as in the keyboard shortcut?

yes.  The keyboard shortcut can take a numeric value followed by the Enter K to scale by exactly that value.


text:
Appropriate Texturing of Human Face
I am working on a human being in Blender and I made the vertices for the face plus a general human skin material, according to a tutorial I watched.
My issue is, that certain shadows don't show and it isn't due to lighting, as far as I see. For instance, the area under the nose and the groove above the eyelid western people often have. I know that people often use pre-made face textures on their models through UV texturing, but I don't want that sort of realism in my models. Do I have to make the shadow myself with clever use of gradient textures or should I try to make harder edges in my models in order to get more distinct shadows? Do these suggestions even work?

(I know, the materials are dismal still, but at least I know how I would improve them =) )
Thanks in advance! =)

it's hard to answer since your picture is so dark.  Can't tell if there is geometry on the face or not, and it's almost completely in shadow.  Also, you mentioned that it's "not due to lighting" but shadows are all about light - not sure what you mean.  It would help to post the blend file, or at least a better image.

But even in a dark picture, you should be able to notice some more pronounced shadows. I do know that shadows come from light. I just describe, that I am not satisfied with the shadows on my biped. I shifted the sun and the shadows don't get any different. That's what I mean with that

Ok. Well, I still think it would help to provide either a wireframe view so the geometry of the face is visible, or upload the blend file itself.  My guess is that it'd be hard to get the clever gradients to be where you want them to be, and so making more defined geometry seems to be the right idea.


text:
Difference Boolean Not Working as Intended
I'm fairly new to Blender so I'm sure this is a dumb question-
I am trying to create a house layout with holes for my doors. If you see the image below, I have the walls, with cubes for the door holes as separate objects.

However, if I apply a Boolean modifier to the walls with the Difference operation and the object being the Door holes, I get the below results:

The below happens with the opposite (Boolean applied to the doorholes with Walls as the object):

As you can see, the door frames are exposed but there's still a chunk of wall in between the door. This is the ideal result I'm looking for (it works for this door only). Note the window I have in the door.

This is what the other doors get with the boolean. The front sides are exposed but there's still wall inside the doors.

I appreciate whatever help I can get here. I have verified the following:

There is no duplicate geometry
Normals are all facing the proper direction

FIXED IT:
I was using an old version of blender (2.83).
Updating to 9.23 and then selecting "Hole Tolerant" within the Boolean solver options fixed my issue.


text:
Normal Map Baking Artifacts
I have this model, which when baking the normal map always has artifacts in the same place - on the upper ring, into which many "beams/pipes" are inserted. The mesh consists of several objects joined into one, so the geometry of the "beams" was not directly connected to the ring in any way. Also Bevel modifier was applied on the model with "Harden Normals" enabled. What can cause this problem and is there any way to get rid of these artifacts when baking directly in blender? I've attached some images for clarity

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

I wouldn't like to share my file, it's a game model which will be for sale and I don't want anyone to steal it. Do you have any recommendation on what can I try to solve this?

if this is just about the torus, just share the torus? (high-poly and low-poly)

I'm not baking from a multires model, I'm baking a  texture from a bump node

Any help without a file is going to be a guessing game-- I'd say that if you run into problems, you say, okay, I guess I'm not ready to be selling stuff until I understand how this stuff works better, and write it off.  I don't see anything weird in your final image, which is presumably the normal map in use.  Wouldn't recommend combining custom normals (incl. sharp edges) and a normal map: instead, use an object space normal map on a smooth, default normal copy (can bake from that to tangent if desired.)  Bump->normal depends on the bump, so shader nodes are a minimum to tackle the problem.

Ok, I've tried so much stuff and nothing works, how do I share a file? I'm new to this platform

Recommended, use https://blend-exchange.com/ and put their code in your question.  Ideally here, we want the file ready to hit "bake", with any textures used for the bump packed into the file.


text:
How do I close the gap after using Screw and Boolean modifiers?
I'm new to Blender and currently attempting to create a rope using the Screw modifier. After 'cutting' the rope with a Boolean shape, I am left with gaps that I need to fill seamlessly. The attached picture illustrates what I'm trying to achieve. Any assistance would be greatly appreciated.

I tried creating a copy of the object and I think I found the solution.
 Blend file: https://drive.google.com/file/d/1BagPbbMgAsoyKf-9GXTC_W2LY6edVy9i/view?usp=drive_link Video on how to do it: https://drive.google.com/file/d/19yPa8YXLkuxIynXafZjNRb-mZiXl6CSl/view?usp=drive_link

Hi! I'm unable to access these links. Could you please provide the solution in text form?

Boolean doesn't seem to work in this case but you could do it another way. Create your circles, enable the Auto Smooth and the Split Edges & Faces options:

Then press G and Enter right away, select all the inner vertices and remove them:

Now give it the Screw modifier, apply it, select the top and press AltF to fill and X > Limited Dissolve to clean the topology:

Thank you kindly!

Yup, guaranteed to be both faster and generate prettier geometry. The boolean workflow is nice but it has its limits. :)

@Gorgious Boolean doesn't seem to work fine in this case :(


text:
Why do the normals on this Path have varying density?
I added a Path, enabled "Normals" in "Curve Edit Mode Overlays", enabled snap to Increment, and extruded the end of the Path a few times.

The middle segments are showing more normal arrows than the end segments. Why is this?

Normal arrows are shown at each place where a point is made to generate the curve.
They are spread unevenly across the whole curve depending on the control points' position, but the start and end points are always on their respective control points. Hence the stretch.

The points made to generate the curve are evenly spread out at 1 unit distance due to the snap, so that doesn't make sense to me


text:
What's an appropriate fluid simulation configuration for a 10,000 kilometre body of water?
I want to model a geological disaster which will disrupt an ocean 10,000 kilometres across, and up to 2,000m deep. (Yes, it needs to be simulated all the way to the bottom.)
I know the 3d data involved would be ludicrous, so outputting a heightmap (8 bits per square metre) once per X frames would be fine.
It's okay to pretend the Earth is flat.
The only objects in the scene are water and the earth's solid (but changing) crust.
The timescale of the simulated event is several days.
I don't need this to produce final render quality data, just give me something physically plausible (accurate-ish) which I can process into something else later on.
Ideally, it would produce "reasonable" results within a few days using my desktop computer at home.
I don't mind coarse output. Something like a 1-metre resolution would be okay, or even lower, like maybe 10m, as long as this doesn't lead to silly physics.
I don't know how suitable the off-the-shelf product is for this. Perhaps there would be issues at certain resolutions, or time step considerations, or something.
I don't know if Blender is suitable for such a task or whether I should use something else entirely
What configuration/settings would be appropriate?

I see multiple issues. 1) We'd need to know what kind of event (small waves VS big water splash 2) A fluid simulation with a 10'000km domain and resolution of 1 or 10m will never happen 3) Simulating 1m waves when looking at the entire domain, it would be too small to be seen 4) Blender isn't supposed to give realistic result, for example FLIP fluid simulations only simulate surface of liquids 5) 99,99% of your water body won't be moving (if small waves), why would you want to simulate unmoving water ?
I would recommend taking a look at other tools, such as SPH simulations.

Also 6) You are talking about height maps, but these are used for 2D objects (such as surface of water). You are saying you want to simulate a 3D body of water, so height maps won't cut it.

I do not know about your hardware, but some people's PCs already struggle with domain resolution divisions of 200 or 500... when you want 10 m resolution in a domain with a side length of 10,000 km, this would mean you have to set the resolution divisions to 1,000,000 (1 million!) Even if Blender were capable of simulating this theoretically (which I doubt), for sure your hardware will get a performance problem...


text:
Viewport and Render Image not matching
Help please, I've been trying to figure out a fix to this problem for hours now but can't seem to find it.
Every time I render this project, it doesn't seem to match the final render from the viewport. I've tried clicking stuff but cant find anything.
If you know a fix to Viewport and render not matching please let me know
I have a 2070, Ryzen 5 3600, I'm fairly new to blender, my current project is a modelling project with rigs, and it's the second project now where I get this issue.
As you can see in the picture, the hand on the render is different then on the viewport.

difficult to say for sure without the blend file. could be conditional modifiers, could be animation action, might even be different objects - one for viewport and one for render.

Thanks for the heads up. Quickly tho could you possibly tell me some places where I should check for a fix? Because I have no clue where to look anymore /:

Update: I deleted everything on the non linear animation panel and it fixed it


text:
which texture should I connect to which input in BSDF
I have a 3D bottle & 6 texture maps such as alpha.jpg, bump.jpg, color.jpg, color-blur.jpg, env.jpg & roughness.jpg .
So I want to mix my texture maps in the shader nodes of Blender To achieve the following result :

but I cant mix my maps into the blender correctly:

can you help me, which texture should I connect to which input in BSDF?

try to plug the bump into a the Height input of a Vector > Bump node, and plug this Bump into the Normal input of your Principled

env is world image? If yes, put that image into world nodes, not your object nodes

you can connect the alpha image to the Alpha slot of the Principled BSDF. Your setup is needed for the early 2.8x version of Blender when the Principled BSDF node had no Alpha slot. Check if the Alpha output of the image is the correct one (could also be Color, depends on the image).

Tip to help you out.  Enable Node Wrangler add-on if you haven't already.  In the shader editor, select only the Principled shader and type CTRL-SHIFT-T.  In the file open menu that pops up, select all of the image textures you want to use.  Blender will try to guess from the texture names what the best setup is.  Doesn't always work, because it relies on naming conventions, but even when it doesn't it's a good starting point.


text:
Objects are not shown on the screen, only the outlines

Hello, I have this problem and I don't know what the cause is.
You see, i was using the last blender update (2.93.4LTS) and it worked fine but sometimes it wont start up, and when i was modeling a character the extrudle tool was doing strtange things, and sometimes the object did not allow me to edit.
So i thought "i should download the older version because that worked for me before!"
I downloaded the 2.82a and this happend, i can see only the object outline  but not the object, when i do the rendering to see if its there, theres only the shape but with missing textures. I saw a couple of videos on youtube and they "fixed" the thing with select other render engine and go to preference but as you can see, i font have the preference tab on the render engine (not eevee or cycles).
I'm downloading older versions and its the same, the photo its the 2.80 version, my limit its 7.9 and if it doesnt works, i give up.
This is so weird to me because i made things on 2.82a, i made a lightsaber, i practiced sculpting.
You can say its my hardware, wich its probably true, but as i said, i worked fine on 2.82a.
My hardware is AMD A8 8gigs of RAM, no graphics card but the APU can do very basic work.
Sorry to make this so long, but I'm a bit desperate because I have a contest in 5 days and I just have to model the characters.

it's a driver problem, try a previous one, or try to enable Render > Performance > High Quality Normals option

Thank you for you answer! I dont kave the option of high quality normals BUT i saw that people have a problem with the current Radeon drivers, so i'm going to downgrade my Adredalin to 20.9.1 and see if it works!


text:
Text in 3D view linked to an object
I'm looking for a way to display 2D text based on an object's position.
I'm not an expert in blender python, so I couldn't figure out by myself how the Measureit Addon does it. It's very similar to what I want.
So far, I've tried the blf drawing functions and the view3d_utils.location_3d_to_region_2d but the text doesn't show in the correct position.
Here is my code right now:
import bpy
import bpy_extras
import blf

region = bpy.context.region
rv3d = bpy.context.screen.areas[0].spaces[0].region_3d
coord = bpy.context.active_object.location

pos = bpy_extras.view3d_utils.location_3d_to_region_2d(region, rv3d, coord)

font_info = {
    "font_id": 0,
    "handler": None,
}

def init():

    import os
    # Create a new font object, use external ttf file.
    font_path = bpy.path.abspath('//Zeyada.ttf')
    # Store the font indice - to use later.
    if os.path.exists(font_path):
        font_info["font_id"] = blf.load(font_path)
    else:
        # Default font.
        font_info["font_id"] = 0

    # set the font drawing routine to run every frame
    font_info["handler"] = bpy.types.SpaceView3D.draw_handler_add(
        draw_callback_px, (None, None), 'WINDOW', 'POST_PIXEL')

def draw_callback_px(self, context):

    # BLF drawing routine
    font_id = font_info["font_id"]
    blf.position(font_id, pos[0], pos[1], 0)
    blf.size(font_id, 50, 72)
    blf.draw(font_id, "Hello World")

if __name__ == '__main__':
    init()

Any help in solving this issue will be highly appreciated.

Probably your region and rv3d are not correct.

Select a object, run the script. It will display a blf text near the object.
#blender 2.92, viewport object mode
import bpy
from blf import position as blfpos   #import the function can improve the performance
from blf import size as blfsize
from blf import draw as blfdraw

import numpy as np
from mathutils import Vector
from bpy_extras.view3d_utils import location_3d_to_region_2d as vec_3d_2d   # a function use for 3dspace(xyz) to viewport region(xy)

font_id = 0
blf_vec = [0, 0, 0]
tx = ""

def draw_blf():
    blfpos(font_id, *blf_vec)
    blfsize(font_id, 50, 72)
    blfdraw(font_id, tx)

def view3d_find( return_area = False ):     # function use for return region, rv3d
    # returns first 3d view, normally we get from context
    for area in bpy.context.window.screen.areas:
        if area.type == 'VIEW_3D':
            v3d = area.spaces[0]
            rv3d = v3d.region_3d
            for region in area.regions:
                if region.type == 'WINDOW':
                    if return_area: return region, rv3d, v3d, area
                    return region, rv3d, v3d
    return None, None

oj = bpy.context.object
tx = oj.name

region, rv3d, v3d = view3d_find()
vec = vec_3d_2d(region, rv3d, oj.location)
print(vec)
blf_vec[0], blf_vec[1] = vec[0], vec[1]

bpy.types.SpaceView3D.draw_handler_add(draw_blf, (), 'WINDOW', 'POST_PIXEL')

#need refresh the screen manually: click the object in viewport

Thank you very much. It worked perfectly, I can see what was wrong with my code now.
I have noticed that the Meassureit Add-on preserves text linked to the object even when the perspective changes or the 3D Viewport is scaled. I think it is running modal. But I'm not sure how to update location in real-time.

you can do a operator in {'PASS_THROUGH'} to update the location in real time.

So the final result was a modal operator the {'PASS_THROUGH'} return, as suggested. I'm posting the real-time text update operator in case it helps.
import bpy
import bgl
import blf
from bpy_extras.view3d_utils import location_3d_to_region_2d as vec_3d_2d

def draw_callback_px(self, context):

    font_id = 0

    oj = bpy.context.active_object
    v3d = context.space_data
    rv3d = v3d.region_3d
    region = bpy.context.region

    vec = vec_3d_2d(region, rv3d, oj.location)
    x = vec[0]
    y = vec[1]

    # draw function
    blf.position(font_id, x, y, 0)
    blf.size(font_id, 20, 72)
    blf.draw(font_id, 'Text')

class ModalDrawText(bpy.types.Operator):
    """Text linked to an object"""
    bl_idname = "view3d.modal_text"
    bl_label = "Show text in 3D Viewport next to the active object"

    def modal(self, context, event):
        context.area.tag_redraw()

        if event.type in {'RIGHTMOUSE', 'ESC'}:
            bpy.types.SpaceView3D.draw_handler_remove(self._handle, 'WINDOW')
            return {'CANCELLED'}

        return {'PASS_THROUGH'}

    def invoke(self, context, event):
        if context.area.type == 'VIEW_3D':

            args = (self, context)

            self._handle = bpy.types.SpaceView3D.draw_handler_add(draw_callback_px, args, 'WINDOW', 'POST_PIXEL')

            context.window_manager.modal_handler_add(self)
            return {'RUNNING_MODAL'}
        else:
            self.report({'WARNING'}, "View3D not found, cannot run operator")
            return {'CANCELLED'}

def register():
    bpy.utils.register_class(ModalDrawText)

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

if __name__ == "__main__":
    register()


text:
How can I add a hand-painted texture as an input to a shader node?
I am using a noise texture to generate the mask for the land/water layers of a planet

I want to bias this noise texture with something hand-painted so I can roughly shape the continents by hand but use the noise to break up the edges automagically.
I think I want something like this

except instead of a fixed "Value" node, I want the value to be taken from some monochrome texture. Then I want to paint onto that texture in Blender and see the effect on the coastline immediately.
How can I set this up?

Have you tried the image texture node?

As LOLock said, an Image Texture Node fed into the Factor of the Mix node bringing in the Blue there. I'm not so sure that the Value input you have there Adding to the Noise will serve as a stencil, but you can try that. Main thing is to make sure you reference UV for mapping so that the paint lines up. Simple black rgb image painted white will work.


text:
Can I subdivide a mesh nonuniformly until a maximum face area is achieved?
I want a sphere which I can model a planet on. I want any given area to have roughly the same resolution. A UV sphere concentrates geometry at the poles.
My first solution was clunky and problematic.
Ideally, I would like to apply some sort of subdivision operation with the following logic:

For each face: if its area exceeds a given maximum of A units, subdivide that face (across its longest dimension, so the tendency is to squares rather than noodles).
Reposition the new vertices to maintain consistent overall curvature.
Keep doing this until all faces have an area of less than A.

Does such an operation exist?

If you don't want poles, maybe begin with a subdivided cube (with Smoothness at 1 to make it spherical)?

Do you know about icospheres?

Use an icosphere.

OR

Subdivide the sphere unevenly, then use the remesh function from the mesh data tab.

an icosphere will produce shading issues or do I miss something?

@lemon The OP wants a dense even sphere for a planet. Would you not use an icosphere? What shading issues?

ok, forget it, sorry. Dense icosphere is ok, but subdivided low density is not.

Suppose I want to do this for a general mesh?

Then you use the second method.


text:
Can I sample light rays to a texture and ouput it per-frame?
I want to integrate ray tracing with my own dynamical system which will respond to incoming light.
I would need some kind of texture (or other data buffer) applied to an object to receive the data.
Each frame, using ray tracing, I want Blender to write to that texture, recording the amount of light which strikes it that frame.
I want to then run my own software which reads that texture (or other data buffer), does some stuff, and outputs data to images etc.
Those output images are used during rendering so they need to be reloaded before rendering the next frame.
Is this possible?


text:
Boolean intersect deltes all geometry including within the region of intersection

In this scene there are two objects: tower (highlighted in the image below) and tower_fill (the middle bits).

They both have all transforms applied and are boolean intersected with the same cuboid. This intersection trims tower to within the volume of the cuboid. In the above image, the modifier is disabled for tower_fill but if I enable it, tower_fill completely disappears.

Here are the modifiers:

Why don't both meshes get trimmed the same way?

I think you just have to enable Self Intersection on the faulty tower_fill. Also, I'm not sure your mesh (tower_fill) is manifold. If not, it is expected from the boolean modifier to not work as it should.

Is it a mesh? I don't think it would work with curves or instances

“The cuboid” is not shown in the image, unless you meant the two cuboid railings on the sides of the lattice that are unaffected by the Boolean? Please add that to your post.

@Lutzi enabling self intersection worked, but why should that matter at all here?

@spraff No idea :D I just played with the settings.


text:
Best way to apply Soft Body to multiple floating meshes that are parented?
I have a mesh like the below and I'm wanting to apply soft body physics to it, but to have the parts remain 'connected' — I've tried vertex parenting, rigging etc. but none of it seems to work, I'm definitely missing something or not doing something right — even using constraints didn't seem to do it? Any help would be greatly appreciated.

do you mean that you want to keep the gap between each part?

@moonboots yes! that is exactly what I want to achieve, I don't mind if there's some movement but to keep the overall shape would be nice, thank you for your quick reply.

you could use a proxy object (which is connected as soft body) and then parent yours to that proxy object. Is there any reason why you cannot join your meshes one object?

@Chris I've not heard about proxy objects, would you be able to point me in the right direction of how this would work? And they were under one object to begin with but as a soft body the separate parts still went their own way?

that's exactly what moonboots does. You don't use your original (high poly mesh) to make a simulation because your computer would start to burn, but use an easy proxy (low poly) mesh to do that.

Create a cage around the flower object (here I display it as wireframe, you'll need to make it invisible in render of course), give it the Soft Body simulation (Cloth should work as well), remove the Soft Body from your flower, give it Mesh Deform modifier with the cage as Object, click on the modifier's Bind button:

Result:

This is perfect, thank you so much for putting in the time to help me out! What's the fastest way to make a cage given the model I have? I could grow and remesh the parts until they're one part?

You need to make a simplified version of your current object, either you start from scratch, or you duplicate your object, simplify it, make some bridges between the different parts... The cagemust be slightly bigger than the original, it must encompass it in order to work. A high-resolution cage would give a better simulation but it would also be more tedious to calculate so try to stay as low-poly as possible


text:
Faces that were invisible on Blender become visible in powerpoint
I've created a project and it looks like this :
But once I export it through FBX, STL or other formats to powerpoint it looks like this:
Does anyone know how to fix this problem and make the cube mesh invisible on powerpoint too?

How have you made it invisible in Blender? Does this apply? .fbx export why there are no materials or textures?. Also note that you can't export unapplied modifiers such as Boolean modifiers from Blender.

Yes it looks like you need to apply a boolean or delete the boolean object

Of course it looks like this, because FBX, STL and other formats do not have Blender's Boolean modifier. To them those are all just objects. As mentioned by moonboots, You have to apply the modifier (and either delete the cube before export or check the option to only export selected objects and of course not have the cube selected).

Thanks a lot! It works now.


text:
weird shading problem
i'm completely lost. i'm a beginner 3d modeler, and i can't figure what's exactly wrong with my model. the topology is far from perfect, but also not awful, so i'm confused why shading looks so bad
i already tried recalculating normals, checking for additional faces/verticles, enabling autosmooth. maybe i missed something or i should just remake the model?

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

yes, here: https://blend-exchange.com/b/2JMOJbMr/

These artefact seem to be caused by the sun orientation, also its Strength is very high, lower it down to a more reasonable value like 4 or 5, maybe also increase its Angle?

oh my god, i can't believe that was the problem.... i didn't even noticed that the strenght was so high. thank you so much!!

@bjaodk Well, the default Point light in the default scene has a Strength of 1000 W. If you change it from Point to Sun, the strength value of 1000 stays, only now this is 1000 W/m² which is much much more ;) Although this value is actually accurate to a bright sunny day, the Blender camera's exposure is not adapted to that since you cannot set an aperture like on a real camera - the Aperture which you can change in the camera properties Depth of Field is only used for defocusing effects, not exposure changes.

These artefacts seem to be caused by the sun orientation, rotate it a bit on Z, also its Strength is very high, lower it down to a more reasonable value like 4 or 5, maybe also increase its Angle to make the shadow smoother.


text:
Turn a alpha and displacement texture in a actual mesh

Hi everyone, I was wondering if there's any way for convert this texture (obviously I'm talking about the grid) that is made with alpha opacity and displacement into an actual mesh

Hello, what do you mean by "made with alpha opacity and displacement", do you mean that it is not a 3D object and you want to model it?

this a blender project, what you see there for the grid it's not the mesh but the texture, the holes are made with alpha

So what do you mean by convert into a mesh? Model the object? If so, you could use a b&w image to get the shape but anyway you'll need to work on it

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.


text:
How to prevent deform sides when in sculpt mode?
I am in the process of sculpting some legs from the Y side. (front) But when I look from the side I can see that it is being deformed. is there a method to prevent deformation of the side of the cylinder object. so the sides follow when shaping from the front side? What am I doing wrong?
I use Blender 3.6.2

It's not clear what you mean but to prevent any deformation you can use the Mask brush, also make sure that the Front Faces Only option of the brush is enabled

@moonboots I have found out that if I use too many vertices. For example, remesh to 72000 vertices, the object becomes easily deformed and almost impossible to control with
the 'Grab' brushs. But if I only remesh the object with 9000 vertices no deformation occurs?

Mmh it should work with more vertices as well, maybe share your file and explain what you're doing that doesn't work


text:
Beziér Curve to determine diameter of curve circle or torus arrays
I'm experimenting with a node based approach to build an object.
I want to create a beziér curve and mirror it (by modifier or geo nodes, main reason to be able to edit the curve later and the mirrored version being updated accordingly).
Now I want to be able to draw toruses via geo nodes that array along the z-axis, basically in between the mirrored curves. Every single torus diameter should then be auto calculated by the distance between the two curves.
I created a schematic drawing that (hopefully) explains everything. I also was able to create parts of it:
Arraying circles along a curve and calculating the diameter by the curves curvature (see attached). But I can't make the mirroring work. Just adding a mirror to the curve duplicates the array.
Maybe somebody has an idea or can help with the node tree setups :)

Not sure this is exactly what you want, but hope it helps.
Description:

I set lower spline resolution of the curve to get less dense points.

Duplicated the curve and scaled (transform geometry) to 0 along the X axis to get the circle centers and moved it to Attribute Statistic max X value of the original curve.

Sampled (sample index) point X positions of the original and scaled curve, then subtracted these values to get the circle radiuses.

Set the circle as instance on points of the scaled curve and used the circle radiuses as a scale.

UV Update:

Friend, you're a genius. I had to reconnect some of the nodes in the blender file you provided but with the help of your screenshot it was no problem at all. I added a curve to mesh node to add depth to the circle curves and it's exactly what I was looking for. Made my day!

Would there be a way to convert this to mesh then to be able to apply procedural materials?

With the materials and UV there is more complex approach and it can be achieved in more ways, you can find many tutorials FYI: https://www.youtube.com/watch?v=Pzs_Uvb9DTg or Zeroskilz node https://blenderartists.org/t/curve-to-mesh-with-uvs-node-group-for-blender-3-0-4-0-geometry-nodes/1362714


text:
Hollow shape produced by Geometry Nodes is filled-in when sliced in Creality Print

Here is a shape I made in blender by extruding a Bezier curve in its Data panel, and combining with a copy of the curve around which I swept a profile curve to create an edge:

It successfully slices in Creality Print as so:

I wanted to recreate basically the same shape but using Geometry Nodes. I succeeded

However, this new object gets completely filled-in when sliced:

Why is the empty space considered solid when produced by Geometry Nodes?

When you enable Face Orientation in the Overlays you can see that the face normals of the walls are incorrect with their inside pointing out (red color):

If you take a Flip Faces node and place it on the connection which puts the walls into the Join Geometry nodes, everything looks correct and you get a correct result in the slicer software:

By the way, the base ring of the other object has inverted normals as well, however since the base is a separate closed object I think (but don't quote me here, I'm no slicer software expert) the slicing software automatically switches the normals since it's no open mesh. But on the other version there are unconnected pieces (Join Geometry does not merge duplicate vertices with each other) and you have mixed orientations, some correct, some incorrect so this is probably making problems.

also consider adding a merge by distance node at the end of the node tree to merge the walls together, otherwise the slicer might only see open patches

@aliasguru Ultimaker Cura doesn't see a problem there, and for the closed top the inverted faces are the main problem (Merge by Distance without flipping the faces for example does not help). Also the base is unconneccted to the walls anyway and still is after merging by distance, so if that's no problem for printing I see no reason to add it here. But of course you can optionally do that.


text:
Sample bezier curve based on curvature in geometry nodes
Here is a bezier curve from which I am generating some geometry in Geometry Nodes.

Region 1 and Region 3 have significantly different sample densities although they both have the same curvature.
More importantly, the extrusion happening around the sharp curve at 2 is failing because the sample density is too low.
How can I sample the bezier curve such that

there is an overall parameter for resolution (e.g. total number of points)
higher/lower curvature regions have appropriately higher/lower sample resolution

Do you try and compute the curvature using this proposal : https://blender.stackexchange.com/a/315866/177431 ?

@StefLAncien suppose I compute the curvature with the method you suggest. Then what?

Here's a simulation that continuously removes points with the least angular change:

Imgur mirror (SE image hosting has problems)

Imgur mirror
Angle Change is a custom group:

Imgur mirror
If you're not satisfied with the order of removed points, this is the node you may want to tinker with, e.g. add distance to the previous point to the calculation, maybe also multiply the distance by some amount, but keep in mind the effect will look differently based on the size of the spline. You could also calculate an area of a triangle formed by evaluated, previous and next points.
All that's left to do is to convert the simulation zone to a repeat zone, and set the number of iterations to the number of points you want to remove. If you want to add points, not just remove them, add a step before removing where you resample the curve. If you don't want to unnecessarily change the shape of the curve, consider converting to mesh, subdividing and converting back to curve.
You could parallelize the algorithm for performance by removing a repeat zone, or at least decreasing the number of iterations, and remove points in bulk, but then it will become unreliable because the algorithm is serial, not parallel, in nature.


text:
what happened to my normals and texture coordinates after separate-join-weld?
I started with a UV sphere and wanted to subdivide it to different levels at different latitudes.
I selected the caps in Edit mode and hit P to separate, then selected the equatorial regions and hit P again. This left me with 3 meshes comprising 5 sections (north cap, north, equator, south, south cap).
I applied a subdivision surface at varying levels to each and applied them to yield new meshes. I selected them and hit ctrl-J in Object Mode to join them.
This left a few gaps so I added a Weld modifier.
(This is an Earth-scale mesh, the Weld distance parameter is 100 metres, which seems to be approximately the minimum I need to close all the gaps. A distance large enough to capture the gaps between the polar caps and the next section is large enough to swallow up some interior vertices in the equatorial section. This isn't ideal, but I don't see why it should cause the problems below.)
The resulting normals look weird to me

(I bumped up the contrast to make it more obvious)
If I slap a texture on it, the polar caps section (which has no subdivision) samples the texture correctly, but the subdivided regions are a mess.

What went wrong here?

I think you should explain the reason why you needed to subdivide at different levels.

I want more resolution at the equator.

What kind of texture mapping are you using?

A couple things happened.  If you want to know what modifiers are doing, it's often useful to apply them, maybe on a duplicate, and just look at the mesh they created in edit mode.
First, subdivision uses the whole mesh to create the curvature.  By subdividing only a portion of the sphere, you haven't given the subdivision alogirthm any idea of the curvature at the margin.  Let's look at the positions of a sphere separated then subdivided and compare with the positions of a sphere subdivided then separated:

In the middle they're the same, but not on the borders.  This creates a discontinuity between the two sections.  Here, it will show up as a discontinuity along a line of latitude.
Second, even if there wasn't this discontinuity, a subdivided mesh is enclosed by its base mesh like a cage (when convex), but not evenly throughout.

It is far from the original mesh at the original vertices, and near to the original mesh in the middle of the original vertices.  When we merge by distance, this particular case will cause repeating ridges to show up throughout the mesh.  Look at how it creates a repeating discontinuity, most visible at the silhouette:

Finally, and most importantly, merging by distance doesn't create a manifold mesh:

The big quad is joined, by a single vertex, two of the small quads.  It is not at all joined to the other two small quads, and they're not joined to it.  Merge by distance merges only vertices.  It can't merge multiple vertices onto a single edge.
That means that some of these vertex normals are the product of apparently adjacent faces and some aren't.  Where they aren't, it creates a sort of seam in the normals.  Even if the subdivided vertices existed along the edge, there'd still be this seam in the normals.
As for the UV, it's due to the UV smoothing options in the "advanced" subsection of a subdivision modifier, and you can fix it by setting the UV smooth to "none".
You're asking "what happened," but knowing what happened doesn't help you do what you want, just that the technique you tried to get there will create problems.  I suspect you want a sphere with even texel and vertex density that you can use for displacement with an equirectangular image.  In that case, use a cube-sphere-- cube, subdivision, cast or to-sphere operation-- and give it a material that use its normal coordinates to read an environment texture:

A cube-sphere has the most even texel and vertex density we can get, while still subdividing well.  (An icosphere can have perfectly smooth density, but doesn't subdivide well.)
You can't use this directly to displace (because displacement alters the normal coordinates used to read it) but you can use this material to bake to a UV texture and then use that baked texture to displace.  Texture baking is well described elsewhere, including on this site, and I'm only guessing at your goals, so I won't get into it in this answer.
(There are tricks whereby we can get displacement on this without baking, but you don't want to get into anything tricky just yet.)


text:
Procedural Recycled Plastic Material
I'm not new to blender but still not really there yet in regards of procedural materials.
I'm looking to recreate a recycled plastic material
there's already this thread
which in turn links to this thread recommending using voronoi texture
which is only doing half of the job.
I'm sure there is a way to set up a shader that can achieve flexibility in regards of patterns, colors, direction of the speckles and subsurface scattering. Additionally there's also real life examples of pieces of plastic with tool marks on the surface
,
I think that's straight forward using whatever displacement texture.
Any help is highly appreciated!

https://blender.stackexchange.com/questions/250538/how-to-create-this-white-chocolate-with-cookies-realistically

This is great although probably a little bit inflexible since it's not a material but a particle system. But will definitely give it a try! It looks great

This is by no means perfect and just thought as an idea to start from: I've made a material that is basically transparent, with added translucency for that not-completely-opaque plastic look. Then also volume for the inner parts shining through.  Everything colored with a slightly distorted Voronoi texture. And to make this all work the bounces for Volume under Light Paths are increased to 3 instead of the default 0. The result looks like this:

And this is the material setup:

This does look promising! I will try a couple of things with your setup, Gordon, thank you!

You're welcome. Please take your time to read this: What should I do when someone answers my question?. This might not be the perfect answer, but your reference materials looked quite different and it would be too elaborate to try and recreate everything here.


text:
Creating children's bracelet beads with engraved and colored letters
I've been trying to recreate these beads in blender

How can I achieve the rounded bottom engraving as well as the slightly beveled edges of the letters and then add color to the letters?
I tried different methods but wasn't really successful yet.
I used a uv map with an image texture of the letter for displacement modifier on a grid filled face of a beveled cylinder, I tried using a pointless shader with a color ramp for the two colors but I can't make the colors work. The bead is unicolored.
I also don't see modeling the engraving and then shrink wrapping a colored letter onto the object, texture painting is to irregular.
I'm not new to blender but still hit the ceiling with these kinds of things.
Displacement mapping inside a shader wasn't working since the displacement isn't deep enough. Is there a way to fix this?
I thought this would be straight forward but I've been stuck for longer than I'd like to admit :')
Any help or suggestions is highly appreciated!
EDIT: I want to create the single beads, it's not about creating a whole bracelet.

True Displacement will work for you https://blender.stackexchange.com/a/308697/2214 ... or simpler - just normal or height map should work as well. Probably show us your fails with these tries.

I feared that in the end it would be quite simple as that. It worked perfectly, I set up a displacement map and a colored letter to fill the embossing! Thx a lot :)

You could simply cut the letters into the beads.
Might take some time if you need a whole alphabet, though ;)

Cut the letter shape into the bead (Knife project works well)
Give it a second material
Inset the shape and Extrude down
Bevel the edges

(font name: Arial Rounded)

Thank you mate, I managed to create my desired effect using true displacement recommended by @vklidu! But will try your suggested method too!

Happy to help, good luck with your project :)


text:
How to connect other objects to a displaced surface generated by a noise texture shader with animation
I created a very simple wave plane through shader editor. It is based on a noise texture feeding a vector displacement node which connected to displacement channel within material output node. This surface is animated by rotation manipulation within mapping node.
It resemble ocean modifier but I seek an artificial look which I can achieve by this shader.
I am wondering how to connect other objects (spheres or cubes) to this displaced surface by a noise texture manipulation?
-K

shrinkwrap modifier?

I don't think that you can with the Displacement node, you need to use the Displace modifier for example

Thanks Chris & moonboots for the hints. So far it looks similar which is good but the animation is kinda painful compared to mapping node manipulation.

No it's pretty easy, in the modifier, choose Coordinates > Object with an empty as object, move the empty, it animates the texture

Actually, this is what I did to connect the object with displaced surface as you described - moonboots but it feels painful for me when I compare it with mapping node manipulation right away. Unfortunately, there is no way to extract that vector data easily. Maybe I have to go with python script, I guess. Anyway, it's working fine now and the result it quite similar to first shader. Thanks for your help again.


text:
How do I motion track 2d footage from a game with no parallax or 3d whatsoever?
Before anybody says otherwise; I want to preface this by saying I've done this successfully before, but I just don't remember how i did it.
Essentially, I am trying to get the camera motion from footage captured from a 2d game with no parallax whatsoever in it (specifically, line rider) but all my attempts result in the camera rotating in the yaw or pitch axis instead of moving around sideways (without rotation). Either that, or the solve just doesn't work and ends in an error.
Again, I know this has to be possible because I've done it before. But all my attempts to search google and duck duck go have lead absolutely nowhere.


text:
Array modifier with Object Offest generates a large flat object which is not a copy
I am following this tutorial. At the 3 minute mark we create an Empty and make it the target of Object Offset on an Array modifier.

With Count=1 the scene looks as it does when there is no Array modifier at all

when the Count is increased, the geometry it generates doesn't look at all like the base object

What went wrong?

Try to apply the transformations (Object->Apply->All transforms menu) before the modifiers ? I think the array is making copies of the original object...

At 3:06 in the tutorial video you can see that the other modifiers are not Applied before the Array is added. Also, I tried Applying the Solidify and Subdivision and it made no difference.

I do not mean to apply the modifiers, but the transformations you do before, rotation and scaling. It seems that your "Plane" object is scaled by (0.02, 0.012, 1) and rotated by (0°,-12.743°, 0°) looking in the "Item/Transform" panel opened pressing "N" in the 3D viewport.

The magic sentence is "(...) and apply the scale (...)" just after 0:57 in the video...

(Using Blender 3.6.5)
The answer is similar to this other post: Array Modifier does not work as expected. The issue is about unapplied transformations.
The consequences of applying transformations are that:

The object is rotated, then its local axes are aligned with the world axes.
The object is scaled, then its scaling factors are reset to 1. Its dimensions are updated.
The object origin is set to the world origin, but its vertices are not moved.

A more extensive explanation is provided here: Why is it important to apply transformation to an objects data?
NB: In the following figures, from the original Blender file, the Empty object is slightly shifted along X axis to see copies when the Array/Count is greater than 1.
Before applying the transformations:

After applying the transformations:


text:
Creating multiple sections of a sphere to save as individual files
I need to take a sphere and cut it into 6 segments of alternating colours (blue and yellow). I then need to save all the blue segments as one file and and all yellow segments as another file. This will give me two files I can then print with dual extrusion to create one ball of two different colours.
Can someone tell me how I can create a sphere, split it into 6 or 8 segments and then save two files (one with segments 1, 3, 5 & 7 and the second file with segments 2, 4, 6, & 8).
The final outcome will be for me to create something looking like this assuming i can apply the same principle to a cylinder and sphere.
NB: I caused confusion in a previous question so this is asking how i can create a file rather than the actual printing of it.


text:
Blue screen of Death when rendering using cycles. (DRIVER_IRQL_NOT_LESS_OR_EQUAL)
Not sure if this is the right place as this might be more of a windows issue but I am honestly out of ideas. I recently helped my gf build a new pc primarily for her blender use. It has the following hardware:

AMD Ryzen 5 5600X
Nvidia 3060 Ventus 12gb
16gb ram
750 w Corsair psu
MSI MAG B550 tomahawk motherboard

Software:
Windows 11
When trying to render quite a complex scene using cycles it instantly blue screens. When checking what went wrong though windbg I get the folowing:
DRIVER_IRQL_NOT_LESS_OR_EQUAL (d1)
An attempt was made to access a pageable (or completely invalid) address at an
interrupt request level (IRQL) that is too high.  This is usually
caused by drivers using improper addresses.
If kernel debugger is available get stack backtrace.
Arguments:
Arg1: 0000000000000000, memory referenced
Arg2: 0000000000000002, IRQL
Arg3: 0000000000000001, value 0 = read operation, 1 = write operation
Arg4: fffff8056a0b7013, address which referenced memory
Debugging Details:
KEY_VALUES_STRING: 1
Key  : Analysis.CPU.mSec
Value: 1500

Key  : Analysis.Elapsed.mSec
Value: 1874

Key  : Analysis.IO.Other.Mb
Value: 0

Key  : Analysis.IO.Read.Mb
Value: 0

Key  : Analysis.IO.Write.Mb
Value: 0

Key  : Analysis.Init.CPU.mSec
Value: 140

Key  : Analysis.Init.Elapsed.mSec
Value: 3333

Key  : Analysis.Memory.CommitPeak.Mb
Value: 110

Key  : Bugcheck.Code.LegacyAPI
Value: 0xd1

Key  : Dump.Attributes.AsUlong
Value: 808

Key  : Dump.Attributes.KernelGeneratedTriageDump
Value: 1

Key  : Failure.Bucket
Value: AV_rcbottom!unknown_function

Key  : Failure.Hash
Value: {57ce7b09-5d1c-85d4-91e1-3d4e1c91bdfa}

Key  : Hypervisor.Enlightenments.ValueHex
Value: 1497cf94

Key  : Hypervisor.Flags.AnyHypervisorPresent
Value: 1

Key  : Hypervisor.Flags.ApicEnlightened
Value: 1

Key  : Hypervisor.Flags.ApicVirtualizationAvailable
Value: 0

Key  : Hypervisor.Flags.AsyncMemoryHint
Value: 0

Key  : Hypervisor.Flags.CoreSchedulerRequested
Value: 0

Key  : Hypervisor.Flags.CpuManager
Value: 1

Key  : Hypervisor.Flags.DeprecateAutoEoi
Value: 0

Key  : Hypervisor.Flags.DynamicCpuDisabled
Value: 1

Key  : Hypervisor.Flags.Epf
Value: 0

Key  : Hypervisor.Flags.ExtendedProcessorMasks
Value: 1

Key  : Hypervisor.Flags.HardwareMbecAvailable
Value: 1

Key  : Hypervisor.Flags.MaxBankNumber
Value: 0

Key  : Hypervisor.Flags.MemoryZeroingControl
Value: 0

Key  : Hypervisor.Flags.NoExtendedRangeFlush
Value: 0

Key  : Hypervisor.Flags.NoNonArchCoreSharing
Value: 1

Key  : Hypervisor.Flags.Phase0InitDone
Value: 1

Key  : Hypervisor.Flags.PowerSchedulerQos
Value: 0

Key  : Hypervisor.Flags.RootScheduler
Value: 0

Key  : Hypervisor.Flags.SynicAvailable
Value: 1

Key  : Hypervisor.Flags.UseQpcBias
Value: 0

Key  : Hypervisor.Flags.Value
Value: 4853999

Key  : Hypervisor.Flags.ValueHex
Value: 4a10ef

Key  : Hypervisor.Flags.VpAssistPage
Value: 1

Key  : Hypervisor.Flags.VsmAvailable
Value: 1

Key  : Hypervisor.RootFlags.AccessStats
Value: 1

Key  : Hypervisor.RootFlags.CrashdumpEnlightened
Value: 1

Key  : Hypervisor.RootFlags.CreateVirtualProcessor
Value: 1

Key  : Hypervisor.RootFlags.DisableHyperthreading
Value: 0

Key  : Hypervisor.RootFlags.HostTimelineSync
Value: 1

Key  : Hypervisor.RootFlags.HypervisorDebuggingEnabled
Value: 0

Key  : Hypervisor.RootFlags.IsHyperV
Value: 1

Key  : Hypervisor.RootFlags.LivedumpEnlightened
Value: 1

Key  : Hypervisor.RootFlags.MapDeviceInterrupt
Value: 1

Key  : Hypervisor.RootFlags.MceEnlightened
Value: 1

Key  : Hypervisor.RootFlags.Nested
Value: 0

Key  : Hypervisor.RootFlags.StartLogicalProcessor
Value: 1

Key  : Hypervisor.RootFlags.Value
Value: 1015

Key  : Hypervisor.RootFlags.ValueHex
Value: 3f7

BUGCHECK_CODE:  d1
BUGCHECK_P1: 0
BUGCHECK_P2: 2
BUGCHECK_P3: 1
BUGCHECK_P4: fffff8056a0b7013
FILE_IN_CAB:  010124-8265-01.dmp
TAG_NOT_DEFINED_202b:  *** Unknown TAG in analysis list 202b
DUMP_FILE_ATTRIBUTES: 0x808
Kernel Generated Triage Dump
WRITE_ADDRESS: fffff80567f1d470: Unable to get MiVisibleState
Unable to get NonPagedPoolStart
Unable to get NonPagedPoolEnd
Unable to get PagedPoolStart
Unable to get PagedPoolEnd
unable to get nt!MmSpecialPagesInUse
0000000000000000
CUSTOMER_CRASH_COUNT:  1
PROCESS_NAME:  System
TRAP_FRAME:  ffffb880e4615ee0 -- (.trap 0xffffb880e4615ee0)
NOTE: The trap frame does not contain all registers.
Some register values may be zeroed or incorrect.
rax=0000000000000000 rbx=0000000000000000 rcx=0000000000000100
rdx=0000000000000000 rsi=0000000000000000 rdi=0000000000000000
rip=fffff8056a0b7013 rsp=ffffb880e4616070 rbp=ffffa8820bbf5000
r8=0000000000000800  r9=0000000000000000 r10=ffffa881eb0101a0
r11=ffffa8820db013b0 r12=0000000000000000 r13=0000000000000000
r14=0000000000000000 r15=0000000000000000
iopl=0         nv up ei pl nz na po nc
rcbottom+0x7013:
fffff8056a0b7013 4c8904d6        mov     qword ptr [rsi+rdx*8],r8 ds:0000000000000000=????????????????
Resetting default scope
STACK_TEXT:
ffffb880e4615d98 fffff8056762c4e9     : 000000000000000a 0000000000000000 0000000000000002 0000000000000001 : nt!KeBugCheckEx
ffffb880e4615da0 fffff80567627a34     : 0000000000000000 fffff80567480b97 ffffffffffffffff 0000000000000022 : nt!KiBugCheckDispatch+0x69
ffffb880e4615ee0 fffff8056a0b7013     : ffffa8820ba03b00 ffffcf00ab400000 fffff80567e69a80 fffff80567469099 : nt!KiPageFault+0x474
ffffb880e4616070 ffffa8820ba03b00     : ffffcf00ab400000 fffff80567e69a80 fffff80567469099 ffffa8820ba03b00 : rcbottom+0x7013
ffffb880e4616078 ffffcf00ab400000     : fffff80567e69a80 fffff80567469099 ffffa8820ba03b00 0000577df45fc4f8 : 0xffffa8820ba03b00 ffffb880e4616080 fffff80567e69a80     : fffff80567469099 ffffa8820ba03b00 0000577df45fc4f8 0000577df45fc4f8 : 0xffffcf00ab400000
ffffb880e4616088 fffff80567469099     : ffffa8820ba03b00 0000577df45fc4f8 0000577df45fc4f8 fffff80569acc384 : nt!MiState+0x4940
ffffb880e4616090 0000577e12d33ff8     : ffffa881ed550e70 fffff80500000001 ffffa8820bbf5000 fffff80500000001 : nt!MiUnlockWorkingSetShared+0x69
ffffb880e46160c0 ffffa881ed550e70     : fffff80500000001 ffffa8820bbf5000 fffff80500000001 ffffa881ed0a9c50 : 0x0000577e12d33ff8 ffffb880e46160c8 fffff80500000001     : ffffa8820bbf5000 fffff80500000001 ffffa881ed0a9c50 fffff80569acc861 : 0xffffa881ed550e70
ffffb880e46160d0 ffffa8820bbf5000     : fffff80500000001 ffffa881ed0a9c50 fffff80569acc861 0000000000000001 : 0xfffff80500000001 ffffb880e46160d8 fffff80500000001     : ffffa881ed0a9c50 fffff80569acc861 0000000000000001 fffff805675b6037 : 0xffffa8820bbf5000
ffffb880e46160e0 ffffa881ed0a9c50     : fffff80569acc861 0000000000000001 fffff805675b6037 0000000000000168 : 0xfffff80500000001 ffffb880e46160e8 fffff80569acc861     : 0000000000000001 fffff805675b6037 0000000000000168 0000000000000000 : 0xffffa881ed0a9c50
ffffb880e46160f0 fffff805675c9775     : 0000000000001800 0000000000000000 ffffa881f6824f20 0000000000000000 : Wdf01000!FxDmaScatterGatherTransaction::_AdapterListControl+0xa1 [minkernel\wdf\framework\kmdf\src\dma\base\fxdmatransactionscattergather.cpp @ 460]
ffffb880e4616130 fffff80569acc4f2     : ffffa8820ba03b00 ffffa881ed205c80 ffffa881f68246f0 0000000000000000 : nt!HalBuildScatterGatherListV2+0x1f5
ffffb880e46161c0 fffff80569ade897     : ffffa8820ba03b00 0000577df45fc4f8 ffffa8820ba03bb8 0000000000000001 : Wdf01000!FxDmaScatterGatherTransaction::BuildScatterGatherList+0x160 [minkernel\wdf\framework\kmdf\inc\private\FxDmaTransactionScatterGather.hpp @ 256]
ffffb880e4616270 fffff80569acc770     : ffffa88200000100 ffffa8820ba03b00 ffffb880e46163f9 ffffa881ed550e70 : Wdf01000!FxDmaScatterGatherTransaction::StageTransfer+0x167 [minkernel\wdf\framework\kmdf\src\dma\base\fxdmatransactionscattergather.cpp @ 379]
ffffb880e46162e0 fffff80569acca15     : ffffa881ed0a9c50 0000000000100000 ffffa881f68246f0 0000000000000000 : Wdf01000!FxDmaScatterGatherTransaction::StartTransfer+0x10 [minkernel\wdf\framework\kmdf\src\dma\base\fxdmatransactionscattergather.cpp @ 282]
ffffb880e4616310 fffff80569acbff3     : ffffa881ed550e70 0000000000000000 0000000000000001 ffffa881f68246f0 : Wdf01000!FxDmaTransactionBase::Execute+0xc1 [minkernel\wdf\framework\kmdf\src\dma\base\fxdmatransactionbase.cpp @ 438]
ffffb880e4616360 fffff8056a0bd759     : ffffa8820ba03b00 ffffa881ed550cf0 ffffb880e46163f9 ffffa881ed2cc2f0 : Wdf01000!imp_WdfDmaTransactionExecute+0x33 [minkernel\wdf\framework\kmdf\src\dma\base\fxdmatransactionapi.cpp @ 540]
ffffb880e4616390 ffffa8820ba03b00     : ffffa881ed550cf0 ffffb880e46163f9 ffffa881ed2cc2f0 ffffa881f68246f0 : rcbottom+0xd759
ffffb880e4616398 ffffa881ed550cf0     : ffffb880e46163f9 ffffa881ed2cc2f0 ffffa881f68246f0 0000000000000000 : 0xffffa8820ba03b00 ffffb880e46163a0 ffffb880e46163f9     : ffffa881ed2cc2f0 ffffa881f68246f0 0000000000000000 0000000000100000 : 0xffffa881ed550cf0
ffffb880e46163a8 ffffa881ed2cc2f0     : ffffa881f68246f0 0000000000000000 0000000000100000 0000000000000001 : 0xffffb880e46163f9 ffffb880e46163b0 ffffa881f68246f0     : 0000000000000000 0000000000100000 0000000000000001 0000000000100000 : 0xffffa881ed2cc2f0
ffffb880e46163b8 0000000000000000     : 0000000000100000 0000000000000001 0000000000100000 0000577df45fc4f8 : 0xffffa881`f68246f0
SYMBOL_NAME:  rcbottom+7013
MODULE_NAME: rcbottom
IMAGE_NAME:  rcbottom.sys
STACK_COMMAND:  .cxr; .ecxr ; kb
BUCKET_ID_FUNC_OFFSET:  7013
FAILURE_BUCKET_ID:  AV_rcbottom!unknown_function
OSPLATFORM_TYPE:  x64
OSNAME:  Windows 10
FAILURE_ID_HASH:  {57ce7b09-5d1c-85d4-91e1-3d4e1c91bdfa}
Followup:     MachineOwner

I have tried everything I could find on the internet but nothing has worked. I have tried clean installs of the cpu as well as the gpu driver through Geforce experience, both the studio variant as well as the gaming variant, zero effect, I have done a DISM scan, a SFO scan and repair and did a memory diagnostic but to no avail. The only thing I have on my mind that could possibly work is downgrading to windows 10 to see if that has any effect, but I'd rather not because of the loss of data. I have also tried multiple versions of blender but the same exact thing happens everytime.
Has anyone encountered an issue like this before, or is aware of a fix?

I would report this as a bug directly to blender.  In Blender choose -Help- -Report A bug-


text:
Add color with extrude region
I am working on adding graphic logo over cylinder using blender script and want to add colors. For cylinder color works fine using materials but for logo I am not getting idea how to add color. I am using Plane and extrude for creating graphic logo. Below is my code:
bpy.ops.mesh.select_mode(type="FACE")
bpy.ops.mesh.extrude_region_shrink_fatten(
        MESH_OT_extrude_region={
            "use_normal_flip": False,
            "use_dissolve_ortho_edges": False,
            "mirror": False,
        },
        TRANSFORM_OT_shrink_fatten={
            "value": item_graphic_extrude,
            "use_even_offset": False,
            "mirror": False,
            "use_proportional_edit": False,
            "proportional_edit_falloff": "SMOOTH",
            "proportional_size": 1,
            "use_proportional_connected": False,
            "use_proportional_projected": False,
            "snap": False,
            "release_confirm": False,
            "use_accurate": False,
        },
        #Material=mat,
    )

Can I add Material with extrude region?


text:
How to clean up crazy mesh?
I'm a novice at Blender.
I started using a program called 3d Slicer for medical images. It takes a medical scan (CT, MRI etc) and allows you to turn it into a 3d image (in this case .obj file for Procreate to read).
I'd like to get it to where I can paint on these objects in Procreate but if you look at my images, you'll see the problem.
This is my (admittedly weird) workflow:
Create the .obj file in 3d Slicer. Import it into Forger (a sculpting app) because Procreate won't take the file as-is, I have to follow some other instructions to fix the UV wrapping. Then I open it in procreate and get the mess you see in my last image when I try to paint. Without paint, it looks great!
So I imported it into Blender and tried limited dissolve (you'll see the results in the images) and then tried voxel remesh but it completely crashes with that.
Any advice on how to clean this up to take away that "can't paint on it cleanly" issue?

[.obj when imported]

[The mesh]

[The mesh with x-ray view]

[The mesh after applying limited dissolve]

[The problem - when I try to paint over it in procreate.]

Please add your images directly into your question rather than make folks go to an external web site to view them! https://meta.stackexchange.com/questions/75491/how-to-upload-an-image-to-a-post

After your limited dissolve - just to be sure, select the whole mesh and do a merge (M) by distance, then make sure the normals are pointed the right way (Shift+N).

Try the decimate modifier, I'm always surprised at how good a job it does

DOn't use Limited DIssolve, instead try the Quad remesh and also re-unwrap (with the Smart UV Project option for example)?

If Blender is already in the pipeline, why not use it to paint the object right away?
in my opinion, the painting problem may occur because of flipped normals. As mentioned by others, this can easily be fixed in Blender with a few keystrokes - go to edit mode, then [shift + N]

There seems even to be a syncing script to sync objects from Blender in 3D slicer
https://github.com/dentsoft-foundation/linkSlicerBlender
. Looks like a far better workflow to do your painting in Blender, just using these two applications for your workflow

Wow, I can't believe all the suggestions! I'm going to try them all, just to see what works best, thank you so much! I'll report back. You all are amazing! :D

@maddes8cht Unfortunately, that sync between Slicer and Blender is really for something more like dentistry - it's only for when the 3D model is already made and imported into Blender, then they can do a bunch of measuring functions in 3D Slicer and have it sync up. Not good for me. :( I was very excited about it though! I installed it but realized when I was trying to use it that it wasn't what I needed. But thank you!

@Psyonic I tried decimate and while it seemed to help the mesh to be a bit less cramped, it didn't fix the original painting on issue.

@Christopher Bennett after that, I also did a merge by distance and recalculate normals - still didn't fix the problem. :(  But thanks, you two! I'm happy to have things to try!

@maddes8cht I am embarrassed to say I didn't know you could really paint-paint in Blender. I know there's a texture paint but I haven't done much with it. Am I supposed to use the grease pencil stuff or does texture paint actually just paint color where I want? And can I do the things I want to do with the color (change blend modes, smudge, etc)? Thank you!

@moonboots I'm trying but so far Quad remesh has only succeeded in crashing Blender! lol I'll maybe decimate first then quad remesh? We'll see. Someone else on Reddit suggested the "Instant Meshes" add-on. I might try that, too. Thank you so much for your reply and suggestion!!

Yes try Instant Remesh, I don't know if it's available as an addon but it exists as a separate app.

@moonboots IT WORKED! Your first idea worked (The crash was because I was stupid about the voxel size, I messed it up).

@moonboots It won't let me edit to say THANK YOU!!

Do you mean that Quad remesh worked?

@moonboots Yes, quad remesh and then unwrapping with smart UV project. :)

Use the Remesh > Quadriflow Remesh tool, choose the desired number of faces, once done unwrap your object with the Smart UV Project option:


text:
Trouble getting video as plane to show it's image
I've imported a .mp4 video as a plane in object mode so that I can point the camera at it and animate some 3D objects in front of the video. The image of the video won't show up though (it remains a black rectangle, and trying to play the animation doesn't change this.).
I've tried tutorials but they all seem to be for older versions of blender and don't seem to track to today. Anything I can apply like adding a light source doesn't seem to do the trick.
I'm trying to figure out how to change the viewing mode and material of the plane but I'm not sure I'm doing it right. Some of the lighting does seem to change the the black rectangle remains as such. Changing the engine from eevee to cycles doesn't seem to make any difference either.

Why not set the background of your camera to be the video and use the compositor to add the video to the background when rendering?

@brockmann this answer is good for today. I recommend it

If you want to have the image as background for the camera see this link: Adding picture to moving 3D Viewport environment

(Sorry for the slow response) From what I've seen, you should be able to drag and drop a video into blender and have it work instantly. I've dragged in a video from a WMV format and found that works so I'm just going to change the format of my video.
Thank you for your comment though to be honest I'm not even sure how to do the things you  said yet. It sounds more complicated (but learnable. I'm on my way!)

Thanks susu that's useful to me, much appreciated.

I'd suggest follow the guide here: https://blender.stackexchange.com/a/39885/31447 (linked duplicate) and let us know if there is anything that do not work by editing your question.

I really won't recommend the method you are going with it is seriously troublesome and tiring. I would say use blender's built-in Video editor. You can create the effects as separate projects. In the project, go to render settings and go to film and click transparent or transparency (depending on the version you are using). Something like this:

After rendering this in OpenEXR format. The thing is most video codecs don't support alpha channels and the ones that do, aren't available in blender. So you can take the image files, plop them into the video editor built-in blender or use some 3rd party-software like kdenlive or Davinci Resolve. You can take the video file and the effects file and it will work.
Alternatively, if you still insist on using it as a background image/video. DO this. Click on the camera and go to the camera settings. Enable background images and click on the dropdown. There, click add image and click on the open button. The file explorer should pop-up and then locate and select the video file. It will come as the background video and you can happily throw in whatever effects you want. Here's the video edition of the method (WARNING: This is not the total tutorial about what you want but shows a few steps on this method and you may find this helpful):
https://www.youtube.com/watch?v=kfGXRsaBf5U
I would personally go with the 1st method but you can go with the one you prefer. Hope it helps.
P.S I also found another QnA that is related to your problem. Check it out. Link's below:
Movie Clip On Plane

AFAIK, there is still no way encoding to prores 444 or dnxhd10 bit in order to get an alpha channel. The preferred way is to render an image sequence and encode afterwards, ideally using OpenEXR since png is no option for many reasons: https://blender.stackexchange.com/questions/106670/compositors-corner-pin-node-does-something-odd-to-input-image/106671#106671

Well, I learned something new today. The thing is I am still learning blender bit-by-bit and if I do know something, I share the answer. My answer format is correct this time though, right ?

Yeah, it is. However, not really a solution to the issue. Consider that most of such basics already have an answer here, if you're interested: https://blender.stackexchange.com/questions/39876/movie-clip-on-plane

I do agree, but normally that is not the most preferred way while doing this sort of stuff because it is just a lot of work for nothing. Even If it is about adding deformations to the video, chances are, most video editing software can do that for you. I will still update my answer though. Thanks for the info.

You have found that? Adding the link to the other Q&A is nice though.

found which one ?

Let us continue this discussion in chat.

Thanks for you answer Aster :) I do actually use the editor! I've rendered a video and now I wanted to bring it into the 3D space so I could animate a 3D object against the video background I made! I'll see if I can put this info you've given me to use. Thanks again.

You are welcome. you can go with method 2 in my answer, it will work out perfectly or you could check out the QnA in the answer


text:
Any suggestions for fixing the multiple vertices that are unnecessary and cause issues with face orientation?
I'm having a lot of issues with unnecessary lines and vertices for my file.  I'm not sure why some are clear (top left) and some are incredibly wild (middle and top left)

Have you tried the decimate modifier set to planar? Some of your issues might also go away if you just merge by distance in edit mode.


text:
I need help making this needle tube smooth

ive been trying to model a needle but it came out looking sharply polygonal and i need it as a smooth tube

Hello have you right clicked and shade smoothed? If it still doesn't work please share your file: https://blend-exchange.com/

i have subdivided and shade smoothed all i got was a nicer connection to the needle itself

please share your file

file has been shared

You need to copy paste the link it has generated ;)

Your cylinder is subdivided but the subdivisions flatten the faces, you must have done a right click > Subdivide instead of applying a Subdivision Surface modifier, which didn't round the shape contrary to what you maybe expected:

to fix that you could select all and press X > Limited Dissolve but it will be as fast to redo your cylinder from scratch with the wanted resolution.

thank you very much i will start working on it

@CreeptechArt, if this answer was useful, don't forget to upvote and eventually accept it !


text:
Add-on Dev: Workflow using functions and modules?
First a small background story; I'm currently new into python development and I am teaching it myself on a hands on project. I'm developing an add-on in Blender 4.0 and sofar it goes all well (thanks to ChatGTP).
Now about the problem I have, where I could not find any good answer for. It's more of a workflow question.
I have an UI module, and each button in the UI is it's own module. Additionally I have a global functions module and this is where I'm facing some inconveniences.
I'm importing the functions in the beginning of my module, f.e. like this:
from .functions import get_last_node, check_selected_objs

And when I pack the add-on into a .zip file and install it in Blender, it works flawlessly. However it does not work if I run the module in the script editor. I get following error.
ImportError: attempted relative import with no known parent package

The way I'm working right now is; do changes in modules, remove add-on from blender, restart, repack .zip file with up to date files & install add-on again and see if my changes worked.
I doubt this is the best way, there must be a way to modify my modules inside Blenders Script Editor, no?
I appreciate any help on this topic and say thanks in advance.

You don't need to go back and forth with a .zip file. Just open the addon folder like scripts\addons\my_addon with a better editor like https://code.visualstudio.com/ and edit there.
Also try the extension: https://marketplace.visualstudio.com/items?itemName=JacquesLucke.blender-development It has a function to start Blender with the addon enabled, reloading and debugging.

Thank you that was exactly it. For people who might come across this in the future, here is a how to video on connecting VSCode with Blender:
https://www.youtube.com/watch?v=YUytEtaVrrc


text:
Geo Nodes - Deform Object to Curve
I have found the setup to imitate the curve modifier with geometry nodes. And sofar it works great. I have however one problem. The curve modifier keeps "looping" the object around the curve, while the geo nodes setup stops at the beginning/end of the curve.

I have currently no idea how I can work around that in the geo nodes setup. Here is the node setup.
I appreciate any help/ideas in which direction to go.

Normal · Tangent will always yield zero. You want cross product there instead to produce a 3rd axis. Other than that you want you want to use wrapping (Math node: Wrap or modulo) to wrap the negative x into positive length.

The Wrap mode never caught my eye, I will definetly remember it in the future, thank you for this useful tip!

(Using Blender 4.2.0)
The length of the object to wrap is greater than the length of the curve, and its X coordinate does not start at 0. Consequently, the object is truncated. One approach is to sample the curve by Factor instead of Length. The X coordinate of the object to wrap is normalized between 0 and 1 using a Map Range node. Bounds of X are recovered from an Attribute Statics node.

Resources:
(Blender 4.2.0+)

Side note: to keep the aspect ratio of the object to wrap, its Z coordinate should be scaled by the length of the curve divided by the length of the object to wrap.

This is it! Thank you!!!
How did you hid the unconnected outputs of the Separate XYZ node :)?

To hide unconnected sockets, use ctrl+h after selecting a node.

Thank you guys!!!
I added a wrap math node as suggested by Markus von Broadly to the setup from StefLancien and achieved the wanted result.
Now I can continue wrapping the geometry around the curve beyond the 1 range.


text:
Add-on Dev: Referencing preference variable inside another module
I'm trying to expose the VIEW_3D location of my Add-on in its preferences. So far I got the user input working showing in the preferences of my Add-on.
# Input Variable
class preferences_props(bpy.types.PropertyGroup):
        location_name: bpy.props.StringProperty(
        name="Path",
        default="Toolbox",
        description="Define location of the Add-on in 3D View Menu.",
        )
# Define Location in 3D View
class PT_mossifier_preferences(bpy.types.AddonPreferences):
        bl_idname = __package__
        bl_label = "Preferences"
        bl_description = "Add-on Configurations"
        bl_options = {'REGISTER', 'UNDO'}

        def draw(self, context):
            props = context.scene.preferences_props
            layout = self.layout
            layout.label(text='Under which 3D View tab to store the Add-on')
            row = layout.row()
            row.prop(props, "location_name")

Now I want to get location_name in my UI module, so I can set the bl_category = location_name. F.e. like this.
# Create Dropdown in Toolbox Tab
    class PT_addon_ui(bpy.types.Panel):
        bl_label = "Addon"
        bl_idname = "PT_Addon"
        bl_space_type = 'VIEW_3D'
        bl_region_type = 'UI'
        bl_category = location_name

However I cannot get the actual variable value out of my preferences module.
This is how I'm initialy trying to import it. And I'm using print to see if the value is what I need. However print returns "None" all the time.
import bpy
addon_prefs = bpy.context.preferences.addons[__package__].preferences
print(addon_prefs)

Also using other methos to import a variable don't work. I get the error "AttributeError: type object 'preferences_props' has no attribute 'location_name'"
from .mossifier_preferences import preferences_props
print(preferences_props.location_name)

What would be the actual way to get location_name into my UI module?
Thank you in advance!

Hello. I would suggest not storing the preference props on a scene object, you can add properties directly to the AddonPreferences class as if it were a property group. That way you can access the prop from bpy.context.preferences.addons["your_addon_name"].preferences.props

thank you for your answers. You pointed me in the right direction. After placing the property into the AddonPreferences class, I was able to retrieve it in my UI module with:
#Instantiate Ppreferences
def preferences():
bpy.context.preferences.addons.get(__package__)
return bpy.context.preferences.addons[__package__].preferences

#Access the preferences
prefs = preferences()

And inside the UI class use the function to define the category.
bl_category = prefs.location_name

However at the end I still had the trouble to update the UI with the new location_name, so I additionally found this way to do it all inside the preferences module.
I added the update function to my StringProperty & defined a new function, where I drectly set the bl_category of my UI module while also unregistering & registering the class again:
# Define addon preferences
class preferences(bpy.types.AddonPreferences):
bl_idname = __package__
bl_label = "Preferences"
bl_description = "Add-on Configurations"
bl_options = {'REGISTER', 'UNDO'}

def update_ui(self, context):
    from . import ui
    bpy.utils.unregister_class(ui.PT_ui)
    ui.PT_ui.bl_category = bpy.context.preferences.addons[__package__].preferences.location_name
    bpy.utils.register_class(ui.PT_ui)

location_name: bpy.props.StringProperty(
    name="Path",
    default="Toolbox",
    description="Define location of the Add-on in 3D View Menu.",
    update=update_ui
)

Now I'm able to dynamically change the UI location with the setup in the preferences and trough the function in the UI it actually remembers these changes after Blender was restarted.

To be accessible via bpy.context.preferences.addons[__package__].preferences a property must be a part of the corresponding bpy.types.AddonPreferences subclass.
from .mossifier_preferences import preferences_props raises AttributeError: type object 'preferences_props' has no attribute 'location_name' because the property does not exists yet. For that the group property must be instantiated. With location_name: bpy.props.StringProperty you only set the __annotations__. It is only a class definition that is later used to create the actual property.
In the draw function you access the property bpy.context.scene.preferences_props and this is how it is accessed everywhere else.
bpy.context.preferences.addons[__package__].preferences is available only after the addon's bpy.types.AddonPreferences subclass is registered so the module containing the user specified bl_category should be imported inside register() after the AddonPreferences registration.
bl_category must be set at the class definition evaluation time so if it is changed the panel should be re-registered.


text:
My texture does not appear

I think that i deleted the original geo that i did use to creates instances
now when i set a material to these instances nothing happens
how to fix that ?

we don't see your modifiers, we don't even see the whole node tree of your material - so pls provide blend file, so we can check it out. thx

If you're using Geo Nodes, make sure the tree is 'Set Material' is there, and pointing  the right way..