Creating or Altering a Modifier, specifically Boolean So, this whole idea of mine started when I got sick of using knife tool, and I can't get a handle on knife project.
I started getting the results I'm looking for by using the Boolean modifier using a plane with a thin solidify to cut into shapes but leave the remaining mesh that wasn't cut, but what bugs me a lot is how it "fills in" the cut area with some crazy faces.
What I would like is modifier similar to Boolean, that uses another object to "slice" into a mesh, but not create the extra faces.

So, I'm not relatively skilled at scripting in blender, but I do have some C experience.
What I was hoping someone could help me with is understanding from a programming standpoint how the Boolean modifier works, because I would like to make a custom one.

I've reviewed some online videos that show people making custom menus, but I haven't seen a custom modifier.

Well, the boolean modifier is not what you expect, maybe.

LITTLE INTRODUCTION TO BOOLEAN

What you do is choosing the object to use the modifier on, you choose the object to use to do the modifications, and then you select "intersect", "union" or "difference". At a programming level, the three options do the following:

-Intersect checks if each point of object A is "inside" object B, if not erases it. So you'll end up with just a portion of object A.
-Difference basically does the opposite: checks each point (to make it easy, since it's really messier than that, just imagine three nested "for" loops, one for each dimension, scanning each single point which makes the object), if it's inside the other object it deletes it.
-Union, instead, adds to the object A every point of object B which isn't already contained in it. So that you will STILL have B, but A will become equivalent to A union B.

LET'S GET DOWN TO BUSINESS

So, what were you trying to do, using difference between a plane and a cylinder in order to get new vertexes? Sadly it doesn't work like that, since planes are "directional, they have an orientation, and it's such as if they included the whole space under them, so, by doing a difference (or an intersect) between a plane and another mesh you will just have one side of the mesh to disappear.

If I can give you some advice, learn to use properly the "bisect" function, it basically does, in my opinion, what we want the knife to do in 90% of cases.

Or; if you want to use a mesh to "cut through an object", boolean is the right choice (just use "difference"), but avoid using it with 2D objects like planes.


Animate restriction of viewport visibility/rendering of a group of objects I want to animate various parent objects (and their children objects) appearing and disappearing in a rendered animation.

This is currently possible with single objects by keyframing the Restrict Rendering and Restrict Viewport Visibility options in the outliner. (They're the little camera and eyeball symbols next to each object.)

I want to do something similar, but with multiple objects, preferably under a single parent object. The main goal is to be able to do this without having to set the keyframes for each object in the group manually.

This has been brought up before in a previous Blender StackExchange question, but it has no confirmed answer, and the only information it does have is some extremely confusing writing about some feature called drivers.

Another option I tried to think of would be to put each group of objects on its own layer and animate the layers' render restriction, but according to this other Blender StackExchange question, keyframing layers isn't recommended.

The latter question even mentioned my problem, saying "the animation of the visibility of groups of thousands of objects (with various materials) is not easily or practically possible."

I think neither of these questions got enough exposure, and there might be someone with a simpler solution to this problem. (Or maybe even a clearer explanation of the whole "drivers" method.) This is why I am bringing this up again, despite it already being asked on here.

How can I easily animate groups of objects appearing and disappearing for a rendered animation?

Drivers are actually not much different to using keyframes. As you know, keyframes allow you to specify the value of some property at specific frames of the animation and blender fills in the values on the inbetween frames by a method of interpolation. Drivers effectively do the same job but rather than specifying specific fixed points along the animation (as you do with keyframes) you, instead, define the rules for how that property varies. This allows you to do much more than you could do with keyframes such as make one property directly dependent on another. For example, you could vary the scale of one object based on how close another object is to it - simply by defining the rule (eg, scale = distance / 10). You can also add modifiers to the driver output - for example, you could use the frame number as the basis of a driver and apply a sine wave to it to vary some property over time - very useful for getting something to pulsate, which would be extremely cumbersome via keyframes alone.

To create your first driver simply start a new blend file (with the default cube), click into the X location property field of the cube and enter #frame (the # is a shortcut for creating a driver and 'frame' is simply a reference to the current frame number). If you now step through the frames you should see the cube shoot off along the x-axis. (If you don't then you probably got a warning at the top of the screen that "auto-run" is disabled - this is a safeguard to prevent scripts being run when you don't want them to - go into File/User Preferences and select the File tab and enable the Auto Run Python Scripts checkbox to enable scripts)

Once you have created the driver you can configure it via the Graph Editor window by changing the 'Content' in the toolbar (at the bottom of the graph editor window) from 'F-curves' to 'Drivers'. Press N to see the properties panel and details of the driver are shown. The driver has a 'value' shown in the Drivers panel and you'll see that vary as you change the frame. An f-curve is applied to that value to allow you to more easily vary how it affects the actual property. If you scroll down to the Modifiers panel you can add a Built-in Function - try a Sine wave to get your cube oscillating.

Of course, this doesn't directly address your original problem. However, once you've got a grasp of drivers you can hopefully apply that knowledge to manipulate the any other properties (such as visibility) as you require.

EDIT : I believe I've managed to achieve what you're after as follows :

Start a new blend file.
Select the default cube.
Right-click on the Restrict View icon in the outliner and select 'Add Driver'
Add a new object to the scene - this will be the 'controller' object and will be used to hold the properties you'll manipulate later.
On its Object settings, add a Custom Property.
Edit the property and set its value to 'True' and its name to 'CubeVisibility'.
Select the cube.
Open a Graph Editor window.
Change the mode to 'Drivers'
Select the driver on the cube.
Open the Properties panel by pressing 'N'.
Scroll down to Variables - there should already be one named 'var'. Change it to 'Single Property' (leave the name as 'var').
Set the object field to the 'controller' object you created earlier (you can use the dropper to select it from the 3D view)
Set the Path to '["CubeVisibility"] (the custom property you created earlier)
Scroll up to the Drivers section and ensure it's set to 'Scripted Expression' and Expr set to 'var' (as an alternative, use Average Value in place ofScripted Expression and then you don't need the Autorun Python Scripts property enable in the user preferences)

That should be it. Now go back to the 3D scene and select the 'controller' object and scroll down to its Custom Properties. Changing CubeVisibility between 1 and 0 (True and False) should cause the Cube to show and hide.

To apply the same to multiple objects, right-click the Restrict View icon of the cube in the outliner and select 'Copy Driver'. Right-click on another object's Restrict View icon and select Paste Driver and the driver will be replicated on the other object. If it doesn't work immediately you might need to select the driver in the Graph Editor and click 'Update Dependencies' for it to pick up the changes - although saving the blend file and re-opening it should also update all drivers automatically.

Hope this helps.


Modelling Technique Question I'm following a time lapse clip which has to do modelling the PLayStation 5.
I cant seem to understand what the modeller is doing at 0:20 seconds,(I lowered the speed at 0.25) Somehow he is avoid a tri face. But If I continue modelling, as seen from the different angles I've provided I'll get a tri face in the corner of my model. Can someone please tell me what he's doing with the mesh to get a quad when he extrudes the mesh.

Thank you.

https://www.youtube.com/watch?v=WzGkQAfxakE&list=LLZ2XZXqOZRx6idQLEh4-RIw&index=2&t=13s

In the video he had some hesitations but at some step the result is simply to merge two vertices.

In vertex selection mode Ctrl1,

Select the vertex on the left, then Shift select the other one.

Then merge them using AltM then 'At last'.

The model is more or less in this situation:


Slow preview in the layout/modelling tab So I am very new to blender and I am currently doing the donut tutorial..I am having an issue. When I try to preview the donut in the shading tab it previews it very quickly but when I do the same in the layout tab it loads very slowly. The viewport is set to 32. I have a 1050ti and the render engine is set to Cycles. Any help will be appreciated

The reason the scene is rendering faster in the Shading Tab is because by default, the 3D  viewport in that tab is less than half the size of the 3D viewport in the Layout tab.
Very simply put - The scene renders faster in the shading tab (in your example) because the viewport is smaller, and therefore there are less pixels to render overall.


.blend Files won't open but it asks me how i want to ^ This is my problem. ^

At first, it may seem innocent, like I can just press "OK" in order to open blender, but that's not the case. Instead, when I press the "OK" button, the prompt pops up again. I'm trying to use Sims 4 Studio to make poses, but this prevents me from doing so. I appreciate any help!

Thank you,

Fellby

You could open this file by going into Blender and clicking "file" And "open". You can then navigate to the file where you can click it and then "open". This should open the file.
Hope this helps!


Get current item value from a dropdown menu? I have a dropdown box. And i want to do this when this item is selected, and that when another item is selected. So i need a way to retreive what is currently selected in the dropdown menu.

The dropdown menu is a EnumProperty. Like the dropdown box to change the rotation mode.

bpy.types.Scene.enumprop = bpy.props.EnumProperty(items = item_cb)
...

layout.prop(scene, 'enumprop', text='Files')

How do i retreive the value of the current selection from a dropdown menu by code?

The solution was to add a update to the prop. Then i can retreive changes from the dropdown box.

def myindex(self, context):
    print('changed to,', context.scene.MyEnum)
...

bpy.types.Scene.MyEnum = bpy.props.EnumProperty(items = item_cb, update = myindex)

Another way goes directly across int(context.scene.MyEnum). Then i don't need the update.


How Can I Make Clothes for a .VRM Model in Blender? I want to make some outfits and costumes for my VRoid Studio Model in Blender, but there aren't that many good tutorials on YouTube on how to make Anime/VTuber style clothes and I don't want to use the boring default clothes templates in VRoid Studio.
I don't know much about Blender, but! I am willing to look up some general tutorials and learn from them to get an idea of what to do. I prefer to learn from video tutorials, than text-based ones.
But since I don't have a lot of options in the video department, I don't know what else to do but ask for help here. I'm more of a 2D Artist than a 3D one, so any kind of help is much appreciated.
Thank You!

if you're looking for anime looking clothes, your best bet is to look up "low poly" clothing tutorials. A lot of the look of vtuber type clothes is in the textures though.
The first thing you should familiarize yourself with is learning how to shape the clothes in general. Here's a very basic tutorial on creating clothing.
https://www.youtube.com/watch?v=szEeu6_b4fg
After that, you need to learn about UV mapping. You can practice texture creation with the pre-made vroid clothes and whatever drawing program of your choosing, but when creating clothes entirely yourself you'll also need to be able to properly UV map them with the textures. Here's a tutorial I found very useful as I'm kind of new to uv mapping myself.
https://www.youtube.com/watch?v=bMRXGscbF5I
If you're having trouble with inspiration, or the mapping and textures, you can always start out with editing MMD clothing that allows editing, as they are similar to the style you're looking for. I find that working "backwards" with this stuff [by breaking things down and seeing how they work, and editing pre-made objects] often helps beginners learn easier, myself included.


Texture painting, zoom pan causes texture to get an offset Hi I have a problem when texture painting on a huge plane.

Whenever I zoom or pan my view (even just pan without zooming) and paint on a location I painted before, the texture gets an offset and of course does not fit anymore to the rest I painted.

You can use stencil for the brush mapping. This gives you a semi-transparent overlay of the texture that you can position before painting.

You can use  RMB to move the texture ⎈ Ctrl  RMB to rotate it and ⇧ Shift  RMB to scale it


Is there a way to save selection by faces I'm trying to find a way to save selection faces, tried Vertex Group, the issue with Vertex Group is that it adds the faces that are marked by 4 vertices that are added to the Vertex Group, there are some cases were this doesn't apply, the image explains what I mean. So is there a way to save my selected faces, so I don't have to go through the whole process of reselecting them each time I need to do so?
If you check the image, I didn't assign the hatched faces to the Vertex Group, still when I select the Vertex Group, they get selected, I understand that they got selected because the four boundary vertices are assigned to the Vertex Group, I need to save only face selection, not vertex selection.

This is a limitation of the current Vertex Groups system that has been an occasional nuisance.

That's is why they are called Vertex Groups, not "Face Groups"; selections of vertex don't unequivocally define groups of faces, since a vertex can belong to an arbitrary number of them.

Would be nice to hear about more options and solutions for this from other users around here. The way I generally solve this is by using material slots instead, if you don't mind the additional pollution in the materials list.

Go to Properties Window > Materials Tabs > Add New Material Slot button, and then with the desired faces selected press the Assign button.

Since they work on a per-face basis instead of single vertex, they can correctly define face groups. You can still assign materials independently, but you can't have a face belong to more than one slot unfortunately, so you may end up having several slots with the same materiel.

Different intersections of selections overlapping materials may require an exponentially growing number of slots.


Subsurf creating stretched faces I'm making an armchair and I already did the body. When I UV unwrapped it and textured it, this was the result:

Here you can see the arm of the armchair. The top of the arm and the visible side have been UV unwrapped separately (this was intentional), the selected edges mark where the UV-unwrapped mesh was separated. The problem is, which you can see in the picture, that this separation has been stretched far too much towards the side. This is caused by the subsurf, since there's no problem with the model when subsurf is turned off, as seen in the picture:

One solution which will possibly reduce this effect is making more faces on the side close to the separation, like this (shown in red):

Even this will only be reduce the stretching instead of completely solve it. I haven't tried this yet because of the time I would have to spend re-moddeling, re-unwrapping and re-texturing, which you probably know consumes a lot of time.
If you'd like, you can download the model here, I would also appreciate other tips on how I can make the armchair even better.

So can the stretching be fixed in some other way, rather than re-moddeling?

Thanks for reading!

While you have Subsurf Modifier on your model, hit U button and select Unwrap from the menu, then hit F6 button to bring Unwrap menu or in the Unwrap operator panel select Use Subsurf Modifier


Objects disappear in eevee render blender 2.8 I just downloaded Blender 2.8 beta and when I try to render any object in Eevee engine, the object disappears and only the outline is shown.

Here is my model in the layout mode -

and when I click on render and choose Eevee engine, this is how it appears

Although in cycles render, it looks perfect

Could you please help. I know it must be a setup issue but there is no help available online either
Uploaded the model here -

Totally work fine with me.

Try to load that file in a clean UI(don't load UI) and another build of Blender 2.80.

Also the data in %APPDATA%/Blender Foundation/Blender/2.80(Windows) should be cleared for new preference. (or load factory preference)


How do I get the Info window's log text with Python? I'm creating a Blender addon, however, I do not know how to access the 'INFO' (The window you drag from the top) windows log text.

If I could access that, I could create logs and such.
I've tried lots of things, however, I couldn't crack it. Is there any way to get the text of the 'INFO' window?

If you need more information, just ask.

Reports to text block operator bpy.ops.ui.reports_to_textblock() .

The operator bpy.ops.ui.reports_to_textblock()  lists reports from the info area

into a text block named "Recent Reports"([.nnn] if run more than once.)

Test code. Removes existing recent reports before running operator.

#remove other Recent Reports
reports = [bpy.data.texts.remove(t, do_unlink=True)
           for t in bpy.data.texts
           if t.name.startswith("Recent Reports")]
# make a report
bpy.ops.ui.reports_to_textblock()
# print the report
for line in bpy.data.texts["Recent Reports"].lines:
    # if line.body.startswith("Operator:"): #it's an operator
    print(line.body)


What is the easiest method for making an image plane half-transparent? I'm just setting up an image and I have to use units, so I want to see the grid when looking from top. Currently the image blocks the grid. Just want to make the image a little transparent. Must I use shader properties etc?? I'm new to blender sorry

If you add material, it's a principled shader. Just turn down the alpha

And also 'Alpha blend' from the settings of that material:

And you may need to be in Material Preview or Display Render mode:


OSL toon shader with a glass effect? Is it possible to make an OSL toon shader in witch something like IOR/glass effect can be added. For example, if there is an animation where something is put inside a glass, the glass to be noticeable as a glass?

All of the cycles material nodes available in blender have OSL script versions that are used when OSL is enabled. These scripts can be a good place to begin when you want to start your own OSL script. You can view them online at developer.blender.org or download a copy of blender's source code to view locally.

For your example let's start with the toon shader. The main part is the call to diffuse_toon(). For IOR the glass shader by default calls microfacet_beckmann_refraction() with some other calculations. Merging these two together you could start with an OSL script as -

#include "stdosl.h"
#include "node_fresnel.h"

shader toon_with_IOR(
    color ToonColor = color(0.0,0.0,0.8),
    float Size = 0.5,
    float Smooth = 0.0,
    color GlassColor = 0.8,
    float IOR = 1.52,
    float IOR_Roughness = 0.0,
    normal Normal = N,
    output closure color BSDF = 0)
{
    float f = max(IOR, 1e-5);
    float eta = backfacing() ? 1.0 / f : f;
    float cosi = dot(I, Normal);
    float Fr = fresnel_dielectric_cos(cosi, eta);

    closure color ToonPart = ToonColor * diffuse_toon(Normal, Size, Smooth);
    closure color GlassPart = GlassColor * (Fr * microfacet_beckmann(Normal, IOR_Roughness) +
            (1.0 - Fr) * microfacet_beckmann_refraction(Normal, IOR_Roughness, eta));

    BSDF = ToonPart + GlassPart;
}

Instead of adding the two results you could mix them together, you would then add another float input called Fac and change the last line to BSDF = (1.0 - Fac) * ToonPart + Fac * GlassPart; - that's from the mix closure node.

At this stage you can easily test the result by comparing it to the nodes we got the code from. Then you can go further and customise the result to get the result you want.


Why are my renders being rendered by my CPU and not my GPU? In this screencap you can see I have GPU Compute selected but my rendering is being done by my CPU.  Does the fact that GPU Compute is grayed out mean GPU acceleration isn't available on my card (GeForce GTX1080, supposedly supported by Blender), or are there other configuration issues?  Thanks for any tips.

You are enabling Open Shading Language.
Currently it's only support by CPU instruction.
Disable it first.

Please check your preference setting,

Check only GTX 1080 for CUDA device, save the preference and you might need to restart your Blender (most of the time don't need).


Dynamic linking entire .blend file Using dynamic linking, how can all the data from one .blend file be linked into another? The usual Ctrl Alt O method will lead me to a directory of components within a selected .blend file. For example, I can import a mesh or group, but neither would link with materials applied.

Sorry, we can't go on discussing this in comments...

As said if you need to append/link "all" of a .blend file, it's better to append/link an entire scene: here is an example for linking.

As you see, I linked a scene from another file, then from the linked scene in my new file, I made links for all objects in my "local" scene.

To be able to transform one of them (in object mode), add modifiers, etc, I had to make a proxy.

Another example shows how linking a single mesh (not even an object) also links its material:

Appending/linking just a mesh, you can't see it, until is assigned to an object, but it's there (technically is called "orphan data"), and its material also (also linked).


How can I erase part of an image to show another image under it? I do stop motion with Lego and when I want to make something fly, I make a video with the character supported by bricks and/or clay, then I remove all the pieces from the set and take a picture; then, using GIMP, I import the blank image of the set and paste a frame with the character supported by bricks on top of that image and erase the bricks which shows through to the blank set image creating the impression of flying. I have been trying, for a few weeks, to do this in Blender to speed up the process and have not been able to find a way. How could I this in Blender?

There are two and a half options.

1) If your support bricks are in the EXACT same location in every single frame, you can create a mask in the compositor, and use the VSE to render out the result. The mask could be used to composite in something else, or just make the masked area transparent. It depends on what you need.

2) If your bricks are NOT in the same place, but are a different color from every other thing in you scene, you can use a chroma key to create a mask of everything that's a particular color.

3) This is the half-option. If your bricks are NOT in the same location, and they're NOT the right color for a chroma key... you might be out of luck. However, if you're SUPER lucky and the tracking is good, and you're SUPER good at video editing in Blender, you could make a mask that tracks the edges of the brick, and use that mask to make the bricks transparent, or white, or whatever you need.

