text:
A single node that affect multiple meshes
I have a lot of meshes of hair ( with their own node setup/uvs/textures/materials ) that forms a complete haircut.
How can i make a node , like a color ramp , that will affect all these meshes at the same time?

what about making a nodegroup and use this nodegroup for all your materials?

I don't know how to.

https://blender.stackexchange.com/q/91354/2214
https://blender.stackexchange.com/q/133208/2214
https://blender.stackexchange.com/q/193683/2214

just for an example, you can put nearly everything in your node group:
Add these two nodes:

Select both,

Choose "Make group"

Connect color to group output.
Press Tab.
Select your nodegroup and another color, add a mix node and connect like this:

Now add your nodegroup to all your materials.
If you change your nodegroup e.g. the scale, all materials will change as you want.


text:
How to fix those ugly deformations?

How can i make it so the mesh deforms nicely?
Here is blend file

Your topology is causing you trouble:

For something like this I'd recommend either all-quads or a mix of quads and trigons, but you have a bunch of n-gons at one end of your cylinder, and the rest of the quads are too long and thin.
It's probably best to recreate the cylinder, 8 vertices and Cap Fill Type: Nothing.  Then scale to the length/width you want and Apply the scale (Ctrl-A).  Then go into Edit Mode and put enough loop cuts that all the faces are short fat quads, not the long ones this has.  Try your armature on that -- if you're still having trouble I'd say put a Subdivision modifier on the cylinder.
It might be helpful to search for tutorials on quads topology for more info.

source: Stack Exchange

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

sort: votes


text:
Edge loop not working horizontally?
I'm having issues with a texture and I think it has to do with the portion of the mesh that I extruded to make the tunnel touch flat on ground. The texture checker looks perfectly. Someone suggested adding an edge loop but I can't get it to work. The placement of the loop is very random and I can't even get it done horizontally.

When you've extruded, you should have enabled the option called Transform Correct Face Attributes in the Options panel on the top right of your 3D view. As for the edge loop, it can't happen because it must cross something else than a quad, or there is an inner face, please share your file if you want us to check

Thank you for replying. Do do you think it can't be fixed? Here is the link to the file: https://pasteall.org/blend/7f602368bdd14e46baa956d1225a6124

Press AltZ to see by transparency, you can see some inner faces, delete them with X > Faces:

Also you need to merge your vertices (press M to Merge by Distance and play with the threshold value in the Operator box until the vertices merge):

Also, when you've extrude, enable the option called Transform Correct Face Attributes in the Options panel on the top right of your 3D view, so that it doesn't stretch your texture.

It worked! I deleted all the internal faces, merged by distance, deleted the stretched faces and extruded them again, this time with Transform Correct Face Attribute enabled. Thank you so much!

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


text:
Boujou to Blender - Pointcloud into nulls/empties?
I managed to successfully track my scene in Boujou and to import into Blender. The problem is that it is a single pointcloud file. I need the points to be nulls so that I can send objects to them in 3D space.

Why is it necessary to have empties for objects to be sent to vertices' positions? You can send objects there with particle system set to vertices. Although you can do the same for empties too with particle system

I'm coming from After Effects so I'm still in that mind set. Interesting. So how do I do that? I tried adding particle system multiplier to the poincloud but Iit just created a ball particle in the center of the frame.

As for your particle system solution:
Have you set the emission type to vertices:
If you want to convert the point cloud to empties there's a fairly simple solution:

Create an empty
Parent it to the point cloud
In the properties under object choose Instancing -> Vertices

Now hit CTRL A and choose: Make Instances Real.
If you want to send the same object to all vertices, you can skip the creating empties part, just use your source object. In the same way you could split your point cloud manually, one group of points for each object.


text:
Arch won't smooth
I have previously fixed these kind of issues in other models but I can't in this case. How can I make the entire arch curve smoothly (which for some reason it doesn't even if I add subsurface) and then at the same time keep sharp edges?

if you subdivide, do it with the Subdivision Surface modifier instead of the right click Subdivide, but you can keep very lowpoly and give it a Subdivision Surface, in that case you only need some support edge loops around the edges that you want to keep sharp

Thank you for replying. Subdivision Surface modifier is already applied. I tried both Catmull Clark and Simple. It doesn't work. (I have used it many times before)

currently you have edge loops that will tend to flatten your shape, not round it, are you sure that you haven't used right click > Subdivide? Because if you do that without Smoothness it will only create additional edge loops without rounding the shape. Applying a new Subdivision Surface modifier won't help because of the current topology

Edit: oh ok it may be because you've applied the modifier with the Simple option enabled

Let's say you have this initial shape:

You have at least 3 solutions:

If you apply a Subdivision Surface modifier / Catmull Clark, here is what it gives, it works fine:

If you apply a Subdivision Surface modifier / Simple, here is what it gives, it won't work fine as it will create additional edges that won't respect the roundness, they will even tend to flatten the shape:

If you right click > Subdivide the mesh, put the Smoothness value at 1 in the Operator box (otherwise it will give the same result as the Subsurf Simple option), here is what it gives, it's ok except it round the sides which you don't want:

So the best solution, if you don't want to keep any modifier, is probably to apply a Subdivision Surface modifier / Catmull Clark.
That said, if you've already subdivided your mesh and did it incorrectly, meaning it has added edge loops that tend to flatten the mesh, and if you try to subdivide again, the new subdivision, whatever it is, won't be able to round the flattened mesh.

Thank you so much! I noticed that I had indeed applied the subdivision so I just "unsubdivided" and now it has rounded  out the arch. I can't remember how to keep sharp edges though. I'm pretty sure there war a way

to keep sharp edges, add edge loops close to the edges you want with Ctrl R


text:
How to cut a hole with a specific shape into a plane?
I need to cut a hole through the plane behind the tunnel. What is the best way to do that?

Have you tried using the boolean modifier?

or knife tool: Knife project

yes, knife project too , the bool tool also works

There are various ways you can make an object intersect into another object, some examples are bool tool, boolean modifier or the knife project like chris mentioned in one of the comments. But I commonly use the bool tool because I personally think that the bool tool is way more easier than the rest.The bool tool and the Boolean modifier are similar to each other. The difference is that the bool tool is an add-on and the Boolean is a modifier.
1. Bool Tool

Just go edit> prefernces> addons, search 'Bool tool' and enable the free addon.

Now first select ' the object that you want to be cut on another object ' and then select the second ' object in which you want another object to be cut on'  [tried my best to make simple as I could :) ]. Then press 'N', go to the edit tab and open up the 'Bool tool' dropdown and then finally press 'Difference'.
2. Boolean modifier

