You don't connect it at all. The lack of an AO input on Cycles' Principled BSDF node is not an oversight. See my answer here about what AO is and is not for: Adding Ambient Occlusion to Material

Ambient occlusion is so-named because it is occlusion for an "ambient" light type. Cycles does not really have an ambient light, at least not one that accepts pre-cache occlusion data. (the world AO effect is technically an ambient lamp, but it is the only one, and as of 2.79 it always samples its own occlusion on the fly, never from a texture). Since there is no ambient light, shaders have no need to define shading for it.

If you want to use AO data for mesh-dependent texturing effects, you should do these while authoring the texture, that way you do not need to load a separate AO map at render time.


How to rig and move two objects in sync?

What you are looking for is a Child of Constraint.

Both the gun and the magazine need to be rigged separately with at least one bone each.

This file comes with a likely scenario: a hand with a gun holster (the character) which has 1 rig, the gun (separate rig), and magazine (separate rig).

The hand has a special bone called "Grabber" where the gun and the magazine will be parented to with the constraint.
The gun has 2 "Child of" constraints, one for the hand, one
for the holster
The magazine has 3 "Child of" constraints - hand, gun
and holster.

In an animation, you keyframe the influence to the bone you want it parented to. If the mag is in the gun, put the gun influence at 1 (and move the mag rig to the gun). Now if the gun moves, the mag moves. Same thing with the other elements.

Only one influence must be active.

If you are building this yourself from scratch, you must press the "set inverse" button each time you add a new Child of constraint.


Image Stretching as result of 3d tracking

The most important piece of information is at the top left of your image: you are using the movie distortion node to unidistort the video (I presume, since you didn't bother showing the complete node tree). If you undistort a pinchushioned distorted image, the resulting image will  no longer fill the edges of the frame.
You have two options, use the original distorted image (so that it fills the frame like the original one) and distort the 3D elements so that the integration looks correct.
Or you can live with the distortion-corrected image and the undistorted 3D elements and re-scale the composition at the end, but you will lose some pixels in the edges.
Please read the following link for more info:
How to determine lens undistortion values for motion tracking?


Alpha Mask a texture with a mask having a different UV Map

In Cycles render use a texture with a selected uv input to determine a [factor] value with a mix node. The mix node has two inputs with a transparent shader and diffuse shader.

In Blender render use the material texture with a given uv to affect [influence] alpha.  The material alpha may need to be set to zero.


Why does my hair particles look so thick in cycles

It's probably the Hair Shape settings that are set too high (default values) and it looks like this:

To better see what's going on, go to Eevee, and set the Hair → Hair Shape Type to Strip. This gives you a better idea in Material Preview/Look Dev mode of how the hair actually looks like when it's rendered in Cycles. The hair particles now will look thick. Don't worry, we will fix it in a moment. Switch back to Cycles.

Let's make the hair thinner:  In the Hair Particles → Hair Shape settings you can adjust the thickness. Go to Hair Shape section, and try these values (for example): Strand Shape: -0.850,  Diameter Root: 0.05 m, Tip: 0.03 m.
These values works best when your model is in real-world size and the scale is applied (Ctrl+A).


This is not hard:

bpy.data.actions[aname].fcurves[i].keyframe_points[j].co[0] = fr1

The tricky part is picking the right fcurve[i] and keyframe_points[j] if there are more than one.  You'll have to check fcurve[i].data_path and (if it's a vector data_path like location or rotation*) fcurve[i].array_index to make sure you're altering the right fcurve.


Inconsistant behavior when re-linking missing textures. sRGB and Non-Color mismatches

When opening a new texture, Blender doesn't know it's meant to be a single user copy.
You should Remap the old texture instead, so it'll change for all materials at once.

Add your 'new texture.jpg', with a second copy (new texture.001) for the non-color variant
Open Outliner > Scene
Right click the 'old texture.jpg' and go > Remap users > 'new texture.jpg' > OK.


Create a new material
Create a new texture
Now set your Type: to Image or Movie, Open up your Image then set your coordinates (under mapping) to UV
Lastly UV unwrap your mesh, unless it's already unwrapped then that's fine.


In the tool properties panel with the current brush displayed, look for the number next to the name of the brush. Clicking it will create a single user copy, and in this copy you can delete the connection to the texture.


How to keep the object size constant while it is moving?

If you  place your pivot point at the camera ( e.g. 3D cursor to camera, then '3D Cursor' selected as pivot center), when you scale your object in all axes (or any element of it, in edit mode,) the shape will not appear to change in perspective, when seen through the camera. If you then want to 'scale the object manually', you can do that in some other space, say, by setting the pivot to 'Median Point'.


How to repaint certain faces/vertices using vertex paint?

I personally hate the built-in painting tool in Blender. It works fine for planes, but on more complex 3D meshes it fails badly.

If you insist on painting the faces a solid color, you can change to face select in painting mode, so you can select the faces you want to apply color to. This is a quick way of doing what you want, but you have to go over every face in every angle to get a clean solid color on your mesh. Leave a comment below if you want screenshots of how to do this.

Alternatively, you can also use the fill tool on the selected faces to make quick work of the repainting process.

A plugin that I myself have not tested yet, is this one. It allows you to select all faces with the same color automatically for easier repainting.

I personally use UV textures for pretty much everything that's textured. If I use the built-in painting tool, it's simply to mark which faces are what in a solid color, so I can easily recognize it later in external editing.

Hope this helps.


context.material.node_tree - context has no attribute to material?

Different contexts also can have different context members.

  Context Access (bpy.context)

  The context members available depend on the area of Blender which is
  currently being accessed.

The properties panel is a classic example.  Looking at property panel code may come across context.material or context.modifier but will find them unavailable in say the python console.

>>> C.material
Traceback (most recent call last):
  File "<blender_console>", line 1, in <module>
AttributeError: 'Context' object has no attribute 'material'

Use another way to get material, from the active object

>>> C.object.active_material
bpy.data.materials['Material']

Re creating a material

Add Nodes to Material with Python

Python: Add existing NodeGroup to Material


Ok so that's what ended up having that works the way I wanted

import bpy

class Weld(bpy.types.Operator):
    bl_idname = "edit.weld"
    bl_label = "Weld"
    bl_description = "Weld vertices by distance\nHold CTRL to weld at center"
    bl_options = {'REGISTER', 'UNDO'}

    merge_dist: bpy.props.FloatProperty(
        name="Merge Distance",
        description="Merge Distance",
        min=0.0,
        step=0.1,
        default=0.02
    )

    @classmethod
    def poll(cls, context):

        if context.active_object.mode != 'EDIT':
            return False
        if len(context.selected_objects) < 1:
            return False

        return True

    def invoke(self, context, event):
        if event.ctrl:
            bpy.ops.mesh.merge(type='CENTER')
            return{'PASS_THROUGH'}
        else:
            return{'FINISHED'}

    def execute(self, context):
        bpy.ops.mesh.remove_doubles(threshold=self.merge_dist)
        return {'FINISHED'}


When you split a smooth shaded object, the normals are recalculated. Their direction is depending on the vertex before and the one after each vertex. If you take the vertex "after" out of the equasion, the normals at the very edge will be modified. Hence the lighting will be treated differently exactly where the split has occured (which is what you are seeing).

The ppl. in the Unity forums were correct, however I am unaware of a method of splitting an object directly and keeping the normals at the split.
Using multiple materials (can be the same material in multiple slots) does pretty much that, but internally, not visibly.
So a crude approach could be to hide submeshes in Unity.
Have not tried this, since most ppl. don't split naked characters, but rather hide the seams, but:
Split your object by material slots (assigning them to the faces in edit mode).
In Unity use:
myMesh.GetTriangles(mySubmeshIndex);
to show only the triangles that belong to the body part.
There might be a better solution, but not one I can think of right now.


The reason for this happening is that unlike cycles, ambient occlusion generated by evvee are not physically accurate. Eevee tries to mimic ambient occlusion and only generates ambient occlusion for objects in front of the camera.
As you said, ambient occlusion pops occurs when an object which was hidden by something comes in front of the camera. It is coz as soon as the object is visible to camera, eevee generates ambient occlusion causing the poping effect.
My advice would be to use cycles which generates physically accurate Ao maps


You need to use the OgreXML converter tool.
Converts the xml to binary .mesh file.
Some of the exporters will convert it in the background for you if you set up the exporter correctly. You can also do this manually.
See the wiki below for information about the converter.

http://www.ogre3d.org/tikiwiki/OgreXmlConverter


You need to use a higher value then 0 in you Mix Slider from the Glare, or the Glare wont mix in your Picture. This will make you Picture a little bit darker but the glare will be visible, you can counter the darkness with the Threshold Value.


How to make a F-curve with a constant and linear part?

Here are a few ways I can think of.

3 Keyframes, linear interpolation.

Simple driver expression   frame if (frame > 100) else 0

Or if you are using modifiers, add two generators and restrict the frame range
0 + 0x for frames 0 to 100
-100 + 1x for frames 100 to

Also, as suggested here How to change the inherited F-curve independently from the original one ?
,  I recommend you look at the NLA editor, especially for offsetting the start of actions.


Why the water hasn't the right strenght to reach and to fall at the end of the road?

There are couple of issues with your file.

Your pipe obstacle has wrong normals. The solidify modifier is applied only after the fluid simulation (see the order of modifiers), so the simulation is done using only the inner shell with flipped normals. Remove the fluid obstacle modifier, apply the solidify (check normals) and add the obstacle again.
Your inflow is highly suboptimal. Not only is it inside of the pipe, I would recommend an inflow plane altogether (if so, switch to shell)

The inflow has very weird inflow velocities They should point in negative y direction (and from some tests, they should have much smaller values).


How do I use array and curve modifiers, without bending?

Here are the sequence of steps I followed for getting the arrayed objects to follow the curve without distortion in Blender 2.82a:

I began by adding a Bezier circle object to the scene. Then I added a polygon cube to the scene. Both remain at World Space 0,0,0 (and this may actually be significant).
In Edit Mode for the Cube, I scale it along the Y axis.
In Object Mode, with the cube still selected, I create an Array Modifier. I choose Constant Offset and enter a value for spacing between the cube instances which looks good (in my case, 0.22). I do not apply the Array Modifier.
Still in Object Mode, with the cube still selected, I create a Curve modifier. I point it to the Bezier Circle as a target. I enter Y for the Deformation axis, which is the depth axis in my scene. I do not apply the Curve modifier.

Below is my result, and as you can see, there is no distortion between the edges of cubes. I do not know how you are getting distortion. I tried changing the order of my modifiers as a test, and it did not produce your results.


How can I know the data paths of certain point of bezier curve?

You can try to figure it out yourself in the Python Console, or use the API docs as described here: Blender/Python API Reference Usage: examples of how to use the API reference docs

If you search for bezier in the docs, you will find bpy.types.BezierSplinePoint.co among others. At the bottom of the page, you can find

  References

  Spline.bezier_points

So bezier_points is an attribute of a Spline object, which is in turn an attribute of a Curve object:

  References

  Curve.splines

The access path is therefore Curve.splines[#].bezier_points[#].co.

A Curve is an ID type:

  Curve(ID)
  base classes — bpy_struct, ID

which could be, for instance, bpy.data.curves['BezierCurve']. Or if you want the data block of the current object, you would use bpy.context.object.data:

import bpy

ob = bpy.context.object
assert ob.type == 'CURVE' # throw error if it's not a curve

curve = ob.data
spline = curve.splines.active # let's assume there's only one
assert spline.type == 'BEZIER' # throw error if it's not a bezier

print(len(spline.bezier_points)) # print number of points
print(spline.bezier_points[0].co) # print coordinate of first point
print(spline.bezier_points[0].handle_left) # ... and its left handle's coordinate
print(spline.bezier_points[0].handle_right) # ... as well as the right one


I  figured it out, I had to set the volume of the second and third scene to 0.


Emission Volume with transparent background not rendering correctly

Try using Z depth in the compositor to calculate transparency, instead of the Film > Transparent checkbox. I think blender is trying to calculate transparency using the surface of each material, so your volumetric material gets treated as if it is totally transparent (because it has no surface).

You can use a node setup like this:
The number in the less-than node makes it so that anything far enough away from the camera (at least 1000000 blender units in this case) gets drawn as transparent. For my test scene, the value 100 worked as well. Once you change this, you no longer need to use the "transparent" checkbox so you can uncheck it if you like.

This works because the world background has a Z depth of about 10000000000, as opposed to the Z depth of cube in my scene, which has Z depth ranging from about 5-9 (its faces are between 5 and 9 or so blender units away from the camera). Because the Z depth of the background and the stuff in the scene is so different, you can just pick a value in between and make everything transparent if the Z depth is higher than that value.


Incorrect context for bpy.ops.screen.frame_jump.poll()

OK so I found a solution for this.

It should be noticed that I just needed to run everything as a script. I however thought that the UI would help me debugging, hence i tried to run it all from within blender.

The solution was to actually run blender in background mode, and not using bpy.ops for anything else then rendering.

blender blender_file.blend --background --python script.py

When running in background mode, I do not need all the callbacks to know when stuff is done, since the code is no longer async.

Now to do the physics simulation and then render I can simply do the following:

# Reset to first frame
scene = bpy.context.scene
scene.frame_set(0)

# Run the physics simulation
for i in range(250):
    scene.frame_set(i)

# Render image
bpy.ops.render.render(write_still=True)


Makehuman 1.1.1 use mhx2 no rigify on export?

While importing there is a override exported data, check that and in that column at bottom you'll see rig type ,in that you can choose either exported rigify or exported MHX and be sure to enable autorun python scripts in user preferences.


For the record, all "Simple" Subdivision Surface Modifier does is subdivide your model, only it does it in the temporary, non-destructive manner that modifiers do (until you apply it).
Unless you are looking to add extra detail to your model, there is no reason to make a high poly version of it. It's my impression that lower poly count models are preferred on sites like TurboSquid.
Often models sold on sites like that come with 2 versions - a high poly and a low poly. The high poly generally is good for still images and renders, but has an unacceptable number of faces to be used in something such as a game engine. For this, people can either use the low poly model, or bake the normal information from the high poly to the low poly to add the look of detail without adding actual geometry.
If used in a game engine, the unmodified low poly can also be used as a LOD (Level Of Detail) model for times when the object is visible, but too far away for detail to matter. So all, in all, you should be aiming  to use as little geometry as possible in the models you plan to sell. You only need as much subdivision as your detail requires for it to "look good"


Put the Mirror modifier above the Armature and it should work fine:


How can I rename bones that have certain prefixes in their names in a script?

You can have so called key-value pairs by using a dict. Script quickly tested against Rigify:

prefix_dict = {
        "Bip01_" : "",
        "Neck01" : "Neck",
        "phy_anchor_Skirt_00" : "Pelvis",
        "spine" : "Custom",
    }

import bpy

C = bpy.context
obj = C.object

# Bone Lookup
for key_bones in obj.pose.bones.keys():
    # Check for all the keys in prefix dict
    for key_pre in prefix_dict.keys():
        repl_value = prefix_dict[key_pre]
        if key_bones.startswith(key_pre):
            # Bone found
            bone = obj.pose.bones[key_bones]
            # Rename the bone!
            bone.name = bone.name.replace(key_pre, repl_value)


You have plugged the Color output of an Object Info node into the Base Color of the Principled BSDF. I would suggest you switch to the Shading workspace to properly see the nodes in the Shader Editor. Then unplug the incorrect node connection and adjust the Base Color to your liking.
Alternatively, if you want to only use the Material Properties instead of the Shader Editor, click on the Base Color like in your screenshot and select Remove.


Adding objects in a different scene than controller's

You can't duplicate objects that are not present within the scene you want to have them in.

If they are not present already you might load them into the scene via LibLoad. I suggest to do that only when you need dynamic loading.

The easier way is to link the object (or mesh) from the original scene to the other scene. This means when you edit the object in either scene both objects get updated. Be aware: they are only linked in Blender not in the BGE. in the BGE they are two different objects.


Change the background clip after tracking - multiple clips loaded

Whatever you have as background image on the 3D view is just for viewing and work on the scene, but never gets rendered.

The background for rendering is set on diferent places depending on how you are rendering.

On the node editor:

If you're not using nodes:


How to change the current action on dope sheet editor with script?

For me this just worked fine:

#reguirement: you got action called "Idle"
csontvaz_objektumkent = bpy.data.objects[0] #this is actually the armature, but I use index
                                            #because I am lazy
bpy.context.scene.objects.active = csontvaz_objektumkent
csontvaz_objektumkent.animation_data_create()
csontvaz_objektumkent.animation_data.action = bpy.data.actions["Idle"]

I am sorry if it looks bad: I am pretty new to BPY.


You should increase the bitrate. It determines the compression of the video data.
A starting point could be to set the bitrate as least as high as in the input file, and then add the Mp3 rate of 192kbs.

1920 x 1080 = 2,073,600 pixel count
24 frames per second
4 = High Motion

(2,073,600 x 24) x 4 x 0.07 = 13,934,592 bps / 1024 = 13,608 kbps bitrate

See sections 4 (Quality versus Streaming) and 5 (Starting Points), in this tutorial.


Zoom--why does it stop so short of the primitive here?

I guess you zoom with your mouse wheel?

This behavior is because the zoom you're using is based on a focus point, which is set on the first object. There are two ways to get around:

set your focus point to your other object with Numpad .
use a "dolly zoom", a zoom which moves your view and its focus point as the same time, with CtrlShiftMiddle mouse button drag


I think it is impossible to select the whole edge using Alt+RMB. It is a matter of geometry you've got there.
 What you can do is select the upper edge/vertex and then (while holding the Ctrl button) the bottom one.

You may also select the upper vertex/edge, then (holding Shift) the bottom one and then go to Select-->Shortest Path.

QUICK TIP: I figured out that your origin point is located outside the mesh. It is a good habit to keep it inside. Being in Edit Mode select the whole mesh (A), press Shift+S-->Cursor to Selected and then (being in Object Mode) Shift+Ctrl+Alt+C-->Origin to 3D Cursor to place an origin point inside a mesh.

Note: You'll probably have to delete the top and bottom ngons to make a proper unwrap. And make sure to remove the doubles (being in Edit mode select the whole mesh [A]), then press W-->Remove Doubles).

EDIT: I've unwrapped a mesh and the UV islands look like this:

Here's the .blend to download:
http://www.pasteall.org/blend/37742


If you study the bones of a hand, you'll see that what we think of as the palm is really just the base of all the fingers connecting almost directly to the wrist. These bones should follow a similar structure.
I have literally just finished sorting out the hands in an auto-rig and this is what I had to do. This is in the step before you bind the rig.
In Edit Mode move each bone end to a knuckle or joint, near the top (the muscles are mostly underneath the fingers rather than uniformly surrounding the bone, and on top the bones are closer to the surface). Also it's a good idea to Ctrl +  R rotate each bone so that the Z axis goes through each joint, that way you won't get wonky gimbals after it's finished rigging.
Also check the rest of the rig this way to make sure everything is going to move as you want it to. Then hit Bind and it should be fine.


Arms inner part of the elbow is deformed in a circular pattern instead of a crease

Select your character in Object mode and in the Properties panel > Modifiers, put the Armature modifier above the Subsurf modifier, it should fix the problem.


How we usually go about matching the uv is to scale all the uv which are suppose to have the same materials together after matching the scale with Ctrl+A (Match island scale operation.) If this is impossible in a particular workflow. Then try the following:

We usually end up using a checker map pattern to eyeball the sizes of the checker, to approximate the scale of every surface before applying the actual material.

Create a color checker image go for 2048x2048
Apply the checker to all the surface of the model.
Enter Edit Mode and duplicate the faces in question and move it near the faces that has the scale you want to match. (Step for easier eyeball comparison)
Select the duplicated face in the UV Editor and start scaling.
Match the sizes in the checker pattern, and take note of the scaling factor
on the bottom left hand of the uv scale before hitting LMB .
Delete the duplicated face.
Enter the scale value from step 5. to the faces you want to affect.

If these answers are not satisfactory or understood, will be glad to post some images to help explain the workflow.


Show the polycount of selected objects in object mode

It's a workaround, but you can temporary hide every other object.

Select the desired object(s), press Ctrl+i to invert the selection, then H to hide : you can now read the statistics you want. Once done, Alt+H to un-hide.


If you go to https://www.blender.org/download/ and click on "macOS, Linux, and other versions" you get a choice to download the zip version as well that only needs to be extracted to run:

If you download .msi Windows installer file, you should never attempt to extract it. You should simply run it to install software from it.

You can also download any previous versions from http://download.blender.org/release/


You have to select your body, then go to the Physics menu and click Collision so that it can interact with the cloth


Condition "if" statement to change render engine modes

You don't want the curly braces around the string.

if context.scene.render.engine == 'CYCLES':
    layout.operator('render.set_internal')

Note that cycles and blender internal are not the only choices for render engine. It would be better to test if blender internal is the current engine.

if context.scene.render.engine != 'BLENDER_RENDER':
    layout.operator('render.set_internal')
else:
    layout.label(text='Blender render is active.')


If I have nodeTrees that I would like to share between Files or anywhere -> I group all the nodes I need - give it a proper name and insert the grouped-Tree anywhere else from shift-A menu...or append it in some other file.


Baking of the diffuse map turns out partly black

I just found out myself, -so for anyone having the same problem: I just deleted the material, I'm not baking onto the map and it's working. I think, I wouldn't have to delete the material, but it's just easier in my situation and solves my problem.


Vertices can be added to named groups. This information is available to the export script.


Is there a render engine with complete GPU support and Blender integration

Octane Render is the world’s first GPU based, un-biased, physically based renderer. Octane Render runs exclusively on Nvidia's CUDA technology.

You can check on Wikipedia:

https://en.wikipedia.org/wiki/Octane_Render


In the Properties panel > Object Data > UV Maps, you need to activate the UV map you want to use, which is supposed to be Slice:


How do you choose the "3D View Full" workspace?

To make your viewport size bigger you can try CTRL + Space or CTRL + ALT + Space.
If you want to create a workspace that has a big viewport:

Click the '+' button to the right of the scripting tab(assuming you haven't added or removed workspaces)
In the general section choose 'Layout'

Optional: You can rename the workspace by double-clicking on the 'Layout.001' tab

Start collapsing all the windows except the 3D viewport. This is done by moving your cursor to an intersection of 2 windows so that it changes to a '+' sign, then by dragging towards one of the windows.

Do this for all the ones you don't want.


Modifying keyframes for a mask created in the UV editor

I am not 100% sure, what you mean by "created a mask in the UV editor", because as far as I know the only way to make masks in Blender is in either the image or the movie clip editor.
But maybe I am missing something.

If you mean that you want to animate an edge of the unwrap of an object, then the short answer is that Blender cant do that.
A really quick google search unearthed this addon, though: https://www.blendernation.com/2011/11/12/animating-uv-textures/

If you are already using it and are wondering why these properties still dont show up in the graph editor, you should probably try to contact the developer directly.


It sounds like the Use Nodes check mark in the compositer is checked, but the image is not connected to the output.

To fix the above issue you can:

If you are not using the compositer on your image, uncheck the Compositing check mark in the Properties window.

If you do want to use the compositer, then you will need these two nodes at a minimum; the Render Layers and the Composite nodes.


Blender 2.79: Issue with Texture Painting

Found the problem area (due to some help on another forum), which was a slight overlook:


Need help moving a set of cubes from one end to the other on x-axis with python scripting

Modal Timer operator

For the most part don't use time.sleep() in blender, as you have seen it doesn't work as expected.

Modify the template text editor > templates > python > operator modal timer

This line

self._timer = wm.event_timer_add(0.3, window=context.window)

creates a timer that fires a 'TIMER' event every 0.3 seconds.

Additionally I've added a count class property to only move the object that many times.

For example sake, only moves the context.object edit to suit

import bpy

class ModalTimerOperator(bpy.types.Operator):
    """Operator which runs its self from a timer"""
    bl_idname = "wm.modal_timer_operator"
    bl_label = "Modal Timer Operator"

    _timer = None
    count = 0

    def modal(self, context, event):
        if event.type in {'RIGHTMOUSE', 'ESC'}:
            self.cancel(context)
            return {'CANCELLED'}

        if event.type == 'TIMER' and self.count < 24:
            context.object.location.x += 3
            self.count += 1

        return {'PASS_THROUGH'}

    def execute(self, context):
        self.count = 0
        context.object.location.x = 0
        wm = context.window_manager
        self._timer = wm.event_timer_add(0.3, window=context.window)
        wm.modal_handler_add(self)
        return {'RUNNING_MODAL'}

    def cancel(self, context):
        wm = context.window_manager
        wm.event_timer_remove(self._timer)

Related:

Time delay when selecting objects in a python script!

How to run a python script at regular intervals?

Application Timers in 2.8

2.8 brings in a new timer class.

See my answer to Blender Python: Running multiple timers

  Move an object every second

import bpy
import functools

def move_obj(ob):
    ob.location.x += 0.1
    return 1

bpy.app.timers.register(functools.partial(move_obj, bpy.context.object), first_interval=1)


You've got strips in the Video Sequence Editor, so Blender will try to render them instead of the actual scene.

You can uncheck "Sequencer" in Render / Post processing.

A good practice would be to create a new Scene (or even a new .blend) to handle the video editing separately.


How to create a 3D model of an object and then put it on the Internet in a 3D viewer

This is fairly easy to do if you are using the Blender in combination with Sketchfab since there is an Addon that is included with Blender which sends the model directly to the website for you.(Although it can be buggy so I'll show how to do it without the Addon)

At the time of writing, the free version of SketchFab allows you to upload .blend files that are a maximum of 50MB.

When the model is ready to be uploaded, you can pack all the textures individually or write a script that can iterate through all the textures and pack them automatically.  Once this is done then the .blend file will contain copies of the images.
This will be important for loading the scene file to Sketchfab, otherwise you can load them manually afterwards.

Next, go to the SketchFab website and locate the blue Upload button and then use the directory menu to select the .blend file that you would like to upload.

It's that simple to load a model, here it is shown in the interactive 3D viewer.

Now if you want to embed the model and viewer into a website click the Embed button and copy the contents of the mini popup dialogue.

Now paste this into the HTML code of your website as shown in the following image.

Here's what the page looks like after the code is embedded.  btw, the low quality banding is from the animated .gif, not sketchFab or Blender.

There is a page here that has some extra information on preparing the material so it will function correctly with exporters/SketchFab.

Exporting cycles rendered models to be used in opengl


Is there a way to have the unwrapping function not rearrange islands?

Yes - to some extent, you can pin UV's to control the placement of each island.
To control the scale and placement you only have to pin 2 uvs on the island, to control the overall shape better you may want to pin 4 or more.

See docs on live-unwrap and pinning, older wiki docs but still valid


How to disable confirmation dialogs for simple operations

About the save confirmation you could try this addon Simple Carnival Save File No Confirmation


Blender 2.83 runs VERY SLOW: constantly accesses HDD even though it's installed on SSD

This is how I fixed the problem, though Blender does still run fairly slow on this particular file since it is very large. However, I had corrupted Windows files. I didn't know that until my Task Manager started acting oddly.
This is what I did to fix:
Using the CMD application in Windows 10, as an administrator, I ran the following command: "sfc /scannow". That scan indicated I had some corrupted files.
Them, from CMD as an administrator, I ran "DISM.exe /Online /Cleanup-image /Scanhealth". This let me know the faults were repairable.
3). Then, from CMD as an administrator, I ran "DISM.exe /Online /Cleanup-image /Restorehealth". This fixed the faults.
After the above steps, my D: drive has not been being accessed at all by Windows. It's right at 0% all the time now. Earlier, the norm was 90% or higher.


How to fill the surface of a "wireframe"-sphere in Blender

You probably have curves. So when converted to mesh, they are disconnected rings or arcs but this is not visible as vertices overlap.

In edit mode:

select all
remove doubled vertices (you find that in the toolshelf on the left using T to make it appear, or press W to bring up the menu to select it from)
then once all is selected hit F

I confirm this hypothesis after a test on your file.

Concerning the half sphere, same principle but you'll have to remove the unwanted face after that:

Switch to face selection mode CtrlTab, then choose 'face'
Select it RMB
Delete it X then 'only face'


Changing 3D Perspective Views using the NumPad

Try checking Emulate Numpad in the User Preferences(Ctrl-Alt-U).


First make the rest of the bumper so that you know what shape you need to fit the grill into. Then you can use a Boolean modifier to trim away the parts of the grill that you don't want. Then move the slats of the grill forward and back to finish the shape.

It seems like you a very early in this build. Keep working at it and don't get frustrated.


Is there a way of "bevelling" a single vertex?

(edit: answer changed entirely)
(edit: thanks to moonboots for pointing out a shortcut)

Select the vertex you want beveled
Bevel it with Shiftctrl+B (you won't see any results)
Press Enter to confirm
Adjust settings as necessary


Why are keyframes occurring when adjustments are made with transform?

Check to make sure Automatic Keyframe is disabled in the timeline as shown below as the red circle.

When enabled, a keyframe will be added for anything you move, rotate, or scale.


How to switch back to default view after switching to camera view in blender 2.92

I don't know if I understand the question, but the hints given here with switching the layout and using the pie menu make me think I'm completely wrong. What I read in your question is, you were navigating in the 3D Viewport and hit Ctrl+Alt+Numpad 0. This is the shortcout for Align Active Camera to View. This means, your camera is aligned to what you see in the viewport in that moment and this is the new camera view.
Usually you only have to press Numpad 0 to switch between Camera Perspective and the normal navigation view, the User Perspective. Let's say the camera's looking on the left side of an object, and you navigate your view to the right side. Numpad 0 switches between left and right side view.
My problem is now to understand what you exactly want. Numpad 0 gets you to camera view and back to what it was before, you can toggle between them. This doesn't work if you move the viewport when in camera view, because it exits Camera Perspective and becomes the new User Perspective.
If however your camera is now looking differently at the scene than before, that's because you used Ctrl+Alt+Numpad 0. This moves the camera to a different location and rotation to fit the Camera Perspective to the active User Perspective. Switching views doesn't get your old camera view back because your camera is no longer in the same location as it was before.
To get it back the only thing you can do is Undo your action with Ctrl+Z, but as all undo actions this only works as long as you didn't do too much inbetween or didn't close and re-open your file.


The bokeh Image controls the shape of the out-of-focus area for the Bokeh blur node.

Generally, octagonal and circular shapes are very common for most camera lenses. If no bokeh image is supplied, then a circular bokeh is assumed.


In order to make lanterns being affected you should increase the mass of your particles and decrease the Gravity in the Force Field settings.

Clear the Effector Group

First thing to change is to clear the Effector Group in the Field Weights options (or create another group from the force fields). From the wiki:

  The Field Weight Panel allows you to control how much influence each type of external force field, or effector, has on the particle system.

Thus the effector is the one who affects on the particles, not the one who is being affected. And in your file, the group which contains meshes and lamp was set as effector.

Increase the mass of the particles

In the Physics scroll increase the mass of the particles. As they were too lighweight they began to fly away immediately.


Animation Nodes : how can I switch between different setups?

Animation Nodes Object Container

The Animation Nodes Object Container is created as a helper object for the Object Instancer node, in other words, it is only created when the Object Instancer node is used. Notice that it doesn't get removed when the Object Instancer node is removed and it is a single object even if you have multiple Object Instancer nodes.

Node Trees

If multiple Node Trees are presents, all of them executes based on the defined Auto Execution settings. So if both have Always option enabled, both will execute simultaneously. So there really isn't an "Active Node Tree". Subprograms are shared across Node Trees, so you can call a subprogram defined in one node tree in another.

Animation Nodes provide a fast way to disable/enable Auto Execution for the available node trees, this is done through the Overview Panel:


Does "importing key configuration" (shortcuts) only add keys?

A saved key configuration keeps track of added, removed and modified shortcuts. In fact, it is merely storing differences from (changes made to) default configuration. And when reloaded, it re-creates default keymap, and 'replays' stored modifications over it.

This system also allows to support (relatively) well changes in default keymap, without totally breaking or leaving customized one in frozen, old state.


Sculpt and Texture Paint brushes can be imported as any other thing you might want to import/export between .blend files (objects / meshes / materials etc.).

Create new Sculpt / Texture Paint brush. Adjust its settings (in particular, change its name for something recognizable). In example below the brushes' name starts from "export-Brush...".
Save file which will be used as library (you will import from it).
Open new file, navigate to File > Append, find your saved file. When Blender's file browser enters file's contents, choose Brush.

Both Sculpt (default and non-default) and Texture Paint (only created by you) brushes will be stored there. You'll see there as many brush sets as there were  additionally created in the original file.

Note:

You can link brushes instead of appending if you want to avoid editing them.
You don't need to pack textures in the main file if image textures were used; they will be stored in the brush settings. Note though that if file with imported brushes will be moved somewhere (or texture file will change its location) you'll need to provide it with textures in order Blender to find them.


Background script only works when BGE player stops

I found out that you can make the script run in a loop by doing this:

Which allowed me to remove the thread and the infinite loop from my code:

print("---------------------------------------------")
print("Begin collection")

import serial

port = 'COM5'

def acc_data(ser):
    raw = ser.readline().decode("utf-8")
    data = raw.split(",")
    try:
        pitch = float(data[0])
        roll = float(data[1])
        print(str(pitch) + " " + str(roll))
    except:
        print("Only one value read")

try:
    acc_data(serial.Serial(port, 115200))
except:
    print("Unable to connect")

print("End collection")

This is what is printed in the console:


Smoke simulation is not seen when I activate noise (Blender 2.83)

Hi there I am having the same problem - noise causing the simulation to disappear altogether after the bake. This seems to be a recent problem so it may be related to the update to 2.83.4. I don't have time to check, but you could try downloading or going back to an earlier version of Blender and seeing if the issue persists there. Please report back to let us know whether that resolved it - then we would know that it was a bug.


You will have to render without DOF, and add it in during compositing in order to get clean IndexOB masks. Otherwise you'll probably have to separate via layers if you want in-camera DOF.

Alternatively, you could try this solution, which creates a second Scene, linked to your main scene with the camera DOF turned off. That way your second scene would have IndexOB masks with clean edges, and you can work with both scenes in the compositor. Would that solve your issue?

I'd be interested to know your final pipeline, I'm dubious that the clean masks would help you modify your DOF renders, but I would be interested to see more about it if it can.


2.9 dirty shading on model in object mode when subdividing?

There are several problems. Here a short summary ;-)

apply the scale in Object Mode (Ctrl+A) as recommended by JacksonPro in the comments.

disable Normals → Auto Smooth in object data properties

remove/disable the modifiers

delete half of the mesh and add a Mirror Modifier

Fix the oral cavity. There went something wrong. The bottom of the cavity is connected to the upper lip and vice versa. I've added a seam, selected the cavity with L up to the seam, and separated the mesh to get an overview. It's twisted.

Fix the toplogy/edge flow. (Especially the mouth needs a horizontal edge loop to separate the lips. I've added an edge loop (Ctrl+R) to the corner of the mouth, and used the knife (k) to connect it to the next pole. Then I've done a lot of dissolve edges (X) and knife cuts to create a clean topology. It might be not perfect but to give you an idea. You can add a few more edge loops to the eyes (Ctrl+R) around the eyes if you want to animate the eye lids.

Smooth out the mesh in Sculpt move with the Smooth brush at low strength (~0.18)

Apply the mirror modifier. Then you can start work on the eye. This should be fairly easily done with the Deformation or Grab brush in Sculpt mode. Have fun!


Partial transparency with node editor ignores other objects behind (draws world background)

What I now found out thanks to this video (https://www.youtube.com/watch?v=BKxUKzpx--s), which showed me a slightly different way to get my transparency problem fixed, might be just a solution that was fine for me, because I will stick to game mode anyways.  So others who have the same problem and have no use for 'Blender game' might be dissapointed. It only helps in that direction. (Means, if anyone else has got a concrete solution for nodes editor in blender render, shall feel free to share their knowledge^^)
 ---
After I switched into Blender Game, I went to the materials-tab.  There showed up an option that I desperately needed. It's called "Game Settings" and I just needed to scroll through the options to select 'blend alpha'. This made the texture show up with a blended alpha that worked fine.
When I switched to texture view, the texture still looked wrong; not transparent. I checked the transparency-panel in materials-tab, selected raytrace and set alpha to 0. Now the whole object appeared almost invisible.
After I then switched to texture-tab and selected full alpha control by the texture, the surface acted like expected.
Here the screenshots of the told settings:
Materials Tab Texture Tab


The problem here is that either "scene lights", or "scene world" is unchecked in the Viewport Shading settings menu. See image:


I figured it out, all I had to do was copy all the associated PNG files to where the exported FBX file was located in my Unity Project


Clock with single hour hand to show current local time on running script?

Rotation by Driver
Some small sample to look at some of the numbers and a simple Driver
import datetime
import bpy
n = datetime.datetime.now()
print(n, n.hour, n.minute, n.second)
#allow this new rename of an existing function to be seen in Blender Drivers

bpy.app.driver_namespace["mytime"] = datetime.datetime.now

#in the driver called as mytime().hour (minute second)
#mytime().second * 2 * pi/60 the formula in the driver please improve
#your correct formula would use hours and minutes

In the text window we inform the driver namespace of a function that we can reference in the  driver.  This script needs to be run once.  You can investigate further enhancements.
In the image you see a driver that refers to that same function. Please click on the image to see it larger. You can see the driver options by context clicking on the rotation value. Please improve the formula. The driver is on the rotation and is seen as the purple color.  The driver window indicates this at the top.  Please excuse my second rate registration.  You see the formula which refers to the same function reference we created in the script. The function will only update when you move the frame position.  The animation is to get you started with some discovery on your own.  Perhaps you can show your improvements.
If you do not know the basics of using a driver then there are examples here at Blender Stack Exchange BSE and the website that has a name that rhymes with noonoob. What is written in this proposed answer is not a tutorial.


How delete a pythom list from scene ID properties?

del C.scene['mylist'] is a standard way of removing keys from dict-like objects in Python. It seems to work here, but I don't know if there are any pitfalls for doing this in Blender.


How to import NGONS from Lightwave to Blender?

By default, the OBJ file exported from Lightwave supports N-gons.
When importing it into Blender, it will import Ngons by default. Make sure it is enabled in the Import Window:


No, you can not interact with the Motion Path (the white dotted line with yellow keyframe indicators). It is merely a visual reference.

You can edit the motion of the object ...

by setting additional keyframes.
by changing the keyframe interpolation or bezier types in the dopesheet
by changing the F-Curves of the animated channels in the graph editor
by animating it along a path with a Follow Path Constraint

Editability of the motion path may be achieved through the addon Motion Trail Addon:

Blender Addon List
BlenderArtist post

Motion Path Addon (gif)


How to perform element-wise multiplication with mathutils.Vector?

I am amazed mathutils.Vector class does not support vector scaling by another vector!

This can be for example useful when you get scale vector from matrix decomposition and you want to scale other vectors accordingly.

This is with a generator expression for better performance:

vec3 = Vector(x * y for x, y in zip(vec1, vec2))


Sniper bolt warping when rotated in pose mode

If a vertex is assigned to two or more bones, its movements will be conditioned by the position of all the bones involved, while if it's assigned to one bone only (even with a small amount of weight) it will follow the movements of that bone exactly.

The "correct" way to rig, in your case, could be to have a bone controlling all the gun except the bolt vertices, and a second bone - child of the "main" bone - controlling only the bolt vertices.

In this way you can avoid any deformation of the objects.

Don't use automatic weighting, use "with empty gorups" option instead, then select all the bolt, select the bolt bone's vertex group and click "Assign" button underneath the vertex group list.

Do the same for the main bone (which has to be the parent of the bolt bone), selecting all vertices except the bolt.


normals changed after separating object in 2 pieces

Normal at a point P is a vector that is perpendicular to the tangent plane to that surface at P.

That means when you separate the mesh the Normal will be 90 degrees to the surface at the edges.

To fix that issue you can copy the original sphere and use it on both parts in a Normal Edit Modifier.


glass shader that doesn't show the back of the object

The simplest way how to do it is use backfacing as a factor. This node setup will remove faces on back of your character.

SHIFT + A -> Input -> Geometry


Why do gaps appear in my mesh when I animate it?

Unjoined Vertices

The problem of parts separating from each other during animation is not due to weighting, but rather to the fact that although the mesh looks like it is all joined together, many of the vertices are not in fact joined together.

For example, in this mesh, the three planes are considered by Blender to be one object, just like all the parts of your figure are considered one mesh, and they look like they are all joined into one piece. However, when you move some of the vertices in Edit mode, you find that some of the vertices of one plane are in the same spot as vertices of another plane, but they are not actually joined/merged into one vertex:

In this case, you have several places where two vertices are in exactly the same spot, but are separate from each other.

To solve this, there is a tool called Remove Doubles, which merges vertices within a certain very small distance of each other, usually almost right on top of each other.

You can access Remove Doubles many different ways, but all must be done in Edit mode and will effect only vertices that are selected. So, for your model, I would suggest:

Select your figure → TAB → select All (A) → W → Remove Doubles

When you do this, Blender will tell you how many vertices were merged/joined together up in the top right corner of the Info header bar:

In your model, there were 878 pairs of vertices that were merged, thus effectively "removing" one vertex from each pair when the two were merged.

So, this joins shut many holes in your figure so they will not come apart when you animate. However, there still are places where the vertices were too far apart for Remove Doubles to merge them, so you have to merge them by hand using AutoMerge Editing.

AutoMerge Editing with Snap To

AutoMerge Editing is an option you can toggle on and off via the AutoMerge button on this 3D View header while in Edit mode:

When enabled, as soon as a vertex is moved close enough to another one, they are automatically merged.

In order make it easy to get the vertices to move together more easily, enable Snap To Vertex in the 3D View header while in Edit mode:

This will cause any vertex you grab and move to snap to nearby vertices, and with the AutoMerge enabled, they will merge and close one more hole in your figure.

Select Non-Manifold Vertices

However, one of the last remaining problems is locating all the holes in your figure so that you can close them. To do this, while in Edit mode use Select Non-Manifold Vertices via CTRLALTSHIFTM. This will select all the vertices that are part of a hole in your mesh, which you can then start to grab and automerge together:

After you've merged some, use CTRLALTSHIFTM again to find more needing to be merged.

However, one thing to note is that on your figure's hair, each vertex along the  edge is considered non-manifold and so will be highlighted, but this is not a problem, since the hair is just a flat surface, rather than a volume. 2D flat surfaces (planes) are considered non-manifold, so all edge vertices on a flat 2D surface, like your figure's hair, will always be highlighted when you select non-manifold geometry. Thankfully, though, that's not a problem for your animation.

Tips to Avoid Gaps in Meshes When Modeling

When you are creating a model and you are trying to avoid having gaps in your mesh, here are two tips to help:

Enable AutoMerge before you begin editing. This will reduce the need for Remove Doubles later on
Use Snap To Vertices to make sure your vertices merge easily


Cloth simualtion (pinning) multiple times on the same model

For such a model it should be sufficient to model it by hand using the cloth simulation would be a task too complicated for a model such as this. Using box modeling strategy and maybe subdividing the faces would suffice.

This is Unless you will be animating the model too, then cloth sim is the way to go.

Define the basic form of your model.

You will want to apply Edge Crease at the top and bottom of the model.
Apply a subdivision modifier.


Texture in render does not appear the same as it is in 3D view

Viewport texture coordinates

The texture in the 3D view while using cycles are currently (2.77a) placed on the object's surface using the info from the selected UVmap, not from the node tree.

In your case the image you see in the 3D view in texured mode (UV) is probably placed in a different way than how it would with the material's coordintes for the texture /Generated).

Nodes just don't work (yet) "live" whith the material's node setup.

I personally think it will be improved and work the way you tried, there are already some signals around (e.g. it works already for the world background, it is one of the target of the viewport redesign project...), but at the moment, in order to get the result of your node setup, you must use the rendered view.


Building corners: How to connect 2 walls with a straight corner

3 methods (or surely more):

1/Bridge edge loops (1):

Select the corresponding vertices
CtrlE then bridge edge loops
Select edges from bottom to top CtrlAltRMB
Scale 0 using individual origins as pivot
Remove doubles
Select the corner
Scale by 2 for X and Y from the cursor placed at the inner corner

2/Bridge edge loops (2):

Select the corresponding vertices
CtrlE then bridge edge loops
Set number of cuts to 1
Set interpolation to blend surface
Set smoothness to sqrt(2)

3/Rotation

Select the wanted vertices on one side
Place the cursor at the inner corner
Set the pivot to 3D cursor
Rotate 45 degrees
Scale sqrt(2) for X and Y
Do the same for the other side


Most ideal way to connect two parts of a mesh when one has multiple faces?

When connecting a high poly mesh to a low poly mesh you can progressively reduce the vertices in several steps. This can be helpful if you don't want the extra vertices to continue through the entire mesh.

Here is an all quad sample that takes three steps to go from 22 to 2.


including decals in weight painting for rigged models

I think that you should be able to make use of 'empty weights' and mesh data transfer to copy the weights from your weight painted body to the separate clothes.
I came across this useful answer that should hopefully be of use to you : https://stackoverflow.com/questions/34719718/transferring-rig-weights-from-one-mesh-to-another-in-blender-2-76/34760742#34760742


No, you can't use OpenGL in the background. You shouldn't use the -b flag, and instead, close Blender in the end of your script using bpy.ops.wm.quit_blender().
Blender creates screenshot using python script but not when running in background
Render with openGL from the command line?


Why are some materials not showing up in Solid view?

When you set a material in the Blender Internal render engine, then it automatically sets the viewport color for you, unlike the Cycles render engine which you have to do manually. When you switch from Blender Internal to Cycles, the Viewport Colors remain.

To set it in Cycles, go to Materials > Settings and change the Viewport Color value:


It looks like you may have some flipped normals. Try checking and recalculating their direction. (if you don't know about normals use this)


Loop cut and slide didn't complete the loop

When a loop cut doesn't complete, it is usually because it hits a triangular face.

Before you did the loop cut, you have a misplaced quadrilateral. On the corner where the cut ends, there is an extra edge. If you move to the bottom corner of the object where the line is, there are two extra vertices.

The image below has the vertices highlighted.

Delete these vertices and then try and complete the loop cut.

You have to ensure that no extra faces like in your mesh exist. If a loop cut fails, your mesh will almost always have an error like this or a triangular face.

Good luck with your project and I hope I helped,

BFB


Fade out objects WITHOUT use of materials

When you create your material, just add a transparency node and mix node. You don't need more materials, just add the shaders and key frame the transparency with the mix node. You can group them and reuse also to save time. That's for Cycles. If you use BI, just key frame the alpha in the output node of your material.


Array modifier working, but not doing what I need

You want your stairs to follow the corridor orientation (I put the origin to the geometry so that we can see the XYZ local or global orientation):

The Array will use the local XYZ to duplicate the instances (here the object local orientation is still aligned with the global orientation).
For example if you set 1 on the X axis in the Array modifier it will mean that your mesh will be duplicated on the local X axis and that the duplication will perfectly stick to the original mesh (and if you enable the Merge option, once you'll apply the modifier, the vertices of the original and of the duplicationss will automatically merge).
If you rotate the mesh in Edit mode, like you're trying to do currently, it will make the work a bit more tedious than if you kept it aligned with the local axis, because the values that you'll need won't be 1 anymore, you'll need to find them visually. In some cases you need to work that way, but in your case it would be much simpler to do that:

In Edit mode, align back your stair with the global axis (or recreate it):

Use values of 1 for YZ:

Go back in Object mode and rotate your stairs on the Z axis so that they follow the corridor orientation, to be more precise you can press Shift after having pressing RZ to rotate:

Also, this method has another advantage, if you need to make some changes to your stairs, you won't have to change the XYZ values, the instances will automatically align correctly, as they are still aligned with the local axis.


The topology is bad, it creates bevels where you are not expecting bevels, therefore overlapping faces. You need to create a good topology, with quads and not ngons:


Safe a .tga file in the same location as the A.blend and Z.blend file.

Go to the location where A.blend and Z.blend is saved.
Create new folder call it "texture"
drop .tga file in the texture folder.

To recap if your A.blend and Z.blend file is in E:\mesh\
then your texture must be found in E:\mesh\texture\

A second solution would be to pack the image file inside the blend file.
In your case Z.blend needs to have a packed copy of the .tga in question.

That was how blender game makers pack all their textures, when they ship their game out for others to download for play testing. In this way the client will
always have all the texture require for the game to look good.

Hope that helps.


Sometimes Importers will separate things into multiple meshes, or even multiple separate objects. It looks like the mesh in the picture is still one object, but the mesh has been "cut" along various seams. First thing to try, in Edit mode, select the entire mesh, open the space-bar search, and and find the "Remove Doubles" tool. You may have to adjust the merge distance option, depending on the size of your mesh.


Setting default file format when saving baked textures?

To change the default image file type produced by Blender, you actually want to change the image settings in the Render panel.

To change the default for a single file, go to the Properties>Render panel and scroll down to the 'Output' submenu. Then select the file format and BW/RGB/RGBA to your desired format.

If you want to set this as your default image type for all of your projects, first open a new file or open a new instance of Blender. Change the settings to what you would like to be default, then press Ctrl+U.

This changes your startup .blend file so that when you open future projects, they will come preloaded with these settings. It will not affect any of your old .blend files.


Importing into AutoCAD - Does not preserve scale

There are a few things to check and keep in mind when exporting to other software. I don't know if this will help your specific issue.

1) Make sure your objects all have their scale applied (scale should show as 1:1:1 in info panel) before exporting. You may also need to apply rotations in some cases.

2) Changing the units in blender generally wont be preserved when exported. When you need to preserve the size in an external program, prior to 2.8 I would recommend setting Unit System to none. In 2.8 just leaving it in the default metric units also seems to be fine. In either case you are working under the premise that 1 Blender Unit is equal to 1 Meter.

If you want to work with a more convenient unit size, for example if you wanted to use CM or MM instead of Meters. You would have to also change your Unit Scale setting to match. So if you changed Length to CM, you would need to change Unit Scale to 0.1. This works fine when exporting to things like Stl.

3) Finally there are the export settings, which usually the defaults of are fine. But you may need to change things for your specific target, especially when you are exporting to a proprietary format which is then going to be read by something which isn't the editor of that format. The AutoCAD exporter settings are going to be aimed at making a file that AutoCAD will edit, which may not be exactly what the CNC software expects.


Reset move gizmo to object face or geometry

Its quite easy if you are using the latest blender versions. After you have rotated your object and applied the rotation, simply go to "Options" and select Affect only - origin.

Now you can simply rotate your Origin using either the Rotation tool or Rotation Shortcut "R".
After you are done rotating the origin you can exit the Affect only - Origin mode.
Note : You can not only rotate the origin, but also can Move the origin and also use Snap features.


Yes, Vertex Groups doesn't work.
In Blender 2.81 (or more), I use Face Maps.

It works like Vertex Groups but it is for face.
I am not sure if 2.81 is the oldest version that has this feature.


Why is Blender recording keyframes any time I transform an object?

I guess you have turned on the auto keying on top of the timeline. Click on it again to switch it off
If you have used it recently on one or two objects just press ctrl+z to undo everything.Otherwise pressA  to select everything , hover your pointer over the timeline pressA again to select all keyframes and press x to delete all keyframes .Now you can reposition or rescale each object.ta-dah!!


How to create a face when only one vertex is selected?

Looks like blender has an addon called 'f2' mode.  Enable it, and then you can create this sort of quad just by pressing F.

http://wiki.blender.org/index.php/Extensions:2.6/Py/Scripts/Modeling/F2


First, select the arms and Clear the Parent.

Now select the arm again and Set Parent To Bone.

I think the vertex groups are not painted well.

I repainted the meshes but the result was not so good.

The best thing I could do is to reparent the objects.

See the image below:

More:

It's a good practice, as soon as you unparented the objects, to delete all the vertex groups of that object.


I think I found your problem. Your compositing node setup looks like this:

You need to switch the node paths going into the Alpha Over node on the left so that it looks like this

I think that will solve your problem! Before you were layering the black background over the blue particles but if you switch them like in the second picture, the blue particles are going over the background!


Cycles Rendering Problems on the RX 5700 XT on Windows and Linux

I also got the problem. It only works with  the Enterprise Driver from AMD. https://www.amd.com/de/technologies/radeon-pro-software
With every other driver than that, I dont get any render on GPU running with my 5700xt GPU.


How do I make a script for adding modifiers?

I can just grab the length of the number of modifiers and then subtract it by one to get the index.

        bpy.context.object.modifiers[len(bpy.context.object.modifiers)-1].name = name
        bpy.context.object.modifiers[len(bpy.context.object.modifiers)-1].vertex_group_a = vertex_a
        bpy.context.object.modifiers[len(bpy.context.object.modifiers)-1].vertex_group_b = vertex_b
        bpy.context.object.modifiers[len(bpy.context.object.modifiers)-1].mix_mode = 'ADD'
        bpy.context.object.modifiers[len(bpy.context.object.modifiers)-1].mix_set = 'B'


How is it possible to have a add-on run immediately after you open blender?

If you launch blender from the command line, you can designate a startup .py file which could either be the addon itself or trigger the loading of the addon.

Sample cli command:

blender --background --python startup_script.py

Depending on your OS, there are different ways to make the command line call clickable as an executable app for convenience.


Use the three buttons in the Video Sequence Editor header to control the view mode. Either Sequencer, Preview or Both.


Stop a long running operator with escape?

This can be done with modal operator (you can find example here, look for 'Modal Execution'). I'm not sure about redo panel but executing some function on Redo can be done with handlers bpy.app.handlers.redo_pre or bpy.app.handlers.redo_post. Just append your cancelling function to them, like this:

import bpy

def my_func(self, context): # must have 2 arguments (3 if called from class)
    print('Got Redo!')

bpy.app.handlers.redo_pre.append(my_func)

It will be executed on each redo. Use bpy.app.handlers.redo_pre.remove(my_func) to remove redo handler or bpy.app.handlers.redo_pre.clear() to clear all redo handlers


in render properties -> hair -> change strand to strip


How can I use the Corner pin node interactively?

You can use the Movie Clip Editor 'tracking tools' to provide the vectors.

Open an MCE window and import your clip. Check the dimensions in the
properties panel by pressing the N-key. You should see the image's
Dim x and Dim y value as "Size"
Add four trackers ctrl-click from top left clockwise to bottom left.
Open the Compositor and add to your image a Corner Pin node.
Then add a Track Position node / Map Range node (x2) / Combine RGB
node.
Set the Map range node for the track position x value to Dim x (from
the tracker properties panel), with 0 as the minimum.
Set the Map range node for the track position y value to Dim y, with
0 as the minimum.
Send the Map range node 'results for x' to the RED input of the
Combine RGB node
Send the Map range node 'results for y' to the GREEN input of the
Combine RGB node

Repeat for all four corners, or duplicate the group of 4 nodes 4 times.


how do i navigate blender on a vaio z canvas

I'm not familiar with the Vaio Z, but if it supports multi-touch, try dragging/pinching with two fingers. (This is how it works on a Mac OS X trackpad.)


BGE. How do I make the plane stop the ball

First, set the ball to dynamic or rigid in the properties toolbar under the physics tab. Then set the plane's physics tab to static if you want it to remain still.

If the ball still goes through. In the same physics bar tick "collision bounds" and put respective collision bounds to each item. I guess box to the plane and sphere to the ball.


Blender 2.76b wont install. Error Message pops up

I also had this problem using chrome, trying all the available packages, downloading to various places including desktop, and running after saving.

I switched to Windows 10 Microsoft Edge browser and was unable to download the installer.  However I was able to download the zip file correctly and run blender from there.

Moral of story, keep trying different things until something works....


When exporting an H.264 video, why is the resulting file's extension .avi?

H.264 is a codec and MP4 is a file format. An H.264 stream can be contained in several different file formats, e.g. AVI, MP4 or MKV, and most file formats can handle several codecs.

Video file formats, such as AVI, MP4 or MKV, can handle multiple streams, and most commonly contain one video stream, one or more audio stream(s) and possibly one or more subtitle stream(s).

Simply renaming an AVI file to MP4 won't make it an MP4 file, though most players will detact the actual format and ignore the filename extension. To convert an AVI to MP4, you'll need to re-multiplex it. Multiplexing is the process of combining the different streams into one file and write the proper metadata. This can be done without re-encoding the streams.

I just had a quick look, and I can't find an option to save as MP4, and unless someone has a solution for that, it looks like you'll need an external program for this. If you need/want a GUI application, Avidemux will do nicely for simple re-multiplexing and even some filtering and re-encoding. If you're OK with commandline programs, I recommend FFmpeg.


Using 2D / 3D textures with volumetrics?

Sure you can use 2D/3D textures with volumetrics.

All procedural cycles textures will be 3D and you can use them for example like this:

Or you can just project 2D textures on your mesh too, this is the same cube with some mask:


The character arm rotates the wrong way after 180 degrees

The answer turned out to be simple. For the arm to rotate the correct way, it simply had to have all of the bone rotation values inverted.

The values were previously,
W: 0.262,
X: -0.720,
Y: -0.604,
Z: 0.220,
but were inverted.


How to ensure all headers are at the top of the editors every time

Script using bpy.ops.screen.region_flip

The following script flips all area headers in all screens in window to top.  To flip to bottom instead change if region.type == 'HEADER' and  not (region.y - area.y): to if region.type == 'HEADER' and (region.y - area.y): ie remove the not.

import bpy

context = bpy.context
c = {}  # override dictionary
window = context.window
c["window"] = window
for screen in bpy.data.screens:
    #window.screen = screen
    c["screen"] = screen
    for area in screen.areas:
        c["area"] = area
        for region in area.regions:
            if region.type == 'HEADER' and  not (region.y - area.y):
                c["region"] = region
                bpy.ops.screen.region_flip(c)

EDIT: note some, and in particular 3D areas, don't flip correctly and stay on bottom, but pro-port to be on top by the "flip to bottom" tooltip in UI. (only the tooltip toggles, not the header)


Boolean modifier not working and also material not applied

You can expect that behaviour of boolean modifier, if you try to cut in ngons (face with more then 4 vertices). Blender is smart enough to cut it smoothly in other parts of the mesh, but in this particular part, something went wrong. Fortunately boolean works, but not in perfect way. Here you'll see how to fix that and that you can apply material to your mesh without problem.What I didn't show in this short .gif is that you should always have normals pointing outside so you need on all your meshes in edit mode, with all faces selected press CTRL+N to calculate them.


Making Wave Texture Material Like Cardboard Flute

That can be this setting:

Using:

We have four input parameters:
Scale: to control the scale of the pattern
Length: the wave length
Interval: threshold between each line
Height: the height of the wave
Then,
From X (scaled by scale * length), the sine.
From Y (scaled, reduced to the interval, recentered around 0 and multiplied by the height) the value to compare to the sine.


Displacement on a cylinder or creating a texture roller

1.Add a cylinder, adjust its scale in edit mode and cut the faces to squares with Ctrl+R, mark a seam and unwrap it.

Add a subdivision surface modifier with 3-5 viewport value and apply it.
Browse in your texture in the "Texture" properties tab.
Add a displace modifier, select your texture, set the coordinates to UV, set the Midlevel 0 or 1 to preserve the original geometry and set the strenght to a low value then apply the modifier.


can't find the Blender ID add-on sign in

The addon is shipped with Blender :). It's called Blender ID authentication

Enable Blender ID authentication addon in Preferences > Addons
Log In
Download and Install BlenderCloud add-on directly from the .zip file (don't unpack anything)

Here's a screenshot of both Blender Cloud and Blender ID addon in my Blender.


Shading issues on inside surfaces when using Boolean

You could try shift  N to fix normals or removing doubles and if that does not work try adding an edge split modifier


If don't want to have perspective effects you change your camera to orthogonal.


Nested For Loops: How do I access objects created in a nested for loop?

Create a list in a scope of the code where these objects will need to exist. Use the for loop to add them to you list. Access those objects from that list.


Shadows not rendering properly in cycles

In order to fix the shadow clipping, I doubled the max total and transmission light bounces from the default of 12 to 24.


Baking cloth simulation use only 20% of cpu ressources, how to get 100%?

Do you have a quad core? Simulation calculations are not multithreaded, and so cannot use more than 1 core at once. If it's using up a single core of your quad core, that'd be your 20-25%. There is no way to increase this unless someone gets a multithreaded physics algorithm into blender (these exist, but they are complicated and there are caveats. The program Marvelous Designer has multi core cloth sim, and maybe some other expensive programs.)

However, you could run multiple entirely separate physics bakes, or bake physics while rendering or performing other tasks.


Remove the sub surface modifier
Delete the center edge on both sides
Select the big and small edge and press F to fill the edge. With the f2 addon just press F until it fill all the edge. Repeat on both sides
Then add the sub surface modifier
If you need smooth inner side add crease.


Getting associated texture with an exported wavefront object

The OBJ consists of two parts:

.obj file with the geometry etc.
.mtl the material library with the associated textures

when you export from blender, make sure you check the "write materials" checkbox. (then you get the .mtl file)

The other thing that is relatively annoying with blender is that it exports absolute paths to the textures. Some applications expect a relative path though. You can open your mtl file in a text editor (e.g. Sublime Text) and change the paths manually.

hope that helps.

edit: the obj format is relatively easy (so is the mtl) you can basically write/ manipulate your materials in the text editor (add/remove textures, change or add values)


You can toggle selecting all elements with A.
Some other basic selection tools are:

Circle select (C), which allows you to select with a brush:

Border select (B), which allows you to select with a rectangular region:

Lasso select (CtrlLMB), which allows you to select with a free form region:

To select all elements under the cursor, you can either select in Wireframe view (Z), or disable Limit selection to visible in 3D view > Header:

Otherwise only visible elements will be selected. (Elements behind other geometry will be ignored).
Also see the wiki for more info about selecting.


In this case, the specific bones affecting the vertices needs to be found. Once that process is complete the bone weight can be removed completely by removing the vertex from the bone's Vertex Group or the bone weight painting for the unneeded bones reduced to zero.

With the low poly density in this case

Select the mesh Object.
Enter Edit Mode.
Select ONE vertex. (One in the Thigh to Calf area for the above image.)
Open the Properties Menu. (N key by default.)
Locate the Vertex Groups Pane on the Properties Menu. It can be noted by the listing of any Vertex Groups you have defined and the Normalize and Copy buttons.

All Vertex Groups influencing the selected vertex are listed in this pane and by how much in a 0.0-1.0 scale. It is highly likely that a child bone (Most likely a fingertip in your example rig; as alluded to by Leon Cheung.) is weighted to the vertex. Any weight, even a minute 0.000001 can influence the mesh if no other bones are acting on a vertex.

This process may have to be repeated for multiple vertices. A slightly quicker way to remove vertices from unwanted Vertex Groups can be used if there is a pattern. Once the offending bone is found: select a group of vertices to be removed, open the Properties Window (found between Logic Editor and Outliner) / Object Data Panel (found between Object Modifiers and Material) / Vertex Groups Pane, select the "bad bone", click Remove.

The most likely suspects in your example rig would be Finger_Middle_3.L, Finger_Index_3.L or Finger_Thumb_3.L. All are lower than the other bones and close to the model's robe.


Is it possible to obtain float RAW pixel values using the Viewer node?

The API doc says:

pixels

  Image pixels in floating point values

  Type: float in [-inf, inf], default 0.0

src: https://docs.blender.org/api/blender_python_api_2_75_1/bpy.types.Image.html#bpy.types.Image


How to render an image with edits based on custom input, from the command-line?

Ok, so I'll attempt to answer this one. Some of it will be pseudocode, and some will be actual code.

The basic pipeline would be:

Javascript submission of camera data in the form of text variables to your web service. The syntax of this data will be up to you since you're building the web service api yourself.
Once the request has been made and received by the web service, your back end code will need to generate a Shell script command to call an instance of your blender application on the server.

Syntax would something like:

blender -b scene.blend -P pythonscript.py -o //outputpath -F PNG -x 1 -a -- camVar1 camVar2 camVar3

where

scene.blend is your scene file on the server
pythonscript.py is your launch script that will process your input
variables
everything following the "--" are raw input variables and the camVar values are written into the command from the backend code

Your pythonscript.py file will start like this:

import sys

# these variables are read backwards from the end of the shell command
camVar1 = sys.argv[-3]
camVar2 = sys.argv[-2]
camVar3 = sys.argv[-1]

See also: How to pass command line arguments to a Blender Python script?

Then in the same python script you can set the camera properties from the input variables, and render out the image to the output folder.

The web service backend would have to be monitoring the output path for the rendered image to be written, and then serve it back to the initial web request. It may not be fast enough for an immediate web response, so you may have to serve the image via a image link notification.


Activating Vertices and Edges selecting modes simultaneously

In 3D View, you can change your selection mode by clicking the related buttons (check the image) you can activate 1 selection mode, or 2 by pressing Shift and clicking the related button, or you can activate all of them using the same method, so you can activate Vertices, Edges and Faces selection modes at the same time.
In the image you can see I have both Vertices and Edges selection modes activated.


Objects are moved when file is re opened

I’ve found the reason and a possible solution.

Reason:
All of the misbehaving objects are set as children of some weird object.
It probably happened during import.
As you can notice, all of them have location set to zero (0,0,0) without physically being at zero point.
Weird right?

Solution:
1) Select all objects through Select->All
2) Clear the parent by Object->Parent->Clear and Keep Transformation.
This will clear their relationship, but they’ll stay in place.

And you’re done.
All of the objects will be where they’re supposed to be, and they’ll stay there.
You can save the file, reopen, whatever.

Additional tips:
1) Check all categories in outliner - its a messy file, and this will help you with orientation.
2) Clean up the file
The file is full of empty text objects and curves.
They were created during import, but now are mostly useless.