Any one of these would make a HUGE answer. Detailing all three of them is far beyond the scope of this answer. BUT there are good resources out there.

Some good searches are

blender alpha mask video
blender chroma key
blender camera tracking mask

Searches are often difficult when you don't know what TERMS to use. Other times, Google is just overly specific. These searches seem to give good results.

I hope that helps!


What's the fastest way to turn a triangular face into three quads? What's the fastest way to turn a triangular face into three quads?

Subdivide triangle. Select face of middle triangle. Repeat. Select inner vertices and use AltM to merge at centre.

My 5 cents. What's yours?

p.s. no need to go into vertex mode. Face select and AltM is enough.


Why is there no subtracting effect for sculpting brush? I would like a small help with an issue that occurs while I try to enter Sculpt mode.
I don't use Dyntopo (don't want to add more faces to my mesh that I have nor to break and add new. I am working with what I have and just wish to "reorganise" them a little bit).
Sadly, I can only add to my mesh, but I can't use subtracting brush effect. The Ctrl doesn't work (opposite to what I am doing) and I can't even find the add/subtract option in my tool panel. What am I missing here? Could someone advice me what to do so that I don't use always Ctrl+Z and do it over until I reach my desired form?

I am new to sculpting, I have watched some tutorials but I just can't find the add/subtract nowhere in "normal"(?) sculpting mode (again, not in dyntopo!).