First, select the object in which you want another object to be cut on, go to the modifiers tab, select the boolean modifier, in the boolean setting select your object by either typing its name or selecting it with the eyedropper in the 'object'
NOTE:
If you want the cut to be permanent on the object just select the Boolean modifier and press 'Ctrl + A' to apply it. (steps aren't included in the GIF)


text:
How to mask out parts of an object?
Is there a way to draw mask to hide the ground of my tunnel so that it looks far back and not at the edge of the cliff? It would be a simple thing to do in After Effects but I would need to transfer all the camera tracking data and I don't really want to do that for something so simple.

Are you rendering with depth of field?

No, I will do that in compositing. I just need the edge of the mountain to cover the tunnel's ground so that the placement looks right.

Ohhh gotcha, I misunderstood

No worries. Thanks for trying!

do you mean in the vse? there is a mask you can use...

Well I was hoping that I could create a shape that follows the cliff's irregular line and set it as a mask so that anything behind this shape would be invisible, which in my case would be part of the tunnel so that it looks further inside. Or maybe project part of my background video onto geometry?


text:
How to rotate an entire collection with one pivot point?
It probably has to do with the way I organized (or not) my outliner but I basically need to rotate the tunnel with all the other objects following it. When I try to do it, all the elements rotate in different ways separating the scene.
How can I fix this?

Have you tried snapping the cursor to the tunnel, then changing the rotation mode to rotate around the cursor?

Yes, I did. The elements still act weird. Isn't there a way to rotate the entire group as a single object like in every other program with layers?

Have you set the transform pivot point to bounding box?

That was it! Please write it as an answer so I can select it! Thank you!!!

Your Transform Orientation may be set to Local or some other setting.

Try Global to lock to the scene axes.

Thank you for replying. That had already happened once and this time, it is set to Global.


text:
How to fix my shadow catcher?
What do you suggest I do to fix my shadow catcher plane so that the barrel of the tunnel doesn't leave a gap, causing it to cast a harder shadow?

I'm not sure if I understood your Q ... end of your tunnel is hanging over ground? ... so move the edge of shadow plane to forward on level of end tunnel? ... I think I'm missing something, right? If none here please add more details. Thank you

Thank you for replying. Basically, yes. But if I move the edge, then I lose the shadow of the concrete frame. What I wanted to do is keep the frame as is and modify the plane right below the tunnel so that it adheres just like the other elements.

You answered your Q now, right?


text:
Megascans from Bridge - Why do all texture stretch and some don't even work? (Cycles)
Most of the megascans that I exported from blender to Bridge are either stretched or don't work properly (no depth, or no color). Is there something I need to keep in mind?

Hello, could you add a screenshot of an example material shader tree to see if something's wrong ?

Thank you for replying. As you can see, the textures are too big. The scratch marks on the pipe are very big. I do understand that this is because my whole scene is very small, but I was limited to this because of my 3D tacked cloudpoints.
https://imgur.com/a/CUpFhmQ


text:
Scaling entire scene with light maintaining correct shadows - How?
I need to scale the entire scene up by a lot because  without know I had all ther dimensions wrong. When I scale up the scene, the like moves far away and doesn't increase brightness. This means that if there is no way to make it grow proportionally, I need to relight the scene. I rather find a simple way to do that as it is a VFX shot and I matched the sunlight of the live action footage with an area light. How can I fix this?

just to let you know the lights brightness level doesnt increase when you scale it up

Thanks. Is there a way I can calculate how much I need to increase it to have the same exact result?

I am not sure if that is possible

OK, I'm going crazy now lol It scales properly but even if I set the light's power from 2000 W to 10.000 W I can't see any shadows. I also increased the size of the area light with no result.
https://imgur.com/a/AivuWIG
I uploaded a screen of the unscaled version which has the shadow and one of the scaled scene that lost the shadow.

I think that what you are looking for is shadow catcher and shadow pass so you can combine the 3d with real footage


text:
Light stopped rendering but visible in shading viewport - What happened?
A light that would previously render without any issue suddenly stopped. It has the same exact nodes as the first light and the only difference is the color which wasn't an issue before so I don't see why it should be one now. Does anyone know what could have happened?

You're going to need to share you blend file for someone to help you figure this out.

Is it possible to send you a link to the file in private and then post the solution here?

Save the blend file with a new name. Start removing objects a few at a time and see if the light comes back. If you get down to the single non-rendering light and a single object to catch that light and still have the error you will have a blend file you should be able to safely share in public?

I have uploaded a stripped down blender file https://mega.nz/file/7LwCySAB#isXGprskZbLP4KnLNuNHcbI279s6FnLcsj8Vydm_sio
Thank you for helping!

I don't have a mega.nz account, try https://pasteall.org/blend/ ?

I found out why it wasn't rendering. There was a keyframe! I don't know how it was made as I didn't animate anything but I deleted it and it render now!

Make sure you didn't turn the light of in the Render by looking at it in the Outliner.

Thanks for replying. I did check that as it has happened before but this time, it is on!


text:
Rendered texture looks different from material and render viewport - Why?
I can't understand why the texture renders with very low detail (even though the other textures stay the same after render). What could it be?

Everything looks blurred out, not just what you've circled.  Render/preview disagrees in a ton of ways.  Things we'd want to know: rendering engine; render dimensions and settings; camera file of view-- tons more.  Your material nodes, shown, are not impacting this, but there are a lot of other variables that could be.  Consider providing a file for us to just see everything.

So the bluriness is just because in the rendered image, I zoomed-in considerably to match preview. I'm working in cycles and the camera settings match the settings of the 3D camera track and the live action camera. Here is a stripped down file with the packed texture. https://mega.nz/file/2fgXAADS#6g_vv4Dj-e4Bqlrf_X2NSkKGnCXK9tfghQCs0tQlhPY (I uploaded to mega as it is over 24mb)

I redownloaded file.  Again, I'm not seeing an appreciable difference between rendered preview and render.  Looks like my other renders.

Thank you for checking it out. I appreaciate it a lot!


text:
How to animate rotation of an object in circular array, without the rotation affecting direction of the array itself?
The array modifier uses empty, which is parented to another empty in the centre of the circle. Is it possible to animate all the object rotating inwards/outwards the circle without it affecting the array modifier?
Thanks

The rotation inwards/outwards, could it be that you mean rotating the caps itself around an axis while staying in their place in the array?

You can simply parent your objects (the empty used for the array modifier and the mesh object) to another empty and rotate this last one.

Doing so will keep the relative location and rotation of the arrayed mesh and the empty used in this array.
That can also be:

In this case, hook the mesh to an empty and rotate it. Concerning the array, make sure that it is set on "constant offset" (not relative offset).

Hey, i have the same issue, but with the difference that my object is a vertical rectangle multiplied in array for a total of 214 parts on a circumference. Can you explain the procedure for doing this? I can't understand it. what's the procedure?


text:
Render time increasing exponentially each frame
I’m trying to render out a complicated scene, with motion blur, depth of field, volumetrics and lot of vertices.
When rendering image sequence, the render time drastically increases from frame to frame; for example, the first frame would be 4 minutes, the next 13, and the third 50 minutes. When I render just a single frame, the same one which took 50 minutes, the render time drops back to 4 minutes.While the scene is heavy, I’ve already rendered out multiple sequences which used practically the same assets, without encountering this issue.
I’ve tried finding similiar threads and came across this one from 4 years ago, which was seemingly caused by curves. Unfortunately I’m unable to get rid of all the curves, since I use Launch control addon which needs at least one curve object to fucntion properly (baking the animation also wasn’t succesfull, for some reason baking is broken for me in 3.5, as it bakes only every other frame).
Has anyone else come across similiar issues, and did anyone by any chance find any solution?
The PC specs shouldn’t be an issue; RTX 3090, 64 gb ram, i7 13700K

Update; I was able to resolve this issue by appending all the objects into new Blend file. As to what caused this, I have no idea, as no particular object seems to be the reason.

You could try to investigate the issue to hunt for a bug: remove half of items (materials, objects, textures...) and see if the issue persists. If not, revert the changes (menu File->Revert), and remove the other half of the items, and see if the issue persists. Then you can recursively repeat this process, trying to remove as much stuff as possible. This may make you figure out the combination of stuff that causes the issue, or at the very least prepare a minimal file to share with others, so they can continue hunting for the bug. Cheers!


text:
How do you display transparency when it's NOT selected?
I've got a semi-transparent texture that I want to display in the preview mode (so I can take screenshots for a client without having to fully render the scene). When I select the plane with the transparency, it displays correctly but if it is UNSELECTED it just shows up solidly (see image attached for settings and for the example of the issue). I've tried to use Alpha clip but it gives a hard edge and not a nice soft gradient that you get with the Alpha Blend.
Any help on this would be amazing, thanks!

Hello :). The UI looks pre 2.8. Which engine do you use?

@JachymMichal Hello! :) Ah yes, I am using Blender 2.79 as that was what I was using when I begun this project.

Well, since 2.8, there is Eevee. A pretty accurate realtime render engine that would surely fit your intended use :).

@JachymMichal Ahh okay- maybe it would just be best to switch to the 2.8 version! Thanks for your comment :)

Definitely, Eevee is a godsend :).


text:
Blender knife tool not working as expected
I'm trying to create vertexes using the knife tool; the object in perspective mode is:

in plane after using knife:

A point is always created on the back edges:

It's incredibly frustrating to have to remove these stray vertices; is there a more fine grained way of using knife?

Hello :). The Knife tool is for cutting across polygons. And there doesn't seem to be a polygon under your knife. What exactly are you trying to achieve? :)

Hi! Create an edge between the vertexes in the second image (ideally it should be perpendicular to the base).

As @JachymMichal pointed out, you're trying to cut across a hole.  You need to fill that hole with a polygon first.  You can't cut across empty space.

@DaleCieslak Thanks!  Managed to use knife.


text:
Center of orbit stuck
The center of orbit is stuck on a doughnut. I have tried moving 3d cursor, origin, selecting different objects, tried number-pad period, tried directly clicking frame selected (just puts view in center of doughnut), changing settings (already tried rotate around selection), tried rebooting it. There isn't any other posts with the same question, some are similar, though none completely match and no suggested  solutions have fixed this. You can see in the images, that no matter where the orange dot is, the camera centers around it (even if it is off screen, I lost the whole scene a couple times this way), and everything else is moved. It also appears this does not happen in sculpt window, even in object mode, but in modeling window, in all modes, it has this behavior.

About 20 seconds after I posted this I realized there was another view options section on the top right side of the view port or it can be accessed with hotkey N. I had pretty much every setting in the view section on the top left hand side, and almost every setting in the navigation and view port sections of the preferences settings. Please discard this question, I am just a beginner and am not used to the interface yet


text:
Rigged model seperates torso from the legs when moving the bones
So when I try moving the legs for example, this happens:
I understand this is because the model is seperated into different objects. But is there any way to make them share the weight without joining the objects together?

you need to give it some corrections in Weight Paint mode, maybe create an additional bone?

It looks like legs are a separate mesh. The whole modelshould be one piece.

The model doesn't need to be one object if the weights match. You can go into edit mode and copy the weight vertex per vertex. If the geometry overlaps you can isolate that edge loop and try the data transfer modifier. If this was a shared edge loop you can duplicate the loop from one mesh, separate it and merge it into the other mesh in which you delete the overlapping loop and reconnect the merged loopö.

Ditto, I just made a character that had about 10 pieces and automatic weight paint works just fine most of the time (especially for characters that otherwise WOULD have all their parts welded together, like pants and torsos).
If the separated meshes are separate objects, de-parent them and re-parent with automatic weights. If your rig is fine, this will work.
If the seperated meshes are ONE object, select all faces in one mesh, CTRL-P to make its own object, then do same for other. De-parent each from the armature. Re-parent with automatic weights.


text:
How to add edge which follows geometry
I have created a rough head model and added a subdivision surface modifier then set the mesh to follow geometry with the 'adjust edit cage to modifier'. See below:

I want to add a couple of edges back but when I click two vertices and press F, I get the following result:

I don't know why this 'pinching' is occurring but is there a way I can add the missing edges so that they are smooth and follow the geometry?

Do the 2.8 counterpart of J

F creates an edge between the 2 vertices but it won't cut the face, it will just create an edge over the face, what you need to use is J, which will cut the face. You can also use the knife tool: K to activate, and, since BLender 3, C to cut through to the mesh, A to cut perpendicularly.

The J command worked perfectly, thanks for your answer!


text:
Why is Frame Selected not working?
I am working on a Blender Guru project which includes 6 separate meshes. I am frustrated because the Frame Selected (hotkey Numpad .) stopped working.

The mesh object that I want framed is selected and my 3D Viewport is in Layout mode.
When I click View and then Frame Selected then my view does not center on the selected object (it might zoom closer).
I don't have this problem if I work on another or new projects. How do I get Frame Selected to work again?

I had a similar issue. In my case I had a View Lock (under View menu) to another object. Once I removed the lock I could use the view frame select or the numpad . key.

I love you! You saved my evening! <3

in my case, in view lock menu.. i was locked on 3d cursor lul what a messs


text:
Beveling Both Sides of an Edge To Create a Half-Round Not Aligning
Working to add a half-round border around the edge of an dynamic shaped piece of armor and finding it difficult to complete.
I have:

Duplicated the armor onto a new mesh
Inset a new loop to the width of the detail
Extruded the new faces outward
Beveled both sides of the extrusion with the same offset and number of faces

The result is leading to some strange corners and the bevels also don't align evenly across the armors surface.

I this just a matter of manual clean-up? Or is there a better way to achieve this with another method?


text:
Changes made to mesh does not appear in final render but appers in viewport render
I did some detailing on a mesh with the knife tool, the details appear in the rendered viewport but when I render it out, either in cycles or eevee the details dont show, it renders the mesh how it was before I did the detailing, i tried applying the scale, unwraping it but nothing works can you help me?

It looks like maybe you created a backup copy of the object, hid it from the viewport, then did your editing. Hiding it from the viewport does not prevent it from being rendered however.
If you click the little Filter Dropdown above the scene collection hierarchy in the Outliner, you can enable the Disable in Render restriction toggle, which allows you to also prevent objects from being rendered by clicking that icon in the hierarchy.


