what can you call from the attribute node? I know you can call density or flame for example from the attribute node. I was wondering what else you can write in the name slot. And maybe a bit of explanation of the attribute node.

thanks in advance guys! :)

Currently you can get:

density When used on a domain object, this is gives a scalar defining the density of any smoke inside the domain. All three outputs are the same.

flame When used on a domain object, this is gives a scalar defining the density of any fire inside the domain. All three outputs are the same.

color When used on a domain object, this is gives the color of the smoke. The color and vector outputs are the same. The fac output is an average of the channels.

N This gives the normals of the object. You can also get this info from the normal output of a geometry node.

Ng This gives the true normals of the object. You can also get this info from the true normal output of a geometry node.

pointiness This gives a scalar representing the amount of curvature of the object's surface based on it's normals. You can also get this info from the pointiness output of the a geometry node.

uv This gives the UV coordinates of the active UV map (the map with the camera icon active). Same as the UV output of the texture coordinate node.

generated This gives the generated coordinates of the object. Same as the Generated output of the texture coordinate node.

tangent This gives the tangent coordinates using the object's active UV map. Same as the Tangent output of a tangent node with direction set to UV map.

name of uv map
This allows you to get the UV coordinates stored in a specific UV map belonging to the object with the material. You usually want to use the vector output, though the color output is the same. The Fac output gives an average of the channels.

Note that as of 2.71 there is a dedicated UV map node which makes this obsolete.

name of vertex color set
This gives the vertex colors stored in the named vertex color datablock. Again the color and vector outputs are the same, and the Fac output is an average.

In the case of a vertex color datablock and a UV map with the same name, the UV map will be used by the attribute node.

There are actually quite a few more in the code, the ones listed above are just the ones which appear to work as of 2.74 930bf58 (latest master at the time of writing).
For a complete list, see line 192 of /intern/cycles/render/attribute.cpp:
I put //no output next to the ones which appeared to do nothing.
switch(std) {
    case ATTR_STD_VERTEX_NORMAL:
        return "N";
    case ATTR_STD_FACE_NORMAL:
        return "Ng";
    case ATTR_STD_UV:
        return "uv";
    case ATTR_STD_GENERATED:
        return "generated";
    case ATTR_STD_GENERATED_TRANSFORM:
        return "generated_transform";   //no output
    case ATTR_STD_UV_TANGENT:
        return "tangent";
    case ATTR_STD_UV_TANGENT_SIGN:
        return "tangent_sign";          //no output
    case ATTR_STD_VERTEX_COLOR:
        return "vertex_color";
    case ATTR_STD_POSITION_UNDEFORMED:
        return "undeformed";            //no output
    case ATTR_STD_POSITION_UNDISPLACED:
        return "undisplaced";           //no output
    case ATTR_STD_MOTION_VERTEX_POSITION:
        return "motion_P";              //no output
    case ATTR_STD_MOTION_VERTEX_NORMAL:
        return "motion_N";              //no output
    case ATTR_STD_PARTICLE:
        return "particle";              //no output
    case ATTR_STD_CURVE_INTERCEPT:
        return "curve_intercept";       //no output
    case ATTR_STD_CURVE_RANDOM:
        return "curve_random";
    case ATTR_STD_PTEX_FACE_ID:
        return "ptex_face_id";          //no output
    case ATTR_STD_PTEX_UV:
        return "ptex_uv";               //no output
    case ATTR_STD_VOLUME_DENSITY:
        return "density";
    case ATTR_STD_VOLUME_COLOR:
        return "color";
    case ATTR_STD_VOLUME_FLAME:
        return "flame";
    case ATTR_STD_VOLUME_HEAT:
        return "heat";                  //no output
    case ATTR_STD_VOLUME_TEMPERATURE:
        return "temperature";
    case ATTR_STD_VOLUME_VELOCITY:
        return "velocity";              //no output
    case ATTR_STD_POINTINESS:
        return "pointiness";
    case ATTR_STD_RANDOM_PER_ISLAND:
        return "random_per_island";
    case ATTR_STD_NOT_FOUND:
    case ATTR_STD_NONE:
    case ATTR_STD_NUM:
        return "";
}

Note that for the most part the attribute node seems to be used as a sort of "testing node" for inputs which aren't yet available in other nodes[citation needed]. I suspect old attribute names are not removed when they do get added to another node (e.g. pointiness) as this would break backwards compatibility.
At any rate, this would at least begin to explain why there is little to no documentation about this node.


Unable to prevent self intersecting geometry? I'm working on a cap for a little device, but whatever I do, I cannot seem to avoid self intersecting geometry from being generated.
I fiddled with the order of modifiers and solidify parameters, to no avail.

blender file

First thing, move the Solidify mod above the Sub-D mod, then change the settings in the Solidify mod to "Edge Data -> Rim -> 1.0"
And check your crease values, there are a few of them, especially around that corner, that are not 1.0, this will screw up the Edge Data.

This will fix most of the problem.
After that, there will be a small issue left that is caused by the edges near that corner being a smaller distance away from the corner than your solidify value (1mm) This means that when Blender tries to offset them, they overlap. Simply move them away a little to fix the corner. Use GG to slide them away.
(These verts)

Remember, Blender is not CAD! There are a whole different set of rules to learn and follow! :)


Delete parts of a grid outside of another object I created a grid (as multiple curve paths) which is in and outside of a sphere. When I'm trying to delete all parts outside with the Boolean Modifier, it says "Cannot execute boolean operation". How can I solve this?

The problem is, that you need a proper (non-manifold) mesh to do the Boolean operations with. The method you used to create your "Grid Cube" doesn't help here because it doesn't prouce one. You could check your mesh in Edit Mode hitting Ctrl Shift Alt M with the Mesh Select Mode set to Edge or Vertex.

Here's a better Method to create your Grid-Frame-Cube:

Create a small cube in the corner

Add a default Cube (2x2x2) in the Center and name it miniCube
Position your 3D Cursor to the front bottom left corner by selecting the Vertex in Edit Mode and use Shift S, Cursor to selected
Pivot around the 3D Cursor and scale your Cube (S) by 0.25.

Duplicate this small cube twice, name one Grid and one inner, then hide the original miniCube or move it to another Layer as a Backup. You might need it later again to play around with the following Bevel settings.
Select the inner Cube and in Edit Mode select every Vertex (A), then use an Edge Bevel (Ctrl B) of 0.25.
Select the Grid Cube and add a Boolean Modifier with the inner Cube as Object in Difference mode. (This will cut out the inner part, basically only leaving the grid-frame)
Add three Array Modifiers, one for each Axis to the Grid Cube. This basically creates the grid-frame-like Cube structure you created but with a proper geometry.

Set the Count to 4
Set the Relative Offset to 0.0 on each but 1.0 for one axis: x for the first Modifier, y for the second and z for the third.
Check Merge

Now you can add the Boolean Modifier to the 2x2x2 Sphere in your Center with an Intersect Operation and the Grid as its Object and it will work fine:

You could of course play with the Bevel of your small cube before to get your grid nicer looking. You could use more Segments or change the Profile from 0.5 which is "flat" to a smaller number like 0.25 to get a more rounded grid-frame. Its settings are available in the panel in the Toolbar once you confirm the Bevel before doing any other operation or by hitting F6.


Numpy in Blender 2.77a I try to import numpy in Blender 2.77a. My Blender uses python that came pre-packaged. It has numpy module "2.77/python/lib/python3.5/site-packages/numpy". But running import numpy I get this error:

found bundled python: /home/user/blender-2.77a-linux-glibc211-x86_64/2.77/python
Traceback (most recent call last):
  File "/Text", line 1, in <module>
  File "/home/user/blender-2.77a-linux-glibc211-x86_64/2.77/scripts/modules/numpy/__init__.py", line 137, in <module>
    from . import add_newdocs
  File "/home/user/blender-2.77a-linux-glibc211-x86_64/2.77/scripts/modules/numpy/add_newdocs.py", line 9, in <module>
    from numpy.lib import add_newdoc
  File "/home/user/blender-2.77a-linux-glibc211-x86_64/2.77/scripts/modules/numpy/lib/__init__.py", line 4, in <module>
    from .type_check import *
  File "/home/user/blender-2.77a-linux-glibc211-x86_64/2.77/scripts/modules/numpy/lib/type_check.py", line 8, in <module>
    import numpy.core.numeric as _nx
  File "/home/user/blender-2.77a-linux-glibc211-x86_64/2.77/scripts/modules/numpy/core/__init__.py", line 5, in <module>
    from . import multiarray
ImportError: cannot import name 'multiarray'
Error: Python script fail, look in the console for now...

Is there something else I should do?

EDIT:

I tried a different machine, same download, and it works without problems. How could I identify what is wrong with my machine? Some missing paths, settings, libraries?

Python looks in the list returned by sys.path.

import sys
print(sys.path)

It looks in each directory in the sequence, and the first mention of the module you are trying to import is where it will attempt to import from. You for some reason had numpy in /scripts/modules, and it looks like it was perhaps from an older Python version. Blender comes bundled with numpy for quite a while now, so no need to install it into modules.

On Windows machines, Blender stores the numpy in

2.77\python\lib\site-packages\numpy

on Linux it seems to be

python/lib/python3.5/site-packages/numpy

or

/usr/lib/python3/dist-packages/numpy/


Blender does not automatically create manifold when a space is enclosed by faces Why doesn't blender automatically 'solidify' the space enclosed by faces? This makes no sense to me at all. If i use 3D printing add-on 'make manifold', blender goes crazy and start deleting vertices. At this moment, i have no hair left to pull. How do i force blender to make manifold any space enclosed by faces?

Manifold geometry just means it’s watertight. Your printer should automatically translate from a sort of paper model to something solid. It does this by working with the face normals. If the add-on thinks the geometry is not manifold, there might be a hole in it somewhere, or maybe some of the face normals are oriented backwards. Try selecting everything, then using “Merge by distance” to merge verses that are in the same mathematical position but are not connected. After that, with success or failure, try re-calculating all the normals to the outside.