Thank you in advance.

EDIT: found my problem, it looks like that the F smooth doesn't have an add/subtract option. I just want to smooth a little bit out and then work around that. Sorry for the waste of space.

Found my problem, it looks like that the "F smooth" doesn't have an add/subtract option. I just want to smooth a little bit out and then work around that. Sorry for the waste of space. Perhaps the option "add/subtract" might be welcome for this option also.


How to flatten a face to avoid distortion (make an ngon planar) I created a kind of procedural modeled ground (rocks desert like), with some decimate modifiers to have a really crazy topology.

The result is nice, except for some ngons faces that contains some weird normals, due to the elevation difference of several vertices:

How to avoid this? My first guess is to "flatten the face, but I can't figure out the way to do this operation.

I must specify that the face is not perpendicular to the Z axis, so a zero-Z-scaling (S Z 0) won't work here.

You can scale along the normal.

Set the Transform orientation to Normal in 3D view > Header:

Then press SZZ0.


Rendering animation problem my animation is not rendering. it just goes to a black screen like this:

It looks to me like you may have a bad path in the Output directory. From your screenshot, it looks like 'Science'. Replace that with an actual path to an existing directory for which you have read/write permissions.

If you click the little folder icon at the far right of that field, you can browse to your desired render directory.

Ensure that the path you enter in that field ends with a trailing slash (or backslash if on Windows)


Is there a way I can add hair manually? Is there a way I can add hair to my mesh manually plotting it one by one?  By using the particle system, it adds hair to the entire mesh and lets you adjust but that's not really what I'm looking for.
I just want one piece of hair I can have control over like I would a mesh.  Here's my failed attempts at making hair a mesh.

When you add a particle system to an object and change its type to "Hair" one more mode appears in the VIEW 3D modes (like Object mode, Sculpt mode, Edit mode, etc) - it is called Particle Edit mode. Select it and you will find many options allowing you to manually edit hair, including deleting, adding and editing them one by one.


how can I invert the weight paint of dynamic paint? I have a surface with all vertex weith set to 1, when the object set to brush in dynamic paint came over, the vertex must be setted to weight 0.
Any solution?

In Weight Tools panel in the left, there's a option "Invert", it solves your problem?


Object rotates when Copy Location Constraint enabled Blend file

I have a character that picks up an object using the Child Of Constraint, turns and then releases the object at an Empty using the Copy Location Constraint. When the Copy Location is enabled the object rotates. I'm trying to keep the object at the same orientation as when the character releases the object. Thank you for any help on this.

So let me make sure I understand what's happening: through frame 100 (ish, can't see really well) you're using a child-of constraint, then at frame 101 you set the influence to 0 of the child-of, and set the influence of the copy location constraint to 1.0?
It's not the copy location constraint that is rotating the object.  It's the fact that the object is no longer under the influence of the child-of constraint.  At frame 100, that child of constraint is creating rotation on the object, inherited from the target of the child of.  At frame 101, that constraint becomes inactive, and it loses that rotation all at once.
How to fix? If you haven't already, start by keyframing rotation for the object on frame 100.  Then, go to frame 101.  Set the influence of the child-of constraint to 1.0.  In the 3D window, apply visual transform (from ctrl-a menu for me) and keyframe rotation.  The object will jump momentarily; don't worry about it.  Then set the influence of the child-of constraint back to 0.0.  The object will have the same rotation it would have as if it were a child-of, but without needing the child-of to get it.


soft light reflections I'm trying to get this soft light reflections like in this reference photo on my 3D model, and I don't know how. How can I achieve this. By this I mean, for example look at bowling ball it's has this like reflections of lights in a very soft mannerand also the reflection of a pin . It's soft but very clear and it's still looks like a bowling ball. Pics of node setup would be very much appreciated and any other pointers on making my model look exactly or close to my reference photo. I only have my models already arranged. And I played around with some nodes not getting what I want.

Light Setup and Shaders
In order to achieve a similar look, the most crucial part is setting up the lights (as always). Add 3 large Area Lights along with a soft rounded backdrop (typically used for classic studio photography) to the scene in order to get similar reflections as well as soft shadows:

The larger the area lights, the softer the resulting shadow on the ground
To replicate the shader(s), all you have to do is figuring out a proper rougness value and set the reflection (specular) to 1. Tipp: The roughness value for plastic is about 0.2 - 0.3 according to the manual:

Roughness set to 0.01 (left) vs. Roughness set to 0.3 (right)
Fake Motion Blur
You can fake the Motion Blur on top of the pins, by splitting up the scene into View Layers (backdrop, pins and bowling ball in this case) which allows to add the blur only to the pins in your favorite raster graphics editor of choice or even in Blender's Compositor:

Overview of potential view layers - All objects are set to 'Indirect only' for the 'backdrop layer' per collection and the background is set to 'transparent' for both object layers
If the later is an option, I'd suggest use a Directional Blur node on the Pin Layer also and also blur the result slightly, see: How to manually achieve a motion blur effect on a object in the compositor?

Real Motion Blur
In order to get realistic Motion Blur you would have to move/animate the pins in the scene and enable Motion Blur under Render Properties > Motion Blur and play with the shutter setting, which gets you a more realistic and especially photographic result:

Object animated in Z-Normal direction, 2 location keyframes added, Rendering of the second frame.
Further reading:

Achieving Motion Blur on a still image
How to Create a Vinyl Plastic Toy Shader?
How do I create a reflective white material?
How To Create 'Hard Plastic' Material?


Blender 2.8 How do I find out which version and build I am using? How do I find out which version and build I am using? Normally this is in "About" under the Help, but not in Blender.

Either go to the Blender menu on the top left and open the Splash Screen entry,

or go to Help > Save System Info, browse your file system and save the file. Upon opening it with any text editor it will reveal your complete system info, including build version.


Textures changing in render but not in 3D View I've just textured a simple character that I've made, but then I saw that I could make the textures look better. So, I loaded the new image file. The strange thing is, if I set the texture on the material and then render, I see it rendered with the new one, but in 3D view I see it in the old way. And, if I shift+X button remove the old image, save, reload then charge the new one, and set the material, the rendering is always correct (as you can see on the right in the pic below) but in 3D view it's all white (on the left)! How can I fix this?

The textured view is a shortcut to see the texture mapping of the image in the UV editor window. I suppose your texture is applied to the material of your model: select the model, Tab into edit mode, select all vertices, open an UV editor window, close the image of the window (if present), load your texture.
In this way the texture is "attached" to the actual UV map and will be displayed in the 3D view.


Normal map baking gradients instead of "flatness" The normal map I'm baking shows gradients for "flat" edges, which seems wrong, and when I import to Substance Painter, it confirms they're wrong (3rd screenshot).

I have low and high poly models.
I have smooth shading on both models.
I have a cage model that is slightly larger than the low poly model.

The really weird part is, the render looks right in the viewport for some strange reason (the low poly model looks like the high poly model, as if the normal map is working, even though that seems impossible looking at the baked map).  When I export the .fbx and normal map and import to Substance Painter, the normals look really wrong.

EDIT: Baking parameters

https://blend-exchange.giantcowfilms.com/b/1404/

You need to use edge splits on sharp corners.

Set the whole object to smooth shading, select the edges to be sharp, press ctrl + E and select Mark Sharp. Then add the Edge Split modifier. You might skip marking edges sharp manually and rely on the angle based edge splitting.


How should I handle a large number of objects? I am working on updating an importer for Structure Synth and I am realizing that it might actually not be practical. In structure synth, you can create thousands and thousands of objects, each of which will be exported. Consequently, you would need to make a material for each one as the color variations can be infinite as well, in other words a slightly variation of color for each one. Now, the exporter does this well, however it seems to me the scene becomes unwieldy very fast. Managing 1000 objects and their corresponding materials is basically impossible.

Right now all I can get out of SS is a translation matrix and RGB values for each object, sphere or cube which I make an ico sphere or cube out of in Blender and then assign a material with RGB value.

Is there anyway to instance the objects and materials but retain the all the different colors without having to have all of those objects and materials?

Thanks in advance.

Blender supports Object Color to override the Material RGB Diffuse.

Object properties, set a color there (also possible via Python)
Link all Objects/Meshes with a single Material, with option Object Color set.


Lighting requires extreme values (Blender 2.8) I recently started learning Blender and been following one of Blenderguru's tutorials on lighting (found here) but for some reason my lights, using the exact same scene, requires extreme values to give off any noticeable light. His light is around 50w but for me I need around 500w to achieve a similar effect. I tried applying the scale of everything in the scene but it didn't make a difference. I also checked to see the units were set up correctly (metric/meter) which they were as far as I can tell.

It feels like the range of the light is very short because if I move the light really close it does get much brighter. Maybe there's some falloff setting I need to adjust? .. Happy for any advice on what might be wrong!

And this is my settings:

The file I'm using is shared by Blenderguru with a link in the description of the video. Here's the file I used:

https://www.dropbox.com/s/lqspxls3yte73f8/Mafia4%20%281%29.blend?dl=0

Also here's how my image looks with False Color activated:

Compared to BlenderGuru's image:

Could something like this be impacted by hardware or software related outside of blender? Like a scene should render the exact same end result on two different computers given all settings are equal right?!

There is nothing extreme about the values. You should not worry about them. Those are only numbers. It doesn't matter if it's 1 or 1000000. The proportions matter more - if you have sunlight in the scene it should not be dimmer than light from a light bulb and so on.