text:
Find the size of an object in camera frame for bounding box creation
What I am trying to do is extract the bounding box location of a spherical object in the camera frame, in terms of pixels. Using the function:
world_to_camera = bpy_extras.object_utils.world_to_camera_view(scene, camera, tracked_actual_location)

The outputs of this function are:
world_to_camera[0] -> X-location from 0-1
world_to_camera[1] -> Y-location from 0-1
world_to_camera[2] -> Depth on the view axis

My first question that I can't verify is: Is world_to_camera[2] the actual distance between the camera plane and the tracked_object plane? If so, the following code calculates what I want:
apparent_size = (actual_size * focal_length)/world_to_camera[2]
x_resolution = scene.render.resolution_x
pixel_pitch_x = focal_length/x_resolution
width_in_pixels = apparent_size/pixel_pitch_x

I have reason to believe it is not correct because for my object configuration I am getting a result of width_in_pixels = 0.83, whereas zooming at the rendered image it has a width and height of 3 pixels. Any clarification will be appreciated.

Ok, I think I found my mistake. The output from world_to_camera[2] is the actual planar distance that should be used for the calculation. However, instead of using the focal length of the camera to calculate the pixel pitch, the camera sensor width should be used instead such that:
sensor_width = camera.data.sensor_width/1000
pixel_pitch_x = sensor_width/x_resolution # [m]

The output for my previous configuration is now 1.006 pixels, which also explains why the rendered image fills 3 pixels. The way I see it, the resolution of the camera is not fine enough and therefore it interpolates the 0.006/2 pixels in each direction by filing them with a lower pixel intensity value.
The link to the reference that got me to use the sensor width instead of the focal length:
http://www.robsphotography.co.nz/crop-factor-advantage-appendix-2.html


text:
I need totally smooth shading on my mesh, yet some edges stay sharp whatever I try
I encountered a very frustrating problem in not being able to totally smoothen out my mesh, whatever I try. It seems that for some edges of the mesh, there's a stubborn sharpness data that won't go away whether I try to clear sharp, reset normals, clear custom split normals data, or turn Auto Smooth off.
So, as a starting point:
I have my mesh, I have applied smooth shading to it. In edit mode, there's no sharp edges marked. Auto-smooth is not enabled, and there should not be any custom split normals data, as it shows in the menu the option "Add Custom split normals data". Also, the mesh is not using any modifiers. In my experience, the mesh should look totally smooth now?
Still, there are some edges in my meshes that look sharp, and/or there's just something weird going on with the normals:

Next step:
The normal fix I would in a situation like this, would be to go to edit mode, select all vertices and hit alt + N to open up the Normals menu. Then hit 'Reset Normals' hoping that this would reset the normals to their default state so that the smooth shading would work normally and I could get rid of the incorrect shading. But, instead of that, the following things happen:

All those sharp-looking edges I can't get rid of, get marked sharp
Auto-smooth gets enabled
some custom split normals data gets added, as the menu now shows "Clear custom split normals data"

And as a result those edges look even sharper than before.
Then, I try to cancel everything what happened, by:

Selecting all edges in edit mode and hitting 'Clear Sharp'
clearing custom split normals data
turning auto-smooth off.

And as a result, I'm at the starting point again. Those pesky edges still appear sharp. Repeating any of these steps in different order doesn't work either.
One interesting detail might be, that the mesh is imported as FBX from another Blender project. Could this be the reason? Is there some normal data written in FBX that can't be rewritten in same way as you would normally do, using the above methods?

Please share your Blend file via https://blend-exchange.com/ following the instructions there so that we can look at it directly. Have you tried increasing the Angle setting on the Normals panel with Autosmooth enabled

Hi John! Yes, I have tried increasing the angle setting. It affects everything else in the mesh, except these specific edges that have the problem. I'll share the blend file in a sec.

Here's the file:

I suspect that most of the problem is due to poor topology of the basic mesh. Try adding a Subdivision Surface modifier with Level set to 1 and apply it. Is that good enough?

It's a known problem of AO (Ambient Occlusion) to produce artifacts most prominent on low poly meshes… In particular, by definition AO darkens creases and lightens edges, and the simplest way to produce the problem is to set shade smooth on the default cube:
What causes the weird shading when you smooth shade a cube?
As you can see there, even though the cube is shaded smooth, AO pronounces the edges.
So turning AO off is the solution to smoothness:

If you actually want AO, I think it deserves another question on how to produce it on low poly, maybe by just baking it to a texture/vertex attributes…

Ah, that's it. Thank you for finding the culprit! It just didn't cross my mind that AO would cause this.


text:
I successfully installed a new add-on (stablediffusion-main) and now I can't find it
I installed this by the book. And it's located exactly where it should be.

And I cannot for the life of me find the little guy.
Where the heck is it and how do I get to it?

You've installed the wrong directory. There should be a __init__.py file at the top level of the directory.

Installed it by what book? If you install it the correct way it should automatically install into the correct folders. See this tutorial by PIXXO 3D on installing and using it.

I went by this:
https://youtu.be/tmyln5bwnO8
I used the Pixxo method and it "installed" (thankyouverymuch) but AI Render does not show up where I'm shown to find it.
I'd be charmed to show you, but I can't insert an image here.

@HenryBirdseyeJr. You can't insert an image here? You inserted an image in your question, so what is the problem? You can insert more images there... and if it showing some additional information or clarification to the question, it is better to be placed in the question than in the comments section.

This is not a Blender add-on. It’s clear from the files that are in this directory that it was meant to be installed as a module to vanilla Python. While it may be installable to Blender Python, the add on “installer” in blender just naively unzips the file you give it, and dumps a folder of the contents in the scripts/addons folder, expecting to be able to import an __init__.py file with Blender addon registration code. To install it properly to Blender Python is beyond my knowledge. Look for, “how to install modules to Blender Python with a setup.py file”.


text:
AI Stability for Blender "installed" correctly, but does not appear in Blender
After a reboot or two, AI Stability does not appear where Pixxo said it would. So, what's that deal?
Thanks for the help, everybody.

That appears to be a third-party addon. This Q&A site only helps with questions about problems using Blender itself and its built-in addons so your question is off-topic here. You should ask the author directly. Anyway you have an answer from your previous question about it yesterday.

Tremendous. Thanks.


text:
Why does opening Blender cause the CMD window to open?
For some reason, everytime I open Blender, CMD opens, displays "Read prefs: C:\Users\(my name)\AppData\Roaming\Blender Foundation\Blender\3.3\config\usepref.blend, and just sits there. I haven't done anything, but all it does is take Blender with it when it closes. Anyone else having this problem?

The cmd windows opens on startup in all the years and all versions since I've been using Blender, this is absolutely normal. But usually it closes automatically after Blender's UI is running... it just closes Blender if I close the cmd window before the startup is finished.

You could temporary rename the Blender Foundation folder in the appdata folder and have a look if the problem persists. The cmd window should definitely not stay open at startup. That smells like a bug. But please test the newest Blender version before you report it. 3.3 is already one version behind ...

Tried both, only worked for first session.


text:
Can I change colors of image textures when applied in blender 2.8?
I'm in the middle of applying materials and textures to a project I'm working on.  I've found a lot of good textures and they work very well, but they are not the right color.  I've tried using the different nodes like hue and saturation and mix RGB and curves, but nothing turns out quite right.  For example I am applying a rust texture to a large barrel, and the image texture is a steel grey with rust, but would like base color to be a dark red.  I'm able to go into photoshop and adjust the colors of the texture file there to a degree.  Is there a way to do this while in blender?  I'm using blender 2.8 and rendering in cycles.  Thanks.

Hello, I don't know why you don't succeed, you should be able to do what you want with Hue Saturation, Bright Contrast or RGB Curves...

And to add - you can also use the same blend modes as in Photoshop (multiply, overlay, hue...) through the Mix RGB node.

Maybe your problem is that the original picture is only black, white and grey? I've noticed this problem, it makes impossible to use Hue and other color nodes to change the colors, but as Jachym says it looks like plugging the image into the MixRGB does the trick

Thanks!  It looked like I had plugged something in to the wrong node.  facepalm


text:
How do I combine scenes for a small animation?
I want to make a small animation that will be made up of 3-4 scenes.  How do I combine these?  I'm using blender 3.1 and am rendering in cycles.  Any help is appreciated thanks!

do you mean all scenes at the same time or one after another?

If there are cuts between each clip of each scene, you can composite them in an external software (Final Cut Pro, iMovie, etc.) or even Blender itself. Export each scene animation first, then compile them all in a video editing workspace inside Blender (or externally), and export them as one video.

You could render each scene and then edit the clips using the video editor or you could append all  your scenes inside one 3D project. But you need to provide more info and describe exactly what you are after.

Each scene or clip will be one after the other.  To briefly and simply sum up what the final result should be, the first clip is a pair of hands burying a seed, the next clip is a tree growing, the next clip is two people standing next to tree.  Do I create these as separate files or can I create them all using the same file and then sequence / combine them somehow in blender?

I just duplicated my self :)

Yes you can.
For each scene add a Scene (top-right row) ...

... and one more for combine them, because you cant add 3D scene into it self). In this last empty Scene switch layout to Video Editing and add strips type Scene into your timeline.


text:
Can I animate an object to move behind a transparent image plane and be invisible?
I have a small simple animated scene.  I have a transparent image plane so the background still shows through with an illustrated graphic, but there is an object that I would like to have move behind it and be hidden behind the plane.  Is this possible since the image plane will be transparent?  Thanks for any constructive advice or tips

you can use this node setup here:

by moving the plane you make it invisible.

I colored the plane red to see what's going on. Of course you would make it invisible.

Great thank you!!


text:
what is a good way to model pasta or noodles?
Does anyone have any good methods or tips on how to model pasta or noodles?  I'm modeling a bowl of ramen.  I tried creating a noodle from a curve, converted to a mesh, and used the cloth modifier with collision on the bowl.  It didn't turn out too bad at all but they just never settle in the form or composition I'm looking for.  Any tips would be greatly appreciated!! :D

You should add a picture of what you are looking for. Because that way you wrote your question it can be anything…

I think you can ask the one and only pasta master here or on the chat. see http://pasta.duarteramos.pt/#Home:Home%20%5B%5BAll%20Pasta%5D%5D But please add an example of what you achieved so we can know what's the baseline here


