Scaling keyed video with alpha over generates black border I'm working on a green screened project and am scaling my foreground video then passing it into a keying node, then alpha over. The problem is, the area outside the scaled video is black not green, so it ends up masking out the background video. Is there a way to make the area outside the foreground video be alpha?

At least in this case, adding a mix node between the scale and keying nodes that mixes the foreground video with the green screen color extended the green color to the original size of the foreground video.

This raises the question of what if your background video is larger than your foreground video to begin with.


Array circular patern So ive looked for answers but this is odd, my Rotation scale and location is all applied and fine but when i array my mesh around the axis it becomes smaller and rotates in an unpredictable way. Any ideas why ?

So i found the problem. make sure your delta transforms are normal


undo object smoothing [remove subdivision surface] While I was working in Edit Mode, I pressed Ctrl + 1, which smoothed my object. I pressed Ctrl + 0, which unsmoothed my object, and I moved on. However, when I bake a texture, it appears in the smoothed manner, I have gone long distances after that.

Is there any way to undo that smooth?

Thanks in advance!

That is the shortcut to add a Subdivision surface object modifier. This modifier uses an algorithm to smooth your object at a certain number of specified levels. To remove the modifier, not just disable it go to the Properties panel > Object modifiers tab (blue wrench) and click the X to remove it.

The subsurf modifier (image from the Wiki):


How do I fix this triangulation issue? I have this mesh of a ridge that I originally made by simply using the knife tool across a plane. This left me with a very disproportionate amount of vertices in the y-axis.

As I currently understand it, the shading artifacts that I've highlighted below are due to bad topology and ideally I want quads (or triangles) on the top and bottom planes as well.

Is there any tool in blender that can speed this up. I mean, I could walk through each vertex and add the edges by hand, that's not too much work but I was hoping that there's a tool that can actually do this, since what I want here is exactly one additional edge per vertex on the upper and lower plane.

You need to fill the faces with quads or triangles, or remove the smooth shading on the nogons.

You can try (CtrlT) then (AltJ), to fill it with quads, as a quick fix.

A better method would be to repair your modeling.

Delete the vertices on the ends of your N-gons:

Select one of the edge loops at the bottom or top.

Extrude the vertices out(EX y or Z)

scale them to zero along the axis that you extruded them out(SX y or Z0).

Do the same for the bottom vertices.


UNLINK does not work to convert particles into new/original meshes I am converting a particle system (based on a collection of meshes) into new meshes.

The 'new' meshes stay connected (as I can see in EDIT mode) to the original one. Setting every single mesh to an 'original' mesh in the object tab takes a lot of time.

This question... Problem with particles, converted into mesh objects
...seems to be the same, but the answer which is UNLINK(ING) the object(s) by pressing 'U' makes everything disappear as if I am hitting a delete button instead of 'unlink'.

Does anybody know what I am doing wrong?

I found the answer on this page: Can not find unlink object data in Blender 2.8

In Short: Go to Object Menu --> Relations --> Make Single User.

'Unlink' doesn't seem to work anymore in Blender 2.8. Things disappear when I unlink.


How to attach a texture to an imported .stl file I have a .stl file I created in Freecad and I want to put a stone texture onto it for 3d printing out. I figured out how to attach an image to my part but that doesn't print out the stone texture.

Do I need to attach a 3d image to my part or can I use a regular image and somehow make it a 3d image on my part?

I downloaded a stone texture 3d image displaced 3D model of a stone pattern from the internet and that actually printed out on my printer but I cant figure out how to attach it to my part. I've watched 8 videos and none cover that.

I would attach my .stl file here but I don't see an option for that. It's just a round cylinder and I want to attach a stone texture to it and it wrap around the part and then be able to 3d print it out.

It's a gaming piece I'm making for my son.

Similar issues have been asked many many times before, see .fbx export why there are no materials or textures? or Issue with Importing 3D Models into Blender

The STL file format doesn't support textures, its a geometry only file format suited for 3D printing and computer based fabrication processes.

It doesn't include any color or texture representation structures, as far as I know it doesn't even support UV Coordinates.

UV coordinates are what is needed for 'wrapping' a 2D texture around a 3D mode, they can be either automatic, or obtained by UV Unwrapping

There is no such thing as '3D textures', at least not in the way you mention. Those are generally either procedural textures or voxel based textures for volumetric data representation (like smoke or sparse mediums)

If your 3D printer does indeed support color information you will have to look into its documentation what file formats it supports and what it uses for color information. And you will most likely need a separate image file for the texture.

Edit: Ok I think there some confusion and wrong terminology use here hence the misunderstanding from my part.

What you downloaded is not a 3D texture (textures are images with color information), it's a 3D model of a stone pattern albeit one achieve with an image texture through displacement, but that is irrelevant.

If you want to wrap it around in a cylinder shape, forget your STL cylinder, it is useless, its probably easier to just do it from scratch.

Use the .blend file from the download archive, open it, apply Displacement Modifier, then add a simple Deform modifier set to Bend.

Add a an empty object, rotate it -90 degrees in X axis and use it as a origin object in the Deform modifier.

Increase the angle of the deform modifier until it wraps up into a cylinder.

Now it's only a matter of closing the caps and removing doubles so that it forms a manifold closed shape.


Same mesh with different colors I have to display several versions of the same object, with only the color changing. My first approach was to duplicate the mesh and add a different material to each.

My problem is: when I want to modify the mesh, I have to do it on each object separately. I tried to have different objects with the same mesh, but the color seems to be linked to the mesh and not to the object.

Is there a way (even programmatically) to have the same mesh in different objects with different colors?

Additionnal info:

I'm using Cycles and my material is a node material in which there is only one changing color.

You have a couple options:
One material:
You can set a unique index per object in Properties > Object > Relations:

Using the Object info node, you can get this value in the node tree and use it to mix colors (or shaders) accordingly (also see Get "Object Color" property in Cycles).
Using three linked cubes (duplicated with AltD) with the same material as an example:

Note that this node setup is a lot cleaner and easier to manage when node groups are used.
Multiple materials:
By setting the material to link to that specific Object instead of it's data, which is shared by the other linked objects, you can have separate materials on separate objects which share the same mesh/data.
Just select Object in the menu to the right of the material selector:


Blender game engine via Python I am using Blender for years and LOVE IT. For my university class do I need a tool that can do the following:

Get information (x1, x2, y1, y2, z1, z2 from every object) from a JAVA application) (works)
Start blender:
Here is my first question. When I want to import the bpy (I also tried to import Blender and from Blender import *, it tells me that it does not exist. What do I miss?
Create objects I once made a script that can do this, no biggie, but is there a possibility to do this from a script started outside of blender?
After every object is placed and scaled etc, is there a way to tell the blender game engine to have a collision, use WASD and arrow-keys to move and mouse to look around, set the player to a special point.
Start the game engine so you can move through the 100% per script created forest of objects?

Besides that, is there a way to start blender minimized / hidden, so the user is going to see the "playable" engine and not blender etc?

There is a way to do what you want. I am not sure if this is optimal but it worked for me.

Starting Blender

You can not import bpy from outside of blender (see this related question). You can, however, start Blender and pass it the .blend file with your game and a python script to execute. From the command line start

<path-to-blender>/blender <path-to-blend-file>/my_game.blend --python <path-to-script>/my_script.py

Under Windows you have to use \ in the paths of course.

You can also execute this command from the follwing python script, if you want to create some data first:

import subprocess as sub

"""
create some data here and do other stuff like calling your Java application
"""
...

# execute Blender
command = r"<path-to-blender>/blender -b <path-to-blend-file>/my_game.blend --python <path-to-script>/my_script.py"

p = sub.Popen(command, stdout=sub.PIPE, stderr=sub.PIPE, shell=True)
output, errors = p.communicate()
if not output == "" :
    print("\nOutput:\n\n" + output)
if not errors == "" :
    print("\nErrors:\n\n" + errors)

You can find more informationon on subprocess here.

Creating Objects

I would create the objects in a script passed to Blender, as I described above. You can also pass command line arguments to this script if necessary. Any command line argument passed after -- in the command line is treated as an argument for the script. The command line woud change to

<path-to-blender>/blender <path-to-blend-file>/my_game.blend --python <path-to-script>/my_script.py -- myArg1 myArg2 myArg3 ...

Inside of Blender you can get the arguments as follows:

import sys
if (("--" in sys.argv) == False) :
    print("No arguments passed to the script.")
    return

argsStartPos = sys.argv.index("--")
arg1 = sys.argv[argsStartPos + 1]
arg2 = sys.argv[argsStartPos + 2]
arg3 = sys.argv[argsStartPos + 3]
...

# process command line arguments, create trees or what ever
...

After object creation: Start the game

I think the easiest way to achieve what you want is to set up the collision detection and player controls in the .blend file you passed to Blender. Then you just have to start the game engine's standalone player. Just add these lines to the python script that creates your scene:

import bpy

...
# create scene and stuff
...

bpy.context.scene.render.engine = 'BLENDER_GAME'
bpy.ops.wm.blenderplayer_start()

Hiding Blender

To hide the Blender window, start Blender in background mode. Just pass -b as command line argument. The full command should then be:

<path-to-blender>/blender -b <path-to-blend-file>/my_game.blend --python <path-to-script>/my_script.py -- myArg1 myArg2 myArg3 ...

Notice the -b before the .blend file.
The standalone player will still be started with a visible window.

I hope this helps :)


Exporting as obj.All at once (noob question) So i wanted to ask you guys if you can select all the objects you want to export all as different files.Instead of exporting one at a time.

Google search yielded this
Export multiple objects to .obj

As expected it involves scripting, so not sure if it will work for you, but I don't think there's any way to do it natively through the GUI


What's wrong with my UV map? I'm working on texturing a model and noticed the textures looked off. I applied the UV checker as a texture and noticed that there was definitely something wrong with some triangles (but not whole quads).

In this screenshot I've selected an offending area. As you can see, half the quad is "smeared."

What could be causing this? The uv map was generated using UV unwrap after marking the seams.

It is some sort of a uv stretching problem. You can find where it is by enabling "Stretch" in the uv editor:

Blue is what you want, green is okay, and orange/red is really bad.

My guess is that your problem is in this region, but I can't say this for sure unless you post your blend:

Edit:

The problem is that those are N-gons on the side. You need to remove all of the N-gons to unwrap successfully. I just triangulated, then removed the edge cutting across the center to make it a quad:

Then unwrap, and voila.

Here is the blend:


Blender random packing animation (reactor cylinder type catalyst random packing) I'd like to make an animation like bellow (reproduced from: DOI: 10.1016/j.cesx.2019.100006):

and I have tried to do referring the following sources:
How to create randomly packed bed?
https://www.youtube.com/watch?v=pexD2XhncNY
The following image is the results I have got, however, the pellets penetrate the corn and just free fall on the bottom.
even some pellets hang on the air.
How can I solve this?

The size of the main cylinder(actually reactor) is 1 in ID and 0.7 m length.
and the size of the pellet is 3mm diameter and 6 mm length.

Make your Steps Per Second high enough. This is in Scene tab under Rigid Body World and Settings. Default is 60 and seems to be too low in some cases. High value will slow down calculations but will be more accurate.

Next make sure your collision Shape is Mesh for you funnel. This is important for complex objects. For your pellets I think Capsule should be fine. Also make Sensitivity Margin small enough. Accurate shape will slow down calculations but will be more realistic.

Last make sure your walls are thick enough. If your wall are too thin then your particles can make through before next step happens.


Object floating on heavy sea - how to make shocking rotation less sensitive? So I have an object floating on a heavy sea. How to make it a bit less sensitive to sudden rotation and location changes, and make it look more fluid instead?

I used the technique such as described in  https://www.youtube.com/watch?v=XvKQrXMypsM which uses object contraints (copy location and copy rotation) on a plane that has been srinkwrapped to the fluid.

The way I am solving this now is, unfortunately, by baking the action of the floating object (take a smaller baking step interval) and then smoothing the transitions with bezier curve transitions.


Cross section using Camera Clipping Distance results in very dark model interior New to BSE; new to Blender.

I've imported a fairly complicated .stp model into Blender and successfully produced some renders using Cycles.

Now I want to produce a cross section of the model to show the detail inside. In the viewport I'm achieving what I want using the Camera Clipping Distance.

Viewport:

When I render the scene, using Cycles, the interior parts which are exposed by the clipping distance are extremely dark, i.e. black.

Render:

I have a sun and couple of hemi lights outside the model. I tried moving a light inside the model but it didn't seem to change anything.

Can anyone help me how to avoid this or how to light the scene correctly.

Thanks!

Make sure light can reach the interior. Use boolean modifier(s) to effectively cut away portions of your model, thus giving a true cross-section.

Example:

Create a new mesh (e.g. cube).
Add a boolean modifier to object which you want to cut away. Set
mode "Difference". Don't hit apply.
Make the new mesh (1.) the target for the modifier.
Move the mesh into desired position. Where the mesh overlaps the
object will be cut away.


Color is linked when duplicating object When I duplicate an object with Shift+D and then change color it also change the color on the original object. Same if I duplicate with Alt+D.
I use Mac if that would matter. Would be happy for any help here since it is very enoying. /Peter

When you duplicate an object, by default the copy keeps the same material as the original. If you want to create a new material for this copy you need to:

2.79: Press U (Make Single User) > Object & Data & Material
2.8: Header menu > Object > Relations > Make Single User > Object & Data & Material.

In the case of a linked duplication (AltD), go in the Properties panel > Material > On the right of the material name click on the dropdown menu and choose Material, this way the meshes of the objects are still linked but not their material.


Dynamically pin cloth when animating The way it works now is, I assign some initial pinned vertices to the cloth and model the simulation. However, I'd like to unpin some vertices and pin some new vertices in between the simulation. I want the pinned vertices to switch in between.

I'm doing all of this via scripts (not blender UI).
Is something like this possible?

Tried dynamically switching pinned vert groups - that resets simulation.
Tried dynamically changing vertex weights inside group - that resets simulation too.
And the bake wouldn't work at all, that was clear from beginning.

The workflow I suggest is to

simulate part of your cloth animation with one set of pinned verts and then save the animation as .mdd mesh cache.
Then apply the cloth modifier, add another and simulate with different set of pinned verts. Export to .mdd
After you have all the parts, load them to Mesh Cache modifiers and blend them with influence. With good blending you can mask some of the discontinuities that happened while switching simulations.

Since any motion between simulations will be canceled you would need to adjust with force fields and plan the transitions carefully. But that's probably the best you can do.


Blender eats up all memory and crashes upon simple small texture So this one is really infuriating me as I cannot figure it out. I've created a terrain with textures and a skybox in layer 1 just fine and all looks well. It's also very responsive and works great, not slow and laggy at all. I have plenty of memory free and blender reports using a total of 65MB of memory - system reports an overall 6GB of free RAM.

I wanted to add in some grass so I flipped to layer 2 which is empty at the moment and added in a plane then a very small 512 pixel transparent png and wired it up in cycles.

Well shortly after blender immediately starts eating up all of the memory up and eventually crashes. I simply cannot fathom why it's doing this. I've edited the images many times making them increasingly smaller with gimp but nothing works.

If I'm not on layer 2 it works just fine, switch to layer 2 and after a few seconds it stutters a bit, locks up the entire computer (mouse won't even move) followed by a full program crash and the release of many many gigabytes of memory.

Opening it up with a terminal doesn't reveal any information except a small printout from the Linux kernel saying it force closed it.

My specs are:

Kernel: x86_64 Linux 4.15.3-2-ARCH
Resolution: 1680x1050
DE: KDE 5.43.0 / Plasma 5.12.2
WM: KWin
CPU: Intel Core i7-3720QM @ 8x 3.6GHz [35.9°C]
GPU: GeForce GT 650M
RAM: 2167MiB / 7918MiB

I render in cycles but use my cpu, I only use my gpu for GUI rendering if that also helps any.

I've never had any problems up until now out of Blender in this regard and I've done lots of other stuff more intensive than this simple trivial task.

Finally i have solved this issue on Windows 10. The problem was a driver corrupt file on my case.... I made a clean installation of the drivers and Blender now stays at normal rates. Between 180 MB and 200 MB of RAM.
I had this problem in Linux but I updated my drivers from Windows(dual boot) and problem was solved


Get POVRay-source file from addon I installed the POV-Ray-addon to use this renderer with blender which works quite fine for me. The problem is I want to comprehend the render with POV-Ray and would like to see the source code just like I would edit a .pov-file and render it straight with the command.

Is this possible?

The exporter's wiki page contains all necessary information to get you started in several languages,

It is possible to edit the options of where and how to write the pov file, when "AUTO"(car icon) is unchecked in render tab's INI Options panel

If you uncheck Delete file option, you will be able to open the rendered pov file from the temporary folder, or the folder of your choice if any has been specified.

Some topics include command line switches to pass parameters as you would through the command prompt when launching POV from a terminal or from ini files.


Problem with blur in video editing Hi i really hope someone can help me out with this: I'm trying to blur a section of my video, the part where my motorbike speedometer is, and basically i followed this tutorial on YouTube https://www.youtube.com/watch?v=_06cWLUZ_Bg BUT the thing is that no matter what ,the section which get blurred(on the right) does not correspond to the section i selected(on the left)

Because i thought it was kind of a sync problem between the "actual" video and its "reference" video in the UV/editor i selected Start = 0 (in the UV/editor properties ) but nothing changed, also by selecting Offset = 0 too.

So...what the hell is going on here?
thanks!

p.s. If you need more details just ask.

It's because you have a different aspect ratio in image and final render. You can do 2 things:

1) set render size equal to video demissions

2) tune  aspect ratio of image in display settings in movie clip editor


Extruding horizantally when I want it to go vertically, and vice versa I'm trying to extrude a cylinder in the right direction.
But to extrude I have to move the cursor verticaly.

Same with the vertical direction.
If I wanted to extrude the cylinder in the vertical direction, say a few faces, I have to move the cursor in the horizantal direction.

This can happen, when you Extrude Along Normals.
To have the extrusion follow you cursor, use Extrude Region instead.


Shapekeys before or after normal mapping? Does anyone know of a good resource to learn how to create a low poly version of my character, create normal maps, and apply them to the low poly mesh?

I'm specifically confused about whether I should be making shapekeys for the high-poly mesh for facial expressions before creating a normal map. Would I just need to make one normal map and that would cover all the shapekeys? Or would I need to create a normal map for each face shape?

I also have yet to successfully transfer a normal map despite following some YouTube tutorials, so I want to make sure I get this right.

Thanks.

First of all, is your character using a Mirror Modifier to generate symmetry? If it is, you should apply it first before doing your UV mapping, texturing, rigging, and shape-keying. (Symmetrical UV maps are OK in some special cases, but definitely avoid them if you will need to use a Normal Map.)

As for creating a low-poly mesh from your high-poly one, check this technique out. It might seem a bit confusing if you're just starting out, but understanding it can save you a lot of time when creating your low-poly meshes.

Your Normal Map will not change with the Shape Keys, nor should it need to unless you're trying to do something overly complex.

Use the high-poly mesh to bake your maps onto the low-poly mesh. Keep both handy, and only delete your high-poly sculpt once you're done baking textures. Keep a version of your project saved that still contains your final sculpt in case you need to re-bake later.


Change spacing between loop cuts What is the best way to achieve loop cuts like this please:

Create loop cut with CtrlR, keep them selected, bevel with CtrlB.


One node group input override another I have a procedural texture node group that is being commonly used by a lot of materials as part of a global shader setup for a project. For a few objects in the scene, I want to use a image texture instead. It would be convenient for my setup if an object defaulted to using the procedural textures in the group unless another texture was plugged into the group. In that case, I need it to use that new texture and ignore the procedurals.

This could be accomplished by adding a mix node between the two, and giving the Fac as a group input. But is there a way to automate this? It seems it should be possible with some sort of math that controls the mix Fac based on the texture input itself. If the input was Black by default, then math with Greater Than could be used to set the mix fac to 1 if the input is anything other than solid black. But then if the new input texture has solid black pixels, I'd still get the procedural texture on those pixels.

Is there a better way?

You can do this by filtering on the Pink colour the Image Texture node outputs when no image is loaded. The only caveat is that it won't fully work if your Texture Image contains any pixels with RGB values of (1.0/0.0/1.0).