If it is more convenient for you to work with some specific units you can adjust the exposure to match them in the Color Management settings:

or under Film settings:


Is there an easy way in python to find the bpy.data.images that are used in a node? I know a couple of ways to get images in the node_tree, the simplest is:
image_list=[]
for n in bpy.data.materials['My Mat'].node_tree.nodes:
    if n.type == 'TEX_IMAGE':
        if n.image:
            if n.image not in image_list:
                image_list.append(n.image)

Clearly, it is the fastest way if group type nodes are not used. Alternatively you can build a function that iterates over groups, subgroups etc. It's not a problem. technically I can get to all the images in any sub-group
So basically I can currently get to all the data images. but I was wondering, is there a python api that allows you to see directly which images bpy.data.images are related to bpy.data.materials['My Mat'] ?
Note:
The main purpose is, to keep track in real time in the panel, of how many images there are in that node tree.
So that method (which I proposed in the example) is wasteful of resources if the materials are very complex. It would run too many times when the cursor is touched on the panel.

Recurse the tree.
In question code, the major rate determining step will be checking the list for dupe to append, often quicker to add them all and use a set if only unique members are of interest.
Suggest can use list comprehension, or recursively walk the tree.
Here is an example, pass a node tree to a method and walk its nodes, if it has an image property yield it, if it has a node tree yield from it.
Personally I like the simplicity of yield syntax usage for traversing a tree, and the low memory hogging nature of generators, however they need a little tweaking to optimize for speed, see below
import bpy

def images_in_tree(node_tree):
    for node in node_tree.nodes:
        if hasattr(node, "image"):
            yield node.image
        if hasattr(node, "node_tree"):
            yield from images_in_tree(node.node_tree)

for mat in bpy.data.materials:
    if mat.use_nodes:
        print(set(filter(None, images_in_tree(mat.node_tree))))

Note could yield above getattr(node, "image", None) to avoid testing and filter out the Nones, however it may be a better idea to yield the node_tree, and the node.  The ID data of the node_tree node_tree.id_data will be a material or a node group.
Just the number of unique images in tree.
In answer to

Keep track of how many images are in use in a Material (Or node_tree)
in real time, printed on the UI, without having to press buttons or
the like

Instead of yielding the images returns only a count.
Used a boolean default dictionary to tag items. Any item is given the default value false
In response to

fyi, you can't use tag here. Or any optimization like caching.

Have tagged both the nodegroups and images with one dict to  make the method directly usable in a draw method, instead of using say a getter of a material property,
bpy.types.Material.image_users = IntProperty(get=num_images)

In which case could lay it out with
layout.prop(mat, "image_users")

and using the collection.tag(False) would be Ok in this context, and removes the need for the default dictionary.
As noted yielding and recursion can be slow in python, however using functools.lru_cache seriously fixes this see similar gain here https://blender.stackexchange.com/a/199075/15543 as well as other optimizations used. See lru_cache link re expiring or clearing cache on some interval
Basically it is caching the result of a call to memory.
import bpy
from collections import defaultdict
from functools import lru_cache

@lru_cache(16) # play with this
def num_images(mat):
    tag = defaultdict(bool)

    def unique(node):
        img = getattr(node, "image", None)
        if tag[img]:
            return False
        tag[img] = True
        return img is not None

    def images_in_tree(node_trees):
        for node_tree in node_trees:
            if tag[node_tree]:
                continue
            tag[node_tree] = True
            yield sum(unique(n) for n in node_tree.nodes)
            yield from images_in_tree((n.node_tree  for n in node_tree.nodes if hasattr(n, "node_tree")))
    return sum(images_in_tree((mat.node_tree,)))

# make an int material property
bpy.types.Material.image_users = bpy.props.IntProperty(get=num_images.__wrapped__)
# tack a draw method to text editor footer to test
from random import random
def draw(self, context):
    mat = context.object.active_material
    if mat:
        self.layout.prop(mat, "image_users")
        if random() <= 0.5:
            num_images.cache_clear()
        self.layout.label(text=f"{num_images(mat)}")

bpy.types.TEXT_HT_footer.prepend(draw)

The material property uses an uncached version of the method above, num_images.__wrapped__ the label uses the cached method.  The cache is cleared each time a random is below a threshold. The expectation above is that it is only calculated approximately every 2nd time.
Other methods to consider would be using a counter on the UI class, clearing in a draw, poll or __init__ method of classes in different regions, a draw call back.. (Or as mentioned prior expire the cache) or simply not use it at all.

Extra image tacked into test file, showing 8 images in material, removed shows 7, undo back to 8


How to tile texture a curved model? The ground in this video is exactly what I'm trying to achieve:

https://m.youtube.com/watch?v=XPgRnLRxlJM

I'm currently just using simple materials which has a nice low poly look, but it's not very diverse.
After I saw that I decided I wanted to texture my models just like that as well, so how would I go about doing that?
Whenever I try to UV unwrap, I just get terrible results, the shapes seem far too complex for me to even get a idea of how to do this.

Is there any easy way to do this?
So far, UV unwrapping has just been fustrating me.

If I were you, I would try to look at the mesh from the top by pressing 7 on the numpad, and then U > Project from view. Then, scale down or up the parts of the mesh that curve the most.


What are the minimum spec requirements for 2.8? I have tried using Eevee on my computer, but it kept crashing. It was a version that was downloaded a couple of weeks ago. Also, I attempted to use Substance Designer and it failed to work as well. My computer is just a standard laptop with no special additions to it. I went to the requirements page and it said the following:

  Note: These requirements are valid for Blender 2.77 up to 2.79b. However, Blender 2.76 and earlier still supports Windows XP and OpenGL 1.4 graphics cards. Blender 2.8 requires OpenGL 3.3 or above.

Unlike the last time that I check this page almost a year ago, Blender was more explicit about the graphics card requirements. I want to know is OpenGL 3.3 is the common standard for all new computers after a certain date if not, are there indicators for it?

As you said it, Eevee is a GPU Boosted engine, it uses features present in >= OpenGL3.3. The fact that you added Substance made it suspicious for a driver issue.  Make sure you have DirectX and .NET for Substance and the latest OpenGL Drivers.

As for your other question, new cards are  mostly OpenGL 4.5 capable. You can check your OpenGL version by going to the dxdiag. And please add more details about your PC specs, it helps us better


What causes these artifacts around the edges of objects when using the defocus node? Continuing on with the same logo reveal. The depth of field in Blender results in this horrible effect around the edge. I've seen this sort of blurring a lot in games, Assassin's Creed is quite famous for it.

The focused object shouldn't make this strange outline and I need the edges to look properly blurred and transition nicely into whatever's behind it without this strange effect seen around the square in the top right.

Apologies for the low shading samples.

Just tried it in Cycles. The lighting looks a lot better as usual however the same effect is still happening. I've tried both 'radius' and 'f/stop'. Radius being the same and f/stop creating this crazy blur.

Radius

f/stop

The blurred cubes still have sharp edges alongside a blurry outline.

I've sometimes had odd results with the defocus node, particularly with large aperture sizes. See 2d vs 3d Depth of Field.

Try using built in Cycles DoF, which simulates the way light behaves at a lower level. It gives realistic and seamless results without requiring any fussing with the Z buffer:

The only downside is the inability to edit it in post.


Change radii & speed of "rotate view"? When I hold MMB, I rotate my view around a point.  Somehow, I accidentally caused the camera to rotate around a large circle.  Then, I bound the camera to a marker, and the view jumped to the origin, and the effect was removed.

How can I increase the radius of the point around which the view rotates via MMB?  How can I increase the speed of view-translations (move/rotate/dolly)?

2.79.

Click numpad dot/del to focus camera transform around selceted object origin, then zoom in /out and it'll be cool. :)


What's the difference among object, active_object, and selected_objects? I am wondering if following statements are true:

active_object is always identical to object.
active_object(or object if previous statement is true) is always the first one of selected_objects. (This seems to be a false statement since if I use bpy.ops.object.select_all(action='DESELECT') the active_object and object is not changed while selected_objects is empty.)

I am fairly sure the first is true, but the second isn't.

The list of selected_objects is expanded as new objects are added, new selections are added to the end of the list, while manually selecting the last addition will be the active object, so active_object is rarely the first in the selected_objects list.

There are some conditions that may catch you out.

When deselecting all objects, the last active object remains active even though it may no longer be selected.
When setting items as selected with python the active object does not automatically change.
Select all does not alter the active object.
Deleting the active object leaves you with no active object.


Beginner: Faces unable to subdivide Hi I am currently starting out blender and i have created a face using vertices. I filled the face and now i want to subdivide it. However, the subdivision tool does not work on any of the faces. Can anyone explain to me how to subdivide the faces and why subdivide works on primitives such as cubes but not on the created face? Thank you

The subdivide tool in Blender [W > Subdivide] mainly works on edges, but in a few special cases including the cases of triangles and quadrangles, it will also work on a face. However, the subdivide tool will not work on the class of faces called N-gons. To subdivide an N-gon either  manually divide the face into quadrangles and triangles, or enter edge select mode, and divide the edges around the face and subdivide the edges.


Array not matching the bottom part I have a curve and 2 array. The top part of array match will the bottom its not match to complete a circle. I increase the array count also. The top part match but bottom does not.

Any suggestion why its not working. Thanks

What you want is not clear, do you mean you'd like the pieces to merge to each others? They won't because your last modifier is an Array with Object Offset option, so it will just make your module repeat around the empty, without any deformation or merging.

So maybe you should apply the first and second modifiers and delete the last Array. Now apply the scale of the object, put its origin to its geometry. Give it a new Array with a Relative Offset of X : 1, and activate the Merge and First Last options. Also give it a new Curve modifier.

Duplicate a circle edge loop from the base of your vase, make it another object, delete its modifiers, convert to curve.

Put your first object at the center of the curve. Give it a Curve modifier with the circle as Object. Set the Array Fit Type to Fit Curve and choose the curve. Move your object a bit so that it fits the vase radius.

You could as well use a Simple Deform modifier, Bend mode, instead of the Curve modifier.