Bought a book and it says when you select an edge and press ctrl+alt+r it creates 2 parallel edges but nothing happens he calls it "edge offset tool"

They've got the default shortcut wrong. It's CtrlShiftR, which creates two loops on either side of the selected loop, interpolated between it and the ones on either side.

You can hit E while sliding the new loops to make them parallel either to the original loop, or the ones which bound it on either side. F flips which. Hitting E again returns to interpolation.


How does code execution work in an Animation Nodes node tree? I need to understand the basic foundations of how the Animation Nodes add-on calculates and executes code.

So there is Auto-Execution, then options like Always, Tree Changed, Frame Changed, Property Changed.

Those options are ok for one node tree. I have not used multiple node trees.

Supposed I have a Script Node that I just need to run once. Jacques told me that I can use the Execute Node Tree button.

Which means... ok, suppose I have a Script node that just needs to do something one time: Perhaps calculating the shortest path distance of 10 vector positions based on a single point and target point.

When the above gets calculated all the time, it will just freeze Blender.

Should I then create a Script node in one node tree and execute it once, and then use the data and store it somewhere (maybe as Text) and then continue?

Another way, maybe I just want Animation Node to check an Object in the scene, and print out the name. One time only. When I use script node, it gets executed all the time.

There is this trigger thing, but I am not too familiar with it. Can we have example?

I will try to explain the execution system of AN:

At first there are normal nodes. Each node resembles a specific function. It computates an output based on the input.

Multiple nodes together form a network. All nodes that have the same color belong to the same network (except Invoke Subprogram nodes, these are a bit special to make it easier to see what belongs together).

There are different types of networks. At the highest level I differentiate between main and subprogram networks. By default all subprogram networks are colored and main networks are (light) gray. Furthermore there are different types of subprograms: Group, Loop and Script

Main networks can be executed on their own while subprograms cannot. Subprograms always need to be called from another network. Most of the time they even have additional input which the caller has to provide. To call subprograms we have the "Invoke Subprogram* node.

Multiple networks (both: main and subprograms) together make up a node tree in Blender. It is not important in which node tree the subprograms are because you the Invoke Subprogram node can also invoke subprograms that are in another tree. However, it is important in which node tree your main networks are.

Each node tree can be executed individually. Executing a node tree means to execute all the main networks in it.

Because of that each node tree has separate execution settings. A node tree can either be executed automatically (this is what the Auto Execution panel is for) or you can execute it manually (or both).

So in your case you could put the nodes that should only be executed once in one node tree. And all the others in another node tree. For the first one you can disable Auto Execution and just use the Execute Node Tree button.

I also wrote something about it here: https://blender.stackexchange.com/a/43697/5449


How to wiggle multiple keyframed objects with Animation Nodes I have a keyframed animation of many moving objects and I want to add a little bit of random wiggle to the rotation and position of them. Is this possible? If so, how can I do it?

You will have to put these nodes into a loop to use the effect on multiple objects. To get different motions for every object you have to link the Index output of the Loop Input node with the Seed input of the Wiggle Vector node.

Make sure that you disable "Use Current Transforms" in the Object Transforms Input node. Otherwise the objects will move away when you stop the playback. You find the setting in the advanced node settings panel on the right.

The basic idea here is that you evaluate the fCurve to get the location the cube would normally have (the Transforms Input node does that). Then you create an additional vector that wiggles around the origin with a maximum amplitude (0.5 in the image above).

By adding both vectors together you get an offset on top of the original keyframed position.
The last node sets the new location on the object and overwrites the keyframed position.


What is Ambient Occlusion? What is Ambient Occlusion and what are some of it's uses? I see it is used in creating what might be called "shadow catchers" in the following node tree setup:

Per definition

Ambient occlusion is an approximation of global illumination that
emulates the complex interactions between the diffuse
inter-reflections of objects. While not physically accurate (for that
use full global illumination)

What is it?:
It is a way to make objects in a scene look more realistic. Ambient occlusion casts shadows where objects are close to each other. Note that it will also cast light where they are not. Ambient Occlusion is a fake light.

Note that in Cycles there is also an Ambient Occlusion Shader:

The ambient occlusion node gives per-material control for the amount
of AO. When AO is enabled in the world, it affects all diffuse BSDFs
in the scene. With this option it's possible to let only some
materials be affected by AO, or to let it influence some materials
more or less than others.

Ambient Occlusion enabled in the world panel.

Ambient Occlusion can make a big difference especially in the Blender Internal Render Engine. In cycles enabling Ambient Occlusion does not make a big difference in terms of realism because Cycles is already rendering with Global Illumination, which is physically correct Ambient Occlusion. So in cycles there often is no need for it whereas in the Blender Internal render engine it is very useful.


Why is this UV map going horribly wrong? So, I've created a little light-saber, (I got the idea from here, but I got carried away and my model looks nothing like the video.)
Feel free to download the file here.
...The UV unwrapping, sadly, has been a disaster.  The output makes so little sense it could've strained Euler's short term memory, because I have no idea what "piece" (what are those called again?) of the UV map goes where on the model.
My model looks like this:'

I got some effect out of applying scale, as the unwrap is no longer some huge distortion extending several times the length of the grid, but still utterly useless.

As you can see, most people won't be able to see how this was unwrapped.  At the moment I only have three seams, onet is along the "bottom" of the shape directly under the one asymmetrical part (the protrusion visible to your right.)  The other two are on either side of the protrusion, but instead of red lines I see thick black lines:

in one of the places I want the seam (I assume I want seams about asymmetries.)  I don't know what these black lines mean and I can't tell if there is any seam there.
Thanks for the help!

The issue here is the angle from which you performed the Cylindrical projection. UV projections behaves differently according to the angle from which you're looking at your model. In this case, you should project from the angle that represents the length of your cylindrical object, which in your case is the top view.

You can also simply use the UV unwrap (U > Unwrap) to get a nice map according to the seams you created:


How can I make a chocolate material similar to this one? I would like to make a chocolate material similar to the one seen in the picture.

The problem is the slight transparency (you can see the nuts shine through on the surface), which I just can't acchieve.

Could somebody help me or tell me which node I have to include?

Thank you

To achieve the transparency you need to combine volumetric scatter into the material - in place of the usual 'diffuse' shader.

The key to the transparency is to model the "chocolate" to that it has very thin layers over the "nuts".

I started by modelling the nuts :

Then added the chocolate (just a cube, rescaled), subdivided and used Sculpt mode to build up the chocolate around the nuts.

The material to include surface properties (the bumpiness and glossiness) along with the translucency is as follows :

Adjust the Density (the Value node) to vary the opaqueness of the chocolate. This is essentially just the same as a volumetric shader that you would use for a liquid - just with a higher density to make it appear more solid.

For best results, take care over the sculpting of the chocolate over the embedded nuts - you need consistently thin layers to get smooth transitions.

Blend file included


Why is this environment texture image showing only a solid color in the 3D view, using Cycles? I'm having a problem rendering the environment map. I downloaded a sample project that has the same settings as my project but it renders without a problem. I tried using both a .hdr and .png image. Attached are screenshots with node settings. First is the incorrect render and 2nd image is the project the renders correctly. How do I go about fixing this?

That is because you are in orthographic view mode, toggle back to perspective mode with Numpad 5.  Unless your camera is also set to orthographic you should always see the environment in camera view and your render.


Animation node - sorting a collection of objects from their size Could you please help.
I've got a collection of objects, I want each of them to appear ( every 10 frame animation) in the viewer. Starting from the smallest to the biggest.

Dear Leander

Thank you, We are on the way to find the solution.
In your node suggestion, the object size is not satisfying the size request and Suzanne never appears ?.
the object with the smallest size shoud appear first
I mean cone 10 or cube 9
then for example in desorder (because their size seems similar) Cube 4 or Cylinder 5 or sphere 6 or cone 7 or suzanne 8
then cube 3
then cone 2
then cube 1

See my work, I am stuck and do not see how to progress. I have tried to find some ideas to continue, unfortunately. Thank you

Dear Gorgious,
Thank you for helping, It's sems you got the solution, but I could not succeed with the node description you left (I use 2.82 version & 2.1.7 AN).
I'm a beginner with AN.
As you can see on the first node I don't have like you the Float input in Float List
On the 2nd node I get Index and object list (not Object like you)
on the 4th node seems OK
On the 5th node I do not get the first Invoke subprogram with Float List as output...and similar answer for the others
See my nodes

Still struggling with this nodes interpretation
Sorry about, I Cannot make it work. Any help ?
Starting with dimensions...I went unsuccesfully on Data API and got lost..

I think we can do it in 4 steps :

Set up a loop to extract the size of each object. Since the "size" can be subjective, I calculated the length of the vector resulting from the object's dimensions (Bounding box).

Next, sort the list and use the sorted indices to get the object list sorted by size.

Finally, make the objects appear with a delay in a loop, in the correct order.

The main loop :

Result :


Simple Python script: errors import bpy
def driver_func(val):

if val < 5:
output = val * val

else:
output = val + 20

return output

# add function to driver_namespace
bpy.app.driver_namespace['driver_func'] = driver_func

I try to run this script in Blender 2.8 to add the function to the driver
but it constantly fails. Why?

My second problem is to get this working:

    import bpy
    activeobj = bpy.context.active_object
    def driver_func(val):

       if activeobj.name = "A":

            output = val * val

       else:

            output = val + 20

      return output

#add function to driver_namespace
bpy.app.driver_namespace['driver_func'] = driver_func

The error message is:

SyntaxError: invalid syntax

location: <unknown location>:-1

Error: Python script failed, check the message in the system console

I would recommend that you use a proper IDE (Integrated Development Environment) that supports Python. This will allow you to check for syntax problems. The correct indentation of the code is important for Python because it is used to determine what part of the code belongs to, e.g. an if, else condition or a function.

Correctly formatted your first code should look like this:

import bpy

def driver_func(val):
    if val < 5:
        output = val * val
    else:
        output = val + 20

    return output

# add function to driver_namespace
bpy.app.driver_namespace['driver_func'] = driver_func