I've bundled the switching logic into a node for ease of viewing. Here's what the interior of the node group looks like:

Handling 2 Procedural Textures

In order to handle 1 or 2 procedural textures, you can set the default Colour on the Switch node to the Pink colour (R1/G0/B1). This way if nothing is connected it uses the default texture, and if the 2nd procedural texture is connected it uses that.

Blend file attached:


I am modelling a human, and need to split the legs I am modelling a human, and need to split the legs. Can someone help me?
Note: I am aware that there are plenty of ways to model a human. My question is basically how to take one mesh, and be able to slice it like how we slice a cake. The once empty region of the mesh should be replaced with two planes in the same position.
My simplified blender file

The .blend file you provided does not have the same geometry, but this should be adaptable. Select the middle edges/vertices as shown in the picture. In the .blend you provided, this is as simple as alt clicking on an edge. In your real model, it may involve a bit more finagling to get the selection where you want. You can select multiple edges/verts by holding shift and clicking, or holding ctrl to get the shortest distance between two points. You could also use the circle, box, or lasso select for this. Anyways,
delete them x > delete vertices

select a region of edges/vertices and press 'F' to fill in a face. This may be more or less difficult depending on how symetrical the front/back topology of the model is. Its the least painful when there are the same number of edges.

Not sure why those images got out of order, or how to fix them. Sorry about that.
Fill in the rest of the faces, if you need more resolution in the middle areas, use the ring tool, 'ctrl+R', or knife tool 'K' You can peel back the sides with proportional editing 'O' turned on, make sure to hide the other leg, or turn on connected only, so you don't drag it along. You could also switch to sculpt mode and use the smooth tool.
This image uses sculpt mode smooth.

This is the same process but without deleting the vertices ALL way up.
There's no one way to do things in modeling, this is your little world and you can do it however you like. That said, it would be much more efficient to make your legs split from the start, than to make them one block and split them later.


Bake image from Mix Shader node output to show BSDF base color without light gradients I've a shading node setup to create a scratched surface, to show wear of paint. I'm using Blender 2.80. See the image below.

I would like to export the model to SteamVR, and for that I need a single diffuse texture (normal map can be set separately in the SteamVR model). I was hoping I could bake the result. The baked result should not contain shadows or light gradients or anything, only the base color from the BSDF shader, combined with the image from the mix shader so show the scratches. So I expect no gradients, but a homogenous surface color, with scratches here and there, (showing through the other picture of wood). See the shader node setup below.

Shader nodes:

Bake setup:

I tried combining different options. But none give me the result I am looking for.

Result:

This is the best result I got so far. It shows the base color (white) with the colors of the wood texture (to show the scracthes). But the base color has gradients, which I do not want. I do not want the darker color on the left, but a homogenous color. How can I achieve this?

I found a way to do it. The only thing that I changed is setting the Emission parameter of the Principled BSDF shader to complete white (it was completely black).

Bake settings:

Result:

Downside:

The color of the texture created is no longer determined by the "Base Color", but by "Emission". So probably any other thing going into the base color parameter wouldn't end up on the texture I am affraid. But for my use case, this setup is giving me what I want.


Cannot modify UV texture in the UV editor I am following a blender guru's video, and I had some trouble adjusting the floor's UV. In the view port, the texture works fine, I just want to change the scale of it, but in the UV editor.

To manipulate UV on the image you need to:

Unwrap your model.
Copy image name from texture node by Ctrl+C.
Find it in dropdown menu of image area.


Troubles with cursor snapping I want to snap cursor to the center of selected face of the cube. I can do that by separating the face from the cube, setting it's orgin to it's geometry and than snapping cursor to selected separated face. Is there a shorter way? Can it be as easy as snapping cursor to a vertex?

Snapping also works in edit mode. Select the face, then use  Shift +  S and choose cursor to selected. Works for faces, edges and vertices.


How do I import a .blend into another .blend? In blender, Import has no .blend option..so how can I import .blend file in my current blend file?

There are two ways to import .blend files. You can use the Append or the Link operator.

Append makes a direct copy of the elements in the .blend file, while Link links the elements directly to the original .blend. The difference when it comes to working with these, is that when you use append, you can modify the objects in the new file. It won't cross over to the original file. With link, you can't modify the objects in the new file, but instead need to go to the original file.

Now both of these operators work a bit differently than you'll be expecting. Instead of directly copying everything from a file in like import does, they copy parts of the file, called datablocks.

A datablock is essentially a piece of information in a file.

When you click the link or append operator, the file browser will come up for you to navigate to the file you want to use. Once you're at that file, when you click on it, it will expand just like a folder. Inside there will be several folders for different parts of the file. What you'll probably want to do, is go into the objects folder, select everything (A) and then append/link them in.


Save animation after rendering I rendered my animation, but with "png" as output type for the image. Now I have the rendered animation in Blender (I can see it with Ctrl+11) and 250 png images in a folder. How do I get a video I can export from that?

Open the Video Editor, Add the PNG images to the track
Set your render options for whatever video codec you want to use
set your audio options if applicable and render animation.


What are the limits on the number of vertex groups that can be assigned in an object? A question about the maximum number of characters that can be used in a name led me to wonder about limits on other things in Blender. So, what is the maximum number of vertex groups that can be applied to a single object?

I assigned 513 different vertex group slots to a single cube. If there is a limit (other than the size of the available memory), this suggests at least 66536 separate groups.


Motion Blur Render Time I am rendering a pretty simple animation using Cycles. I render with my GPU, not CPU, and it's pretty nice. I have, however, encountered a problem.

If I turn on Motion Blur, frame takes half of forever to render and crashes my GPU.

If I turn off Motion Blur render is really quick. Is there a way to make it render faster? I would prefer not to use compositor to add the motion blur.

Sorry but there's no way to make motion blur rendering in cycles any faster for now. how blender developers made motion blur 10x faster

As you can see in the article that they have already improved and sped up motion blur rendering by a lot. Compositing is your only choice left if you want it fast.


How can I get a random number that is constant per object in a material so i have this scene and i want to have the hue per object be random with every object but to remain constant throughout every frame each object moves as well. so the output number must be clamped between 0 and 1.I am using cycles in blender 2.75 and i have a non-composted scene and i am using the nodes. here is what i have for a scene so far:

and can i do this per particle as well? thanks for any help and if you need me to clarify feel free to ask.

OK, this is quite easily doable:

For the per-object random, go for the "Object info"-node. It has an output called "Random", which gives out float from 0 to 1.
For the per-particle random, go for the "Particle index"-node. It has an output called "Index". It gives out a number in a logical order. To create randomness, have it ran through the "Noise Texture"-nodes "vector" input. This will give you a random number (though for better randomness, I strongly advise you to crank up the "Detail value" to the maximum).

I hope this helps you.