Check overlapping in pose position I have the following code to check if two objects overlapping and it's works well, I don't understand how to check overlapping for objects in pose position
Source of this code: https://blender.stackexchange.com/a/150047/97742
import bpy
from mathutils.bvhtree import BVHTree

# Get the objects
obj1 = bpy.data.objects["Cube"]
obj2 = bpy.data.objects["Suzanne"]

# Get their world matrix
mat1 = obj1.matrix_world
mat2 = obj2.matrix_world

# Get the geometry in world coordinates
vert1 = [mat1 @ v.co for v in obj1.data.vertices]
poly1 = [p.vertices for p in obj1.data.polygons]

vert2 = [mat2 @ v.co for v in obj2.data.vertices]
poly2 = [p.vertices for p in obj2.data.polygons]

# Create the BVH trees
bvh1 = BVHTree.FromPolygons( vert1, poly1 )
bvh2 = BVHTree.FromPolygons( vert2, poly2 )

# Test if overlap
if bvh1.overlap( bvh2 ):
    print( "Overlap" )
else:
    print( "No overlap" )

Try replacing the # Get the objects part of that script with the script below.
# Get the objects
ob1 = bpy.data.objects["Cube"]
ob2 = bpy.data.objects["Suzanne"]

# Get the evaluated objects
depsgraph = bpy.context.evaluated_depsgraph_get()
obj1 = ob1.evaluated_get(depsgraph)
obj2 = ob2.evaluated_get(depsgraph)

See types.Depsgraph


Circle around the cross Hey there is a circle around the cross of my cursor how do I remove it

You've accidentally changed your selection mode.

The hotkey for this is W.


Stabilizing jerky time lapse? I am creating a year-long time lapse, with one image taken at exactly the same time each day.  However, due to changing memory cards changing the position of the camera by a small amount, many of the photos have a shift.
I have tried carefully putting tracking markers and using 2D stabilization.  However, the final rendered video still shows some jerky camera movements, as the distance between two consecutive frames is too large for the smoothing to take effect.

The frustrating thing is that in the "movie clip editor", some of the "Display" options allows for "Lock to Selection" and "Display Stabilization".  When these options are ticked, the preview movie is beautifully centered and stable around one node in the center.  However, there is no way to render this movie, as they are not part of the "2D Stabilization" node.

How can I render the movie with the camera locked to one of the nodes?  The effect would be similar to a recent gif floating around the web of Emilia Clarke's stabilized eyebrows...
Many thanks!

EDIT: @3pointedit: I am using 6 points.  As I understand it, for my issue, it doesn't matter how many points I use, as the problem is that the image would be very stable for about ~10 frames (where the camera was still), then the next frame would be noticeable off (after I changed the card on the camera, but didn't set it back exactly in the same position).  Hence, no matter how much the software wants to "stabilise" (interpolation or whatever), the 11th frame would noticeably jump.  What I want is for every single frame to have the one designated marker in exactly the same position.  Other markers can help in rotation stabilisation, etc.

Sample of jump:

EDIT:

The white box is the designated marker that I want to stay on the one spot.  As you can see, the track path will jump towards the right in the next frame (just above the "E" in TELUS).  This tends to happen throughout the timelapse.

Sample of settings:

As you can see, I have "Lock to selection" ticked.  This means that during the preview, the video behaves as I would like it to; the marker above stays on the same spot on the screen.  However, during rendering, it does not.

Sample of 2D Stabilization settings:

I've tried futzing around with the various markers, autoscale on/off, etc, but to no avail.

Nodes settings (very simple and straightforward):

Thanks very much for your time and wisdom; I appreciate it.

Trackers are uniquely associated to the tracked shot.

In order to stabilize you need to select the clip you are using as source.


Driver constraint addon error when it is applied : property has not been found I used the driver constraint addon to connect the shapekeys to the bones. The shapekeys come from the manuel bastioni lab and the bones from rigify. I've used two armatures and I have connected them into one only armature called rig. Now I'm trying to use the addon to constraint the bones because I want that when I use the shapekeys also the bones move. The final goal is to convert the shapekeys library into a pose library faster. The problem is that when I go on a shapekey and I do "copy data path",the value copied is not good and it can't be used with the driver contraint addon. It sounds like this : active_shape_key_index ; instead this value should return the name of the shakepey. Anyway,when I use this value the error given is : "bpy_structdriver_add() properly "active_shape_key_index" not animatable". Instead,If i use the name of the shapekeys,the error is "property has not been found".

You can watch what happens going here : (also the blender file is there)

https://drive.google.com/open?id=1E4mUhKuKBTZQoIwfnWIGcV6xp8NSgqxb

you made a little mistake in the process of setting up the driver.

You need to copy the datapath of the value. Not the shapekey name. You need to rightclick on the digits and then copy the datapath.

That should do the trick. Then the addon should recognize that you want to key the shapekey value.


How can I make particles collide with each other? Is this possible? If it is, how can it be done?

Thanks in advance!

EDIT: Here's a quick sample file I made: DOWNLOAD SAMPLE

Notice the particles merge in with each other, instead of bouncing off of each other. I want them to behave like marbles would if they were dumped into a cup. They'd bounce, settle, and create a pile within the cup.

There is an Add-on called Molecular. It makes the particles act as Rigid Bodies. The particles can be linked to each other as well.

Here is a teaser trailer that the coder made.

Just download the .zip, go to File > User Preferences > Addons and click Install from File. Select the .zip. Check it to enable it. If you need more help installing, let me know.


Different materials on different sides of a mesh In Blender 2.80 I modeled a bottle cap and want a different material on each side - metallic with logo on the top, metallic silver inside. I set up a node tree that worked and then hit a snag: both materials appear in edit mode and rendered edit but only the top materials show in object mode and object render. What is causing this?

Below are screen shots:

Thanks for your thoughts.

Finally found the answer - backfacing on the Geometry node doesn't work when there's a Solidify modifier in play.  A bit more hair torn out but I got there!


Targeted bones don't move with the rest of the armature IK bones don't move with the rest of the armature
Ask Question
Asked today
Viewed 9 times

0

Whenever I move the main controller bone of the mesh, most of the armature moves except for the bones the IK is targeted at, and the hand bones won't move with the armature either. Like this:

If someone knows how to fix this I would love the help, thanks. Here's my blend file:

You need to parent (Keep Offset mode) all the IK controllers and targets to the root bone.


Font too small in tool shell I have to clarify that this is only the case in one file and only in the bottom of the tool shell

Blender kept crashing when I tried to convert hair particles to mesh on windows so I went to Ubuntu and converted them there however I must've pressed something there because the font on the bottom of the tool shell is suddenly small

What I've tried :
*reset theme to default
*make side by side comparison of the "broken" user preferences with the user preferences of a new project

You can zoom individual panels in and out. Try pressing Home while hovering your mouse over the keyboard.

Similar Question


Modeling character in side view I am totally new to Blender.Following a tutorial found over internet, I have started to modeling a character on my own.I have created face loop for front view.But the problem is, I think I can not model it on the side view.I am facing some problem regarding this.I attach image to depict the problem.Please,help me out.

I took a look at your blend file. If I understand correctly you want to model a the little guy with faces. You started by the front and have trouble continuing on with the sides. I have provided you the modified blend file. Please check it out and tell me if you find anything interesting.

I have fixed the extrusion you've made. It seems like you selected the wrong faces to extrude. What you need to do is select vertices you want to extrude, hit E and pull them back towards the back of the head.

Again if that wasn't the answer you were looking for, don't hesitate to tell me and I will help.

blender file download link

Some tips:

when extruding you can snap vectices to other vertices by pressing
Ctrl. Your vertex will then snap to the nearest vertex. wiki extrude tool
avoid having Ngons by keeping all faces as rectangles. This will help you model the little man.
You can select all model and click on W then click on Remove doubles

EDIT

Ok so the video tells you to model the general shape of the face in 2D, then at 11:10 he starts giving it depth by pulling forward some vertices. It's very easy: Be careful to have your side reference placed in the middle like so: then select one vertice from the "middle line":

And pull it foward on the Y axis. until it maches your reference.

Repeat this select/pull process for each vertice of this line.


ShrinkWrap deforms second eye Having the left eye shrinkwrapped on a sphere it looks just fine. However the right eye is being stretched to the right. Perfectionist as I am they have to look exactly the same. I cannot find the reason why and also adding a simpledeform doesn't seem to help. And if someone knows a workflow to get the eyes looking like this  that would be perfect!
The workflow I had planned right now is:

Combining two circles and join them together as an eye with a pupil.
Wrap the eye(s) around the body (sphere)
Cut out the eyes by boolean operation
Solidify the body (spehere)

Blendfile can be found here.

It's doing exactly what it's being told to do. If you view along the Y axis CTRL-numpad 1 and hit numpad 5 for orthographic view, you'll see the 2 eyes are not centered on the ghost in the direction that shrinkwrap is projecting it.

As you have it, in Project mode, Shrinkwrap projects a mesh into another mesh along a defined axis.
The simplest fix, is to move both eyes to be centered across the centre line of the ghost.

Also, apply your rotation so the direction of projection makes more sense, Negative Y.


What this artifact is due to? My solidify modifier thickness is very less. However, I am pretty confident this to be a modeling issue but cannot figure out the problem. White is the intended outline (rim light kind of) but that green thick highlight not what I want.

Here is the part file link. Thank you :) https://blend-exchange.giantcowfilms.com/b/8nJZnesg

Ok. So the reason was unnecessary solidify modifier I used. Removing it helped and after it was all about adjusting light coming through the bottle.


How do I make a very thin torus? Sorry - beginner's question alert... I'm new to Blender and am slowly getting there, but there's a really frustrating thing I'm struggling with. How to I make a really thin torus? I know if you scale it, it scales proportionately, so have been using Alt + S to Shrink/Fatten, but it seems to snap (i.e. reduce in size by chunky increments) and never gets ultra-thin. I've tried giving it more vertices but this doesn't help. Is there a better way to draw a thin tube (think 'piece of string around a basketball' type proportions)?

Another way is to add a Curve/Circle and then add a Bevel in the geometry properties. Scaling the circle will change the size of the torus while changing the thickness of the bevel will change the torus thickness.


How to use the array modifier multiple times in an optimised way? I've been doing some visualisation exercises and I had this question. I want to recreate