Note that everything that belong into the function is indented by four spaces. What belongs inside the condition is indent by another four additional spaces. This is necessary in Python, because unlike for instance C, it doesn't use curly braces to determine the scope.

Your second script is problematic for two reasons.

The syntax is invalid. If you want to perform an equality check you have to use == instead of =. The latter is only used to assign a value to a variable.
You're declaring a variable outside the function, but are using it inside without passing it as an argument. This is bad because a) you don't want to create global state b) in this particular case the driver will not be able to access the variable because it has gone out of scope. The bpy.app.driver_namespace['driver_func'] only contains a reference to the function, but not the variable you're trying to use.
You cannot access the active object like through bpy.context.active_object when using the code in a driver. It should be bpy.context.view_layer.objects.active.

The correct script would therefore be:

import bpy

def driver_func(val):
    active_obj = bpy.context.view_layer.objects.active

    if active_obj.name == "A":
        output = val * val
    else:
        output = val + 20

    return output

#add function to driver_namespace
bpy.app.driver_namespace['driver_func'] = driver_func


Can the grease pencil draw on a plane axis in the perspective view? I would like to draw on an axis plane while in the 3D perspective view (not front/side views, ect.) The only way I've found to do this is with an object plane (which MUST be visible... no wireframe view). I would like to do it on an adjustable invisible plane which can be quickly targeted.

My desire is to have the ultimate concepting tool for level design, by drawing on an invisible plane in the x, y, and z. I lack the programming skill to make this tool but I'm studying.

What I'm hoping is that there's already a way or addon to do this.[![Level concepting in 3D with grease pencil][2]][2]

You Answered your question yourself.

What you need to do is to add a plane and align it to view  (From the adding option),Using local transform orientation,move the plane in he local z axis to the level you want to draw in.

Now all you have to do is to put your 3D cursor into the surface of the plane just by clicking anywhere in the plane with the LMB .

So suppose I have this object and I want to draw on he shades face:

Now add the plane and pt the 3d cursor on it :

And you are ready to paint,Assuming your stroke placement is set to Cursor,you are good.And you can just delete h plane it is no needed.


I can't see lamps or selection outlines or anything "orange" in 3D view anymore I am very new to Blender and I have no idea what I could have done to cause something like this. I remember messing with the CPU and GPU rendering options. I tried downloading other files from Blender Cloud, and they didn't have the issue. I copied the User Preferences but it's still the same.

The only thing, that can make lamps and outlines disappear is "Only Render" Display option in right panel (the one that appears and disappears when you press N )


Moving a layer behind another one to apply a glow effect I've been creating a spaceship and I am now trying to set up the compositing nodes. For that, I am using pass indexes for materials, so I can change the effects in compositing nodes and i am having 3 different render layers: spaceship, afterburn and one more layer for slipstream.

I've been trying to place spaceship layer in front of afterburn so the glow effect of the afterburn would be exactly behind the spaceship and wouldn' t affect spaceship layer itself.

However, I can' t understand what I am doing wrong. Connecting two layers (spaceship and afterburn with glow effects) into mix shader's image sockets and spaceship's render layer alpha wire into the same mix shader's Fac input nothing happens. The spaceship layer doesn' t get placed in front of afterburn.

Here' s also an image for summarizing my problem. In other words, the glow of the afterburn affects the spaceship:

In render tab, film options just click "transparent" to get alpha


move uv coordinate when moving vertex Is it possible to move a vertex, and have that vertex also be moved on the UV mp as well?
I'm trying to improve the boundaries of a modeled leaf:

And it is a pain to fist move the vertex and then correct the UV map.

You must be looking for the Correct Face Attributes option:


2D stabilization of camera pan I have a movie clip that pans from left to right. I've added a motion tracker to an element in the scene that is stationary. But when I apply stabilization the camera panning motion is lost. The autoscale function also crops most of the scene away. It's as if Blender thinks the panning is an error that needs smoothing out.

How can I allow for camera movement while smoothing out only small bumps and jitters?

Here's how the stabilzation's supposed to work in Blender:

The trackers included in the 2D Stabilzation tab get pinned down.
The image then gets repositioned to keep those tracked points in the same place, effectively countering whatever move you had made.
Blender has no way to discern which movement is intentional and which isn't...

A workaround for stationary shots with panning (or tilting) is recreating the move after you have stablized the shot.

To do that you need first to unclick the 'Autoscale' button in the Movie Clip Editor. The repositioning of the clip is done on the compositor adding a 'Translate' or 'Transform' node. Note that you will need to rescale the image a bit.

In this case you're panning from left to right, but Blender is moving your image in the opposite direction. So you need to move it back again on the x axis from left to right, so that your picture stays in the frame.

In the Compositor add a 'Movie Clip' node with with the original video footage (or image sequence) and you plug it to a 'Stablize 2D' node.

On the 'Stablize 2D' node select the tracked Movie clip as source, so Blender can use the tracker information associated to the clip. The output of this node will be the stabilzed image.

Add a 'Transform' Node, and that's where you'll recreate your camera move.

On the Timeline go to the first frame of the clip.

Back on the Compositor change the values on the 'Transform' node to reposition your image so that it fills the frame. Add a key frame on the 'Transform' node by pressing I.
Scroll down the Timeline to the end frame, reposition the image again using the 'Transform' node and set another key frame.

You might need to play with the interpolation curves, or add a couple more key frames. If your image doesn't fill the frame correctly, showing the edges of the original image, then make changes on the scale. After some trial and error you should have a nice panning shot with no jitter.

Notes:

It's possible that the lens distortion become more obvious. Undistorting might help for that.
Also, since you are rescaling the image, know there will be some quality loss (your image might be softer). The only way to prevent that is to shoot your original video in a format that is larger than your output...
Another strange effect that might happen, is that the motion blur that is already part of the original image looks completely wrong. In that case you might want to have the stabilization be "less perfect" by playing with the "location influence" values on the '2D Stabilization' tab, to let the image wiggle a bit.
Blender doesn't have a one button solution like the "warp stablize" found on Adobe's "for rent" software.


How to create porous material Porous material
I tried to model a porous material which contain empty spheres or complex shapes, modeling it into a cube.

(source: scielo.br)
I found this video as an example, but the procedure was made by Cinema 4D with an add plugin.   https://www.youtube.com/watch?v=mcRlTK0TUBg
Is there a technique to use procedural textures and volumetric effects to these porous texture, or if there's a script to do!

You could use 3d dimensional procedural textures for volumetric rendering:

With a node setup like:

The scale of the voronoi texture controls the size of the bubbles. You could also try noise or musgrave texture with different settings.

For more details I reduced the step size in the volumnetric render settings:


How to control light spread in a volume? Quick question, is there any possibility to control the Area light somehow? I want to achieve a similar effect as you can see in the following image. Basically I need a higher contrast and would like to get the light more "sharp".

How to achieve that? Any suggestions?

Thank you @JachymMichal! That's close, but not exactly what I meant. Because you are using a spot light, the rays are not as parallel as I'd like having them. Basically I'd like to get a pretty harsh contrast and sharp shadow without the soft transitions. Tried to visualize it here:

Any other solution?

You'll be better off with a Spot or Sun lamp.
Sharper shadows can be achieved by decreasing Volumetrics density.

Spot lamp

for straight rays decrease the spot shape Angle value
for harder shadows increase power and Blend value

Sun lamp

keeps rays perfectly straight
for harder shadows increase strength and decrease angle

Example of a Spot light with a narrow cone (8°).

Example of a sun lamp with perfectly parallel rays.


Why doesn't the draw callback update with mousemove? I've taken the "Operator Modal Draw" template example and edited it. I wanted to see if I could pass the modal "event" through "args" in the draw_handler_add function. It works and the draw_callback_px function updates and draws the event type every time I press a key or do something with the mouse except for when I move the mouse (never prints "MOUSEMOVE" like it would if I were printing "event.type" directly within the modal function).