text:
can I assign color to one side of face only?
I'm modeling a bowl of ramen and I would like the bowl to have a stripe going around it.  I can assign the material color to that stripe but it shows on the inside as well.  Is there a way to assign color to only one side of the face?  Thanks !

If you are talking about the same face, in the Shader Editor use the Backface output of an Input > Geometry node as factor of a MixRGB (or Mix Shader, depending on your material)


text:
Blender's entire interface missing?
I've gotten into blender again and was still using 2.79. I downloaded 2.82 on my mac pro today and was met with this screen. I re-downloaded it as well as restarted my computer but nothing works. I downloaded the same file on my laptop and it ran fine. I will appreciate all help and thank you in advance.

It appears that your OS, graphics driver or hardware doesn't fulfill the minimum requirements for running Blender 2.8x.


text:
How to animate a change in the height (Z) of a grid using shape keys
I want to animate a landscapes that "grows" up, using a grid. The landscape sits in a numpy matrix. After I update the Z values in the grid, the shape keys don't capture this.
Below is my current code. At line 49, just below the text "### Below here', the data can be set. If you fill in "False", the grid values get replaced by a random vertex transform, and this works fine, creating a changing grid between frame 1 and 100.
If "True" is filled in, the numpy matrix data is used (here a funny sine wave for testing) and this sets the Z coordinates directly, to adjust the mesh. The problem is: the shape-keys/keyframes don't capture this, just showing the landscape that I set for the entire animation.
What am I doing wrong?
import bpy, bmesh
from math import pi
import numpy as np

O = bpy.data.objects

# --- Cleaning previous iterations --------------------------------------

for o in O:
    if o.name[0:4]=='Land':
        O.remove(o)

# --- Function setting the mesh -----------------------------------------

def SetMesh(me, V):

    # Get a BMesh representation
    bm = bmesh.new()   # create an empty BMesh
    bm.from_mesh(me)   # fill it in from a Mesh
    bm.verts.ensure_lookup_table()

    # Modify the BMesh, can do anything here...
    for i in range(len(bm.verts)):
        bm.verts[i].co.z =V[i]

    # Finish up, write the bmesh back to the mesh
    bm.to_mesh(me)
    bm.free()
    me.update()

# --- Generating data (wavy landscape) ---------------------------------
GridDim = 20
R=np.linspace(0,pi,GridDim)
X,Y=np.meshgrid(R,R)
D=np.sin(X*Y)
D=D.flatten()*0.1

bpy.context.scene.frame_current = 1
bpy.ops.mesh.primitive_grid_add(
    x_subdivisions=GridDim, y_subdivisions=GridDim,
    size=2, location=(0, 0, 0))
bpy.context.object.name = "Landscape"

bpy.ops.object.shape_key_add(from_mix=False) # The basis shape_key
bpy.ops.object.shape_key_add(from_mix=False) # The "Key 1" shape_key

### Below here, the data can be set
if True:
    SetMesh(Landscape.data, D)
else:
    bpy.ops.object.editmode_toggle()
    bpy.ops.transform.vertex_random(offset=0.2)
    bpy.ops.object.editmode_toggle()

bpy.context.object.data.shape_keys.key_blocks["Key 1"].value = 1
bpy.context.object.data.shape_keys.key_blocks["Key 1"].keyframe_insert(data_path='value', frame=1)

# Setting keyframes for animation
sk1 = bpy.context.object.data.shape_keys.key_blocks["Key 1"]
sk1.value = 0.0
sk1.keyframe_insert(data_path='value', frame=1)
sk1.value = 1.0
sk1.keyframe_insert(data_path='value', frame=100)

See for example https://blender.stackexchange.com/a/93180/15543  ditch using the operator to create shapekeys.  Also recommend using variables eg mesh instead of bpy.context.object.data

That example doesn't work with me (maybe because I use version 2.83). Why using variables? I wouldn't mind, but I am unsure what would be the benefit?

Needed the most minor of edits to upgrade from 2.80.  (btw  feel free to edit answers if you find and can fix)   Concept is same. Readability  for example usage of sk1 above, (possibly three lines prior.)   Reading full addresses to variables feels like hearing  somebody's title,  full name, address,  everytime they are addressed.   Edit ability. Portability.  eg using a variable named context in test scripts can then be pasted into (eg) operator method code where it is an argument.


text:
Is there a way to get the character lengths of each word of a string in Geometry Nodes

I want the character length of each word of a string. Is this possible procedurally?
My idea was to divide them into lines, but I can't get to separate the lines into individual strings.

Here's an example that sets the size of the first letter of each word (line) based on the length of the word:

The tab is added at the end, because newline characters count, and there's no newline character at the last line. This is also why $1$ is subtracted from the calculated value, because you probably don't want to count the characters together with the newline character…


text:
How do I move individual words in a string in Geometry Nodes

In the above image, how can I move individual words (not letters) in a string.
For example, I only want to move the word "DISPLAY" up and down, how can I do that?

one simple way is this:

Here i just use the curve instances indices to move the letters.
or do you wanna do this?

or this?

or do you wanna animate?

+1 I'm glad you were quick enough with posting your answer before I came too far with my own :D (Only difference: I started with a Translate Instances node instead of Set Position.)

Third one is perfect because it's almost procedural, as in I dont have to manually set the input character length, Thanks!

you are welcome!


text:
How do I change font of "String to Curves" Geometry node using Blender python?
I want to make it easier for people to change fonts without going into the geometry nodes editor.
But I don't know how to select the "String to Curves" node.
Hovering mouse over the node shows me how to change alignment.
bpy.data.node_groups["Geometry Nodes"].nodes["String to Curves"].align_x = 'CENTER'

But if I hover over the font section of the node, it shows this python code, which doesn't work
VectorFont.name
bpy.data.fonts["Bfont Regular"].name

There is code online to load a data font
data_font = bpy.data.fonts.load('C:\\WINDOWS\\Fonts\\Font.ttf')

But I don't know how to select a specific geometry node and apply the font to it.

There are a few bits to this:

Select the object that has the Geometry Node modifier.  I'll use the active object in my example.  If you don't want to use the active object you'll have to change the first line.

Select the Geometry Node modifier on that object. I'll search by name, but if you've changed the name of your modifier you'll need to use your name in your code.  It's actually better to search by type if you have multiple modifiers.

Select the node group from the modifier.

Select the String to Curve node from the node group.  I'll search by name, but see above.

Finally, set the font member of the node.  You can learn what member by looking in the manual for bpy.types.GeometryNodeStringToCurves

Here's the code, without any error handling.  You should check to see that there is an active object, that it has a modifier, and that there is, in fact, a String to Curves modifier if you want more robust code..
import bpy

obj = bpy.context.active_object
modifier = obj.modifiers["GeometryNodes"]
node_group = modifier.node_group
node = node_group.nodes['String to Curves']
data_font = bpy.data.fonts.load('C:\\WINDOWS\\Fonts\\Font.ttf')
node.font = data_font

Works perfectly. Thanks.

You're welcome.


text:
Scale keyframes from the first frame using Blender Python
I have got a cube with 3 keyframes on frame 1, 24 and 48.

I want to scale the keyframes, but it scales from the center of the selected keyframes that is Frame 24.

How can I set the scaling to start from frame 1?
Here's the code I got.
import bpy

old_type = bpy.context.area.type
bpy.context.area.type = 'GRAPH_EDITOR'
bpy.ops.graph.interpolation_type(type='CONSTANT')
bpy.context.scene.frame_current = 1
bpy.ops.transform.resize(value=(2, 1, 1))
bpy.context.area.type = old_type

I would just move the keyframes as Jakemoyo says, but in your case you may try: bpy.ops.transform.resize(value=(2, 1, 1), center_override=(1, 0, 0))

This works too.

I think it makes a lot more sense to manipulate the keyframe data directly instead of using Python to simulate resizing them in the window. I have found that almost every time you find yourself trying to manually override the window context  or something to execute a function there is probably a better way to do it.
import bpy

# get the active object
obj = bpy.context.active_object
# get the animation data and fcurves from the object
# the fcurves are a good way to get direct access to the keyframes
curves = obj.animation_data.action.fcurves

#loop over every fcurve
for c in curves:
    # get the keyframes for every fcurve
    keyframes = c.keyframe_points
    #loop over every keyframe and divide their x coordinate by a scale factor
    for kf in keyframes:
        #this is the number to scale by,
        #if  you want to scale them all down by half then you'd divide by two
        scale_factor = 2.0
        # co is the keyframe's coordinate attribute
        # we only want to scale them on the x-axis (time)
        # not on the y (amplitude)
        # /= is a shorthand for saying kf.co.x = kf.co.x / 2
        kf.co.x /= scale_factor

```


text:
How can I fix the position of the first keyframe while scaling all others?
I have this code that scales all keyframes by half.

But the problem is that it also scales the first keyframe and moves it near zero.

I want to mimic the scaling of keyframes in the viewport editor where the first keyframe is fixed and all others scale by a specific number. Is there a way I can achieve that?
import bpy

# get the active object
obj = bpy.context.active_object
# get the animation data and fcurves from the object
# the fcurves are a good way to get direct access to the keyframes
curves = obj.animation_data.action.fcurves

#loop over every fcurve
for c in curves:
    # get the keyframes for every fcurve
    keyframes = c.keyframe_points
    #loop over every keyframe and divide their x coordinate by a scale factor
    for kf in keyframes:
        #this is the number to scale by,
        #if  you want to scale them all down by half then you'd divide by two
        scale_factor = 2.0
        # co is the keyframe's coordinate attribute
        # we only want to scale them on the x-axis (time)
        # not on the y (amplitude)
        # /= is a shorthand for saying kf.co.x = kf.co.x / 2
        kf.co.x /= scale_factor

import bpy

# get the active object
obj = bpy.context.active_object
# get the animation data and fcurves from the object
# the fcurves are a good way to get direct access to the keyframes
curves = obj.animation_data.action.fcurves

# loop over every fcurve
for c in curves:
    # get the keyframes for every fcurve
    keyframes = c.keyframe_points
    # loop over every keyframe starting from the second one
    for i in range(1, len(keyframes)):
        kf = keyframes[i]
        # this is the number to scale by,
        # if you want to scale them all down by half then you'd divide by two
        scale_factor = 2.0
        # co is the keyframe's coordinate attribute
        # we only want to scale them on the x-axis (time)
        # not on the y (amplitude)
        # /= is a shorthand for saying kf.co.x = kf.co.x / scale_factor
        kf.co.x /= scale_factor

```