For more useful tips about nodes, I strongly advise you to refer to Andrew Price's Cycles Input Encyclopedia (https://docs.google.com/document/d/1U6Ygtl7yBWi9MGcRfcEC7L4HPKCHH6t6nsqCfIutdFE/edit?usp=docslist_api) and Andrew Price's Cycles Shader Encyclopedia (https://docs.google.com/document/d/1U6Ygtl7yBWi9MGcRfcEC7L4HPKCHH6t6nsqCfIutdFE/edit?usp=docslist_api)


Python select empty action line in NLA Editor for Blender 2.8 API I want my script to add the selected object to the NLA editor, add an empty track, and then add an action strip to that track.

When I call the tracks_add function, I get the error "Select an existing NLA Track or an empty action line first." Here's my code:

import bpy

# find nla editor area for proper context
area = None
for a in bpy.context.screen.areas:
    print(a.type)
    if a.type == 'NLA_EDITOR':
        area = a
override = {'area': area}

# check for animation data
bpy.ops.nla.selected_objects_add(override)

# check for existing animation tracks
bpy.ops.nla.tracks_add(override)

In the UI it's easy to just click the empty action line. But how can I do this using the Python API so I can add the empty track?

Thanks in advance!

Use the API methods.

This can be done via low level calls.  Test script below, adds a new track "Foo", adds the action strip, starting at frame 1, using and named after object action.

When adding the track can specify the previous track to insert or append in different orders.

Only requirement is to  have reference to  an object with an action. Note adds empty animation data if none exists. Test against None to bypass

import bpy

context = bpy.context
ob = context.object

ad = ob.animation_data_create()

action =  ob.animation_data.action

if action:
    track = ad.nla_tracks.new()
    track.name = "Foo"
    strip = track.strips.new(action.name, 1, action)


Outline on transparent background I'm rendering my scene on 3 separate render layers with transparent background. All layers have strange tranparent outline (around hand and laptop on picture) which I tried to fix in compositor with no luck.
[upd] when using eevee there is no such issue.
What am I doing wrong?

[upd 2] I reproduced the error in a simpler scene. Check out this file and second image.

Are you using the denoiser node in the compositor? I’ve had something similar happen using the denoiser and transparent backgrounds.


Make a rotations-only parent BGE There is a way to make an object parented to another object, but only for the rotations, not for the location.

If i move the parent, the child may dont move.

If i rotate the parent, the child must rotate exactly same than the parent.

All this must work in real time in the BGE.

This method is not exactly what i looking for, but it do his work:

import bge

def main():

    cont = bge.logic.getCurrentController()
    own = cont.owner
    scene = bge.logic.getCurrentScene()

    rot = scene.objects ["Rotation"]

    own.worldOrientation = rot.worldOrientation

This script get the rotation from Object "rot" an set it to "own".

Location doesnt affect "own".

You can also replace this line:

own.worldOrientation = rot.worldOrientation

With this:

own.worldPosition = rot.worldPosition

for doing the same, but with the Location.

Both two works in real time in the BGE.


Python, get neighboring objects on an axis I'm trying to use python to loop through objects in a specific way.

I have a grid of objects, evenly spaced apart:

I wan't to loop through them, to make changes. starting form the upper left, going row > column. I need the value of the row and column, as well as access to any object at any coridantes. I'm thinking that this would best be achieved by a 2D array [row][column], containing the objects.

pseudo-code:

for rows of objecs
    for objects in line with current row head //rowhead= left most object in the row
         //Do stuff

For testing:

Did not test this yet:

import bpy

COL_COUNT =  8 # number of columns
ROW_COUNT = 12 # number of rows

objects = bpy.data.groups['group_name'].objects[:]

# no cmp function
# use round to circumvent floating point precision errors
key_x = lambda o: round(o.location.x, 2)
key_y = lambda o: round(o.location.y, 2)

objects.sort(key=key_y, reversed=True) # from top to bottom
objects.sort(key=key_x)

for i, obj in enumerate(objects):
    col = i  % COL_COUNT
    row = i // COL_COUNT

    #do something with obj

See Sorting HOW TO from the official documetation for more information. The most relevant part is:

  Sorts are guaranteed to be stable. That means that when multiple records have the same key, their original order is preserved.

To retrieve the object for a given row and column calculate the index:

index = row * COL_COUNT + col
obj = objects[index]

I.e. for ROW_COUNT = 2 and COL_COUNT = 4 the objects are tagged like this:

0 1 2 3
4 5 6 7

For the second row and the third column the index is 1 * 4 + 2 = 6. (zero based indices!)


VSE: Turning split screen on and off when using multicam I have been experimenting with the multicam feature in VSE.  I recorded a scene with three cameras and have managed to switch from camera to camera with the multicam feature.  Works nicely.
What I'm now having trouble with is temporarily splitting the screen, so that the views of two or three cameras are seen simultaneously for a few seconds.  I know I need to use the Transform effect, but do I apply it to the multicam segments, or to the original strip/channel?  When I try the latter, it applies to the entire strip and won't let me narrow it to the frames I want.  If I apply it to the multicam segment, the transformation works, but it only applies to the channel that the multicam has selected.
So, first, how do I select the camera view to place in the other portion of the split screen? Do I keep using multicam?  Another instance of multicam?
And second, how do I transform this second view to fill the other part of my split screen?
I apologize if I'm not explaining this very well.  Can anyone make sense of my question and help me out?
Thanks

I think I understand what you want, but I’m not sure what multicam is. What I would expect you to do is to have two transform strips, each attached to one of two identical video strips (identical, that is, except for one coming from a different camera). The transform strip on a higher channel should be set with a compositing setting (in strip properties) that allows the other transform strip to show through in its appropriate location. Probably “alpha over.”
When you use a transform strip, the transform strip itself is like a new version of the old video strip to the sequencer, and should be treated as such in how you composite it. I think you can actually set the transform opaqueness to half (with the right compositing setting) and see the original video underneath.


How to multiply vector with list items I want to draw a point on every vertex of an instanced mesh in a particle system. I put together this short script to do that. It runs without error but nothing happens. The console puts out this message:

File "C:\XXXXXX\XXXXXXX\XXXXXXXX\particle draw.blend\Draw Particle Points", line 23, in draw
TypeError: Vector multiplication: not supported between 'Vector' and 'list' types

So it's not possible to multiply a vector with a list which makes sense.
What do i have to do to multiply the vector p.location with all inst_verts_coords list items

import bpy
import gpu
from mathutils import Matrix
from gpu_extras.batch import batch_for_shader

# get the depsgraph and the evaluated object
dg = bpy.context.evaluated_depsgraph_get()
eva_obj = bpy.context.object.evaluated_get(dg)
# assume context object has a ps, use active
ps = eva_obj.particle_systems.active

#obj = bpy.context.active_object
inst_obj = ps.settings.instance_object
inst_obj_verts = inst_obj.data.vertices[0]
inst_verts_coords = [(inst_obj.matrix_world @ inst_obj_verts.co) for inst_obj_verts in inst_obj.data.vertices]

def draw():
    for p in ps.particles:
        #make a matrix for the particles
        M = p.rotation.to_matrix().to_4x4()
        M.translation = p.location

        #translate instance object vertex coords to particle coords
        part_obj_coords = [p.location @ inst_verts_coords]
        #store vertex coordinates of instance object
        shader = gpu.shader.from_builtin('3D_UNIFORM_COLOR')
        batch = batch_for_shader(shader, 'POINTS', {"pos": part_obj_coords})

        shader.bind()
        shader.uniform_float("color", (1, 1, 0, 1))
        batch.draw(shader)

bpy.types.SpaceView3D.draw_handler_add(draw, (), 'WINDOW', 'POST_VIEW')

In case I'm missing something else give me a heads up.

inst_verts_coords is a list of coordinates (Vectors). So you won't be able to apply a matrix to this list. Maybe you want to change the following line (assuming you want to apply matrix to each individual Vector element of the list):

part_obj_coords = [p.location @ inst_verts_coords]

to:

part_obj_coords = [M @ co for co in inst_verts_coords]


I can't remove dark blue lines is't mark sharp? I got a problem with the dark blue line, I thought this was a sharp sign, but after I pressed the Ctrl + E Clear Sharp button, but nothing happened, the dark blue line was still there.

I'm using Blender v2.81.16

With the default theme, "mark sharp" is a lighter blue.  That dark blue is probably a Bevel Weight on the edges.

The easiest way to set them all to zero is to select the edges (or just all edges) in edit mode, and look under the "Item" tab in the right-hand sidebar (the one toggled with "N").  Look under Edge Data -> Mean Bevel Weight and set it to 0.

You can also use Ctrl-E -> Edge Bevel Weight, but that does a relative adjustment, so if you want to set it back to zero with the keyboard, you need to enter "-1 Enter" rather than "0 Enter".


How to update an object after changing its uv coordinates? I'm creating a node for Sverchok which will apply custom UV map to an object. Pretty simple thing but after applying new UV coordinates to an object object it doesn't update the viewer somehow. Switching to Edit Mode works but I'm sure there is a better way.

The problem can be reproduced this way:

Create a default plane and apply any material with a texture like this:

then call the code for assigning new UV coordiantes:

import bpy
obj = bpy.context.active_object
new_uv = [(0.5, 0), (1, 0.5), (0.5, 1), (0, 0.5)]
obj.data.uv_layers['UVMap'].data.foreach_set("uv", [n for v in new_uv for n in v])
print('Done')

However, the changes are only applied when switching to Edit Mode:

This is a simple fix - all you need to do is run the update() function on the object's mesh data: obj.data.update()

Depending on your intended use case, you may also need to run bpy.context.view_layer.depsgraph.update() to update the dependency graph.


Curved arrow of variable thickness to connect to objects I have two objects that I want to connect using a curved arrow whose thickness should be variable. The following picture illustrates my intention:

The grey boxes have to be imagined as cylinders. I assume that I would have to create some curve that is attached to the two objects and extrude the curve accordingly, but I can not figure out how to achieve this.

Thank you very much for your help!

I think you're looking for a scripted solution which allows you to define two points and the direction of the Curve. Remember; the thickness and colour of such Curves can be animated at a later stage, and the Arrow or 'direction indicator' of the Curve is another matter.

The concept is each box you want to connect has an edge which will be a terminal for the Curve.

Exactly how you determine the length of these virtual guide lines is up to you, it could be some factor of the relative distance between the two terminals on the boxes -- really that's down to taste.

The script would create something like this, if you give it two terminal coordinates, and a direction for each.

If you look at the source of the TubeTool addon you'd get a fair idea of how to script it, but the core of the code is this snippet.

import bpy
from mathutils import Vector

def add_curve(medians, normals, curvename, amp=2):
    curvedata = bpy.data.curves.new(name=curvename, type='CURVE')
    curvedata.dimensions = '3D'

    obj = bpy.data.objects.new('Obj'+curvename, curvedata)
    obj.location = (0,0,0) #object origin
    bpy.context.scene.objects.link(obj)

    polyline = curvedata.splines.new('BEZIER')
    polyline.bezier_points.add(1)
    #   polyline.use_smooth = False

    # obj.data.fill_mode = 'FULL'
    # obj.data.bevel_depth = 0.1
    # obj.data.bevel_resolution = 4
    point = polyline.bezier_points[0]
    co = medians[0]

    point.co = co
    point.handle_left = co - (normals[0]*amp)
    point.handle_right = co + (normals[0]*amp)

    point = polyline.bezier_points[1]
    co = medians[1]
    point.co = co
    point.handle_right = co - (normals[1]*amp)
    point.handle_left = co + (normals[1]*amp)

    polyline.order_u = len(polyline.points)-1

medians = [Vector((-2, 0, 0)), Vector((2,3,0))]
normals = [Vector((0, 2, 0)), Vector(( -2, 0, 0))]
add_curve(medians, normals, "curvename", amp=1.2)

And that gives (with the extras commented out, like thickness) this:

medians: Absolute coordinates, Vectors. (Location)
normals: Relative to the median they're associated with. (Direction, and Distance away from Location)
amp:  'push factor' for the control point. The amp parameter pushes the control points along the normals, effectively scaling the control points to be further away or closer to the terminal)


How do I access workspace areas in 2.80 with Python In a previous script I made for 2.79 I could change properties on a particular layout area without having it active:

for area in bpy.data.screens["Animation"].areas:
    if area.type == 'VIEW_3D':
        for spaces in area.spaces:
            if spaces.type == 'VIEW_3D':
                area.spaces.active.clip_start = 0.1

Does anyone know how to achieve this with 2.80 and workspaces?

Figured it out thanks to iceythe from blenderartists:
https://blenderartists.org/t/access-to-workspace-areas/1137024

for area in bpy.data.workspaces['my_workspace'].screens[0].areas:
    if area.type == 'VIEW_3D':
      for spaces in area.spaces:
          if spaces.type == 'VIEW_3D':
              area.spaces.active.clip_start = 0.1


How can I stop my animation looping (Dope Sheet) Hello i'm new to Blender and animations,and I have no idea how can I stop my animation from looping infinitely...
Could someone tell me please how to stop it?

You can create a script with the following code. Run it once after you start blender and now the playback will stop at the value you have in the end box (ending range).

import bpy

def stop_playback(scene):
    if(scene.frame_current == scene.frame_end):
        bpy.ops.screen.animation_cancel(restore_frame=False)

bpy.app.handlers.frame_change_pre.append(stop_playback)


How can I make the effect of moving an object in a very high speed? I've been planning to make an animation of moving a quad-copter and I was ready to model it and to animate it but I didn't know how do I animate the fans of the quad-copter so that it appears moving in a very high speed as in real life like this Photo :