Anyone know why this is? Would be great If I could pass "event" entirely through to the draw_callback_px (not that I would want to run it every time the mouse moved, I'd control it with a conditional, but would like to have full power of the modal event within my bgl,blf drawing). My knowledge is pretty limited about the draw_handler and callbacks.

import bpy
import bgl
import blf

def draw_callback_px(self, contex, event):

    font_id = 0
    blf.position(font_id, 15, 30, 0)
    blf.size(font_id, 20, 72)
    blf.draw(font_id, event.type)

class ModalDrawOperator(bpy.types.Operator):
    """Draw a line with the mouse"""
    bl_idname = "view3d.modal_operator"
    bl_label = "Simple Modal View3D Operator"

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

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

        return {'RUNNING_MODAL'}

    def invoke(self, context, event):

        # the arguments we pass the the callback
        args = (self, context, event)
        # Add the region OpenGL drawing callback
        # draw in view space with 'POST_VIEW' and 'PRE_VIEW'
        self._handle = bpy.types.SpaceView3D.draw_handler_add(
        draw_callback_px, args, 'WINDOW', 'POST_PIXEL')

        context.window_manager.modal_handler_add(self)
        return {'RUNNING_MODAL'}

def register():
    bpy.utils.register_class(ModalDrawOperator)
def unregister():
    bpy.utils.unregister_class(ModalDrawOperator)

if __name__ == "__main__":
    register()

Use the event from the modal method.

Will get back to this when I find the link about full event.  The event in invoke doesn't much care about mouse moves, rather a shift click or which button, where as the "full event" is available to the modal.  Try script below, a quick hack to use modal event when setting up handle.

import bpy
import bgl
import blf

def draw_callback_px(self, contex, event):
    font_id = 0
    blf.position(font_id, 15, 30, 0)
    blf.size(font_id, 20, 72)
    blf.draw(font_id, "%s %s" % (event.type, event.value))

class ModalDrawOperator(bpy.types.Operator):
    """Draw a line with the mouse"""
    bl_idname = "view3d.modal_operator"
    bl_label = "Simple Modal View3D Operator"
    _handle = None
    def modal(self, context, event):
        context.area.tag_redraw()

        # Add the region OpenGL drawing callback
        # draw in view space with 'POST_VIEW' and 'PRE_VIEW'
        if not self._handle:
            args = (self, context, event)
            self._handle = bpy.types.SpaceView3D.draw_handler_add(
            draw_callback_px, args, 'WINDOW', 'POST_PIXEL')
        if event.type in {'ESC'}:
            bpy.types.SpaceView3D.draw_handler_remove(self._handle, 'WINDOW')
            return {'CANCELLED'}

        return {'PASS_THROUGH'}

    def invoke(self, context, event):

        # the arguments we pass the the callback
        context.window_manager.modal_handler_add(self)
        return {'RUNNING_MODAL'}

def register():
    bpy.utils.register_class(ModalDrawOperator)
def unregister():
    bpy.utils.unregister_class(ModalDrawOperator)

if __name__ == "__main__":
    register()


Is there any way to randomize the keyframes position for multiple objects? Is there any way i can randomize automatically the keyframes position between a lot of objects? for example, i have 10 objects, with the same animation, and i want to move the keyframes for every single objects on the timeline, so one of those will start at keyframe 1, the other at keyframe 10, the others at 20, 25, etc. I need to know this so i can save time and also making a lot of random animations fast without having to enter in each dopesheet of each item, because maybe then ill have to animate like 100 objects..

Yes, there is a way to do this! I'm not confident that it can be done easily through the interface, but if you would like to do it with a script, I've written a sample that can get you going in the right direction. It moves the animation curves one way or the other depending on a random number (randomized per object).

    import bpy, random

    for object in bpy.data.objects:
        rand = random.randrange(-15,stop=15,step=1)
        #only effect objects which include "___" in the name
        if "___" not in object.name:
            continue
        #Go through all the animation curves
        for curve in object.animation_data.action.fcurves:
            #only effect if it's a x location curve (x array_index is 0, y is 1, z is 2...)
            if curve.data_path == 'location' and curve.array_index == 0:
                for point in curve.keyframe_points:
                    #add the random value to the x value (which is the frame #) of the keyframe point and it's handles
                    point.co.x += rand
                    point.handle_left.x += rand
                    point.handle_right.x += rand

This is just a little bit to get you going. You could change the data_path to affect a different type of animation curve, or change the array index to affect a different parameter of that type of curve.


Inherit color on hair particles emitted from vertices (Cycles) Using the simple technique shown here, I could inherit hair particle colors from an image.
But as the following image shows, once I select "Emit from Verts" instead of "Faces", the hair particles don't inherit the color anymore. Is there a way to re-enable this functionality while still emitting from vertices and still using hair particles ? (In Cycles only)

I found a pretty stable/flexible solution to this and made a tutorial about it.
Try it and give your feedback on it !


Blender preview in video editor is really slow, barely using my computer's resources I set the memory cache limit to 12gb, I'm running on ssd, I even set the resolution to 5% yet blender is ungodly slow. I'm only getting around 5 fps and blender starts to lag heavily when I start to add effect strips like speeding up the video or adding overlays. The playback is set to No sync.
I know I have a slow system but this is ridiculous. I'm running on a AMD Ryzen 2400g and a Radeon 570 with 16 gigs of ram but I noticed that its only using 13% of the CPU, 235mb of ram and it barely touched the GPU.
Does anyone know how to fix this? I'm editing a 3 min phone video, uncompressed 1080x1920, using the Eevee engine

Actually, there are a couple of things you could test, if they will improve the performance.
Try the Prefetch Frames(Cache) in the Preview Sidebar:

Try the new Disk Cache, which may be fast enough if you point it to save on a SSD:

Another thing to test is to make the project resolution(default 1920x1089) match your footage resolution(1080x1920), by selecting the strip and select this:

Cache handling seems to have improved in 2.91: https://builder.blender.org/download/
Finally you can try to use proxies. This add-on makes the process very simple and fast:
https://github.com/cgvirus/blender-vse-easy-proxy
FYI: Work is being done in this area currently. Ex. yesterday a dev found a way to speed up ffmpeg with 24%:


Cannot Edit Light Properties I have a situation where I cannot edit light properties on a light in my scene:

Does anyone know how to get the properties back?

The light is parented to an object but removing the parent does nothing.
Duplicating the light also resulted in no properties being displayed.
Adding a new light to the scene also resulted in no properties being editable (as in the picture).
Restarting Blender did not help.
Switching between different light types did not display any properties.

I can affect the light and animate its transforms but not its strength.

The answer is very simple - I had set up "Workbench" to do a test render last night on the animation - and you can't affect the lights in workbench mode. Who knew?
So if this turns up for anyone - now we know.


Connecting curve and plane I want to connect a curve with a plane as shown in the image.
Actually I'm making a fancy chessboard and i want to make it's base.
I've tried bridging edge loops and selecting respective vertices & adding  face (it works but not proper shading as shown in images).

So can anyone please suggest some another method?

If I understood you correctly, You want this :

I would do the following :

Start from your "curved planes gird" :

Make sure every "curved plane" is merged with his neighbors by selecting everything with A → open the "Specials" menu with W and clicking "Remove Doubles".

Then, hold Alt and click on an border edge of the "gird" in order to select the whole contour :

Extrude down this edge loop by pressing E and Z to constraint the extrusion on the Z axis. Click to confirm the action.

Make the extruded loop perfectly plane via a "zero scale" on z-axis: S + Z + Numpad 0 and click to confirm.

Then fill the bottom face, either via F, or via CtrlF → Gird Fill which may allow you to make a correct topology.

In addition, I would make a shade smooth, then turn on the "Auto Smooth" in the Object Data area :

This will make the whole object look smooth while keeping the sharp edges like they're supposed to look like.


How to create realistic blinking/shining stars in BGE? How to create realistic blinking/shining stars in BGE? I recently heard that the blender team actually removed the stars option but not sure what or where I can get or see this action. My intent is to create a 3D space thats pure 100% black like space with dot-like-stars. The stars don't have to necessarily be super fancy or anything like Star Trek but you know, some regular old stars. So that whenever I press the P_Key to run my game in BGE i can see the stars surrounding my space ship but the stars should be at a distance in light years. I've tried some HDRI imaging but well... it didn't look so good it looks very pixelated and not high quality view. Another bad thing about using the HDRI imaging is that i have to use texture mode/view to see it which isn't bad but then i loose all visual colors of my space ship and other objects in my virtual space.

One of my favourite tricks is to use what I call noise layers. So let's find/make a starry image.
Now we simply have to make it flicker! I happen to know that if you get another bit of noise and move it across behind a star-field, so long as the stars are sparse enough, you can't tell. So with a UV scroll script and two UV layers, you can get a reasonable effect

So here you go, here's a blend:
http://www.pasteall.org/blend/40447


how to create low poly cliff I want to create cliff with path to make roads as low poly like in below image.

It's simple, really.
First, you create two cubes, one slightly smaller than the other.

The select the bigger one of them and in edit mode add loop cuts vertically.
Between 24-48 loops should be enough.

Then select one of the edge loops press 'O' to activate proportional editing and then select random falloff.

Switch to top view, click on the respective axis manipulator and drag forward.

Then add 2 horizontal edge loops and repeat the same process with each of the loops. (Adjust it forward and backward as you see fit)

NOTE : Switch between random falloff and smooth falloff if you feel the edges are too jagged.

Then exit edit mode and move the "rough-edged" cube such that it overlaps the smaller cube.

Next, select the smaller cube and and add the Boolean Modifier and set the operation to "Difference", also make sure the Solver is set to "Bmesh" else the poly-flow may not be even and then press "Apply".

You may delete the bigger cube if you have no further use of it. Now, in edit mode, select all the faces you want to make a ledge or road and press "E" to extrude. Extrude till where you want it.

Hope this is the answer you were looking for. :)


Freestyle, render some objects with dashed lines and others with solid lines? I have two objects in my scene.  I'm using Freestyle.  I can't figure out how to make it so that Object 1 renders with a dashed (or dotted) outline, while Object 2 simultaneously renders with a solid outline.  I tried a lot of different settings - unfortunately, every time I select an object and change the Freestyle Line Set or Freestyle Line Style settings for it, it seems to apply the change to both objects.

(FWIW, when I change the Material for one object, it only changes the Material for that object.)

Any ideas?

Use Groups

Freestyle has an option to apply the Line Set to a previusly created group. You just habe to enable it in the Selection by section and pick Groups. An empty fields will appear below where you can choose what groups will be affected by the linestyle options.

In the image above each cube belongs to a different group (you can see them in the outliner), and each of the two Line Set is targeting one of them.

You can group the selected objects by pressing Ctrl+G and select all the objects with the same material (or something else) with Select linked

What I presented is probably the most versatile way, but you can probably get a similar result by taking advantage of one of the other ways in which you can restrict the Line Style influence (e.g. you can hide your dotted object and use the Visibilty options...).


How do I mirror a collection? I have a collection of objects that comprise a room. I would like to 'mirror' it on an X or Y axis. While I can accomplish this with an individual object, I cannot figure out how to do it with a collection.
Update: Still haven't figured it out, but I am just going to align my objects individually until I can figure this out.

you can select all objects in your collection and add a mirror modifier to one of them.

after, use make links

after, you can, use convert to mesh, to apply modifier. To all the meshes


How do I make my textures show in cycles? I am admittedly new to Blender, and of course cycles. I am working on a scene and I have textures set to my objects that render with internal engine just fine. However, when I go into cycles, everything is greyish. I have two light sources that should be sufficient (I think), I just don't know what I'm doing wrong. This is a screenshot of the cycles result.

The problem occurs because in Cycles you have to apply the texures differently from blender internal.
To apply a texture in Cycles you have to go to the materials tab, click on the (dot)button next to color and choose Image Texture and finally open your Texture.


How to the set orientation for spin tool I'm modelling an m26 grenade, specifically the top part (pic 1).  Ive used the spin tool to extrude and move down the top part of the clip (pic 2) . I want to do the same to the bottom face (pic 3) by using the spin tool and match the way the curve moves inward, however I cant seem to replicate the top spin and am struggling to find the correct orientation for it without causing weird spins to occur... any help?