This approach may induce errors if the initial key is not at 0. For instance if initial key is at frame 4 and the next key is at frame 6 ideally your scale should reflect the delta of the initial key to the next key instead of simply dividing its value.


text:
Pressing G distorts my objects
Whenever I press "G"  the selected vertices distort. The shape is retain with respect to the viewer but the vertices themselves are massively distorted. I'm assuming I've changed a setting without knowing. Can any help? This doesn't happen when I open a new file, but does happen in this .blend file everytime.
In the images below, I have selected the vertices I'd like to move, then moved them slightly. By rotating the camera you can see the actual damage caused.

I can't believe it, but after spending about 2 hours trying to figure this out, then posting this question, I just, by chance, found the cause. I had my snap setting set to "Snap to Face", rather than "Snap to Vertices".

Hey :). Glad you've found a solution! Please post your comment as a full answer, so it's easier to find.


text:
Rendering on CPU vs GPU how to enable CUDA and performance on older system
I am on an older system, Windows 7, it is built on an Asus Sabertooth X58, I am low on RAM @ 4GB , CPU is an Intel I7 950 a Quad core @ 3.07 GHz, graphics card is a Geforce GTX 460 , boot drive an OCZ vertex solid state.
what I am wondering is about using CUDA, and if my card is compatible, when I click on CUDA in preferences/system it tells me 'no compatible GPU's found for path tracing Cycles will render on CPU'. Now I realize that message seems clear but I have to wonder because I use TMPGEnc Video Mastering Works 5 and it uses CUDA on my system I do video processing so when I assembled my computer I was sure to pick a CUDA graphics card.
I don't expect CUDA rendering would outpace my CPU, but the thing is I have a second GTX 460 sitting in a box so I am wondering IF the card is compatible and I was to reinstall that second card and I was to use that card just to render I would get slower render times, but my system would not be bogged down with the process during the render?
when I took the second GPU out it was because the video software was causing issues, it was years ago so I dont remember exactly but it had to do with SLI issues and using CUDA to process video. I ended up just taking the card out to avoid the hassles, but that issue back then has me wondering if Blender is telling me no compatible GPU's because of the old issue ( software being grabby about CUDA...)

Your card is way too old, below the minimum specs needed for the current versions of blender.
From the manual
https://docs.blender.org/manual/en/latest/render/cycles/gpu_rendering.html

CUDA
CUDA requires graphics cards with compute capability 3.0 and higher. To make sure your GPU is supported, see the list of Nvidia graphics cards with the compute capabilities and supported graphics cards. CUDA GPU rendering is supported on Windows, macOS, and Linux.

Check the minimum requirements here too:
https://www.blender.org/download/requirements/
You can try using older versions (2.79 or below) which might work, but know that you might not get any benefits for using CUDA at all.
Also blender does not work with SLI.

hmm, for some reason comments are posting when I press enter key , that's odd.... excuse the block of text...  I had checked system requirements and my system is within all requirements the problem is CUDA and compute capability less than 3.0. I am still wondering about the performance question rendering on a second card I am considering some upgrades like RAM and graphics (before RAM is impossible to get) so it would be good to know, I dont mind rendering taking a long time if it is not bogging down my computer and I have an extra 16x lane. always open to suggestions...

Comments are always a single paragraph. Just try it and see what happens. But keep your expectations low.


text:
Texture doesn't apply correctly
Does anyone know why this texture stretches like this?

It looks like you have not unwrapped your mesh at all or correctly, just tab into edit mode, press A, press U and select the unwrap option. If your mesh`s texture is still messy in that case, follow any one of the three methods given below. Also, press ⌃ Ctrl + A and press the rotation and scale option in the pop-up menu to zero out the object's rotation and scale as @kay777 said.
1. Cube projection

Tab into edit mode, press A, press U and select cube projection (most suitable for objects which look like cubes).
2. Smart UV project

Tab into edit mode, press A, press U and select the Smart UV Project then a pop-up menu will show up, press the ok button.
3. Lightmap pack>follow active quads

First select a random quadrilateral face (a face with four edges) in your mesh, press A, press U, select light map pack, press U again and select the Follow Active quads.

I tried everything except for Smart UV Project because blender crashes as soon as I press the button. It may be because it is a very long tunnel:
https://imgur.com/a/o9HCuVU

In that case please add the blend file so I can check out the problem myself

https://blend-exchange.com/

Thanks for offering to look at it. I stripped down the project, you can clearly see that the texture stretch happens where I stretched the faces of the tunnel to make it land flat on the ground. https://pasteall.org/blend/aa7e9425850e421ea3c8ff82f2fb09e8

Hi there again is there any reason for a gap in your mesh? Take a look at it
https://drive.google.com/file/d/1fEQ-ElTG-zm2_UJ0mriEVqUXVO8FhMVQ/view?usp=sharing

There was initially but I don't really need it anymore. Do you think it is that? Is it hard to re-attach those faces?

Maybe try adding an edge loop to subdivide that part?I think that`s the issue

Try to Apply Scale (⌃ Ctrl + A) - Also You should do a Smart UV projection and then connect the UV node into the mapping.

Hi thank you for replying! I tried that but Smart UV Projects causes blender to crash. Could it be because of how long the tunnel is?
https://imgur.com/a/o9HCuVU

Step 1:

Select your tunnel and then press 'Shift+H' to hide every other object in your scene except the tunnel, tab into edit mode, press 'A' to select all faces/vertices/edges and then press 'M' and select the 'Merge by distance' option in the bottom so that all overlapping edges/vertices/faces are removed.
Step 2 (optional):

If you want to check out the UV mapping of the object just create a simple checker in blender by copying these nodes. This step is optional and not necessary in this method.
Step 3:

Go to 'Material preview mode', tab into edit mode, press 'A', press 'U' and then unwrap, now you should notice that the unwrap is not good as the texture breaks. So press 'A' to select all the faces in edit mode again, press 'U' and select the 'Smart UV project' option.

Ok so this was very helpful! The Texture checker appears to work perfectly but when I try to do the same things with the material I chose, I still get that stretched out thing. It stretches exactly in the portion where the faces are "longer".
https://imgur.com/a/HuvtfdD

Oh ok could you maybe share a picture of the 'stretching part' with the texture.

Here it is: https://imgur.com/a/A2WtP1n Thanks!


text:
Apply Array Modifier and edit duplications separately
I have used the array modifier and once applied, I would treat the copies as individual objects. For some reason when I try to do the same in this project, it selects all the duplicates along with the original as a single object. Is there something I'm missing? Thank you in advance!

I suspect that in your previous project you applied the array modifier before you edited but now you're not?

What do you mean? I selected the Array modifier and ctrl + A'd it to apply it (otherwise al the other duplicates are just projections of the first, original model).
Here is a screenshot:
https://imgur.com/a/EoYP7mi

That's what I meant.  I was guessing that you hadn't done that.  I suppose you've also done the other two steps from the first answer to the dup question?

Hello and welcome.  Your question was linked to a duplicate question.  If you follow the accepted answer there about separating by loose parts it should solve this.


text:
How do you reset the orientation relative to the camera?
As you can see, it is now a nightmare trying to place things in the scene. Is there a way to reset x and y so that everything aligns?

I'm afraid we can't see that it's a "nightmare". What exactly are you trying to do? - You can view your scene from front, side or top view with the 1, 3 or 7 keys on the numpad if that's what you mean?

The axis, relative to the camera are diagonal so if I want to move an object further back I can't simply drag it with G + Y but a combination of Y and X axis. I need to re-orient the axis so that Z, X, Y are centered again.

Did you try changing the Transformation Orientation (a little left to the Snap button) from Global to Local? Is that what you need?

@taiyo Not local, a custom orientation based on the camera. At least that's how I understand the "relative to the camera" part and "I want to move an object further back".

@GordonBrinkmann aah ok, makes sense now.

When you select the camera and click on the dropdown menu for the Transform Orientation, you can click on the + button to add a new custom orientation. This will automatically be named after the selected object, in this case "Camera" (I already did this in the screenshot below).

If you use the "Camera" orientation and select an object, moving it with GZ will move it closer/farther from the camera, GY moves up/down and GX is for left/right movement. tapping the axis key twice switches to moving on global axis instead of custom.

However, if you want to only adjust certain axes and not all to the camera, it might be best to place an empty in the scene which has the rotation you need and use this to create a custom orientation.

Thank you so much this worked perfectly when selecting the camera although it did not with the empty. Regardless now it works!

@TORM3NTO I don't know what you did with the empty, but it does work. Of course you cannot simply add it to the scene, you have to give it a suitable rotation so that it fits your needs.

Yes but it is not using the whole berries, it is only exploding them into bits and pieces. and it is doing it to all three of the berries that I chose as collection rather than emitting from the emitter only.

By zooming out I can see the empty is emitting something but it is very small and behaves weirdly. Completely different from the tutorial.
https://imgur.com/9tdBosl

@TORM3NTO I guess you're on the wrong question here... this was about creating a custom orientation to move objects aligned to the camera. This has nothing to do with emitting particles or anything.

My bad. It was at night after a long day of work. Sorry!


text:
How to make HDRI invisible but keep other background nodes visible?
I created a starry sky with a noise texture and used an HDRI for lighting. If I activate transparency in film, I also hide the my noise texture. How do I hide only the HDRI texture?

So do you want the noise texture to show in the background and keep the hdri hidden but still use it for lighting?

Yes, exactly that!

I have provided an answer, but this is a pretty old trick known by many people and available if you search for it. Please do your best before to search before asking a question here.

Use the mix shader node with a light path node to get this effect.
The is camera ray of the light path node tells you whether the ray hitting the surface is the last one to reach the camera. If yes then it outputs 1 and if no then 0. Using this as a factor in the mix node, where you are mixing the 2 background shaders, you can basically tell the render engine that, when I look at the environment I want to see the second shader. But if I am seeing this ray bounce off something(ie. not looking at the env) I want to the first shader.
Here I have demonstrated it using a metallic cube.