In this image the fans are out of focus or something like that.
I want this also in my animation So how can I  make it ?

In real life this effect you see on the image is done by the time a camera is opened to receive lights for a very small time (shutter speed). This time cannot be zero so it records a distorted image.

In blender when animating you don't have to do anything. Just tell your renderer to calculate the Motion Blur. For cycles you can find it in the property panel in the render tab.

For blender internal you need to enable the vector pass and use the Vector blur node in the compositor.


Creating an bevel inset on an imported SVG I am trying to create an insetted bevel on an imported SVG in Blender. I so far have the SVG properly imported, and am applying a 0.02 bevel depth to its geometry, and a 32 resolution to that bevel so that it's smooth.

The only problem with this is that the bevel is looking more like the outside of a sphere rather than what I want it to look like, see images below:

Is this possible? I'm going to be doing this with a lot of completely different SVG's over time, so I'd like to find a quick and easy way of doing it.

Possible duplicate of Extrude and bevel an imported svg curve, but I'm not having an issue with getting it beveled, I am having an issue with the direction of the bevel.

Here's what my setup looks like in Blender:

Thanks for all help in advance!

After trying the recommendation below, these are my results:

And then with it applied to the SVG

Any ideas what the problem is?

Use a custom bevel curve with the desired shape.

Draw a quarter circle and use as bevel object on the original curve.

EDIT

Upon looking at your file your Bevel curve is waaay too big in relation to your SVG imported curve, its center is incorrectly positioned, and the bevel curve is scaled zero in Z.

Reduce its size in edit mode, and clear its scale. The normals are also inverted, you may also need to Switch Direction of your bevel curve in Edit Mode to display correctly.

Also your imported SVG is quite complex in shape, with high curvature and very tight corners, it is hard to bevel it correctly, you probably have to accept a certain degree of errors, or be willing to fix them by hand.


Workflow Question: Texture Painting (after Dynatopo) I have come across a few tutorials about texture painting. I have a question about the workflow though. This answer doesn't really answer my question.

After sculpting a character with Dynatopo, I then want to texture paint it. I understand that retopo is the best way to go for this and then texture paint it.

However I do NOT want to retopo (wont be animated), I have come across a few professional tutorials that mention there is a quicker way to texture paint WITHOUT retopo, but they dont say how to do it.

So my question is what is the quicker way (workflow)? Its very cumbersome to try and texture paint with the horrible UV's after dynatopo.

I would appreciate any tips you have.

What is he doing here? I really don't want to spend $70 just for this quick tip.

YanSculpts is doing a basic unwrap of the model in your link.

From MarkG's answer:

  1. Create clothes for a model. You can lay a mesh out on your model, and have it "cling" to the form[...]
  2. Create a better arranged mesh to sculpt on [... Subdivision] creates VERY dense meshes. A better approach would be to retopolize your mesh before scultping so the edge flow of your polygons worked with you, instead of against you. [...]
  3. Lower the density of your mesh so you can animate it.

Retopology is simply creating a similiar shape with different topology. (Usually by snapping new vertices onto existing high density faces.)

To paint your model, you have two basic options:

Texture Painting

  A UV texture is a picture (image, sequence or movie) that is used to color the surface of a mesh. The UV texture is mapped to the mesh through one or more UV maps.

PRO works with low and varying density of vertices; this means highly detailed paint jobs on low vertex counts are possible
PRO export: colors are on a 2d image, which can be edited in image editing applications (Photoshop, Krita, Gimp)
CON we need to uv unwrap the image onto a 2d surface beforehand
CON with complex distorsion, can be slow on parts of the model

Vertex Painting

  Vertex Painting is a simple way of painting color onto an object, by directly manipulating the color of vertices, rather than textures [...]

PRO no need to unwrap the mesh, can start painting immediately
CON some angles and occlusions will leave lone vertices unpainted (in Blender) unless you rotate/zoom/readjust the view
CON needs a high vertex count, since color data is applied only per single vertex and interpolated in between them

With both methods, you can not go back to dynamic topology (changing the vertex count), otherwise your uv or vertex color data will be reset. In both cases you may edit the mesh in Edit Mode preserving the existing data.