Check all categories in outliner.

Hope this helps.
If something ain’t clear, let me know.


How to stick a curve (with shape keys) on rig?

You can't assign curves to armatures directly nor can you weight paint.

Only workaround I know is using Hooks

You can either select your armature then enter Edit Mode on your curve, select all desired vertex and assign a hook, or manually add a hook modifier and assing the vertex afterwards.

You can hook to the whole armature, or you can hook to individual bones. Matching rotations will be an issue, but it should keep any shape keys working.


Select 370z and hit ctrl+a and aplly scale and do this for its wheels , set wheels to no collision(physics tab). Also set Camera 2  camera object to 370z(logic actuator) if you are making split screen multiplayer game


What's the difference between Normal and True Normal?

The Blender Wiki states that

  Normal = Shading normal at the surface (includes smooth normals and
  bump mapping).

  True Normal = Geometry or flat normal of the surface.

The normal value takes into account your shading technique, while the true normal uses the actual face direction.


Circle brush

You can use Curve to change your tip sharpness. There are six presets for them and you can make your own as well.

Curve types:

Square brush

The best way to have square tip or any other shape is to prepare one in 2D software (Krita, Gimp, InkScape, Adobe etc.)

Make tip shape white and transparent background (for convenience sake) make it pretty big for good quality (4k in my example) and save it as PNG with Transparency then setup Texture Mask as below:

Blend file (square tip texture packed)


"Shadow" Option isnt showing in the Lightning Settings

If you click on Light (in the Object Data Properties), you can then uncheck the Cast Shadow box. Alternatively you could select an individual object, go to Object properties, click on Visibility and uncheck the Shadow box. All this applies to Cycles, found in Render Properties > Render Engine.

If you set the Render Engine to EEVEE in the Render Properties, then you can click on Shadows a bit below it. Also then there is a Shadow section in the Object Data Properties if you select a light.

All these settings can be found in the Properties window.

EDIT: (as promised in comments)

If light goes down, shadow becomes longer:


How can I simulate metamerism in Cycles?

It's easy to demonstrate this effect in Blender. Cycles operates in RGB-only mode. It cannot simulate any colors in the visible light spectrum except for red, green, and blue.

This isn't correct.

The reference space primaries are determined by the colour management system. In theory, any reference space primaries within, or even beyond, the spectral locus can be selected. More specifically, any three light rendering engine can cover any area of the spectral locus, including imaginary coordinates beyond it, depending on the coordinates for each of the three lights.

  Is it possible to make colors in Blender act as their own true wavelengths/spectral distributions instead of a mixture of red, green, and blue? If you do that, layering translucent yellow and cyan planes will result in black, just like layering red and green.