text:
Exporting for Compositing - Reference Video in Render
I'm trying to export a multi-layer EXR sequence. I remember encountering a similar problem about a year ago but I cannot remember what I did to fix it. Basically, the video reference I used for the camera tracking is also rendering with the 3D model. I turned the background off and don't know where else to look. I attached the a screenshot with some of the settings (don't consider the viewport).

Disabling the background collection makes only the scene objects disappear which are in this collection. I cannot see it clearly in your screenshot, but I guess what you see when rendering is the image that is in the Background material of the World.
And if I understand the question correctly you want the background to be transparent. To achieve this, go to the Render Properties > Film and enable Transparent.

Thank you for replying. Actually, transparency is on. The video I had initially imported into blender in the motion tracking page is showing in the final render. I can't find it anywhere to disable it

Do you have the video imported in the Video Sequencer?


text:
Copy (ripping) only basic mesh data (vertices) from a model
I got a model having a lot of other attributes like modifiers, material, vertex group, shape keys etc... already loaded onto it.
Basically, I want to start with a fresh basic copy of the model's shape only (mesh data only) and leave out any additional attributes that is already included on the original model.
So far, doing Shift+D and S , only create a copy with all the attributes still present in.
I just want the shape mesh only (vertices).
Furthermore, I wonder if there any specific addon for this?

As far as I know there's no way to duplicate an object copying only its mesh data using built-in commands.  There are probably add-ons that do this as one of their functions, but I couldn't find one so I wrote this:
import bpy
from bpy.types import Operator

bl_info = {
    "name" : "Simple Duplicator",
    "description" : "Duplicate an object, copying only the mesh",
    "author" : "Marty Fouts <fouts@fogey.com>",
    "version" : (0, 0, 1),
    "blender" : (2, 83, 0),
    "location" : "View3D",
    "warning" : "",
    "support" : "COMMUNITY",
    "doc_url" : "",
    "category" : "Object"
}

def object_mesh_duplicate_draw(self, context):
    """Menu entry for mesh Duplicator"""
    self.layout.separator()
    self.layout.operator("mop.mesh_duplicate",
                    icon="OUTLINER_DATA_MESH")

# This function was provided by Blender StackExchange User scurest
# I've modified it to work in the context of the existing code.
def do_copy_pure_geometry(src_mesh):
    dst_mesh = bpy.data.meshes.new(name=src_mesh.name)

    def copy_over(attr_name, sub_name, components=1):
        src_attr = getattr(src_mesh, attr_name)
        dst_attr = getattr(dst_mesh, attr_name)

        if len(dst_attr) != len(src_attr):
            dst_attr.add(len(src_attr))

        arr = [None] * (len(dst_attr) * components)
        src_attr.foreach_get(sub_name, arr)
        dst_attr.foreach_set(sub_name, arr)

    copy_over("vertices", "co", components=3)
    copy_over("edges", "vertices", components=2)
    copy_over("loops", "vertex_index")
    copy_over("polygons", "loop_start")
    copy_over("polygons", "loop_total")

    dst_mesh.validate()
    dst_mesh.update(calc_edges_loose=True)

    return dst_mesh

class MOP_OT_mesh_duplicate(Operator):
    """Copy only the mesh of an object when duplicating it"""
    bl_idname = "mop.mesh_duplicate"
    bl_label = "duplicate mesh"
    bl_description = "Duplicate only the mesh of an object"
    bl_options = {'REGISTER', 'UNDO'}

    @classmethod
    def poll(cls, context):
        return context.mode == 'OBJECT' \
            and context.object \
            and context.object.type == 'MESH'

    def execute(self, context):
        object = context.object

        new_mesh = do_copy_pure_geometry(object.data)
        new_object = bpy.data.objects.new(object.name, new_mesh)
        context.collection.objects.link(new_object)

        new_object.select_set(True)
        object.select_set(False)
        context.view_layer.objects.active = new_object
        return {'FINISHED'}

def register():
    bpy.utils.register_class(MOP_OT_mesh_duplicate)
    bpy.types.VIEW3D_MT_object.append(object_mesh_duplicate_draw)

def unregister():
    bpy.utils.unregister_class(MOP_OT_mesh_duplicate)
    bpy.types.VIEW3D_MT_object.remove(object_mesh_duplicate_draw)

if __name__ == "__main__":
    register()

You can copy it into the text editor in Blender and run it, or you can install it as an add-on and enable it.  Either way it adds an entry to the bottom of the 3D Viewport's Object menu called duplicate mesh that will duplicate the active object but only its mesh into a new object.  You can also invoke it by using F3 and search for 'duplicate'.  I didn't add a shortcut for it, because whatever I pick will probably be something you're already using.
Here's a test file with a non-mesh object and a mesh-object that has various additions to the mesh, including modifiers, marked edges, and vertex colors:

Your script copies all shape keys, materials, custom split normals, uv maps, vertex colors etc. as well... the question is how to copy the mesh only.

@brockmann I fixed the copy. Thanks for correcting the place I missed removing bpy when I converted to an operator.  Anything else?

It still keeps uv maps, vertex colors, seams, etc. if I am correct?

Cool. However, Lemon is correct, even the split normals are still there (might be an issue here). Also I personally would expect that the copy is selected and the active object after the duplication, see: https://blender.stackexchange.com/questions/126577/blender-2-8-api-python-set-active-object/126581#126581

If I can add. If the goal is to keep a "pure" mesh, I don't see another way than from_pydata. And, I suggest to use the "poll" function to avoid running it if it is not a mesh. Also, as the operator is in the object menu, no need to expect an edit mesh, I think... but I'm nitpicking

The easiest way to do a "pure" mesh copy is to foreach_get from the src mesh and foreach_set to the dst mesh. You only need to do vertices.co, edges.vertices, loops.vertex_index, polygons.loop_start, and polygons.loop_total. Example

@lemon thanks for the feedback and no I don't think you're nitpicking.  The operator is in the object menu, but it's available in edit mode through the F3 menu, so I can't rely on being in object mode unless I take your suggestion and poll.  Will do that.

@brockmann good point about duplicate usually making the resulting object active.  I'll fix that

@scurest that somehow still copies seams.

I just tested and it doesn't. I don't see how it possibly could.

@scurest  Found my problem.  Going to post a modified script that complete works now.  Thanks.

Can confirm, it works now and it's just the mesh. However, you did forget about the imports for bpy and the operator type, running your current script won't work out of the box. I had some time to polish it (deselecting the original, operator namespace, icon, menu separator etc.) and incorporated Lemons nitpicking re poll: https://pasteall.org/32Ty/raw

@brockmann thanks for the polish.  I believe I've got it all into this version, except see question.  I added one more bit to the poll test to avoid the situation where there is no active object causing a fault.  Also, a question: Why move the menu function?  I didn't make that change simply because I didn't understand the reason.

Great. Doesn't really matter in this case... In larger scripts it's mostly for convenience to have those lines close to prepend/append call in order to be able to change things quickly and test where to put your UI, avoids scrolling and you can even see this in the templates e.g. Import/Export operator. Also we are reading from top to bottom and I personally think the most important/relevant parts (operators) should be on top of the script to get the logic quickly as possible.  Anyway, do whatever you like, there is no rule for 5 lines of code.

makes sense.  I use VS Code and collapse things a lot, so I'm used to that no mattering.  Also, I've added the idea of class initialize/deinitialize functions that get called from register/unregister if the exist so that I can keep things like keymaps and menu entries local to the operator class file.  So we're thinking the same way about organization, but I'm using VS Code as an aid.


text:
hiding one image only in one of the two viewports
I did a vertical split screen. I've got two viewports now. And I loaded two perpendicular images.
I wished to hide one image only in the first viewport and make it visible in the second viewport, but it kept disappearing in both viewports at once.
How do I make one image visible in the first viewport and invisible in the second viewport at the same time?

Hello and welcome, you mean reference images?

The same question was asked a month ago https://blender.stackexchange.com/questions/239980/how-do-i-split-viewport-and-place-a-different-empty-image-in-each-one/239987#239987

The first step is to place each of your ref images into different collections and your objects into a separate collection

Now press 'N' on your keypad and go to the 'View panel'

go to the collection section and check the 'local collections' option and press the eye icon near the reference image or objects name to disable and enable it in one of the split viewport.

Now just repeat the same steps in the other section of your split viewport

** I added  a GIF so you can get a better understanding**

That's better... I hope I don't get downvoted now. Cheers.

The quick answer is local view. In one window select the image that's supposed to be visible, plus the objects belonging to it and hit numpad / to toggle local view. It's a bit inflexible when you want to add new objects, you'll have to repeat the process.
A more flexible approach would be checking these options:

If they get you there, this is preferable, but the options are a bit limited.


text:
Material goes wrong when using AO in Base Color
I met a problem when I render my model. So my model looks like this in Solid mode:

But when I added material to this and use Ambient Occlusion in Base Color, it looks like this in render preview:

If I use RGB in Base Color it looks still not very good but doesn't have those shadows:

Render settings are as followed:

I already recalculated the normals but still doesn't work. Does anyone know what might be the problem? Thx:)

could you please share your file? https://pasteall.org/blend/

as @moonboots says, please share your file, because this is probably not anything related to render settings, rather it will be shading issue, duplicated vertice(edge), inverted normal or something what is easily resolved

hey thank you for the answer, I am new here so not really familiar with the forum yet, I will try to upload the file.

https://pasteall.org/blend/f915f758c742465a8a64519c3cfe12af


text:
Can't change render engine inside an enum using blender python
I want a self-updating dropdown list that changes the render engine to either Cycles or eevee.

The code for this works when it is written directly like this.
bpy.context.scene.render.engine = 'CYCLES'

bpy.context.scene.render.engine = 'BLENDER_EEVEE'

But If I try to put it in a dropdown list, it doesn't work. Am I doing something wrong?
The same dropdown list work for other settings like FPS or render formats, why isn't it working here?
import bpy

from bpy.types import (Panel,
                       Menu,
                       PropertyGroup,
                       )

class MyProperties(bpy.types.PropertyGroup):

    my_enum0 : bpy.props.EnumProperty(
        name= "",
        description= "Change the render engine of the scene",
        items= [('OP1', "Cycles", "f"),
                ('OP2', "Eevee", "fg"),
        ],
        update=lambda self, context: bpy.ops.addonname.myop_operator00()
    )

class TestPanel(bpy.types.Panel):
    bl_label = "Quick Render Presets"
    bl_idname = "PT_TestPanel"
    bl_space_type = 'VIEW_3D'
    bl_region_type = 'UI'
    bl_category = 'Example'

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

        rowAA = layout.row()
        rowAA.label(text= "Render Engine:")

        layout.prop(mytool, "my_enum0")

class RenderRender2(bpy.types.Operator):
    bl_label = "Render Engine"
    bl_idname = "addonname.myop_operator00"

    def execute(self, context):
        scene = context.scene
        mytool = scene.my_tool

        if mytool.my_enum == 'OP1':
            bpy.context.scene.render.engine = 'CYCLES'

        if mytool.my_enum == 'OP2':
            bpy.data.scene.render.engine = 'BLENDER_EEVEE'

        return {'FINISHED'}

classes = [MyProperties, RenderRender2, TestPanel]

def register():
    for cls in classes:
        bpy.utils.register_class(cls)

        bpy.types.Scene.my_tool = bpy.props.PointerProperty(type= MyProperties)

def unregister():
    for cls in classes:
        bpy.utils.unregister_class(cls)
        del bpy.types.Scene.my_tool

if __name__ == "__main__":
    register()

shouldn't it be mytool.my_enum0 ? Also why not simply writing layout.prop(context.scene.render, "engine") in the panel draw code ?

In addition, if you replace OP1 and OP2 by CYCLES and BLENDER_EEVEE in the enum, you can replace the two if statements with bpy.context.scene.render.engine = mytool.my_enum and then you won't have to change the code if you add another render engine to the enum.

Thank you, both of you

2 mistakes:
1 -> comment of Gorgious
2 ->
 if mytool.my_enum == 'OP1':
        bpy.context.scene.render.engine = 'CYCLES'

 if mytool.my_enum == 'OP2':
        bpy.data.scene.render.engine = 'BLENDER_EEVEE'
 # ->.      use context here too instead of data. Just context, not bpy.context

this works:
import bpy

from bpy.types import (Panel,
                       Menu,
                       PropertyGroup,
                       )

class MyProperties(bpy.types.PropertyGroup):

    my_enum0 : bpy.props.EnumProperty(
        name= "",
        description= "Change the render engine of the scene",
        items= [('OP1', "Cycles", "f"),
                ('OP2', "Eevee", "fg"),
        ],
        update=lambda self, context: bpy.ops.addonname.myop_operator00()
    )

class TestPanel(bpy.types.Panel):
    bl_label = "Quick Render Presets"
    bl_idname = "PT_TestPanel"
    bl_space_type = 'VIEW_3D'
    bl_region_type = 'UI'
    bl_category = 'Example'

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

        rowAA = layout.row()
        rowAA.label(text= "Render Engine:")

        layout.prop(mytool, "my_enum0")

class RenderRender2(bpy.types.Operator):
    bl_label = "Render Engine"
    bl_idname = "addonname.myop_operator00"

    def execute(self, context):
        scene = context.scene
        mytool = scene.my_tool

        if mytool.my_enum0 == 'OP1':
            context.scene.render.engine = 'CYCLES'
            print("tried cycles")

        if mytool.my_enum0 == 'OP2':
            context.scene.render.engine = 'BLENDER_EEVEE'
            print("tried eevee")
        print("in execute")

        return {'FINISHED'}

classes = [MyProperties, RenderRender2, TestPanel]

def register():
    for cls in classes:
        bpy.utils.register_class(cls)

    bpy.types.Scene.my_tool = bpy.props.PointerProperty(type= MyProperties)

def unregister():
    for cls in classes:
        bpy.utils.unregister_class(cls)
    del bpy.types.Scene.my_tool

if __name__ == "__main__":
    register()

Thank you for the entire code.

Of course, the OP doesn't need the property group, the row label, or the non-OO if statements in the execute function, or even wrapping a class around the update function.

@jugaadanimation : you are welcome

@jugaadanimation be aware that the code was buggy until I fixed it just now.  Never use bpy.context in any function that has context has a function argument.  Use the context argument instead.

Actually, your design was overly complex.  Here's a much simpler version
import bpy

from bpy.types import (Panel, Scene)

def updater(self, context):
    context.scene.render.engine = context.scene.my_enum0

class TestPanel(bpy.types.Panel):
    bl_label = "Quick Render Presets"
    bl_idname = "PT_TestPanel"
    bl_space_type = 'VIEW_3D'
    bl_region_type = 'UI'
    bl_category = 'Example'

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

classes = [TestPanel]

def register():
    for cls in classes:
        bpy.utils.register_class(cls)
    Scene.my_enum0 = bpy.props.EnumProperty(
            name= "",
            description= "Change the render engine of the scene",
            items= [('CYCLES', "Cycles", "f"),
                    ('BLENDER_EEVEE', "Eevee", "fg"),
            ],
            update=updater
        )

def unregister():
    for cls in classes:
        bpy.utils.unregister_class(cls)
    del bpy.types.Scene.my_enum0

if __name__ == "__main__":
    register()

You don't need all of the extra overhead; or additional classes.  The technique is that changing the enum in the panel can invoke an updater function and it's that function where you change render engines.
If you want tests or messaging, just put them in the update function. If you only want the one line version of the updater you can even remove the function and put it back as a lambda.


text:
Location of a packed font to recall in blender python
I have this simple code that changes the font of the "String to Curves" node in Geometry nodes.
But I want to set the font location to a font I have already packed in the blend file. (Let's say the font is called Oswald-Light.ttf)
I don't know where the location is, and I don't know what to put in the brackets of the data_font location.
import bpy

obj = bpy.context.active_object
modifier = obj.modifiers["GeometryNodes"]
node_group = modifier.node_group
node = node_group.nodes['String to Curves']
data_font = bpy.data.fonts.load('C:\\WINDOWS\\Fonts\\Font.ttf')
node.font = data_font

```

if the font is packed then: node.font = bpy.data.fonts["Oswald-Light.ttf"] should do it, no need of a path

Thanks. This works perfectly.

Thanks to alambre.

import bpy

obj = bpy.context.active_object
modifier = obj.modifiers["GeometryNodes"]
node_group = modifier.node_group
node = node_group.nodes['String to Curves']
data_font = bpy.data.fonts["Oswald-Light.ttf"]
node.font = data_font
```


text:
Set Keyframe interpolation 'CONSTANT' while setting a keyframe in blender python
I want to set keyframe interpolation 'CONSTANT' while setting a keyframe.
I have this, https://docs.blender.org/api/current/bpy.types.Keyframe.html
but I don't know where should I add the line in the code?
import bpy

obj = bpy.context.object

# set the keyframe at frame 1
obj.rotation_euler = (0, 0, 0)
obj.keyframe_insert(data_path="rotation_euler",index= 1, frame=1)

# set the keyframe at frame 24
obj.rotation_euler = (0, 6.28, 0)
obj.keyframe_insert(data_path="rotation_euler",index= 1, frame=24)
```

Using keyframe_insert automatically sets the curve handle type to 'BEZIER' as mentioned here.
Assuming you do use you're posted script:
import bpy

obj = bpy.context.object

# set the keyframe at frame 1
obj.rotation_euler = (0, 0, 0)
obj.keyframe_insert(data_path="rotation_euler",index= 1, frame=1)

# set the keyframe at frame 24
obj.rotation_euler = (0, 6.28, 0)
obj.keyframe_insert(data_path="rotation_euler",index= 1, frame=24)

There is no longer a direct reference to the action or key just created so lets find it.
# ensure the action is still available
if obj.animation_data.action:
    # and store it in a convenience variable
    my_action = bpy.data.actions.get(obj.animation_data.action.name)

Now we want to specifically find the fcurve related to the data_path used above
my_fcu = my_action.fcurves.find("rotation_euler", index=1)

And finally we can set the interpolation of the handles
# for all points
for pt in my_fcu.keyframe_points:
    pt.interpolation = 'CONSTANT'

# for a specific frame
frm = 24
pt = [pt for pt in my_fcu.keyframe_points if pt.co[0] == frm][0]
pt.interpolation = 'CONSTANT'

The default interpolation with keyframe_insert is actually always BEZIER, see eg T45189 (which also discusses OP's question).

@scurest TY for correction

Wow the API indeed should be improved here. BTW, I think the "ensure the action is still available" would be way too defensive even if you had an alternative way to obtain the action (too defensive because the action simply is supposed to be there), but also you're avoiding the error just to get it on the next line my_fcu = my_action.fcurves...


text:
How to transform asset browser assets that are linked
I'm relatively new to the use of the asset browser and library overrides.  I'm trying to set up a scene that uses linked assets; I have all the assets in another Blender file, and I have the asset browser all set up.  I want the assets to be linked (rather than appended) when I drag-and-drop them from the browser into the scene, so that any updates that have to be made to the original model will automatically be reflected in the scene.  However, when I have it set to "linked", I can't modify the transforms.  I figure it has to do with library overrides, but I'm struggling to find anything online that makes sense.
Can someone explain how (if it's possible) to edit the transforms for linked assets from the asset browser?  (Preferably I would rather not have to manually add a library override to the asset every time I drag-and-drop it into the scene; I get the impression this might have to do with adding the override to a collection that the assets are automatically placed in, but I'm not sure.)

perhaps check out this answer

AFAIK linking from the asset browser and linking with File > Link doesn't change the behaviour of the linked object, so your question can be broadened to any linked object fwiw


text:
How to get the name of a geometry node tree created using a script?
I wanted to create a geometry node tree using my script and modify this tree. As I understand, you need the name of the tree to edit it.
I tried assigning bpy.ops.node.new_geometry_nodes_modifier() to a variable, but this function just returns {'FINISHED'}. Moreover, I cannot supply a name to the geometry node tree using bpy.ops.node.new_geometry_nodes_modifier() because it does not have a name argument. Is there a way to get the name of this newly created tree?
Kind regards,
Rohit

You can create a modifier without an op: ob.modifiers.new("My Modifier Name", 'NODES'). This returns the new modifier.

Use the low-level function to add modifiers: https://docs.blender.org/api/current/bpy.types.ObjectModifiers.html#bpy.types.ObjectModifiers.new
import bpy

obj = bpy.context.scene.objects['Cube']
geo_mod = obj.modifiers.new(name="GeometryNodes", type='NODES')

print(geo_mod.name, geo_mod)
# GeometryNodes <bpy_struct, NodesModifier("GeometryNodes") at 0x600000518a58>

NodesModifier.node_group returns the node tree: https://docs.blender.org/api/current/bpy.types.NodesModifier.html#bpy.types.NodesModifier.node_group
tree = geo_mod.node_group
nodes = tree.nodes

for n in nodes:
    print(n.name, n)

# Group Output <bpy_struct, NodeGroupOutput("Group Output") at 0x7fcf5090aeb8>
# Group Input <bpy_struct, NodeGroupInput("Group Input") at 0x7fcf5090c008>

Bpy ops seem to never return the thing they've created. The modifier is created attached to the active object, so to find it quickly use
bpy.context.active_object.modifiers[-1].node_group

-1 works because you've just created the modifier so it's the last one in the group.  Replace -1 with 'GeometryNodes' at other times.
If you use 'GeometryNodes' be aware that it is possible for a give object ot have multiple geometry node modifiers, so you have to figure out if you have the right one.
If you don't know whether the active object has a Geometry Nodes modifier, than the name lookup will fail if it doesn't.  It will also fail if the user had changed the name of the modifier.
You can use
next(m for m in C.active_object.modifiers if m.type=='NODES')

to get the first (the highest on the stack) geometry nodes modifier, or an error if there's no geonodes mods on the stack. You can also use
next(m for m in C.active_object.modifiers if m.type=='NODES', None)

to get None instead of an error. Or you can use
[m for m in C.active_object.modifiers if m.type=='NODES']

to get a list of all geonodes modifiers.

Thanks for the update Markus von Broady.


text:
Stripe material with a constant stripe
I would like to create a stripe material where the widths of the individual stripes are constant when scaled.
For example, create a cylinder with a z scale of 2m ... this might have say four stripes (2 blue, 2 yellow). Each stripe would therefore be 50cm.
Resize the cylinder to 6m. There would be 12 stripes where each stripe is still 50cm.
Rotating the cylinder should not change the stripes.
Is this possible?
Thanks.


text:
Duplicating Collections including the object’s view status
I have multiple ‘master’ collections each containing further collections and objects within them. Many of the ‘sub’ collections and objects are hidden from the screen.
When I duplicate a master collection within the outliner , each object/collection is duplicated (good!) BUT the view status of the sub collections/objects are all set to visible (!!!) resulting in a garbled mess in the viewport! This means considerable time trying to hide the various sub-collections/objects to match the original collection.
I must be doing something wrong!!! Is there a way of duplicating an entire collection including the view status of each object?
Thanks.
(Blender 3.5.0)

You're right, it would make more sense if it kept the original settings, maybe it needs to be reported as a mistake


text:
Instance to Collection, Unhiding Objects
So I'm trying to mirror Collections, and the easiest and fastest way I found is just to make an Instance of that collection and -1 the scale. It works fine the only problem is that the objects inside the collection that are hidden in the instance they appear unhidden. Is there a way to avoid this?

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.

Yes it looks like hidding an object in the collection in viewport won't hide the same object in the instance. That said if you hide it for render it won't be rendered.

You need to use the global visibility (monitor icon) instead of the eye icon to hide objects in instanced collections. Or go to Object properties > Visibility > Uncheck "Show in ... Viewports"

If you don't see the Monitor icon in the outliner, please refer to : Where are the outliner toggles in 2.8?


text:
Using the Draw tool with Screw modifier ISSUE
So I'm following Jamas tutorial on using the SCREW modifier with the draw tool, and It happens that at some point it goes bonkers.
so if I'm drawing a line in edit mode close to the spline I already have, It draws just fine.

but once I draw just a bit outside the spline, it creates geometry WAY outside the spline

once I restart Blender this doesn't happen anymore and the draw works just fine.
Does anybody know why this might happen?
thanks in advance.
:)

a link to the tutorial might help. Providing your blend file might help.


text:
Mesh always faces User Perspective when added
Whenever I try adding a new object in my scene, it always starts off facing towards the user perspective. How can I make it so that it's aligned to the grid (like the default cube) rather than my view without rotating the object?
Here is a cube that I just added using Shift-A. Unlike the default cube, it faces where my view port is pointing.

Vs. Default cube orientation

You can adjust it in the Preferences>>Editing>>Objects.

Or instantly at the lower left corner of the 3D View when you add new models. As Gorgious said in the comment section.

That did the trick, was not aware of this setting, thank you!

@kunaynay Alternatively when you create the object, unfold the panel in the lower left of your viewport and you can check/uncheck it there, along with some other options


text:
Displacement applied before stretching
I'm in blender render, I have a material and I rendered a material with clouds. I want these clouds to be stretched horizontally so they make ovaloid globules instead of spherical ones.
The diffuse color and normal both render this properly, giving me stretched clouds. When I use displacement however, it acts as though the material was not horizontally stretched and so gives me spherical globules instead of ovaloid ones. How can I change this applied order?

FYI No one is using blender-render anymore... good luck

I don't use it for commercial projects either, I use it for quicker previews, so it seems like you're just trolling.

Eevee (its replacement as of 2.8) is even faster in most cases.

That has not been the case in my experience.


text:
Individual origins are not individual
I'm in the UV image editor and I selected "individual origins" as the pivot. On my UV unwrap I selected very clearly, 100% bet my life on it, separate edges of the unwrap. Now, in regular edit mode, there is no problem with this, transform scale and rotate would all work by applying these transforms to those edges separately.
For seemingly no reason in the UV editor though, it keeps assuming the average as the pivot, even though it's set to individual origins. So when I scale these individual edges, instead of scaling them individually, it makes them shrink towards their center of their distance.
How can someone get the individual origins to work as it should?

Is there any way you can post some images that display the problem? I can't duplicate it.
Scale with Median selected:

And then with Individual Origins selected:

Rotate with Median:

And Individual Origins:

Looks like you have the right idea.


text:
How to animate an expanding network using Animation Nodes 2.0?
I need to animate an abstract visualisation of an expanding network in Blender 2.8, consisting lines that keep on growing until they meet at a junction point (represented by a sphere), where they split up again.
As a little example I created a short animation in which, for lack of a more elegant solution, I animated all elements manually:

Is there a better, more time-saving solution how to animate such a scene using the Animation Nodes addon maybe?
Having very little experience in using this addon, I'd be very grateful for any tips!
Thank you very much in advance!
Cheers
Matthias

Let's have fun with Animation Nodes then !
Teaser :

Teaser 2 :

Get the blend file here :

First, let's create a loop to instantiate the spheres and make them grow to their normal scale depending on a certain falloff :
If you want to find a node by name, type CTRL + A and then the name of the node you are looking for.
In the topbar, go to Add > Subprogram > Loop
Add a new iterator of type "Object List" and a new parameter of type "Float" and then put the nodes like the screen after.
Don't forget to click "New Generator output" and choose "Float" to generate a float list which will help us instantiate the growing bars between nodes.

Next up, let's grow the bars. Create a new loop. Add an iterator of type "Edge Indices List", a new parameter of type "Vector List" and a new parameter of type "Float List".
We will be using the evaluation time to make the bars grow between the first node, which is supposed to have already appeared, and the second node, which will appear when its correspond float value reaches 0.
Add a new generator output of type "Spline List" in order to output them from this loop. We only want to add to this spline list the splines where the bar can indeed be visible. Thankfully yhis node has a hidden condition input.
While selecting the "Spline List" generator output node, press N on your keyboard to make the right hand panel appear. go to the item subpanel and check the screen icon on the right of the "Condition input". Illustration :

Now let's finish this with the main loop :
Add a "Viewport input" node which will let you modify values in your node tree directly from the viewport.
Add a sphere object in object mode and choose it inside your instancer node. You can create invoke nodes of your subprograms by clicking on the first node and pressing W then choosing "Create invoke node"
Don't forget to set a new material for your spline or else the bars will stay white.

That is just what I was looking for. Thank you very much for your quick answer and for the very detailed explanation of your setup! :)

@MatthiasS My pleasure, actually I did not explain everything because I did not know how well you would fare with this. If you feel stuck I advise following the user guide https://animation-nodes-manual.readthedocs.io/en/latest/user_guide/index.html otherwise don't hesitate to ask for clarification here, I tried to make it straightforward but AN can be daunting at first

@Gorgious, do you have a channel in Youtube? Your works with Animmation Nodes are brilliant.

@RitaGeraghtystandsbyMonica haha that's flattering but I feel like I only scratched the surface every time I discover something new to play with ! I considered it but I don't have the time nor software / dedication to produce good video quality and content at the moment. However there are very good tutors already there like Chris Prenninger or Zach Hixson for example. Don't hesitate to post questions on BSE though if you have particular ideas, I will most certainly take a look at it and try to crack it.


text:
Lagging sculpting with over 1 milion polygons on a High-End PC
As in the title I have the problem with non responsive scultping while I’m working on my T-Rex.
The brush is so delayed that I can’t sculpt, sometimes I have to wait like 5 seconds to see the effect, I tried to serach on the web how to resolve the problem but I couldn’t find anything, I will add that I’m not using any modifier and my PC specs are quite good:

CPU Ryzen 3900 12 cores
GPU RTX 2080 Super
RAM 32 Gb 3600 Mhz

(I have the lattest drivers)
Please help me I’m quite newbie, I was searching how to resolve it since yesterday and still nothing :(

Can you upload the .blend so that I can try to reproduce on my end?

@Cultmethod sure, here you go! :) Thanks BTW! https://drive.google.com/file/d/1_gt0Vnes3OWtwQM4KheMtd07xs4TYY49/view?usp=sharing

Higher cores don't help if there are operations, that can only run on a single core. There may not be a solution to your problem other than higher single core speed (and hyperthreading etc., but lets leave that out)

@WhatAMesh I doubt that my single core is such bad to dont rect 1,5 milion poligons, when I see other people sculpting on higher values 50 times higher (like 50 milions), that would mean that their clock speed is 250 Ghz?

There are different operations, brush sizes and settings, such as dyntopo that increase or decrease the needed amount of computation. If you have Photoshop for example, open a file, make some art and then drag the smudge tool with large scale accross the image. Won't be smooth, even though it should be a very simple operation. But if you are that defensive to a simple comment maybe you shouldn't ask in the first place

I opened your file, and sculpting was definitely a little bit laggy, but nowhere near what you're describing (Having to wait 5 seconds before seeing the result of a sculpting change). However I managed to fix the problem by doing the following:

Hide the "Teeth", "Bones", and "Eyes" collections.
Important: Deactivate the Armature modifier from displaying in the viewport.

After I did this performance increased drastically for me.
Hope this helps!

You are a genius man! I love you! :D The problem is solved although it is normal that when I'm trying to use dyntopo with small resolution there are still lags? But without dyntopo works very well.

Definitely not a genius, took me awhile to figure out what the hell was going on :) Glad I could help!