I've created the curve going down (A) but want to do the same for the other side (B) on a different angle

Select the face you want to spin, then use View >> Align View >> Align View to Active. Find the view you need to see along your desired spin axis and spin. You can use a second window to do the selection if necessary.


Newbie question, rig character with skeleton from a different model I have zero knowledge of Blender or 3D modelling, but I'd like to know if this is possible and how difficult would be.

I have several 3D characters models rigged with the same armature, so I can swap  armor pieces in Unity. I have other 3d models, similar but with a different armature.
Is it possible/easy to import one armature into the other models, so that I can swap armor pieces using the same base human model?

In the end I'm using Unity to do all this in my game.

Thanks
Cheers

Yes, you can use a skeleton for another model. You'll need to skin your mesh to that armature. But this is the same for any rigging you do in blender. Google about skinning in blender.
If your rig doesn't fit your new model, you have to adjust it. If it's a simple rig with no complex constraints, hidden bones' layers, it would be an easy task, but if it's something like rigify rig, makeHuman rig, or any other complex rig, it would not be so easy. Those complex rigs are made with metarigs, then generated with scripts. So you will need to fit the source metarig to your new model, then re-generate the actual rig.


How do I fill the gap between groups of vertices for 3D printing? I have a 3D model which i want to 3D print, it has a face and a hair mesh which i initially joined to export a single PLY format mesh to 3D color printing. But then i noticed that the face and the hair (which both can be separated again easily so don't worry about that) have a gap between them, see:

More detailed view:

What i want to do is to extend the hair so it joins with the face. Is there a way to do that? Something like making new edges to join vertices of both groups of vertices?

like most things in computer science there's more than one solution

One way would be to do it by hand. Just extend the thing and boolean it.
The answer I prefer is to use meshmixer(free) and make solid the two objects. It looks something like this afterwards

Is that what the question was about ?


Particle system removes my particles when I render I'm using a hair particle system to make a forest with the density determined by a separate UV mapped texture. When I set it up it looks correct:

But when I render it seems to remove most the particles and only leaves some blocks behind. I have no idea how to fix this:

Here is the blend file: https://mega.co.nz/#!8E5VkDaJ!PsExHPP7LQNxk8Ry7xco9B3iO1xKrDhELS6wEszjM_Q

Just quick side note, I'm a huge fan of this style of art. You've done a really good job on this, and I've enjoyed looking around your .blend and learning a little bit about how you did it :)

You can tell something is immediately not right if you jiggle the Display percentage, under particle settings, a little. It will cause a lot of trees to disappear like when you perform a render.

Blender seems to be a little confused, and this might be a bug.

Anyway, the underlying issue is that you're using a texture to change the density. If this is your emitter:

This is your mask texture:

Then when applied, it simply deletes the trees outside the mask:

And that's how texture density masks work. You can prove this by setting the particle count to a small number like 10. If you count up all the trees you see, it will definitely be less than 10, if there are any at all.

But what you want is for it to constrain all the trees to your mask. The way to do that is with vertex groups.

Step 1: Remove the texture mask.

Under particle settings, click here:

Scroll down, set Density to 0 and uncheck it:

At this point, you should see all 40,000 trees. You may want to go ahead and lessen the emitter amount, because your computer will probably be running slow. Also, be sure to check Use Modifier Stack.

Step 2: Create the vertex group

Now one way to create the vertex group would be to use weight painting, but that can be a pain, and you already have a texture you want to use, so we'll convert that texture into a vertex group.

First, create a new vertex group, and call it something you'll be able to remember.

Go to your particle settings, and assign the new vertex group to density.

Nothing should happen just yet. Almost there. Add a new Vertex Weight Edit modifier:

Use these magic settings:

And Voila!

Click for full size

Note: I turned down the emitter count to about 3,000 in the photo to decrease render times.


What algorithm does Blender use to simulate the interaction between fluid and object? For research purpose, I need to implement the interaction between fluid and object. And I found that Blender is able to do this interaction (as shown in the picture).

My questions are:

What algorithm does Blender use to implement this interaction?
Can I add some additional force terms into the equations of this interaction in Blender, so I can change the behaviour of the fluid? (Not just change the parameters in the panels, but add some new force terms)

The wanted information were found by both googling the keywords "blender fluid simulation" which leads to this page of the 2.4 documentation and some grep in the source code of Blender.

In this doc page, you can see a "technical details" chapter which indicates three algorithms :

Lattice Boltzmann Method (LBM)
Navier-Stokes (NS)
Smoothed Particle Hydrodynamics (SPH). SPH seems to be approximations to the Lagrangian formulation of the Navier-Stokes equations

From that, I did only grep in the Visual Studio solution (don't imagine a minute I know anything more about all that...). For instance :

To summarize :

LBM is in simulation_object.cpp
SPH is in particle_system.c


d100 dice - Basic mesh to start I'm looking to create a model for a d100 (100 sided dice), hopefully planning to try and 3D print. I am wondering if there's an effective way to create a 100 sided object? I basically need an icosphere, but to be able to somehow configure the number of sides?

I'll then create text and add to each face. I know how to do this, but any additional suggestions on an efficient method would also be appreciated.

THANKS IN ADVANCE

You can't get a 100 faces icosphere. At subdiv 2 you've got 80 faces, and at subdiv 3 you've got 320 faces.

What you can do is add a subdiv 3 icosphere, then add a Decimate modifier to it. Adjust the Ratio parameter until Face Count is 100. That wont be a nice dice however, cause some faces will be larger than others, and with different forms, so the odds of each face wont be equal.

This set include a D100, maybe you could use it as a base.


Unity 3D RMB / Flythrough in Blender When I hold down the right mouse button in Unity 3D, I can rotate around the current view. I THINK (this may be wrong however) that this is called "Flythrough".

I haven't found the name of this function in Blender so I couldn't change the "shortcut" for it.

I wanted Blender to navigate like Unity.

How could I make the right mouse button in Blender act like the right mouse button in Unity?

Thank you.

There is a Github project located here:

https://github.com/niusounds/Blender-Keyconfig

I followed the instructions given on that page, and I had an 1:1 navigation in Blender as in Unity.


Advice on what shaders to use for stylised reptile skin? So I'm practicing using shaders on animals and I thought I would start with reptile skin. Now I'm not ready to work with image textures yet, but I found a good example of what I'm going for in a pokemon from Pokken charizard.

Click to enlarge.

That character they got in the shaders they use are beautiful. But I'm wondering what shaders I would need to use to get that effect. One is obviously the glossy, but after that I have no idea, does anyone else?

For simple procedural recreation of this material you can use Principled BSDF shader with some simple textures:

As a color I've used only Noise texture with Color Ramp to give a little variation for it. In your example texture is indeed hand painted.

The reflective part is Clearcoat and Roughness dropped to .3

Green border marks bumps created from Voronoi textures. I've used them as Normal and Clearcoat Normal.

The light rim is made by using two big Area Lamps placed behind model:


Preview viewport animation at 60fps? I made an animation with bones/rig and I'm trying to preview it at 60fps, but it is only is shown at 40-30fps.
Is it possible to fix this somehow?

From your comment, I gather that the FPS text is red, and below the desired rate. This is perfectly normal sadly, and just means your computer can not calculate the frames fast enough to keep up.

The displayed frame-rate is the actual number of frames calculated per second, and is displayed in red to let you know that is not the actual rate of playback. Notice that if it is going at full speed it will display the FPS text in white.

Try cutting down on Modifiers, especially the subsurf ones, as this will exponentially increase the speed.


How can I hide the colored plus signs on my texture? How can I hide the colored plus signs on my texture?
I have these colored plus signs appearing on my texture/model.
I haven't figured out a way to hide them.

The blend file:

I edited your scene so it is ready to paint over the UV grid texture to the new texture (called "stairs").
I basically added this extra texture for both materials and set the texture int the paint slot (left toolbar).


How to connect shape key animation as driver to rotate a bone in pose mode I am attempting to utilize facecap (iphone app) face fbx file (it has 51 shape keys with animation data on it etc) on a character with rigify rig (face as well).

Question.
i want jaw rotation (jaw controller x rotation) to take animation data (driven) by head object shapekeys['jawOpen'].
any ideas or python psudo code to setup driver expression will really help. thanks in advance

i managed to write one. if anyone else looking for same thing, below is simple function to test and could be starting point.
select facecap head mesh and rigify jaw master (in pose mode)

def bindFacecapToRigify():
    obj = bpy.context.selected_objects[0]
    sk = obj.data.shape_keys
    # driver details (skname:'pbone','prop','axis','dir'),
    skname = 'jawOpen'
    pbone = bpy.context.active_pose_bone
    d = pbone.driver_add("rotation_euler",0)
    d.driver.type = "AVERAGE"
    var = d.driver.variables.new()
    var.targets[0].id_type="KEY"
    var.targets[0].id= sk
    data_path = "key_blocks[\""+sk.key_blocks[2].name+"\"].value"
    data_path = "key_blocks[\""+"jawOpen"+"\"].value"
    var.targets[0].data_path = data_path
    d.driver.expression = "var"


Shrinkwrap modifier not applying correctly When I apply the Shrinkwrap modifier, the mesh isn't above the surface of the other like it should be. Plus, when the modifier is on the bottom, it deforms correctly, but then when applied, it is all messed up. How can I fix it?

About the modifier stack:

When a modifier is applied, it has to be applied as if it is at the top of the modifier stack (the first one), as to achieve the previewed result you will need to apply all other visible modifiers as well.

About the Shrinkwrap issue in particular:

A couple of things could be causing this. You could try:

Make sure your target mesh is high enough resolution (enough faces to deform vertices to)
Use the Offset slider
Use the Keep Above Surface option

Screenshot:


How to create an equivalent to the Hard Light blend type? Blender doesn't have an hard light blend type. I thought it would maybe be possible to get a similar result with multiple nodes.

Here is the source image:

And the result wanted when adding red:

Blender cannot work with a majority of the original AdobePDF blend mode types as they are strictly display referred and fail miserably when operating on scene referred imagery.

From the AdobePDF specification, where cb is background and cs is source.

  Multiply (cb, 2 * cs), if cs ≤ 0.5
  Screen (cb, 2 * cs – 1) if cs > 0.5

As you can see, the "minus one" portion, as well as the screen operation, will yield completely erroneous results on scene referred imagery.

Also, 0.5 comparison values would be on display referred nonlinear imagery, which would be post display referred transform.

Ultimately, it is a meaningless blend mode within a raytracing context. You could of course write your own screen node as well as hard light, generate a display referred output, and try to hack something together. It would seem that more optimal approaches might be wiser than a hacked mess, however.


My 3D cursor's xyz is all messed up and doesn't align with the grid, how do I fix this? for some of the vertices I select it's even upside down sometimes. This wasn't a problem until I pressed some random keys by mistake. Can anyone help?

Correct the rotation in the sidebar, just select the view tab and change the 3D cursor rotation back to 0


Automatic weight not working on valve rig I am trying to use rig my mesh with a rig made for valve games however the automatic weights is not working for my mesh.
 i have been following the tutorial shown below that tells me that i am suppose to separate parts blender would have a hard time finding a solution for.
 however this does not seem to be working for me is there anyway to fix this and keep it from happening again

Video:https://www.youtube.com/watch?v=yMARsirE99I&t=7s

Select your mesh then enter into edit mode and select all vertices then choose remove doubles as shown below, this will solve the issue.


Snap cursor to selected within a python script? What's the right way to snap cursor to selected with Python? I'm getting a failed context error with this:

bpy.ops.view3d.snap_cursor_to_selected()

I've seen a solution using an operator but this is not what I want (at least I don't think?).

Set the location directly

There is no need to use the operator.

What context are we looking at here? In object mode snaps to the average of selected objects origins, in edit mode the average of selected verts for mesh, bones for bones etc etc. When the global location vector (x, y, z) is known it's simply a matter of scene.cursor.location = (x, y, z) for 2.8x or scene.cursor_location in prior

eg 2.8x object mode example, moves cursor to average global location of selected objects.

import bpy
from mathutils import Vector

context = bpy.context
scene = context.scene

obs = context.selected_objects
n = len(obs)
assert(n)

scene.cursor.location = sum([o.matrix_world.translation for o in obs], Vector()) / n


'object' option not available in Object Solver panel I'm following a tutorial on object tracking and when I try to object solve the cube the "object" option doesn't appear in the drop down menu of the "object" field. What have I missed?

I do not know what tutorial you are following, but I think you might have missed something. The modifier is on the cube, but the cube is the object you are trying to track to is what it sounds like. You can't use the object which is being modified as the target object in any field, in any modifier. The tutor might have duplicated the object, or done something without proper narration, but as far as I know the target object can never be the object being modified.


Why is Bump causing blackout of material When I plug my Bump Normal to Diffuse Normal my material turns completely black. What should I add &/or change?

You need to feed the bump data (in your case the Grain pattern fed through the Color Ramp to the Multiply) into the Height socket of the Bump node, not the Normal. In your current setup, the Multiply will be producing a scalar vaue rather than the vector that is required - resulting in effectively no surface normal. You should generally ensure you're connecting like for like when connecting sockets.


How can I do bumped textures in Cycles? I was trying to follow this tutorial here: https://www.youtube.com/watch?v=i7aLH7XDhZ0

But I noticed those fields only show up in Blender Render. How can I achieve this same result in the Cycles Engine?

Take the factor from your texture into a Vector/Bump node, then take the normal from that node into the normal input on your shaders.


Why can't I punch a hole through a mesh? Why can't I punch a hole through a mesh? When I use a boolean modifier with the difference operation it's not punching a hole, and it is giving the below result.

Booleans are not always reliable when modelling. Even when your Boolean and booleaned mesh both have almost the same mesh densities, problems always show up.

I applied the solidify modifier on your mesh and then changed the Boolean method to carve rather than bmesh. Although it could've worked if you put the Boolean modifier before the solidify, but in your case it doesn't work.

To make this work you have apply the solidify modifier and then change the boolean method to carve. If you don't want the internal faces to have the red material, change the material of the cutter mesh to the material of the mesh being booleaned.

The Blend file:


Options are missing in the Specials menu First of all, I just began exploring blender and I'm going through some tutorials right now.
I'm stuck on finding the options in the Specials menu after pressing W

Can somebody help me out with this?
Thanks

The options available by pressing W are context sensitive -- they differ depending on what mode you are in, i.e. Edit mode, Object mode, etc., and also what type of scenario you are in. For example, if you are in Edit mode with a mesh object, you will get different Special Options than if you are in Edit mode with a curve object.


A fluid artifacts, strange long splashes. What am I doing wrong? I've checked all the normals, meshes, tried to redraw all, scale down the fluids, tried clean blender installation, another computer with a fresh 2.76 blender. The results are similar. So I guess something wrong with the scene itself. I've spent 20 hours on this and still don't understand what's wrong. Please, any ideas?

The higher fluid resolution the more "splashes".
The blend file: fluid-cans.blend

You have to scale up everything, in every simulation in Blender for an acceptable result. You have to rise the upper can to don't intersect each other, and it's better if you switch the slips to no slip on every obstacles.blend file


How to smooth area with sharp edges? I´m quite new to Blender and this is what I have achieved so far:

Now I want to print a little model of this helmet. Unfortunately there are a lot of sharp edge areas like this one here:

Is there any way I can get rid of them without editing every single edge by hand?

The Subdivision surface object modifier

There are two things that I've identified in your screenshots that need to be improved. One is a fix, and one is the modifier.

Mesh Topology

Tab into Edit Mode and key A once or twice until everything is selected. Key Alt + J to convert Tris to Quads (triangular faces to quad faces). You can also key Ctrl + F to open the Faces menu and manually select Tris to Quads. Lastly, you can go 3D Viewport > bottom menu > Mesh > Faces > Tris to Quads.

Ctrl + F menu:

Mesh > Faces menu:

Subdivision surface

The Math

This will use the Catmull-Clark algorithm to create new faces between two imaginary points in the center of each current face.
From Wikipedia:

  Catmull–Clark surfaces are defined recursively, using the following refinement scheme:

  Start with a mesh of an arbitrary polyhedron. All the vertices in this mesh shall be called original points.

  For each face, add a face point.

  Set each face point to be the average of all original points for the respective face.

  For each edge, add an edge point.

  Set each edge point to be the average of the two neighbouring face points and its two original endpoints.
  For each face point, add an edge for every edge of the face, connecting the face point to each edge point for the face.

  For each original point P, take the average F of all n (recently created) face points for faces touching P, and take the average R of all n edge midpoints for (original) edges touching P, where each edge midpoint is the average of its two endpoint vertices (not to be confused with new "edge points" above). Move each original point to the point:

         This is the barycenter of P, R and F with respective weights (n − 3), 2 and 1.

  Connect each new vertex point to the new edge points of all original edges incident on the original vertex.
  Define new faces as enclosed by edges.

The Modifier

Go to the Properties panel > Object modifiers tab and add a Subdivision surface modifier. The two values you should care about are the View: and the Render: values. The View: value determines the number of subsurf levels, or iterations, displayed in the 3D Viewport. The Render: value determines the number of subsurf levels in a rendered image or animation. The Render: value should generally be higher.

The Subdivision surface modifier:

Subsurf levels 0, 1, 2, and 3 on a Suzanne:


How to camera track complex shoots? I am not able to this shoot
https://youtu.be/PkEsl5c5nC4.
The starting is good but then it diverges.
These are my trackers and error is 0.41

this is my hold out material because I need the scene to be there

See that a slight diversion!!

I tried some tricks I saw on YouTube like reducing the weight of some bad tracks and using the refine options.

Thanks for posting the video, it makes it much easier to help you.
Your shot is by no means a complex shot. Even though your camera barely moves, there is plenty of information there.
To effectively reconstruct the scene you need to pay attention to parallax, meaning paying attention to how tracked elements that are close to the camera move at different speeds in the frame, than those elements that are far away.
The elements that are close to the camera and the furthest ones are the most useful to reconstruct 3D space.
The emphasis should be in trying to accurately track elements that are in fixed in real life, but at different distances from the camera. You effort should be in tracking elements in foreground, middle and background.
In this particular case add more tracking points on the cracks on the walls and the railing, as well as features in the lamp post behind the child, and then the background buildings and, most importantly: in the tree behind the building (which seems to be the object that is the farthest away). Don't track any of the cables, as they don't really have any distinctive features.

One more thing that is crucial in this kind of shots, that use a wide angle lens very close to the subject, is to determine the lens distortion correctly.
Please take a few minutes to read very carefully through the comprehensive post on motion tracking on this same site, to understand how to make better use the tools that will help you reconstruct the scene:
How can I get better results when doing camera motion tracking?


How to put a transparent texture over a material in the blender render? I have a model on which I want a patch of PNG texture but the rest of the model has no texture. What I want to achieve is:

Where the texture is not transparent - render the texture

Where the texture is transparent - render the material

Where no texture is defined - render the material

I can get the texture to show up in BlenderRender-view by turning on the material's 'face textures' option (having UV-mapped the faces that are to be textured) but this seems to turn off the material color (and I just get grey where there is no texture and black where the texture is transparent - presumably the texture is set to black under the transparency in the PNG).

Probably either something simple or I am taking entirely the wrong approach.

Quite easy. After you set up your base material (in my case a blue color) go over to the Texture tab.

Add in the texture (it doesn't even need to have an alpha channel).
Now set the Image Mapping to Clip, if you don't the image will tile all over your object. (Do note that the clip option does not work with the Texture or Material shading in the 3D view, you have to be in rendered mode.)
Set the Mapping to UV, it is one of the easiest ways to do a decal type of texture.
Last, do not have this texture influence the alpha at all. The only thing this texture should Influence is the Color.

That's it. Where the texture is, and is not transparent, the texture is displayed; everywhere else the material is displayed.

This is what my material with the texture settings above looks like. The blender logo is a png with an alpha channel, the blue is from my diffuse color in the material.


Theory of calculating randomness for damping factor I am referring, as an example, to Blender's particle collision system, where you can set the randomness for particle damping between 0.0 and 1.0. My question now is: how does it exactly work? Yes, there will be a random number between 0.0 and 1.0 but how is it applied to the damping factor? I want to create something similar in Java and therefore I want to fully understand the calculation behind that. Is the random factor the probability p and the calculation something like a gaussian distribution?

I figured it out.
public Vector3f damping(Vector3f vector)
{
    float random = (float) (this.randomDamp*(Math.random()*2-1));
    float clampedValue = Math.max(0, Math.min(1, (1-damp)+random)); //clamp between 0 and 1
    vector.scale(clampedValue);
    return vector;
}

With a factor of 0.5 and a random factor of 1, the final factor will vary between -0.5 (0) and 1.5 (1)


Snap vertex along axis to edge? Is there a way to move a vertex along an axis for it to then stop when it reaches the angled edge and snap to it. When I try to using the snap tool, the vertex just goes past or does't reach the edge as my cursor slides up and down the angled edge.

This can't be done with current snapping tools. You need a vertex in the intersection

Enable TinyCAD addon
Select both intersected edges > RMB > TinyCAD > Vertex at intersection
Snap to the new vertex


How can I select only the inside of the mesh? I have already tried everything. :( Switching between the modes, used select all by trai-->interior faces. Nothing works in my blend file:(

Try temporarily disabling the subdivision surface modifier and see if that makes it any easier.


Rendering transparent body and opaque edges I want to create a material for an object such that the body is semi-transparent and only the border of the object is opaque or darker. Is it possible to develop a shader for this ? Or do we have to do through only compositing?

Edit: I understand that the question might actually be about the visual borders of the object (the ones usually highlighted using the freestyle pass), not the edges of the mesh.

I'll however leave my (unfitting) answer below in case somebody else is looking for a solution more similar to this.

A solution could be duplicating your object, then:

assigning a transparent material to copy #1 (the greenish material in my example)
for copy #2, using a wireframe modifier and applying the material shown in the nodes setup below, which mixes a full white transparency and a diffuse shader, using the "Transparent depth" input as a mixing factor.

As you can see, back edges are hidden in this setup. You can display them by simply using a diffuse shader (i.e. bypassing the mix shader).

Be aware that this won't work if the object is seen through another transparent object: all the wires will be hidden in this case.


Is there a caveat to using drivers on node properties? So, it seems to be a trivial matter to use a different seed on each frame (it looks nicer in animations). I.e. type "#frame" into the seed value and viola! You now have a driver. In fact, if I turn on "auto-run python scripts," it even updates interactively.

HOWEVER, this appears not to work in the node editor. I have a texture that I'd like to animate (by driving the location in the mapping node), but the driver I've added doesn't get updated; neither interactively, nor even when I render. It will update each time I open Blender, but never again.

Anything I'm missing? Or does this just not work?

If you want the driver on the mapping node to work correctly you need to add it via the outliner, not the node editor as you might expect.

See this tutorial http://vimeo.com/40389198 starting at ~18:30 for directions on how to make it work.

It don't know if this is considered a bug but the behavior certainly isn't very user friendly.


How to copy pose or keyframes to other armature with same bones structure and naming? I was wondering, how to copy a pose from armature.001 to armature.002?
Both armature have same bone name and structure.
I hope to reuse  character A's pose for character B.
Is there way?

Copy Pose and Paste Pose

The arrow indicates the icons.  Menu choice is available.

You must be in Pose Mode of both armatures to use the operation.


The volume of an object resulted from a boolean operation is "sometimes" a negative number. Why is this happening? The volume of an object resulted from a boolean operation is "sometimes" a negative number. Why is this happening? If I export this object as an STL file and import it back, the volume of the imported object is properly presented.

Here is what I did.

(1) A boolean operation (intersect) with Object_1 and Object_2

b = Object_1.modifiers.new(name='booly', type='BOOLEAN')
b.object = Object_2
b.operation = 'INTERSECT'
bpy.ops.object.modifier_apply({"object": Object_1},apply_as='DATA',modifier=b.name)

(2) Calculating the volume of Object_1 resulted from Step 1

bm = bmesh.new()
bm.from_mesh(Object_1.data)
bm.calc_volume(signed=True)

(3) Exporting Object_1 resulted from Step 1 as an STL file and then importing it (importedObject) back.

I have figured it out!
In this case, the object that is generated from a boolean operation should go through a triangulation.


Merging material slots? I have this problem where I want to export a wall tyle but the actual wall tyle is made out of several identical parts. My question is, is there as a script that can help me merge for example :
Wood,Wood,Wood → into one Wood ?

If I understand it correctly, you have one object where different parts have different materials. But some parts have the same material split up in different material slots.
To merge them all into one material slot, change to Edit Mode first deselect all faces. Then choose the first "wood panels" material slot and click on Select under the material list. Now select the next "wood panels" slot and hit Select again. This adds the faces assigned to this material to the first selection. Repeat until all wooden parts are selected.
Now choose the wooden material slot you wish to keep and hit Assign. Now all faces are assigned to this one material. Back in Object Mode you can select a slot you don't need anymore and hit the minus button to delete it.


Door Animation Problem (I am new to BGE so I might sound like a noob) I am making a game with two doors in it. One is open and the other is closed. When you press the spacebar, the one that was open will close and the one that was closed will open. I have no idea how to do this. Can I get some help?

As you want to use the same event for both opening and closing I suggest to implement a state machine.

State machine

The states are at least:

Closed,
Opened

The transitions are:

Closed:

on space: transit to Opened

Opened:

on space: transit to Closed

Entry Actions:

Closed:

play closing action

Opened:

play closing action

Implementations

Flipper

We use a boolean property as current state. Call it "opened". When True it means status Open, when False it means status Closed.

Property: "opened"
Type: Boolean
Value: unchecked

Transition logic

Property Sensor -> AND -> Action Actuator

Property Sensor
Mode: equal
Property: opened
Value: False

I assume you want to play the same animation reverse on closing

Action Actuator
Mode: Flipper
Action: opening animation

What will happen?

When opened is False, the sensor does nothing and the door remains as it is (closed).
When the property opened turns True, the sensor triggers the AND controller which activates the action actuator. The action actuator begins to open the door till it is completely open.

When the property opened turns False, the sensor triggers the AND controller which deactivates the action actuator. The action actuator begins to play the opening animation reverse -> closing the door till it is closed.

Event logic

Now you need a way to switch the property.

keyboard sensor -> AND -> Property actuator

Keyboard sensor
Key: space

Property Actuator
Mode: toggle
Property: opened

What it does: when you press space the sensor will trigger the AND which will activate the Property actuator. The property actuator will toggle the property opened (from True to False and False to True).

This will be the event on the above Transition logic, which will play the according animation.

Remarks

There are other ways to implement door logic. This is just a sample.


Make a frame, cause modifier frame fails Is there a way to make the following possible:

I want to cancel the part where i put the blue cross and have a frame starting from where i outlined it with red till the edge. It needs to be a mirror frame.

I have tried the wireframe modifier, but that created a very different shape than i desire as you can see on the other picture. Is there a way for this?

draw the shape you want out in  Photoshop or paint then go into blender and try to box model the shape, the wire frame modifier will just turn your edges into shapes.


Render 2 at Once - Faster than One? Simple question, I'd like to know what would be faster overall:

have 2 or Blender projects open (same PC) and have both rendering at the same time
just have one open and let that one have all the GPU to itself

If one has a benefit over the other I'd be very curious to know.

You can start multiple jobs at the same time, but they don't render any faster.
In my experience, one will grab most of the resources and the second job will go along at a snails pace until the first finishes.  You also have to worry more about going over the total amount of resources in your machine.  The one advantage is you can start them both and go to bed without having to worry about it.
If you want unattended batch rendering there are services for it, or blender can be set to start a render through the command line; you could create a batch file for multiple jobs.


Blender as a VSE - can I separate my editing into multiple scenes and render as single video? I'm using blender just for the VSE functionality.  As such, I have created two scenes each with some movie clips.  I'm trying to render the output into a single movie using:

blender -b demo2016.blend \
        -S 01_Scene -s 1 -e 13 -a \
        -S 02_Scene -s 1753 -e 1760 -a

(From: Is there a way to batch render multiple scenes?)

In the properties window for each scene, the option 'Overwrite' is not ticked.

However, only the second scene is output to the final video.  Is this the correct approach?

In the end, I solved this by creating a final Scene (which I called 'All_Scenes') and then adding the other Scenes as Scene strips in the VSE (Header menu: Add >> Scene).  In the scene properties, I had to configure the rendering to output as mp4.

In the Scene properties, I had to ensure the 'Use Sequence' property was ticked.

I could then render the scene with:

 blender -b demo2016.blend -S All_Scenes -a


Wacom Intuos Draw CTL490DW Digital Drawing and Graphics Tablet compatible with Blender? I need to be sure before buying this Wacom tablet. Is it compatible with Blender for painting, 3D modeling, and blueprinting?

Considering Wacom Tablets are basically mouse/pointing devices, there is literally no reason it wouldn't work. I have a Wacom Tablet myself, and it works excellently for painting, although for 3D modelling, a 3D mouse would probably be more useful.


How do I connect these faces up without adding too many quads using retopology? I am trying to retopo a sculpture and I have little experience. How do I connect an area with small quads and high density up with an area with large quads without messing up the flow? Should I be doing the spikes in my image separately?

Hi, this is the "usual" workflow how to proceed from a low-poly to high-poly (or vice-versa) and keeping quads - You could repeat the process multiple times so there is no problem to start with 2 quads and finish with 8 or more. Try it if it will work for You cause I dunno how "dense" your original mesh is so maybe this could not fit properly (too many steps needed).

Hope it helps, Buddy.

Sincerely, Jan


Converting from quads to triangulated mesh I have a mesh that has been created in MakeHuman. I have imported it into blender to apply some python scripts on it. But, they require that the mesh must be triangular. So, my question is, is there any way to convert from quad to triangular mesh in blender or even MakeHuman?

Select your object. Enter edit mode (Tab) and press ctrlT to tirangulate.

The tools has a few options:

Beauty Split the quads in nice triangles, slower method.

Fixed Split the quads on the 1st and 3rd vertices.

Fixed Alternate Split the quads on the 2nd and 4th vertices.

Shortest Diagonal Split the quads based on the distance between the vertices.


How to switch between cameras? I just started with the BGE and am making a 2D mario-type scroller game. The level is long enough to require two cameras, so I made an invisible plane which on collision switches to the sexing camera. However, I also want to go back to the first camera. How do I switch back?

Stateless solution

I suggest to do the exact same thing.

So you get:

logic to switch from A to B
logic to switch from B to A

Ensure to avoid triggering both at the same time. e.g. have a according difference between the collision objects.


How do I scale a video clip down without creating a border? How do I scale a video clip down without creating a border? I am trying to scale a green screen down in the compositor and it creates a black border around the video clip everytime I do. The border is blocking the whole background image. How do I fix this?

A quick fix for this is to plug the Image value of your Keying node into the Fac input of a ColorRamp, and also into the top Image input of an Alpha Over node. Then plug the Image output of the ColorRamp node into the Fac input of the Alpha Over node. Now plug your background image into the bottom Image input of the Alpha Over node. At this point, everything should look relatively the same as before. Now in order to make the black box transparent, drag the right handle of the ColorRamp node all the way to the left. At this point, your black box should be gone, if it is not just add an Invert node directly after your ColorRamp node, and now the black box should be gone.

Before:

After:

I hope this helped.

-Tom


How to put an Image Texture over a material in Cycles I've scored the internet looking for a solution but I have yet to find one that works with my current set up. I have a face drawn over my uv map and I want to apply it to my object.

Everything but the eyes are transparent.

I want to be able to add this to my object which already has a material without the material altering the image texture or the image texture being applied and the material being covered.

Here is my node setup:

I'm just not sure where to put the Image Texture Node. ANy thoughts?

So I appreciate the related links. I was able to tinker around with my setup and get the image texture to appear over my material below.

I needed to:

Add another Mix Shader Node
Plug the result of the material shader to its shader slot
Then I added a text coordinate connected the UV slot to an Image Texture
Opened my Uvimage in the image text. node
Added a Diffuse BSDF and connected Image Text to that
Then connected Diffuse BSDF to the new Mix shader
Then connected the alpha slot of the Image Text to Fac slot on the new Mix Shader (to take into account the png image's transparent background)


How can I keep low resolution textures pixelated? I have a problem. I am going to make a minecraft animation in blender. But when I put a minecraft texture on a 3d cube that is 16x16x16 it is very low resolution is there a way to get the texture in a better resolution or is there a way to make blender make the texture better?

I hope you have an answer.
Thanks in advance

In addition to scaling the textures up in an image editor with pixel interpolation disabled, (as mentioned by Gunslinger)
Another method is to disable pixel interpolation right in Blender and save memory, and as already mentioned by Krivar, keeping the texture sharp even when close up:

Cycles:

Update

As of this commit, (will be in blender 2.71) texture nodes now have an option to change the interpolation method:

Using Closest will keep the pixels sharp.

Original answer:

You could use this technique, which uses a node setup to scale the UV map:

To add Nodes, press ShiftA > Add node in the Node Editor.
To create a Node Group, select the nodes you want and press CtrlG to make them into a group, creating the Group input and Group output nodes. Press Tab to toggle editing the group.
To use the above group, connect the UV output of the Texture Coordinates node to the UV input of the NodeGroup, and connect the output to the UV coordinates used to map your texture.
(The Vector input on the texture node):

Set the X and Y values to the X and Y dimensions of your texture.

Blender Internal:

Disable Interpolation and set filter to Box in Material texture settings > Image Sampling:

Viewport

You can disable interpolation in the Viewport by disabling Mipmaps in CtrlAltU→ User Preferences → System:


How to animate textures / how to read animation clips at an offset I've recently moved from unity to blender to try and make some music visualizations. A common effect I loved to create in unity was a pulsating effect where the beats of the music would pulsate through something. For an example see this video: https://www.youtube.com/watch?v=130cb8e-WF4
notice how the music pulsates through the particles.

Anyways I've found myself wanting to recreate this effect in blender and I've realized I'm a bit stuck. Currently I'd like to create the effect with a black and white texture so I can have the effect go through a model. The idea is I have to to somehow generate a texture based on the timelines position on an animation curve of baked sound. Then evaluate that animation curve back in time to create a delay across the texture as the animation plays. Thing is I don't even know where to start, and after researching python scripts for an hour I'm beginning to wonder if it's even possible. Can someone tell me if this is possible? and if so, point me in a direction where I can learn more about this?

thanks in advance.

First of all you can bake your animation of the baked sound f-curve, so that it becomes editable.

Then you can use that f-curve value to modify any other value using drivers.

In my example the Y loc of the bone is driving the Y mapping of the texture, so the checker is moving up and down (on Y axis) following the music.

Check also the "stepped interpolation" f-curve modifier, to simplify the sound curve and have more punchy movements.


Array instances do not follow the path of the curve Why do the array instances follow the first path, but on the second path they are on some breaking path? It can be seen in the picture. Both paths are the same, created from a deformed circle.

There are 2 issues here:

The curve and object that should follow the curve must have their origins at world origin.

apply the Location of the curve (Ctrl + A in Object mode). This will move the origin (orange dot) to the world origin (0,0,0).
move the chain segment parts (parent and child in your case) to the world origin. It's easy to do with the 3D cursor (Shift + S in Object mode)

the bad curve has loose segments and a single lost control point in the top left area. It doesn't need to be closed but the curve must not have any loose parts. Check it in Edit move. Select a control point and press L to select all linked segments. What will be not selected are the loose segments. Move it a bit to see what's going on (G).

When the issues are fixed you can set Fit Type to Fit Curve and select the curve in the Array modifier settings. Blender will adjust the length of the array so it fits the curve.


Modify Points of a Multires Modifier through Python Is it possible to modify points of a Multires Modifier through Python? I can get points from the Multires Modifier but I cannot modify them. Here is my simple test of a Cube:
import bpy

bpy.ops.mesh.primitive_cube_add(enter_editmode=False, align='WORLD', location=(0, 0, 0), scale=(1, 1, 1))
bpy.ops.object.modifier_add(type='MULTIRES')
bpy.ops.object.multires_subdivide(modifier="Multires", mode='CATMULL_CLARK')
bpy.ops.object.multires_subdivide(modifier="Multires", mode='CATMULL_CLARK')

active_obj = bpy.context.active_object

depsgraph = bpy.context.evaluated_depsgraph_get()
multires_mesh = depsgraph.objects[active_obj.name].data

# test to modify
print(len(multires_mesh.vertices))  # It Will be 98 Points. Multires!
for v in multires_mesh.vertices:
    v.co[0] *= 2.0

#depsgraph.update()
active_obj.data.update()

But if you run this code no points will be modified.

try this:
import bpy
import bmesh

bpy.ops.mesh.primitive_cube_add(enter_editmode=False, align='WORLD', location=(0, 0, 0), scale=(1, 1, 1))
bpy.ops.object.modifier_add(type='MULTIRES')
bpy.ops.object.multires_subdivide(modifier="Multires", mode='CATMULL_CLARK')
bpy.ops.object.multires_subdivide(modifier="Multires", mode='CATMULL_CLARK')

active_obj = bpy.context.active_object

depsgraph = bpy.context.evaluated_depsgraph_get()
multires_mesh = depsgraph.objects[active_obj.name].data

# test to modify
print(len(multires_mesh.vertices))  # It Will be 98 Points. Multires!
for v in multires_mesh.vertices:
    v.co[0] *= 2.0

bm2 = bmesh.new()
bm2.from_mesh(multires_mesh)

result:


Object rotates in wrong direction I wanted to rotate the nut in the picture around its own z-axis. So I turned the transform orientations to Normal. But somehow the rotation of this object as well as of the two adjacent obejcts ehaves in a way I don't understand. When I move the object along its normals it behaves the way I would expect.
I also added a new object (the cube in the background) and tried to do the same with it which works well.
If this is of any help: I originaly rotated the object this way by snapping it to another face, afterwards made linked copies and used a mirror modifier. But I can't seem to get behind this issue.

Your object has a Delta transform (Rotation X = 90°)

Clear rotation in your Delta transforms
Add +90° to your regular X Rotation and press Enter
Done.


Fast access to bmesh verts/edges/faces from python? I'm trying to build a large BMesh from scratch in python. I know you can add vertices (or faces or edges) to a BMesh one at a time:

  for v in verts:
    face = bme.verts.new(v)

but this is really slow for many vertices/edges/faces. Is there a batch way to add many vertices at once, avoiding the python overhead?

Googling around I found that the old mesh supported foreach_set() and foreach_get() which were supposed to be fast, but I gather those don't work anymore?

One way to speed this up would be to use a Python list comprehension. It's probably not the exact answer you're looking for, but it may help with optimizing the code.


Moving the point along projection of the edge I wanted to move the point along projection of the edge onto XY plane. And I don't have any idea how to do this. One way is to move point with locked Z and snapping to the edge, but it has two serious problems: the target edge also will be moving and the snapping will be applying to the any edge of the underlied highpoly mesh (are there way to exclude this mesh from snapping I also don't know, I didn't found it).
So can anybody help me with this task? And yeah, sorry for my bad English...

If I've understood you correctly, a quite fast way to this move is:

Set your Pivot to 'Active Element'
Select your moving vertex, and then your static vertex, so static is active.
use S, ShiftZ to scale the moving vertex to the static vertex in XY.

But a better way (among many) to retopologize, if that's what you are doing,  would be to construct your low-poly mesh edges in plan view, in a plane above the terrain, without regard to the height of the vertices.
Then when you are happy with the XY form, from top orthographic, set Snap to 'Face' and 'Project Individual Elements', and hit G. The entire low-poly surface will then snap down, conforming to the high-poly mesh below.