This has nothing to do with spectral, and rather a difference between additive light and subtractive (multiplicative) light systems.

  Can blender render colors with custom/non-RGB spectral distributions?

If you mean "greater than three light" models, no. With that said, architecturally, a three light rendering engine isn't terribly far off from a spectral n-light rendering system; they crunch numbers in more or less the same way. The differences come in with respect to how the values are defined.

RGB however, isn't what it seems you think it is. RGB is literally any arbitrary set of three coloured lights, which are determined as a protocol layer in most instances in an raytracing engine. That is, the raytracing engine typically will just crunch numbers as though they were energy, and not care what colours are indicated by the intensities of the three lights. In this respect, RGB doesn't imply any specific colours of reddish, greenish, or blueish light, nor even that the labels represent reddish, greenish, or blueish lights but potentially something altogether of a different hue to what the somewhat arbitrary labels suggest.

There is nothing stopping someone from using spectral based primaries, such as those found in REC.2020, in Cycles for example. This is aside from the fact that Cycles and Eevee aren't properly colour managed, making the usage and interaction a bit tricky.


Object Changes Shape when added in blender game engine

Ensure the emitting object and all of it's parents have a scaling of (1.0, 1.0, 1.0).


Best way to complete a cylinder from a segment

Use Extrusion and the Mirror Modifier