.

I planned to do this by creating a 1x1 cube and then cloning it using the array modifier, but I am not sure how to correctly use this tool.

After this, if I try to add another array modifier, it overrides the previous parameters.

I did not apply the modifier yet.

You could do this using arrays, because they can be given Start and End Caps which can, themselves, be arrays. But you would be creating a lot of work for yourself.

when you put a second Array modifier on an object, it doesn't override the previous parameters; it generates an array with the entire previous array as its elements.

You might be better off using a different duplication method - perhaps Vertex Instancing:

.. using a simple framework of vertices. Every time you E(XY or Z) extrude a new vertex, a cube will be instanced on it.


Made a mistake weight painting now i cant reset weight values of bones to the automatic ones Im new in blender and i was tryign to rig arms for my 3d project but they would deform a lot. I tried a lot of things, one of them changing weight painting from the automatic one. But now i realized i made a mistake there and i want to reset the values to the original ones.
I searched in this page for a solution, i tried selecting the bones, typing spacebar, search weight from bones -> automatic but blender would lag and after that say that that it was not possible to do that.
i ve been a lot of days stressed trying to find a solution i would appreciate if someone could answer

You can remove all the vertex groups from the object then try automatic weight.
You can select a vertex group and press the "-" button or press the "special button" (marked red) and select "delete all groups".


Return a list of activated render passes for view layers? I'm trying to get a list of currently activated render passes for a view layer.
For a scene 'Scene' and a view layer labelled 'my_vl', I can query individual pass status by returning True or False (e.g. the normal pass) like this:
bpy.data.scenes['Scene'].view_layers['my_vl'].use_pass_normal

or
bpy.context.view_layer.use_pass_normal

But is there a way to return a list of activated passes?
(I assume the Render Layers compositing node queries the passes to activate its outputs, but I can't figure out how.)
I found this update_render_passes method, but I'm not familiar with its purpose or useage:
bpy.context.view_layer.update_render_passes()

..and I get nothing in the console after running it as above.

I am not sure if there is a better method to do this but....
You can test all of the "use_pass_****" attribute in view-layer (and also eevee, cycles):
[
    attr
    for attr in dir(C.view_layer)
    if attr.startswith("use_pass") and getattr(C.view_layer, attr) == True
]  # -> ['use_pass_combined', 'use_pass_mist', 'use_pass_normal', 'use_pass_z']

And eevee-only pass:
[
    attr
    for attr in dir(C.view_layer.eevee)
    if attr.startswith("use_pass") and getattr(C.view_layer.eevee, attr) == True
]  # -> ['use_pass_volume_scatter', 'use_pass_volume_transmittance']

After seeking in Render Layer node, there is a outputs attribute contain different outputs that a node can potentially have. And each output can be enabled by attribute enable:

[
    key
    for key, output
    in C.scene.node_tree.nodes["Render Layers"].outputs.items()
    if getattr(output, 'enabled', False)
]  # -> ['Image', 'Alpha', 'Depth', 'Mist', 'Normal']


The bones connected to the Spline IK do not follow the whole armature - Still need help Okay, so I have a mesh that has a tail so I googled how to rig the tail and it said to use a Spline IK restraint. I built the spline on the bones of the tail and now when I move the whole armature, the bones connected to the Spline IK do not follow. The picture shows that when I move the armature, the tail bones do not follow.  This situation is a problem.

I am rigging this dragon for school. I am down to a couple days to finish this but I am having issues. When I move the master bone of the armature, the spline IK I made does not follow. Why does this happen?

broken
rig

This image shows what happens when I check the chain offset box

Image above Showing a bone chain controlled by a Spline IK Constraint

Consider using the Chain Offset feature as enabled .  This is indicated by the yellow arrow.

Please know there is a technique in modeling with regular IK constraint where there are 3 models. Model 1 tweens or has a linear interpolation of the other two models. Bones capture rotation, so rotation can be interpolated. Depending on your level of experience and patience this technique can be appropriate or in appropriate.
Bones can have a copy rotation constraint.


Generate an image from 3d model (server side) I'm working on an application that needs to quickly render simple top view of 3D model on the server, and then return them as a JPEG via HTTP. Basically, I want to be able to simply include a dynamic 3D scene in an HTML page

Can Blender do that?

Yes, independed from the web technology stack you're using on the server side you can invoke Blender from the command line.

Something like:

blender -b file.blend -a -x 1 --render-output <path>

should do the job. See the link above for a complete description of all available parameters. Note that Blender itself doesn't provide a HTTP server therefore you would need to make the rendered image available to your server (probably by simply copying the file or direct rendering into the web server's image resources directory).


Subdivision Surface shrinking / not displaying as following UV sphere properly Following eyeball tutorial https://www.youtube.com/watch?v=n0r0UnaIK_Y

When I create a UV sphere and apply subdivision surface it shrinks the sphere slightly. In the tutorial it looks like his subdivided sphere is not shrunk and he can position/edit his sphere to match the reference image precisely.

The difference makes it hard to follow what he is doing.

Everything seems the same, how do I either make my subdiv modifier behave like his or if this is just to do with the display of the sphere make that the same so I can follow his steps?

Figured it out, I needed to check "Adjust edit cage to modifier result"


Aligning Two Vertices Along Edge I am trying to align vertices A and B.
I need vertex to A move to be vertically in line with vertex B, but retain the horizontal slope of face C, how would I go about doing this?

You can use vertex snapping.

Enable Vertex Snapping > Active
Select both vertices of the edge, the last selected will be active
Move it left and hover your cursor over the target vertex


How to receive correct file and directory paths from user? I want to receive import and export path from user. From this documentation I've known I can give the string property a sub-type which turns it to a file or directory selector, the problem is that they give a wrong path, some parts are replaced by ".." and some parts are not typed at all.
I want to receive those paths from user to use them later when the user executes an operator (by clicking a button when everything is ready).

this is my code:
class myPaths(bpy.types.PropertyGroup):
    @classmethod
    def register(cls):
        bpy.types.Scene.myPaths = bpy.props.PointerProperty(type=myPaths)

    @classmethod
    def unregister(cls):
        del bpy.types.Scene.myPaths

    fileExportPath: StringProperty(
        name="export path",
        subtype="DIR_PATH",
        description="some description"
    )
    jsonImportPath: StringProperty(
        name="import path",
        subtype="FILE_PATH",
        description="path of .json file to import."
    )
    fileName:StringProperty(
        name="output file name",
        description="Write file name without any file extension."
    )

How can I receive correct file and directory paths form user?

I found the solution here. use bpy.path.abspath(path) to get the absolute path to the file or directory.


Blender 2d animation, Draw lines in draw mode but cannot erase them, cannot edit them working in 2d animation I got stuck. I could draw fine, and I could select grease pencil objects and go to all the modes, but all modes apart from draw mode seems stuck. I could not select or edit some strokes in edit mode. The same strokes seemed locked in sculpt mode. And in draw mode I could not erase them. But this was only with some strokes not all. It seemed to have no link to the layers or anything I could find. and some of the strokes that I could not edit, where highlighted as though I had selected them, but I could not deselect them.
I have been stuck on this all day but asking so I can going to reply to myself as solved it. But could not find anything on the internet about this. So hoping this helps someone else

I just realised that in Blender 2d animation. locking a material from being edited also lockes any strokes from being selected and moved if they have this material.
This is really confusing Grease pencil feature, it made me asume I had the layer locked even though it seemed like it was unlocked, or I had the stroke on the wrong layer. Spent the last 2 hours troubleshooting it and trying to recreate it.
It means you can draw lines in draw mode but cannot erase them, cannot edit them.
Locking materials seems like it should just stop the material from being edited but it locks what it has been applied to as well.
Anyway just posting as I spent so long googling and could not find the solution. was about to admit defeat and delete my project and start again, assuming it was strange bug. hopefully a google search with bring this up for the next person who gets this issue


How can I subdivide this plane into even squares? I have a plane that has a scale of x: 100, y: 5, z: 1, and I want to split it into squares that have a scale of x: 5, z: 5, but when I do subdivide, I get a result like this:

When in reality, I'd rather have something like this:

How can I do this? (Sorry for the badly sketched pictures.)

Use loop cuts, press Ctrl+R and use the scroll wheel to select how many. Hover over the edge you want the cuts to intersect, then double-click to finish the action.


How to symmetrize object in angle? Here what I'm trying to achieve:

In 3ds max it can be done by rotating mirror plane of symmetry modifier. Video

In blender we can do almost the same with mirror modifier and rotating "mirror object", but the main difference is lack of slicing. Part of the mesh that cross mirror plane is not removed automatically.

So how we can do symmetry with rotation similar to 3ds max in blender?

You could probably achieve this with a combination of two modifiers.

You can use any object type as a mirror object, set up a mesh as object as mirror center, and use it also in a Boolean modifier.

Model it in the shape of a 'half box' so that it is a volume bounding only the half of the object you want to remove, then use it also as mirror axis.