The manual explains both processes, well. I would recommend texture painting. Although texture painting is usually not done with very dense models, its only drawback is speed (as Blender isn't designed to unwrap high density models).
If you can easily go into edit mode, navigate and unwrap by pressing U > Unwrap, without Blender constantly freezing, then proceed to unwrap.

If your model is to dense you can try to decimate it with the decimate modifier, which is an automated form of retopology as well and provides very bad topology. But as long as it doesn't cause visual artefacts, bad topology shouldn't concern you, since your aren't planning on animating the geometry.

Most dynatopo topology can be decimated quite a bit with little visual difference.

From Craig's answer:

  as far as I know, there is no way to 'texture paint' without having UV mapping on a new lower poly mesh.

The basic UV unwrapping process can be done with a high density mesh. (It just can get very slow computationally.)

Select your model, go into edit mode, select all vertices and press U and choose unwrap.

This will probably be slow and produce a horrible result. YanSculpts model has 23,000 vertices and he solves the unwrap by only unwrapping small parts at a time. To do this, box/circle select some vertices, then press U to unwrap. You can immediately position them in the 2d UV layout (UV map).

L for island selection. G, R, S and many other hotkeys work as in the 3d view.
Read up on other unwrapping methods.
Once unwrapped you can load an image texture or create a new image texture and save it.

Setting the 3d viewport to textured viewport shading will display the active texture (with Blender Internal).
Now you can edit texture paint mode, set the image as the source and start painting on it.

With vertex paint the unwrapping process is skipped.


Is there a way to create "snap to surface" constraint? https://i.imgur.com/K8rOWnm.mp4
Here's a visual example of what I want to make (I did it by using "snap during transform" on "face" mode)

basically I want to create a camera that's always offset X amount of distance from floor that's under it automatically, just Z axis to be constrained

I already tried using floor constraint but it never really works

please help me out

Tell me if this is what you want:

Create a plane, go in Edit mode, W > Subdivide a bit and assign the whole mesh a Group name in Properties > Data > Vertex Groups.
Give your Camera a Copy Location constraint, choose the plane as the Target, then choose the Group. Click Offset and move the Camera until it is over the plane at the place you want.
Give your plane a Shrinkwrap modifier and choose the ground as your Target.
Move your plane, the Camera should follow the ground on the same Z distance all along.


Blender render recalculate faces on shape key animation i'm trying to animate a randomized grid mesh using shape keys.
Here's how it looks like rendered in OpenGL:

And with Blender Render:

See the faces popping up here and there? Here's a close-up on one:

I don't understand why it happens since the openGL render is correct. Am i missing an option or something?

(sorry for epileptic-unfriendly GIFs, having some problems with the recorder)

There is probably a problem with the shape key animation: Since you are using quad faces, you have to deal with the fact that two edges of that face can make an angle of more than 180 degrees. This is not correct.

Correct:

Here you can see that there is a triangle formed between those three vertices. They actually have a part of the face to close.

Incorrect (your case):

Here, the angle is over 180 degrees. Blender still wants those three vertices to hold up that face. It gets confused. It wants to keep that straight line between the two vertices, but it will happen outside of the preferred boundaries. It's just like folding over a piece of paper like this, and pressing them so much together, that they interfere with each other. In some situations, it will result in a very strange defect in your geometry.

So, technically speaking: your shape key animation is the source of the problem. The vertices move to far into their own faces.


Array modifier start/end cap error When making a curve with a "Toggle cyclic" setting and setting object with modifiers curve an array, object overlaps with himself like on the picture. You would usually solve this with Start Cap and End Cap, but I seem to get an error each time wherever I place them. The error message is:Failed to set value

This can be usually done by checking the First/Last option.
But not here, because the Curve modifier takes effect after the Array modifier.
You can use the new (2.82+) Weld modifier to merge the vertices instead.

Array modifier to copy your objects
Curve modifier to bend the geometry
Weld modifier to merge the First/Last vertices


Animate disable in renders property I have an object which has been fractured, it has over 100 pieces. I wanted to animate the visibility of each piece. Unfortunately you cannot animate the disable in renders icon (camera icon in ref image below) for a whole collection, but you can for each object.

As there are a lot of objects, is there any way I can add a keyframe to each one without doing them all individually?

Now the 2.81 has been released and unfortunately collection visibility animation still not supported. So you have to use some tricky solution which are not as good as expected.

The first method (first two pictures):

Animate one of the object's visibilty with the traditional way: turn it on/off and hover the mouse above the camera icon and press "i" at the right frame.
Select every object what you want to hide, the animated must be the active (yellow outline) and hit CTRL+L, then choose "Animation Data"

Now every object has the same animation, so the big disadvantage of this method, they can't have location/rotation/scale animation, because all of them will be the same. But if you can lack these, this is a simple solution.

Second method (last picture):

The collection must be out of the camera view and visible for render. Add an empty (make sure it's not part of the collection) in front of the camera and add the collection as an instance of the empty (it's located in the object properties). Now the empty will shows a copy of the whole collection and you can hide it all by hiding the Empty (what you can animate of course). With this method you can animate the objects independently, but not in the real space.

So both method have disadvantages, so we hope the collection visibility animation will arrive soon.


Multiple rigs for a single character? I have a general question about animation workflow.

I like to do a mixture of motion capture (I have ipisoft) and traditional keyframe animation. It seems that most of the common rigs (rigify, pitchipoy, mhx, blenrig) are very hit-and-miss when it comes having mocap data applied to them (I generally use makewalk). Using makewalk generally requires creating a custom target file for these rigs, and even then the results are often not as stunning as I would hope (lots of foot sliding to clean up, even if the motion capture itself is quite clean).

What does work great(!!) for mocap is the good old-fashioned blender human meta-rig. This creates quite a dilemma. Is it common practice to have multiple copies of your characters each using different rigs throughout a given project. Maybe one that is rigged with the meta-rig for a wide angle motion capture shot, and a BlenRig version when you need a detailed close-up? What is the typical workflow here? It feels insane to have multiple copies of the same character, but I'm coming to the conclusion that it would make the most sense.

Several years ago I came across the same issue. I had a character who has to be keyframe-animated, but also mocap-animated sometimes. And even, both in the same shot! I mean, for instance I had a shot where the character was animated by hand at the beginning, then I had to insert mocap animation for 10 seconds, then back to hand.

The solution I used for this to work and to be able to switch between each type of animation seamlessly was the following:

Using one Rig to deform the mesh and animate it by hand (FK, IK...)
Constraining some of this Rig's bones to the mocap Rig (the one which was created when I imported the Mocap data) with child Of bone constraints.

Then I just had to set the last hand-animated pose according to the first mocap pose, and animated the Influence of all "child of" constraints to switch between keyframe anim and mocap anim. Here is an example of setup, in use:

Of course the constraints had to be created with a small python script, once I found the good list of bones that had to be constrained (like head, neck, shoulders, FK arms, torso, FK legs, etc, but not the root bone). So finally I made it once, created the script, and then all similar cases were just at one button to go.

And, since all my mocap data was created with the same software (motion builder if I well remember), the imported Rig was everytime the same (same bones names, same structure), so my script worked like a charm. And also, when you need multiple mocaps in the same scene, each time you import a new mocap, no need to re-run the script, you just have to change the animation data of the first mocap-rig, which is already "binded" to your character's rig.

I hope my experience will inspire you!
Best regards


Is it possible to reproduce Maya/ Houdini target/ point weld operators inside of Blender? Both Maya and Houdini have an operator called target weld (point weld in Houdini) that essentially is the same as Blender's Merge at last operator, but they are done in one step and are continuous until the operator is exited.
Here is a gif from each program to demonstrate the operator.
Maya:
:
Houdini:

My goal is to reproduce this behavior inside of Blender, but as far as I am aware, there is only Merge at last, which at best requires 3 steps to complete one weld.
Is there an operator buried somewhere in blender I haven't found, or some scripting solution that could shorten the steps in merge at last to work this way?

3DSMax also has an equivalent Target Weld, but as far as I know Merge at Last is Blenders closest operator. Unfortunately workflow involves dealing with the menu as you mention, making it unsuited for repeated use.
One possible workaround is using Blender's Auto Merge feature. While in Mesh Edit Mode, from the 3D View Header > Options menu activate Auto Merge.
Just combine it with regular Move operator or the Tweak tool, overlapping vertex should automatically be removed.

Having vertex snapping turned on from the magnet icon on top makes it more reliable.
You can also toggle it on or off from the Tools Options from the 3D View Sidebar or Properties Window.


Photoshop Filter in Compositor Is it possible to use Photoshop filters from inside the Blender compositor? Just thought it was an interesting challenge that somebody out there may have solved? Of course I can run batch filter on rendered frames - but think it would be nice to see live effects.

Thanks.

No, As far as I know, nobody has done this before.

Even if this was done it wouldn't be cross platform (since Photoshop plugins are compiled AFAIK).


Animation Nodes: How to shoot in text like bullets I wish to learn how to use Animation Nodes for future projects with motion graphics. Any assistance will be appreciated. Thanks in advance.

Here the simplest example that I can create:

Create a loop with object iterator:

when you can add a "Invoke subprogram" node

Put here Separate Text Object. It will breake apart your text and in loop we will transform text letters one by one

Next, add animate Matrix node. This node will create a transition beetween some object (I created an empty), end each letter, that we grab from loop. To get transform matrixes, use Object ID Key node (to get initial transforms of letters) and Object Matrix Input to get empty's position and scale.

In animation node you can set duration of animation of each letter an setup interpolation.

Next, it's need to add time info node to set time to animate node.

To give each letter offset in time add 2 Math nodes. One to multiply Index with offset in frames, second - to add this offset to time:

and finally it's need to apply this transform matrix to the object, use Object Matrix Output Node:

Don't forget to connect "object" to Initial Transforms and Object Output!


Why are some buttons purple? Basically to see this, all you have to do is hold down the d key and hover the mouse cursor all over a node or modifier and many of the active elements will change to a purple color.

This sometimes happens to me when I've been using the grease pencil to make notes and then move over some part of the UI quickly before I remember to release the 'd' key.

So what is this purple, and how can it be un-purpled?

By pressing D over an input field you are telling Blender to create a driver for that value. A driver is a way of controlling one value (the driven value) by another value (the driver). For example you  could drive the scale of one object by the rotational value of another.

To remove the driver you can either right-click on the value and choose 'Delete Drivers' or you could:

Navigate to the 'Graph Editor' from any screen area:

Change the view from 'F-Curve' to 'Drivers':

Shift select all the driven channels in the list and press X to delete them:

If you want to view and delete drivers for multiple objects at the same time make sure to toggle off the cursor icon which limits the view to currently selected objects:


Why did my mesh disappeared? I'm a begginer in blender, so please forgive me if the question looks silly to you!

Almost all the objects in my scene disappeared (except 2) as if I deleted them by mistake. The thing is all the objects are still listed in the right side graph. The all have the eye button activated, but yet nothing is visible anymore! As I don't have a backup file, I simply can't find any tricks to fix this...

Thank you for you help!

You have entered into the local view by mistake pressing Numpad / key (slash). Press Numpad / again to exit Local view.


Can't see added cube on my scene collection When I select add and then cylinder, cube or whatever, then I can't see the cube on my collection side menu on the right.

I want to do some booleans from the air intake seen in screenshot 2.
That's why I need to be able to select the cube and the object I'm modeling.
But if I can't select the cube, I can't do it that way.

If you add an object in edit mode, that object will be part of the active object.

To make individual objects exit edit mode and add the new objects in object mode.

Read: Why can't objects in Edit Mode have their own name?


What UI panel property type is this and how can I create my own How do I make my own 'list' in my custom panel like this?

I want to be able to acces to chosen value (string) as well...

Bert

That is an Enum Property, essentially an array of options that have an identifying name, a displayed name, and a description (shown in the tooltip).

For example:

bpy.types.Scene.MyEnum = EnumProperty(
    items = [('one', 'One!', 'The first number'),
             ('two', 'Two', 'The second number'),
             ('three', 'Three', 'The third number')],
    default = "one",
    description = "Pick a number",
    name = "Numbers")

For the first item, "one" is the identifier, "One!" is the name shown in the interface, and "The first number" is shown in the tooltip.

You would access the chosen option using scene.MyEnum, and set it using scene.MyEnum="two".

To display the enum in the interface and allow the user to change it, use layout.prop(scene, 'MyEnum')

Note: The code snippets here are very helpful :)


Find bpy function in source code What is the best way to locate a function from the bpy module in Blender's source code?  I've downloaded the source code and I'm aware you can also browse through it online.

As an example, I would like to inspect bpy.ops.render.render().

Get the idname like:

bpy.ops.render.render.idname()
# 'RENDER_OT_render'

(or simply take render.render and replace the . by _OT_)

Search that operator in the source code, and find it here:

blender\source\blender\editors\render\render_internal.c