Extrusion

If it is just a segment, first Tab into edit mode, rotate to front view (Numpad 1), key E, then Z, and drag the mouse downwards to the desired height for the cylinder.

Mirror Modifier

With the cylinder selected, go to the Object Modifiers tab in the Properties panel and add a Mirror modifier. Set the settings as follows:

This will reflect the segment about the origin (the orange point with the green and red arrows coming from it).


Scrolling the mouse wheel scrubs the timeline

In different windows, Alt + scrolling the wheel scrubs the timeline.
Hope it's an helpful info.


This is happening because of the ngons. If you look your model from side, you'll notice the face is not actually flat.

There are two ways to fix them.
First(quick and dirty): use Weighted normal modifier with Keep Sharp option enabled.

The shading is better now. However, the topology issue stays still since the Weighted normal modifier changes normals only.
Second(better way to handle this issue): Recreate the model and use Weighted normal modifier on it. There are unnecessary bevels(like the "triangle-shaped" bevels that will create the shading issues on your model. Moreover, they will create unnecessary vertices.
If you want diagonal face with bevels, the topology should look like this:

And because this topology still makes ngon on the top(which will make shading issue too), use Weighted normal modifier to fix the shading issue.


mesh breaking apart and recombining to form another mesh?

Another way is morphing objects with Particle Systems

You can morph shapes of objects and even objects themselves (influnced by Explode modifier) with Keyed Particle Systems.

From wiki:

  The particle paths of keyed particles are determined from the emitter to another particle system’s particles. This allows creation of chains of systems with keyed physics to create long strands or groovy moving particles.

You should only setup them in appropriate way so to make particles travel from one emitter to another.

Step 1: Add objects and assign "simple" particles systems

These systems don't do anything but providing particles needed for action. Because we need them to not emit in time, setup this system (as you can link to both objects the same) so to change Number of particles, Start and End time, Lifetime, Velocity.

Step 2: Add Keyed particle system

Add 2 different Keyed Particle systems - 1 per object. As in the gif above, first setup object on the left. Change Number, Start and End, Lifetime to the same values as for the "simple" particle system and set Velocity > Normal to something more than 1.

And the main, in Physics scroll select Keyed.  Add 2 keyes (in
    both setups) and setup them in this way:

for object Sphere:
    - 1-st key: second ParticleSystem of the Suzanne (use slider in the bottom to select Particle System of the object);
    - 2-nd key: second ParticleSystem of the Sphere.
for object Suzanne:
      - 1-st key: second ParticleSystem of the Sphere;
      - 2-nd key: second ParticleSystem of the Suzanne.

(in example above I also changed timing in Time and Duration sliders so to make systems not interfere with each other, and materials transparency, in order not to see already broken object etc.)

Now, for both objects add Explode modifier, and move it to the bottom (under both particle systems). Choose Cut Edges for finer result.

Note that this way doesn't provide accurate result and it could be greatly enhanced. Particulalry, here are some disadvantages:

Objects' topology means a lot for this to work. Particles will be emitted taking into account amount and distribution of them on the faces.
Keyed Particles aren't affected by physics (so force fields, gravity and so on). Read more about it in this related question. In order to further improve such animation you may consider using 2 approaches:

using simple systems as keys in Keyed Particle System setup (it would involve a lot of cheating to make particles form initial objects)
using 3-rd object and 3-rd Keyed Particle system which shold represent "falling particles down" (if simulating gravity).

Although it could be a beginning for some effects.

(note that stripdown version of file is linked; it includes morphing objects, their setup, ground plane and light).

Credits for particle systems setup:

very good starting lesson on keyed particle
systems


During a Cycles render an object behind glass looks striped

Make sure the object with the glass material has smooth shading.
You can change the shading of the object from the default flat shading by pressing  Space  and search for "Shade Smooth"


Unable to automate converting a duplicated and seperated mesh into a curve with python

Assume that you just selected one object to do the procedure:
Then after the separation, the new created object will be "selected" by default, but not active. You can check whether your selected object is not active, then that should be the one you've separated.
# After separation
C = bpy.context # select a correct context first
for obj in [
    o for o
    in C.selected_objects
    if o is not C.view_layer.objects.active #remove active object from list
]:
    C.view_layer.objects.active = obj
    # you can do further comparison here to make sure you select the right object
    break # Break before accessing other
# Do the rest of the code


Why are some material nodes connected to themselves?

The node is not connected to itself, it is muted. You do that to a node by pressing M. The red line indicates a "pass-through" - the input goes straight to output and the node is disabled.

I would guess the script that creates the node network always makes the full tree and just mutes the nodes that are not used in the original material, like normal mapping in this case.


Is it possible to only render a part of my scene?

You could border-render a certain part of your timeline, so that you only render the interesting/changing bits. In a second step you can composite the last fully rendered frame with the partial renders.


Change the render engine to the same as the source file, in this case Cycles, instead of Blender Render which is the default for new scenes. (Thanks to Duarte Farrajota Ramos)


Pretty easy faking colored caustics in cycles mixing a transparent shader and a Glass/Principled Shader with these nodes.

However that trick does not work in EEVEE

You could create it by using a color ramp on the surface material or a projection of color on the shadow if it's a still image it's a crude hack that changes the surface instead.
like this:

This trick maps the shadow area to a different color.


Bottom "toolbar" is not there; cannot make new material because of it,

You need to go in the shader editor to create a new material, not in the the texture node editor.

However, if you want to edit a texture, you need first to add one in the texture properties. This will enable the check-button "Use nodes" in the texture node editor.
These textures are not a material, but can be used when sculpting or painting your material. They can also be used by certain modifiers.

You need to set the texture type to "brush" and check "use nodes" :


Weight painting a dot and not a gradient

His is also a radial gradient, but smaller.
Make sure you are using a Draw brush in the Tool panel T.
You can make the brush smaler with F so each stroke will be more like a dot. You can also change the size of the "gradient" around it by choosing a different brush curve:


I'm new to blender have version 2.90...
Maybe you can try this.
Click on the "Object Data Properties" tab (the green triangle, third last  on the right), then unfold "UV Maps" and click the minus symbol on the right.
I don't know what will be the effect but I'm sure it'll not complain you...
Hope it will help.      Thank you!


As you see on my screenshot, some bones have been assigned to some invisible layers, so, even if you can see that there are some active keyframes on the top horizontal tracks of your Dopesheet, you can't see what bones, nor delete those keyframes.

So you can either:

Enable these layers to display those bones (in the 3D view) and their keyframes (in the Dopesheet)
Click on the button Include Channels From Objects/Bones That Are Not Visible (phantom icon) on the horizontal menu on the bottom of your Dopesheet window to display these hidden keyframes in the Dopesheet


Emit particles from faces with a specified normal

The particle options in Blender are rather limited at the time (they promised to change that in 2015...) so the only solution I can think of is Animation Nodes or Python, delete the particles depending on their start direction.


I was getting the same error, and was able to resolve it by renaming the armature of the 1st character from "rig" to "rig_a".


See my answer here:

  A screenshot just to show how things are initially:

  Create a new UV map in Properties > Object data, then with it selected, edit or re-unwrap to make the second UV map layed out how
  you want it:

In your case, Lightmap pack or Smart UV unwrap will probably do fine for the unwrap method.

  Create a new image to bake to by pressing ⎇ AltN in the image editor, or by pressing new in
  header > Image:

  Add a texture node to your material(s), set to the image you want to bake to.

Here set the bake type as combined, then select the texture node and press bake:

  After it's baked, remember to save the image. F3 to save it
  to disk, or header > image > Pack as PNG to pack it into the .blend
  as a png.


how to avoid building blocks onto cell fracture?

Normals influence the breaking side.

Flipping normals to the inside SHIFTCTRLN solves the problem!

(in edit-mode before launching the cell-fracture add-on)


Is there an easier way to cut specifically shaped holes in moderately complex objects (particularly from inside them)?

No Knife!

In STL (the main 3d printing exchange format) everything gets triangulated, converting to quads is a waste of time.

BoolTool has been mentioned, it does add needed functionality to the Boolean Modifer (which can be unintuitive). If you have complicated geometry, curved surfaces with thickness into which you want to cut shapes, then that's a good way to go. But, if like in your image, you have a flat surface then modeling the negative space and snapping it into position and then reconnecting the faces might take the same amount of time.

Take your basic shape:

Then you model the negative space, in place. Learning how to use the snapping tools (vertex snaps in particular) will make modelling easier and speed it up.

I like to remove the object wall, place the negative space where it needs to be, then attach the wall again.

Then select an edge of the remaining opening by holding Alt and Right clicking, this selects the edgeloop if possible (usually it will). Then press F to fill this shape.

With the faces Filled you can press Ctrl+T to triangulate selected faces.

or tidier like yours

At first this may seem like a backwards approach, but when you have simple geometry to cut into the booleans are not the only approach.

Alt + F

docs: Meshes/Editing/Faces

Alt + F is like fill but acknowledges internal boundaries. Islands to exclude from the fill.
 .


Follow up of normal mapping problem in GLSL

After much file dissection I found the simple answer to my problem. The draw settings in the object properties for the leg model was set to solid and not texture, thereby preventing the object from displaying properly in texture viewport mode needed for glsl. Frustrating how these little innocent settings can foul things up. Thanks to the community for attempting to resolve my problem.


Here I have set a Spot light lamp to have a gradient that results in a laser line.

The Gradient Texture is sourced from the lamp's normal and the constrained via additional colour stops set to Constant.

The key was to up the strength to 10,000.


How to print a list of enumerated items in Python

To answer your question, you can print a list like this:

print(bpy.types.Constraint.bl_rna.properties["type"].enum_items.keys())

But in this case I'd suggest to use Blenders documentation.

Note that this is Blender specific, Python doesn't provide a way to list possible valid values for an attribute.