How to fix inconsistent surface Normals of a shape in Blender? I have a 3D shape whose surface Normals seem not to be consistent. It looks like the image below after rendering. It seems that the Normals are not consistent for this shape. I have tried Solidify and Subdivision Surface modifiers but they seem not to work (or I'm not setting their parameters correctly). I wonder how I can resolve this issue. Any help would be appreciated. Here you can find the 3D shape.

Except from what @bertmoog has posted, your mesh has several more problems but you can easily and quickly clean it up.

Original imported mesh.
Select all parts then Ctrl+J to join them.
In Edit Mode press W > Remove Doubles to remove doubled vertices, it will also remove marked sharp edges.
In Object Mode set Shading to Smooth and turn on Auto Smooth with default value.
Back in Edit Mode, select all and P > By loose parts to separate meshes to original state. You can skip this step if you will want to have it as one object.


Blend close shades of colors together in compositor I have some mesh that is intersecting with itself in some areas. To reduce the visibility of these intersections, I want to somehow blur, blend, flatten, or otherwise smooth out the area. This will probably need to be done in the compositor.

The picture shows a basic setup of two mesh pieces intersecting. The material is simple diffuse mixed with gloss based on fresnel. They have slight color variation due to the highlights and fresnel. You can see that in areas where one overlaps the other (yellow) the edge of the foreground piece is dark due to the fresnel, and stands out. I want to keep this.

In the red area, the meshes are intersecting but not near the edges. There is just enough color difference due to their shading for the intersection to be noticed (whereas a flat shaded material it wouldn't be.) I want to somehow change that area so that the intersection is less visible, but without losing detail in other areas, or losing the edge detail in the yellow area.

The bottom half of the image shows what I'm going for (done in photoshop with water droplet tool.)

EDIT: I am happy to use methods outside the compositor, such as mesh changes, etc, or even workflows that involve other programs. I just need to be able to automate it, and avoid having to hand paint/mask/edit things too much. I need a method that will work on a lot of pieces. They are animated in a simulation, so what areas are intersecting will change every frame.

I guess the following can be adjusted to your needs.

Two mesh objects, partly overlapping will be mirrored at intersections, RGB independant.

Compositing nodes create a mask of the intersections. (This part is highlighted in red.)

Enable the Z and Object Index Pass of the render layer. (Properties Window > Scene > Passes)

Assign two different pass indices to the objects, in my case 1 and 2. (Properties Window > Object > Relations > Pass Index)

After dilating the objects masks, their overlapping part will the border between them. Multiply both masks to only retain the boundaries. If both parts are in the same mesh, you can get this mask with the Material Boundary of Freestyle (which will have correct anti-aliasing).

To exclude the parts, where the meshes overlap but are apart, check differences in the depth channel. The Prewitt or Sobel filter will give us the difference between close pixels. Where this z - difference is larger than a certain value (0.05 in my case) there is space between the objects (which we dont want to blur). Multiply the "edge" mask with Z-Difference lesser than the min value (0.05) to get the intersections.


Apply Transformation Matrix to Existing Mesh How can I apply a 3x3 or 4x4 transformation matrix to a mesh such that the matrix's transformation is baked into its geometry?

E.g. applying the following matrix...

\begin{bmatrix}
    1 & 0 & 0 & 0\\
    0 & 0.707 & 0.707 & 0\\
    0 & -0.707 & 0.707 & 0\\
    1 & 0 & 0 & 1\\
\end{bmatrix}
...to the cube primitive should yield the result below, only by changing the mesh's vertices.

Thus the object-level transformation depicted in the properties panel will remain unchanged.

Mesh.transform

import bpy
from mathutils import Matrix

ob = bpy.context.object
me = ob.data

M = Matrix(((1, 0, 0, 0),
     (0, 0.707, 0.707, 0),
     (0, -0.707, 0.707, 0),
     (1, 0, 0, 1)))

me.transform(M)
me.update()


Workflow for multi-subject, multi-angle compositions I've been tasked to render six different products, from six different angles. The products are similar in shape, but has some variations in textures and meshes. The setup requires that each angle has its own lighting, plus certain parts of the product require indivdual lighting. So each angle of a product will end up with three+ images/parts, with slightly different light that needs to be composed together.

Today I go angle-by-able for a product, render out the parts by toggling lights on and off. Then I compose the things in photoshop. Takes a lot of time. And if I change some small thing in a material I have to do it all again.

Can someone recommend a workflow and/or file setup where this can be a bit more streamlined? My dream setup would be to just press a button (ie., run a script) and have it be composed directly. But even if that's not doable, I would just love to automate the generation of the different parts somehow.

Would you have one file per angle, with different render layers for different lights, and then link the products in there?

Or would you have one file per product somehow, linking in the lighting and use render layers somehow?

Use different scenes.

Within the same file you can have many scenes.

Scenes can share assets but have individual cameras and lighting, render layers, and can be combined together in the compositor.

Read these related links:

Move a set to another scene even though it’s done

What is best workflow for having a scene with multiple light setups?

Assign camera to renderlayer

How to build different scenarios in the Compositor


Bisect Tool Not Working First time using Blender in years and trying to learn all of the new 2.8 goodness, but my Bisect tool seems to not be working. I select it and all it lets me do is select and move vertices. It doesn't even show the option to bisect in the shortcuts bar.

When it should look like this (Taken from a youtube tutorial)

If anyone else has ran into this issue and can offer help that would be greatly appreciated!

I opened up Blender the next day and now the bisect tool seems to work fine. I guess I just needed to close and open Blender for the tool to fix itself. Kind of frustrating that a bug like this exists, but it was an easy solution and I can't expect a huge update like this to work perfectly. Hope this helps anyone else with similar issues!


PBR material : how to use a RMA file in Blender? I found this (free) nice brick PBR material :

I would like to use it in Blender. I had never heard of PBR before.
So when I unpack the zip, I get those files :

Brick_Wall.sbsar
Brick_Wall_D.tga
Brick_Wall_H.tga
Brick_Wall_N.tga
Brick_Wall_RMA.tga

I've understood that sbar is a property format and is not supported by Blender.  So I have to build my own material using those textures.

I've read this tutorial to learn how to setup it.

I added a principled BSDF node and linked it like that :

Brick_Wall_D.tga > base color
Brick_Wall_H.tga > metallic
Brick_Wall_N.tga > (normal map) > normal

Is that correct ?

But then, I miss the roughness map.
I read here that

  RMA is a type of packed map which contains Roughness + Metallic +
  Ambient occlusion, which are used with PBR (Physically Based
  Rendering).

and here that you can extract channels in the node setup by using a "separate RGB" node.

Thus, what should I use and how should it setup that ?
Maybe I should use only the RMA file ?

Thanks a lot.

You don't need the height map for this.. the normal map will work fine (make sure to add the vector Normal Map and make the image texture non-color).

The RMA works like this.. add the RMA image texture and then add a "Separate RGB" node.  Each channel in the RMA is an input into your BSDF shader.  Most of the time it's this...

Red = Ambient Occlusion (you can add this with a multiply on your Base Color if you want)
Green = Roughness
Blue = Metalic

I know this is an old question but maybe this will help others as this comes up early on Google for RMA and Blender.


Depth of Field in 2.68? I can't get "depth of field" to work as expected in version 2.68. Here are the steps I'm taking (from a brand new file):

I clone the default cube a few times, and place all the cubes in a row.
I go to the camera's settings, and select a cube on which to focus in the "Depth of Field" section.
I switch to compositing mode and check the "use nodes" box.
I add a "Defocus" node in between the "Render Layers" node and the "Composite" node.
I also connect the "Z" output from the "Render Layers" node to the "Z" input of the "Defocus" node.
I render. When the image finally goes through the compositing process, I can see the cubes, and blurring occurs, but the camera is NOT focused on the cube I selected in the camera settings.

I've tried this both in the Blender internal renderer and in Cycles. What am I doing wrong?

I do not know why, but it seems that using an object as a focal point only works when using an Empty.

Cycles:

(Note that cycles will render with DoF without the need for composite nodes.)

Setting Blades to 3 or more makes it possible to render with a non-circular aperture (this setting refers to the number of "blades" in the camera's aperture)

Blender Internal:


How to see the mesh with subdivisions in wireframe mode in blender 2.83? Hi I can't see how to see the mesh with all subdivisions in blender 2.83. Does anyone know how it can be activated? in past versions I think it was by default

Turn off Optimal Display

Came across this as well, found that switching the subsurf modifiers optimal display property has the desired result.


Mirror and Subdivision modifier in 2.7 vs. 2.9 Years ago I've been exploring Blender 2.7 to model 3d surfaces. I recently resumed my attempts but first of all installed v2.91. Then I copied one of my old files and started to modify it in v2.91. Everything is going fine as long as I modify a copy of the old file, but when I start a new one from scratch using the same method, it looks and behaves differently.
My method is based on creating a mesh (only a surface), adding mirror modifier to keep it symmetric and adding subsurface. Smooth shading is also turned on. The first screenshot depicts the old file, where edges and vertexes follow the smooth surface. It is very pleasant to work with because I edit exactly the shape I get when I finally apply all modifiers.

However I just can't reproduce it in a new file. Instead I see only the unmodified mesh, partially hidden behind the surface. How can I achieve the old behavior in a new file with Blender 2.9?
Note: in the old file the second modifier is named Subsurf while in the new file it is called Subdivision. I guess it is related to the problem.

Simply enable the 'On Cage' option of the Subdivision Modifier.
It's the first icon on the left :).


Is there an easy way to align two objects on a specific axis? Other than manually typing in locations, is there an easy way to align objects on an axis like you would in Visio?

You can use Align Objects available in the 3d view header under Object > Transform > Align Objects.

This will bring up a panel in the toolshelf and you can choose the axis to align the selected objects on. You can also choose to align relative to and the mode to align by.


My rig does not move my character correctly I created a character, I inserted the bones and the rig, when I use the pose mode and move the rig my character deforms and I cannot animate it. I searched a lot online but found nothing about it. I hope someone can help me because I don't know what's wrong.

The problem is that the normals of your mesh are flipped so it gives bad parening:

To fix it, select your mesh, select all in Edit mode and AltN > Recalculate Outside. Then reparent to the armature With Automatic Weight. It should work much better. If you need to make some corrections, display the good layer, i.e. the one with the bones that are supposed to deform your mesh:

Then select the armature, shift select the mesh, switch to Weight Paint mode, check each bone and give some corrections:


Installing module to blender's python (Mac) I'm trying to install modules (one of them is open3d) with pip command.
From 2.8+ it should be easy as pip install open3d (mentioned here or here), but ...
cd /.../Blender\ 92.app/Contents/Resources/2.92/python/bin
python3.7m -m pip install open3d

results with Terminal report
zsh: command not found: python3.7m

The last one thread I found was a notification - pip is installed from 2.8+ for Win, but not for Linux/Mac builds. So I wanted to install pip with ensurepip as mentioned here ... into Blender's bin folder (where python3.7 file is stored) with command ...
python3.7m -m ensurepip

... but it fails with the same report
zsh: command not found: python3.7m

For some reason using cd to blender's python bin folder and then executed command was not working, but ... path to blender's bin folder with python3.7m + command executed at once worked just fine.

Do I have a "pip"?
I don't know if 2.80 was distributed without a pip (as mentioned above), but 2.79 and also 2.83 Mac build containes a pip ... executing ensurepip was satisfied. You can check that by right click on Blender.app icon > Show Package Contents > Contents > Resources > 2.9x > python > bin, drag&drop bin folder into Terminal window, type python3.7m -m ensurepip and execute. In my case it looked like ...
/Users/Filip/Downloads/Blender\ 92.app/Contents/Resources/2.92/python/bin/python3.7m -m ensurepip

Upgrade "pip"
Terminal recommend update pip to latest version. So copy&paste directory of bin folder or drag&drop bin folder again  into Terminal window, type  python3.7m -m pip install --upgrade pip and execute. My example ...
/Users/Filip/Downloads/Blender\ 92.app/Contents/Resources/2.92/python/bin/python3.7m -m pip install --upgrade pip

Module installation
From what I tried, even without pip care I could just install module by command
python3.7m -m pip install + type your module name. In my case open3d module...
/Users/filip/Downloads/Blender\ 92.app/Contents/Resources/2.92/python/bin/python3.7m -m pip install open3d


Is it possible to animate which characters of a text object are assigned to a material? Is it possible to animate which materials are assigned to specific characters in a text object? It is quite easy to assign the materials how I want using this method, but I do not know of a way to animate it. Is this possible at this point? And if not, is there a workaround using different techniques that I could use?

This question is similar to this question and this question, I just want to know if there are other methods that could be used for text objects.

Blender 2.76: This appears to currently be an unavailable feature.

Some workarounds could be to assign a different material to each letter and animate the colors of the individual materials, but there is no built in way to do this.


How to keyframe the image sequence offset using Python? How do I get the keyframe_insert to work with frame_offset? When using it from the image below, you can see that I can add the keyframe by hand, but with "Copy Data Path" I can't make it work with the code though.

def preview_enum_update(wm, context):
print("wm.my_previews = %s" % wm.my_previews)

#load image - first of all
dividedImageBeforeDot, dividedImageAfterSecondDot = os.path.splitext(wm.my_previews)
dividedImageBeforeDot, dividedImageAfterDot = os.path.splitext(dividedImageBeforeDot)

materialName = "Testing"

myMaterial = bpy.data.materials.get(materialName) or bpy.data.materials.new(materialName)
myMaterial.use_nodes = True

node_tree = myMaterial.node_tree

node = node_tree.nodes.get("Image Texture") or node_tree.nodes.new("ShaderNodeTexImage")

node.image_user.frame_duration = 1
node.image_user.frame_start = 1
node.image_user.frame_offset = int(dividedImageAfterDot.split('.')[1])-1
myMaterial.keyframe_insert('nodes["Image Texture"].image_user.frame_offset')

In general, set the property's value and THEN insert the keyframe with that value (mentioning the frame number). The value needs to match the property type. In your case:
Step 1 -
bpy.data.materials["Testing"].node_tree.nodes["ShaderNodeTexImage"].image_user.frame_offset = 1

Step 2 -
bpy.data.materials["Testing"].node_tree.nodes["ShaderNodeTexImage"].image_user.keyframe_insert("frame_offset", frame=1)

Which sets the frame offset to 1 for ShaderNodeTexImage at frame 1, for Testing material.
For objects, it's a bit different, but the concept is the same -
bpy.data.objects["obj_name"].hide_render = True
bpy.data.objects["obj_name"].keyframe_insert("hide_render", frame = 100)

which hides the object in render, at frame 100
The API documentation is not explicit about all this, but you have to connect the dots by understanding how Blender API is structured and how Python works. Refer:
https://docs.blender.org/api/current/bpy.types.ImageUser.html?highlight=frame_offset#bpy.types.ImageUser.frame_offset
https://docs.blender.org/api/current/bpy.types.bpy_struct.html?highlight=keyframe_insert#bpy.types.bpy_struct.keyframe_insert
This module is used for all Blender/Python access:
https://docs.blender.org/api/current/bpy.data.html
Play around and practice, self learning is best learning :)


Does a mesh need UV if there is no texture? To be more specific, I'm making a glass table that consists of two parts: the legs part, which has a metallic material, and the glass top, which has a glass material. Do I have to UV unwrap them, or it's pointless if there is no texture applied to them?

As I know, if I want to import it to a game engine, they need at least one UV map for the lightmap. Though I'm not sure.

So please tell me if I need them or not.
Thank you

You don't need to UV unwrap the mesh if you can use the procedural texture coordinates like Generated or Object to get the material you want. This applies mainly to within Blender. If you are exporting to another app, like a game engine, you'll need to use the most compatible texture coordinate mode, which may in fact, be UV.


How can I make an object invisible when I render in Cycles? Using the Cycles Render Engine
How can I make an object invisible when I render?

These are some of the options to make an object not render in Cycles.

To make the object invisible/unrenderable

Disable the object for rendering (turn off the camera icon)

Move the object you don't want to a layer that is not renderable

Give it a transparent shader:

To make the object invisible to camera but keep the shadows and interaction with other objects (reflections, etc)

Restrict the visibility for camera:

Using Nodes: use a light path so the object is invisible to the camera only:

To make the object transparent as alpha channel:

use a holdout shader so it renders as transparent

Place the object on a different layer and use that layer as mask:

Use a Pass index for the object and use that on the compositor to subtract the object from the final render:

(click on the image to enlarge)
Similarly, you can assign a pass index to the material and use that as alpha on the compositor:

(click on the image to enlarge)

For the last three options the Transparent Background option has to be enabled:


How do I render and save as MP4? I am using the latest version of 2.78a and I can't figure out how to save it as an MP4 file. I have downloaded an intro template (for youtube) and changed the text to what I want, but I don't know how to save it as an MP4 file. I have rendered the animation on default settings and it keeps rendering the animation over and over again. What do I do?

Blender will render the frames that are between the start frame and end frame if you press Animation.

The outputfile is located in the path that is shown in the text-box. You can change it pressing the button with the folder icon

You can either the animation as an image-file sequence or as a video file. MPEG will output .dvd format, but you can change the extension to .mp4 in the windows explorer (you must check the option to view the file extension in folder options from windows


Distorted image texture on curved plane I am trying to make a curved TV screen (plane) using the image texture node, but the image texture is distorted on the edges of the tv in perspective view. Although, in orthographic view, it looks like a normal image on a plane.

Curved along the edges

Looks like a normal image on a plane

And also, there are parts of the image texture that are going outside of the assigned faces for the texture.

Would love to see if someone has a solution to the problem, I will provide more information on the nodes or something else if needed.

The easiest way to fix this is to project the texture from a perspective view and then manually adjust the top and bottom edges to remove their curve. To do this press 1, as you are looking down the Y axis, and press the middle mouse button to exit orthographic view. Select the entire surface and press U then V to project from view. Then open the UV Editor layout. Select all the points on one of the curved edges and straighten them out by pressing S, Y, 0, and do the same to the other curved edge.


Vertices collapse on themselves So, I'm rigging a model and I noticed a problem with the Arm. As shown in the pictures, the upper part of the arm collapses on itself when I move it. The rest of the arm is fine.

I'm still learning how to properly rig and such, so if anyone can tell me why this is happening, that would be greatly appreciated.
Here is the Blend file, i managed to get the head and somewhat of the left arm and still kind of new to rigging so it's not the best. I'm rigging it for vrchat so.
https://drive.google.com/file/d/12SQNEksYcoQCIxSNnqGwRWLvLGupZK4y/view?usp=sharing

It happens because one or several bones are influencing this part of your mesh when they should not.
Select the armature in Pose mode, shift select the object, switch to Weight Paint mode, select the bone called Chest, you'll see that its vertex group contains vertices that are part of the arm:

So in the N panel, choose Blend > Subtract in order to remove these vertices from this group and it will work fine:

You could also shelect these vertices in Edit mode, go in the Properties panel > Object Data > Vertex Groups list, in the dropdown menu on the right of the list select Remove From All Groups, then assign to the group called Arm_L only.


Suggestions for fog? So i have been working on this scene for a while using cycles and wanted to have a fog with a shape like in the image, the problem is that it looks too cheap, cut out and i cannot think of anything to make it look better, any help? (i took screenshots so thats why the render looks grainy)

Below is my node set up for the fog inside the mesh

thank you!

If you want these curvy shapes you can try Volume Empty object with two volume modifiers.

Add a Cube, switch to Sculpt mode and with enabled Dyntopo use Snake Hook tool
Add Volume > Empty object
Add modifier Mesh to Volume and use the Cube as Object
Alternatively for more distortion you can use Volume Displace modifier with Cloud texture

Sculpted - three drags with Snake Hook tool (screen from edit mode)

Volume > Empty object with Mesh to Volume modifier

Added Volume Displace modifier > Cloud texture

... another example smaller size texture and higher Density set in shader

Volume modifier available from Blender 2.92 and above ... I'm so big fan of this feature.
Just a few clicks :)
BTW - ad to "graine" render - in Properties editor under Render property >Sampling > Denoising enable Viewport / Render Screens above are just result of 4 samples :)


Blender solidify thinner along axis I'm working on an object that is essentially a section of a sphere, and I need to have the object have a wall thickness that gets thinner along the X-axis (from left to right). At he left side (A) I need the wall thickness to be 0.7, and I need it to be half that (0.35) at the right side (B). I don't want any variation across the Z or Y axis.

The solidify tool is working great to add thickness, but I need it to be a variable thickness based on the X axis distance, so that it smoothly drops from 0.7-0.35. Any help would be much appreciated

The Solidify modifier like many others, can be assigned to a Vertex Group. In the case of Solidify, the vertex weights affect thickness. If you paint a linear gradient down the right axis:

Then there's quite a lot of tweaking-room left in the Solidify's 'Thickness' and 'Factor' settings .. maybe enough to get the precision you need?


How to render an object without its shadow? I am trying to delete the shadow from the heart but I can't:

One option is turning off the Shadow property per object (Properties > Object > Cycles Settings):

As of Blender 2.8x the Cycles Settings panel has been renamed to Visibility and the Shadow property is now part of the new Ray Visibility subpanel. For Eevee you can only turn off the Shadow property per light for the time being (Properties > Object Data > Light):

Another option for Cycles is using the Light Path node. Plug Is Shadow Ray into the Factor socket of a Mix Shader and use a Transparent BSDF for the second Shader input:

Result