/* contextual render, using current scene, view3d? */
void RENDER_OT_render(wmOperatorType *ot)
{
    PropertyRNA *prop;

    /* identifiers */
    ot->name = "Render";
    ot->description = "Render active scene";
    ot->idname = "RENDER_OT_render";

    /* api callbacks */
    ot->invoke = screen_render_invoke;
    ot->modal = screen_render_modal;
    ot->cancel = screen_render_cancel;
    ot->exec = screen_render_exec;

You'll likely wanna look for the exec function code (screen_render_exec) and see what it does.


Dynamaic Paint Not Spreading Blender 2.79b Following the tutorial Freezing/Frost Text Effect. I get to the 9 min 03 sec. where we test the spreading of the paint.  I can only get 3 of my letters to paint (see gif below).  The tutorial only uses 2 letters I have 19 letters.  I have completed the exercise twice now making sure I follow all the steps.  The one step I could not find in the manual was the speed of the dynamic paint spread.  The author sets the value to 2.5 (1 is the default value).  Not sure what that value should be for me?

Two things are painted the plane and the text. Both of these objects have been joined earlier in the tutorial.
All of the plane is painted and beginning of the text is painted.

I can see in the folder where the sequence images are stored that the last image only has 3 letters painted.

What will cause the dynamic paint to stop spreading?

No answers posted to my question.  To fix the problem, I started from scratch.  Then I added more points where the brush touched the canvas (letters), in order to get the paint to spread to the letters.  I did remove all previously baked images, but after I was done, I did see a physics file I did not remove.

While it got the job done, I'm sure this is not the best way to correct the problem nor does it explain why the paint would not spread to all the letters


How to scale and move a mesh to specific location and axis in Blender 2.8 I am a beginner and i am trying to move other mesh ,so that i can use as a wall and another mesh as floor .
But, i am unable to move the other mesh(smaller in the attached screen) .
Both the mesh is moving when i am using x,y,z transform (right side in screenshot).

Please help me in moving the smaller mesh towards bigger one and erect it as a wall and also scale the mesh in any axis by selecting it.

Thanks.

Welcome to Blender Stack exchange! It appears that you are in edit mode and want to move the shorter plane near to the larger one(as described). You can just select the plane and move it using G hotkey, but make sure you are not selecting anything else other than the plane. You can go into edit mode > deselect everything (Double tap A or Alt A) > hover over the plane you want to move > press L to select that plane > use the move tool to move in the choice of your direction. I would recommend you to see some videos of Blender Guru, CGGeek, CGCookie to get started with blender.


Getting a normal pass without normal maps (in Eevee) I'm trying to get a normal pass without normal maps in it in Eevee: only geo normals. Currently my normal pass looks like the left image and I want a right image (the same scene rendered without materials)

I'm thinking of writing a script that'd be used only to render this pass: the script would basically disable bump nodes, disable lights (to render faster), disable other passes (to not overwrite them) render the pass, re-enables everything back. But I wonder if I'm missing something and there's an easier way?
p.s. rendering a Normals Matcap from workbench won't work with perspective cameras, I need true normals.

I didn't find a solution so decided to write a script. It uses my scene setup so there's no point of pasting the whole thing but I'll paste a pseudo code that explains my approach
import bpy
import time

# disabling things
def get_color_management_settings():
  # returns some current values from scene.display_settings and view_settings:
  # look, exposure, gamma, etc
  pass

def set_default_color_management_settings():
  # sets various display settings to a zeroed state
  # so that the render wouldn't be affected by custom gamma/exposure/color profile settings
  pass

def set_color_management_settings(values):
  # sets various display settings to previously saved settigns
  pass

def disable_passes():
  # disables all the render passes but normal: breaks connections in compositing tab
  # renames 'normal' pass to 'geo_normal'
  # returns everything to restore to defaults:
  # file_output_node
  # render_output_node
  # outputs_arr: array of sockets that were connected
  pass

def disable_materials():
  # for each material
  # disconnects Material Output from the shader node
  # creates a blank Diffuse node and connects Material Output with it
  # creates and returns a dict with mat_name: [original_input_node, original_input_socket]
  pass

def disable_lights():
  # gets and returns all the lights that aren't disabled in render
  # also disables them in render
  pass

def disable_volumes():
  # gets and returns all the objects with Volumetric materials
  # also disables them
  pass

# enabling things
def enable_passes(file_output_node, render_output_node, outputs_arr):
  # re-enables original nodes connections in the compositing tab
  # renames 'geo_normal' pass back to 'normal' pass
  pass

def enable_lights(lights):
  # re-enables all the lights that were disabled
  pass

def enable_materials(materials):
  # removes temporary Diffuse nodes
  # and reconnects original shader nodes with Material Output node
  pass

def enable_volumes(volumes):
  # re-enables objects with volumetric materials
  pass

def main():
  timeStart = time.perf_counter()

  # getting active color management settigs
  color_management_settings = get_color_management_settings()

  # setting default color management settings
  set_default_color_management_settings()

  # disable links in compositing
  file_output_node, render_output_node, outputs_arr = disable_passes()

  # disable objects with volumentric materials: saves around 30% of render time
  volumes = disable_volumes()

  # changes all materials to use a black diffuse node
  materials = disable_materials()

  # disable all the lights: saves render time
  lights = disable_lights()

  # render
  bpy.ops.render.render()

  # re-enable everything back
  enable_passes(file_output_node, render_output_node, outputs_arr)
  enable_volumes(volumes)
  enable_materials(materials)
  enable_lights(lights)
  set_color_management_settings(color_management_settings)
  timeEnd = time.perf_counter()

  # render takes about 1 second for simple scene, about 7-8 seconds for complex ones on 2070s
  print(f"time: {timeEnd - timeStart:0.4f} seconds")

main()

The result: normals_geo.png with geo normals and correct gamma, normals.png that comes from default render setup:


Master Bone to Move Entire Rig How can I set it so that the selected bone in the photo will move the entire rig with it?
Essentially, the selected bone acts like a parent for all the bones in the rig.

Since this is an IK setup, all of the IK controller bones and pole targets need to be parented to the 'master bone' at the base of the rig. e.g.


3D manipulator widget in multi-selection does not appear I can see my 3D manipulator tool all right, but I cannot see it when I select everything.

Press N in your 3D view, the 3D view properties panel will display on the right, you can see that some of your objects Transform parameters are locked, you can't see any manipulator if at least one of the objects you select has these transformators locked.

Those parameters are also available in the Properties panel > Objects > Transform Locks


Where can game assets for Blender be downloaded? Is there any place where I can download surroundings of a game as a 3d model or maybe there re some inspired artists where they put them for download. I'm trying to find rooms from Wall-e. Some rooms, or outside surroundings or some interior surroundings. Where can I find things like that?

You can find lots of downloadable assets at

Blendswap
TF3DM
Yobi3D


Cycles render is different when rendering with GPU I came across a problem which I couldn't find any solution through google. When I render with my GPU, I have a different render than with the CPU.

My CPU is an amd phenom 2 x4 965, the GPU is a R9 390 with blender 2.76
first is cpu second is gpu
I have sharp shadows with cpu and light is very dim with gpu, what could cause this problem?

CPU

GPU

I'm using a HDRI lighting in my scene which is not yet supported in OpenCL. Anyone knows when it will be supported?

Well i just had a look at the supported features page, and it says that HDR float isn't supported yet with opencl

blender.org/manual/render/cycles/gpu_rendering.html

"OpenCL: No support for HDR (float) textures at the moment.".


Setting Angles Between Bones I have 2 different hand objects in separate files that have bones identically named. I want to set the angles between the bones of hand 2 same as the angles in hand 1 so that they have the same posture.
I have tried getting the bones' positions from hand 1 as normalized vectors, then do the same for hand 2 and find the angles between two vectors along X, Y and Z axes. Then, rotate the bones with those angles. However, the result is not at all what I want. The rotate_euler.rotate_axis() function rotates the bone over its local axes, not the global ones.
How should I approach this problem? Any help would be appreciated.
Here are some screenshots for better visualizing the situation.
Bone 1
[![enter image description here][1]][1]
Bone 2
[![enter image description here][2]][2]
Script that saves normalized vectors from Bone 1
import bpy
import json
from math import *
from mathutils import *
import numpy as np

obj = bpy.data.objects["Armature"]
bones = obj.pose.bones

with open("vectors.json","w") as outfile:
    outfile.write("[")
    i = 0
    for bone in bones:
        u = (bone.tail - bone.head).normalized()
        outfile.write(json.dumps({bone.name:list(u)},indent = 2))
        if(i != len(bones.keys())-1):
            outfile.write(",\n")
            i += 1
    outfile.write("]")

Script that finds the angles and rotates the bones of Hand 2
import json
import numpy as np
import bpy
from math import *
from mathutils import *

arm = bpy.data.objects["Armature"]

with open("vectors.json","r") as infile:
    vectors = json.loads(infile.read())

counter = 1
for vector in vectors:
    v1 = vector
    key = list(v1.keys())[0]
    print(key)
    v1 = Vector(vector[key])
    bone = arm.pose.bones[key]
    v2 = bone.tail - bone.head
    v2 = v2.normalized()

    angleyz = acos(np.dot(v1.yz,v2.yz))
    anglexy = acos(np.dot(v1.xy,v2.xy))
    anglexz = acos(np.dot(v1.xz,v2.xz))

    bone.rotation_mode = 'XYZ'

    bone.rotation_euler.rotate_axis("X", angleyz)
    bone.rotation_euler.rotate_axis("Y", anglexz)
    bone.rotation_euler.rotate_axis("Z", anglexy)

Result
[![enter image description here][3]][3]
The Files I am working on
https://drive.google.com/drive/folders/1d4J1O7GuPSU6UeEd-YdZ0M4EN0be1p9v?usp=sharing
I am trying to make the hand in the abnormal.blend to have the same pose as the hand in neutral.blend
[1]: https://i.stack.imgur.com/BxpqC.png
[2]: https://i.stack.imgur.com/Q0ctQ.png
[3]: https://i.stack.imgur.com/G4yjy.png

Use matrices.

In Python, How to get pose bone to rotate with another pose bone from a different armature? Finding Rotational difference  have shown how to snap a bone to another using world space matrices of each.  The example snaps one bone to the world space rotation of another.
Similarly here could look at local space. Have simply converted the local space matrix back to pose and applied to bone. Bit hard to test without two rigs, but as shown in linked answer, and Python How to make pose bone rotation toward a point?  can make matrix to adjust the rotation of the target pose bone to the source. Basically the rotation part of a pose matrix is pointing the Y axis of the bone (head - tail). If a bone is connected it will ignore the location part of its matrix
import bpy
from bpy import context
from mathutils import Matrix
import json

# WRITE

def pose2local(pb):
    M = pb.id_data.convert_space(
        pose_bone=pb,
        matrix=pb.matrix,
        from_space='POSE',
        to_space='LOCAL'
        )
    return [row[:] for row in M]

scene = context.scene
rig1 = scene.objects.get("Armature")

output = {pb.name : pose2local(pb)
        for pb in rig1.pose.bones}

with open("matrices.json", "w") as fp:
    json.dump(output, fp)

# READ

rig2 = scene.objects.get("Armature.001")

with open("matrices.json", "r") as fp:
    data = json.load(fp)

def local2pose(pb, matrix):
    return pb.id_data.convert_space(
        pose_bone=pb,
        matrix=Matrix(matrix),
        from_space='LOCAL',
        to_space='POSE'
        )

for name, matrix in data.items():
    pb = rig2.pose.bones.get(name)
    if pb:
        pb.matrix = local2pose(pb, matrix)


How do I achieve this look for the viewport? How do you get your objects to look like that? is it an addon/plugin/shader/a setting you change?
Tried searching for an ambient occlusion shader or something but came up with nothing.
I was watching this Blender tutorial and the guy had it set up like this and I really want to get it too.
He just added a cube and it automatically appeared like this.
**

You do this using the solid view settings. They can be accessed in the dropdown menu in the top right corner of your screen, as shown in the picture. Copying the settings I use gets it pretty similar to the picture you posted.


How can I move a child object to a target position using python? I want to be able to move the child object to any known position.

Find below an example:

The "Child" object must be in this exact position (-2,3,4) with no offset.

To set the location of an object to a target position specified in world space simply set the translation value of the object's world matrix

child_obj.matrix_world.translation = target


Is there a way to group or organise keyframes for a complex animation? How do you do complicated animation sequences in Blender?
I'm only just starting out with Blender. I can do simple animations, no problem. It's easy, right? Move an object, keyframe it, change frame, move the object again, keyframe it. Done. However, once an animation starts to get longer and more things are happening... it just gets harder and harder to keep everything organised. Like, "oh, hey, that shot was a bit too fast, let's make it last a bit longer". Great. Well now I have to find every single keyframe in the entire animation and manually move them all. Not fun!
People have done some insanely amazing things with Blender, so I must be using it wrong. It should not be this excruciatingly hard just to do some basic camera moves and make it all synch up properly. I feel like I'm missing something really basic... like, there should be some way to group or organise animation steps so you don't have to manually memorise millions of keyframes. Does Blender have anything like that?

Short answer: Dope Sheet and NLA editor
Dope sheet shows you all keyframes categorized in objects, then axes or properties. You have a complete overview and you can set it up to either show all keyframes in the scene or just of the selected object (click on the little arrow on the navigation bar in the dope sheet window).
For detailed edits you might also want to use the graph editor, which isn't good for an organized overview but let's you edit the key curves in Detail.
The NLA editor can store "animation templates". So for example you can create an idle animation for a character and a running animation and save both as "actions" in the NLA editor. It's layer based and you can do tons of stuff there to make complicated animations easy to manage. You could for example loop an action or layer multiple on top of each other (idle + running for example).


Orange Outline/Selection Problem I've been learning and making some stuff on blender 2.79 for a few months now...

But, like 3 weeks ago, I don't know what happened, but when I was making a shirt in a base, it appeared a orange outline that doesn't go away.

When I select an object, and then I select another one, the first selected object, turns orange outline, and this is ruining everything for me...

Because even when I open blender without the project I was making, just with the cube, it is the same thing.

I've been looking like crazy for information about how to get rid of this, but the only info I got was about how to make it orange, not quit it.

I already saw that some people here had the same problem before, but I didn't saw nothing useful in the comments...

And I don't want to join all the objects together, because it's really difficult to separate them later, and this doesn't garantee that everything will get yellow outlined again, plus I'm making stuff for exporting.

Please help me with this problem, because I really need to get rid of this orange outline, and I'm tired of looking and asking everywhere without a solution...

I want to have everything normal (yellow outline) like it was before.

EDIT: I already uploaded the .blend file, I think...

EDIT 2: Here is a Zip that contains the .blend file, and has a text document with all the details about the problem, and also my social medias in case u want to tell me something about this problem in other site:
ZIP: https://drive.google.com/open?id=1KRixb8iQlonkA5vCZfNnPzBd0gIZsMsV

EDIT 3: This is WORST that I thought!!!!!

I removed some new addons I installed recently, and nothing. Now I just uninstalled and reinstalled blender again, and the problem continues. I'M GOING CRAZY!!!! T_T

Yellow/orange outline just means that the object(s) are selected. So, do you mean you just want to DESELECT the object(s)? If yes, then you can go to menu Select > (De)select All or shortcut A (toggle Select/Deselect All).

BTW, why do you learn version 2.79? The keymap is using RIGHT click for selecting object, and doesn't go away with left click on empty space. This will confuse you if you are not familiar with it. And the problem that you asked this is you skipped the basic of Navigation in Blender. So I recommend you to use version 2.8x with the LEFT click for selection, and it's more intuitive for new users coming from other programs.

This is manual for selection in 2.8x : Selecting Manual


Why am I unable to change opacity of background images in Blender 2.82 (sub 7)? Current animation student, need to learn everything about latest Blender engine. Using Pluralsight to supplement on-ground college courses. Current module requests opacity change of background reference image. Unable to comply. Blender v2.82.7 has the opacity under image grayed out so that when turned up or down, does not affect the image.

Hoping someone has a remedy for this, really seems like a simple command, can't believe it's this frustratingly hard to create this effect, should be a staple in modeling.

In order to change the opacity level you have to turn on Use Alpha. In your screenshot it's the third field from the top.


Is there a way to drive "Mute a node" or Toggle "Auto Refresh" in the Image Texture Node in Movie / Sequence Image Mode Hi There Blender Peeps..
I am in need of some help, I am wanting to make a shortcut in the Item Properties to toggle a node from working,
The Item Properties shortcut I speak of is the area Right Side Bar of the VIEWPORT under ITEM -> Properties, and it is found in PROPERTIES Window -> Object Properties -> Custom Properties. It is here where you add these properties.
So to disable the node from working in my scene, which essentially improves playback performance from not having to playback the movie in the background...
I have found 3 ways to disable the movie from playing. I am wanting to do one of the following by using drivers and make the Item properties by the Custom property to be "0" or "1" which will Toggle the setting...
The 3 Ways I have found to disable the node from playing the movie.
1.
Mute a Texture Node (Toggle it via the Item Properties Shortcut)
I am unable to find anywhere a way to drive muting a node.?!
2.
Toggle the "Auto Refresh Button" on the Texture Node. (When the Texture node is set to movie or Image Sequence) the Auto Refresh Button Appears.
3.
Changing the frames count from 600 to 0, will also stop the movie playback, I know that if I can Drive this setting, I can make the expression var*600 (this would make the 0 = 0, and 1 = 600)
The Auto Refresh Button

I have tried a Driver but it appears that the auto-refresh button drives the Item Properties Shortcut!
(I want the Item properties Shortcut to Enable / Disable the Auto Refresh) Not the other way around!!
Please ignore that offset is purple, this is a driver and working fine. I am wanting to make the auto-refresh button to be the item that is driven by the new. shortcut
The auto refresh button has a data path "node_tree.nodes["Image Texture"].image_user.use_auto_refresh"
The Item properties have a data path ["prop"]
This is the Item Properties Box

This is the item properties section..

With Respects to the answer provided and using the script,
Is it possible to have the Auto Refresh for that Node appear in the properties box seen here?

Those properties are not animatable. You can't add a driver to them. Although they can be used to drive other properties, as you noticed.
However as stated in the comments you can use a Mix RGB node and drive the factor field, to be 0 or 1 for True or False.

Use the first Fac to be driven by the Auto Refresh custom property, and the second Fac to be driven by the Mute property. I set it to black but you can also use a Mix shader with a transparent shader like so depending on what you want to achieve.


Global keyboard shortcut to execute text editor script How do I create a global keyboard shortcut that executes the script currently in the text editor?

I say global because I would like to be working in the default 3D View (no text editor displayed) and simply press a key to execute the script.  This would avoid me needing to change to the script layout, run the script, return to 3d View every time.

Alt + P only seems to work when the text editor is focused.

In User preferences->Input, I tried adding a new "Run Script" event ('text.run_script') to the Window (Global) section and assigned it a key, but the console reports 'event has invalid window'.

If you are only going to re-executing this script when 3D View is open you might add the shortcut to 3D View (global). I propose a different shortcut as alt+p is for showing the 'clear parent' menu, but it's up to you.

At the end of this list..

generic_executor.py

# something to test with..
import bpy
import random

x = random.randint(-6, 6)
y = random.randint(-6, 6)
z = random.randint(-6, 6)

bpy.ops.mesh.primitive_cube_add(radius=1, location=(x, y, z))

operator.py

import bpy

class GlobalScriptRunner(bpy.types.Operator):
    """Tooltip"""
    bl_idname = "view3d.global_script_runner"
    bl_label = "Global Script Runner"

    #@classmethod
    #def poll(cls, context):
    #    return context.active_object is not None

    def execute(self, context):
        print('i get called')
        textblock_name = 'generic_executor.py'
        textblock_as_string = bpy.data.texts[textblock_name].as_string()
        exec(textblock_as_string)
        return {'FINISHED'}

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

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

if __name__ == "__main__":
    register()

To wrap this into a reusable add-on requires more time than I have, but it's not the purpose of this answer. The benefit of having this as an addon would be that you could create a panel for 3dview in which you can type or select a textblock to be executed when the shortcut is triggered, rather than this hard coded suggestion, where it only executes a textblock named generic_executor.py

edit:

Here's something you could use as a starting point, it creates a panel in 3dview (right side panel) and allows you to pick a textblock. Whenever you trigger the operator view3d.global_script_runner , it would look at the name of the selected file and execute it.

https://gist.github.com/zeffii/2b488961226ee1ecefcf


Recreating the Animation Nodes FCurve Animation Offset Template Hi i've been trying to find a way to create and control traffic (thats also flying) in a large futuristic city scene. To do this I'm trying to re-create an old animation nodes template that I feel will solve the problem but i keep coming up short. Does anyone know the layout of the subprogram for this video? https://www.youtube.com/watch?v=SsrQk1kiGF0&t=75s

Lets say we have a cube with some f-curves that controls its location.

And we have an array of spheres that we want to transform based on the f-curves of the cube with an offset it time.

What we are going to do is create a loop that evaluates the x, y and z f-curves at multiple offset values, combine the result in a vector and append it. The offsets shall be of uniform range generated using the Float Range node.

By adding the evaluated locations to the locations of the spheres, we get the result you are looking for.


How can I remove artifacts from a flat surface after using a boolean modifier? I tried to model a simple keypad, I got this model after using a boolean modifier on an array of cylinders and a cube:

The face of the cube had way too much edges and as suggested here Cutting hole into a face with a line loop? I used limited dissolve and got this:

What would be a good way not to get the rendering artifacts on the plane?

EDIT:

The face normals look like that:

The problem was solved by setting Shading to flat in the Object Tools Panel  T


need help property window way zoomed out on ui Not really a 3d question but I pressed a button and.. the property window is zoomed out a ton how can I get it back to normal I do not know what button I pressed. I have tried middle mouse button I could not find anything.

Hover your mouse over the panel for which you want to change the size of the UI (in your case the properties panel), hold Ctrl and press down Middle Mouse Button. Move the mouse up and down to resize the content.
If you want to set the panel back to default size, hover mouse over it and press Home


Replacement For "Centers Polygons" Node In Blender Sverchok? I keep getting asked for "Centers polygon" node in various Blender / Sverchok tutorials but I cannot find one.  Nor is there anything online that points me in the direction of it's replacement.
Can anyone tell me what node I am looking for?

Section analyzers has two nodes for this feature. Both have benefits, one output matrices, other has median calculation and bounds center and median weighted also.


How can I align the edges of a cut cylinder with another cylinder? So I have two cylinders, one is cut and one is not.

Here is the misaligned cylinder (That is cut at 45 degrees):

Is is possible to align those edges and make them straight again with the cylinder behind it?

Edit:

Kind of like this, where the green lines represent how I want the selected objects edges to be aligned with.

Select the vertices that you want to flatten, then scale it along the axis you want to flatten by 0.

In this case, scale along the y-axis by 0.


Timeline cursor missing My timeline cursor in the video sequence editor is either missing or hidden. I reinstalled blender to no avail. How can I get it back?

Edit: I found my timeline cursor as here, but it won't move at all.

I found my timeline cursor as here, but it won't move at all.

In Blender you cannot do that with Left click, you have to Right click and drag the cursor around your timeline.
Hope this helps.
All the best..


Is there a way to spread a texture across each stone and not the whole thing? I have a well model and I'm wanting to spread the texture across each little stone individually and not the whole well at once. Is there a way to do this?

The way I ended up doing this was to select all the edges and then marking a seam on all of them. But then, the texture will be blurred so you have to turn the scale up on the mapping node.