The resolution is still too small. You should try at least doubling "Final", and setting "Viewport Display" to "Final" too.

Any obstacle which has a width smaller or comparable with the voxel size is likely to be ignored by the simulation. In your case the voxel size (domain size, divided by resolution) is too big!

If the problem persists after increasing the resolution, check that the normals on your obstacle object are facing outwards (in Edit Mode: select all with A then CtrlN, or ShiftN in Blender 2.8+)


Repairing a Mirror Modifier centre-line non-manifold edges (2.8)

Select all vertices in your mesh and hit Alt-M.  From the drop-down, choose "By Distance".  You can also change the "distance" at the bottom-left corner of the window.  Here's a picture to show you where.

It looks to me like this is pretty much the same as the "Remove Doubles" option.  Hope this helps!

P.S.  If you have two vertices that are not at the same position, and you want them to merge to the position of a certain one of those vertices, you select the vertex that has the desired position first, then select the other and merge them, using the drop-down option "At First".  Hope that makes sense.


add Cube
use addon “Destructability Editor” or official “Cell Fracture” to crack cube into Voronoi shards

Join all shards Ctrl+J
in edit mode - “Remove Doubles” (W)
select all outer faces and choose delete "Edges"
than delete “Only Faces”

add Modifiers - Smooth (here with Factor 2)

Switch to "Edge" select
Select "Random" from menu like 20-50% and delete selection

Subdivide (W) like 2-4

This created net you can render by adding "Skin" modifier, but its very heavy for calculation, so I used here to add Mball to the scene and add Particle system to the net with "Render" > "Object" > "Mball".

Probably would be good to know the purpose of your needs. In some cases could be enough and probably looking better simple Volumetric material with texture type Voronoi or Musgrave.

Under Properties > Render > Geometry > Volume Sampling > Step size decrease value to something like 0.0100. In Blender 2.79 are some changes on Volume Shader, I don't know how to colorised foam to get the same result.


Temporarily join objects while animating

Parenting is the way to go, but then sometimes basic parenting can be too rigid, especially when animating. When permanent parenting gets in the way you can use a Child Of Constraint, which allows you to animate the influence that the parenting has.

In the following example the gun has 100% influence by the righthand while the lefthand has 0%. The yellow shading indicates that the influence value is keyframed so you can animate the influence to have the gun follow the lefhand at any given time. Within the game environment you could use python to turn the influence on and off.

For a game environment this can also help with different scenarios, eg pick up a bayonet and clip it to the barrel, then unclip it for hand to hand combat, pick up a silencer and clip that on, then turn off the parenting to leave it behind.


Shading on model is not smooth in some places

What you're most likely experiencing is cycles not being able to shade properly on such a lowpoly mesh.

Some things that could fix this are:

Adding a Subsurf modifier to your mesh can smooth it out and remove some artifacting.
Having Auto Smooth in Data >> Normals unticked or set to 180 can remove unwanted sharp edges.
Increasing the size of you sun lamp also smooths out the shading.


How can I assign string variables to an object selection list

Consider a pointer property.
Prior to being able to set a property to point to another object, would have used names, and some naming convention, or custom property on the object to "mark it".
However since the ability to assign pointers would consider instead creating a pointer property, that when updated adds and sets the modifiers to the object accordingly.

Simple example, adds a deform_object pointer property to every object. When this is set the modifier is tested for, and created if it does not exist. If the object is set to None (unset) the modifiers are removed.
Test script. Added a test UI to text editor footer.
import bpy
from bpy.types import Object
from bpy.props import PointerProperty

def poll(self, object):
    return (
            object.type == 'MESH'
            and self is not object
            # and ...
            )

def update(self, context):
    # modifiers
    sdm = self.modifiers.get("DynToMesh")
    if self.deform_object:
        if not sdm:
            sdm = self.modifiers.new("DynToMesh", type='SURFACE_DEFORM')
            # set some mod props when created
            sdm.strength = 1.5
        sdm.target = self.deform_object
    else:
        # clear modifiers
        if sdm:
            self.modifiers.remove(sdm)

bpy.types.Object.deform_object = PointerProperty(
        type=Object,
        update=update,
        poll=poll,
        )

def draw(self, context):
    ob = context.object
    self.layout.prop(ob, "deform_object")

# stick draw in text editor footer to test

bpy.types.TEXT_HT_footer.prepend(draw)

Note the update will also be fired when set via code, eg the following in python console is the equivalent of setting / unsetting as shown in GIF above
>>> C.object
bpy.data.objects['Cube']

>>> C.object.deform_object = D.objects['Cube.001']

>>> C.object.deform_object = None


Scaling an object from point A to point C with python

Basically you determine the start point and the end point. Then you calculate the distance between the two points and scale the object according to this distance.

Unfortunately you did not mention where your start and your end point are supposed to be. For simplification I assume the origins of objects A and C.

import bge

scene = bge.logic.getCurrentScene()
objectA = scene.objects["A"]
objectB = scene.objects["B"]
objectC = scene.objects["C"]

startPoint = objectA.worldPosition
endPoint = objectC.worldPosition

distance = (endPoint-startPoint).length

Here you know the parameters you need. To make it simpler you can place the origin of object B at one of the caps and ensure it has a length of 1.0 along the axis to stretch along (I assume it is Y). With that assumptions you can

place object B at the start point
point to the endpoint
apply the scale

in code it can look like this

AXIS_Y = 1
objectB.worldPosition =  startPoint
objectB.alignAxisToVect(endPoint-startPoint, AXIS_Y)
objectB.localScale.y = distance

 results in

When you do not want to move the origin of object B, you need to compensate that in your formula. Assuming the origin is exactly at the center of axis Y:

objectB.worldPosition =  startPoint + (endPoint-startPoint)/2

I do not want to go into detail when the origin is not at the center. I do not think it is worth the effort at this stage.

Remark:

As mentioned earlier the above description uses the center of A and C as start and end point. You might supposed to use the surface of the meshes. In this case you need to determine these two points differently (e.g. via ray measure). But this is a different topic.


Can vertices around a face be selected without the face selected?

The reason it selects the middle face as well is because you are in vertex select mode. To select the outer faces without selecting the middle one, switch to face select mode  and do so (you can cycle through the selection modes with CtrlTab).  To select the loop (the vertices going around the middle face), you can hold Alt while right clicking on an edge.


Make Video Sequence Editor (VSE) playback in real time?

If you have a very powerful computer you might want to try using a different app. Blender vse is a very outdated tool that doesn't really use all of the potential of your hardware. No gpu acceleration, limited multithreading. The only solution for blender is working with proxies at a lower res. If premiere works fine for you, keep using premiere. Blender is a wonderful 3D creation app, but the video editing tools have not advanced to the needs of today's users.


Invoke a .py script with a button on the tools panel

The following works for me:

import bpy

class MatShaderInfoPanel(bpy.types.Panel):
    """Create shaders for your Poser figure: Panel"""
    bl_label = "Figure Files Info"
    bl_idname = "MATERIALS_PT_shaders"
    bl_space_type = 'VIEW_3D'
    bl_region_type = 'TOOLS'
    bl_category = "Skin Shaders"

    def draw(self, context):
        layout = self.layout

        obj = context.object

        row = layout.row()
        row.label(text='Figure Name')

        row = layout.row()
        row.label(text="Active object is: " + obj.name)
        row = layout.row()
        row.prop(obj, "name")

        row = layout.row()
        row.operator("mesh.primitive_cube_add", text='Find Images', icon='FILESEL')
        row = layout.row()
        row.operator("object.run_script", text = 'Apply Shaders')

class runScript(bpy.types.Operator):
    """Tooltip"""
    # was bl_idname = "object.run_script" - is now:
    bl_idname = "object.run_script"
    bl_label = "Invokes a Script"

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

    def execute(self, context):
        print('Yay!')

        return {'FINISHED'}

def register():
    bpy.utils.register_module(__name__)

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

if __name__ == "__main__":
    register()


How To NOT extend selection with Box Select?

Your assumption is understandable, yet you're approach is impractical in Blender.

Think of it this way.

When you hit B, you are executing an action: border select. This action can be aborted with Esc and you can choose mouseactions for deselect or select.

You are not using a tool. Once you completed the border select action, you are still using your previously selected tool (e.g. selection context). You will have to press B again to enter the border select action.

What you can do is setting the border select with extension to Shift + B and setting the border select without extension to B.

Press Ctrl + Alt + U to open the Blender User Preferences. Go to the Input rider. You can edit the hotkeys in this context. Expand the 3D View > 3D View (Global) area.

Locate the entry Border Select, expand it and uncheck Extend. Now the hotkey B will not extend the selection with the border selection, but replace it.

Locate the entry, which is assigned to Shift + B. In the default case this will be Zoom to Border and Set Render Boder. Disable it by unchecking the box at the start of the row. If we don't do this, the Shift + B will call this function first and ignore other assigned actions.

At the end of the 3D View (Global) List, press the button Add New. Enter view3D.select_border as the command. Set the hotkey to Shift B by clicking on the hotkey assigning area and pressing Shift + B.

You will now have a B and Shift + B border select action, which will work as you explained. Note that this is set only in the 3D area. In other contexts you will have to change the hotkeys as well. If you want to keep these hotkeys for the next time starting Blender, click the Save User Settings button on the bottom left of the Blender User Preferences window.


it seems you have overlaping faces on the left size. so maybe, you have extruded 2 rings together.
You have 220 vertices but only 9 rings... that doesn't match. And also you have 40 vertices selected.


how to specify if a button is in false mode in script

Just put not in the if.

from bge import logic
def main():
    cont = logic.getCurrentController()
    own = cont.owner

    right = cont.sensors ["right"]
    left = cont.sensors ["left"]
    gas = cont.sensors ["gas"]

    if not gas.positive:
        if not left.positive:
            if not right.positive:
                own ["rotation"] += 0.1
    else:
        own ["rotation"] = 0


Action Editor moves multiple tagged objects?

Why don't you try to use bones? For what purpose should this animation / action be? For Blender Render / Blender Game / exported for other programs? As far as i know, the actions are bound to an armature object. You wwould eed to create bones through your player and animate them.


Can you easily export a .blend to a previous version of Blender?

TLDR: Is it possible? Yes.  Is it easy? It's not one-click.
Blender will attempt to open any .blend from any version, but the success rate is not that hot.  With the advent of collections instead of scenes, the scene will open empty.  So going from 2.9 to 2.79 directly will not fly.
However, if you are willing to jump through some hoops, you can extract things of interest out of those files with the Link/Append functions.
Just make sure to choose the right object. You will also need to make sure that modifiers and nodes that were added since were not used in the object you are trying to back-port.
I successfully yanked one of my characters out of a 2.9 version file and got it running on 2.79, but there was some fiddling I had to do and I wasn't doing anything too special rigging wise. Also remember that you must use Cycles in 2.79, Blender render materials are not compatible with Cycles/EEVEE.


An enlarged object set with volume scatter will seem denser, as the camera rays will need to traverse a larger space.
Make the lights brighter or bring down the density of the volume scatter and/or volume absorption.

As alternative use the world volume as domain instead of large volumes.

Another think to keep in mind is the camera clipping distance.  It is possible that if your lights fall outside the camera's clip distance they might have no effect at all.


How would I go about making variations of the same model?

This question is pretty wide and depends a lot on the use case - for wings they're gonna need to be animated so will need a different set of bones so probably a different model. Though if you were happy just to slot them on the back you could rig them separately and parent them, though they wouldn't be part of the same mesh. However then you could have lots of other things that could go in the slot on the back, so again, depends on what you want.


Getting output socket name and using it for input socket name in compositor

To get the name of the socket a node's input is linked to:

#using the File output node from your example
link = node.inputs[0].links[0] #gets the link from the input
socket_name = link.from_socket.name #returns the name of the socket the link is from


How can I get the fill and mask options?

Make sure, that you have the same Blender Version used in the tutorial. Most of them announce which version they use.
The Fill Tool is not available in the 2.71 Version. This is a development of the Google Summer of code 2013 and it's planned to merge this tools in the 2.72 Version.

Currently you can download a build from http://graphicall.org/. (seach for "Paint")

For examle http://graphicall.org/1107 (tested, works)

If you want to draw a Line you can change the Stroke Stettings:


I figured it out! It was "rig". I'm still a beginner, so not sure what "rig" is exactly, but it's where all my items are for my model. So I right-clicked "rig" and selected "Toggle Visible" and they went away. :)


How to resolve ugly artifacts bending joints after posing?

Typically its best to first attempt to resolve the issue by weight painting.

That is to adjust the weights around the joint to improve the deformation.

Adjust weight values by manually painting.
Use the smooth tool to automatically re-distribute weights (new in 2.76), eg:
Try the 'dual quaternion' option in the armature modifier(helps avoid volume loss),
When weight painting can't quite resolve all artifacts,try the  corrective smooth modifier (new in 2.75)
Corrective shape keysUsing a shape key to manually correct the distortion. While its involved to setup, it can be driven by bone and gives most control, This is typically used for more advanced rigging.


Refraction and reflection effects can't really be baked into an object, at least no dynamically like you seem to want. Actually they can be baked, but is that what you really want?

Baking is generally used to simulate effects like shadows, lighting, small details like bumps or roughness through displacement maps, bump maps, normal maps, etc., the kind of thing that is either too complex or too expensive, or somehow unwanted or not needed to calculate in real time.

Baking means it will be pre-calculated and become static, so it wont react when you change the viewpoint. So if you bake things like transparency or refraction or reflections they will become static, and seem to be "printed" or "painted" onto the surface of the object and that is generally not desired.

See here What does "Baking" mean?

If you want to provide your model for other people to use should not worry too much about materials, and only deliver the correct geometry and textures needed so that they can create the materials themselves suited for whatever rendering engine or game engine they will be using.

For your bottle and label just provide the correct label texture and a geometry with correct UV coordinates to use them. The transparency should then be created by the user in their destination software


Cursor is set to move in decimal increments, how to reset to integer increments?

You most likely have snapping enabled. To disable it, just go into edit mode and click on the magnet icon in the 3D View header, or just type Shift + Tab.


it was just the intensity of sun light was too much, and you can increase the focal length of the camera to get more sharpness.
enter image description here


Lemon and Aoradon, you solved my problem! It appears it was the mirror transform I had used that somehow caused this problem to occur! Flipping it back and applying all modifiers/scales/etc. before copying it in and joining it with the other mesh, completely solved my issue!

Thank you guys very much :)


Need help separating two meshes that I accidentally put together

Select the mesh and go into edit mode.
Deselect vertices.
Hover over the mesh you would like to select and press L. This will select only the verteces of the original object.
Press P and choose selected. This will separate the selected verteces.


Unwrap all UVs to fill picture, with overlapping UVs?

Quick script in order to select all islands and pack them individually based on How to get lists of UV island from Python script?. Credit goes to @Tlousky, I just added bpy.ops.uv.pack_islands():

UV layout before (left) and after running the script (right)

Just select your object in Object Mode and run the following script:
import bpy
C = bpy.context
o = bpy.data.objects[ C.object.name ]

# Go to object mode to read UV data
bpy.ops.object.mode_set( mode = 'OBJECT' )

uvLayer = o.data.uv_layers.active
uvs     = [ uvLayer.data[i] for i in range( len( uvLayer.data ) ) ]

others = uvs.copy()
islands = []

def select_island( uv ):
    uv.select = True
    bpy.ops.object.mode_set( mode = 'EDIT' )
    bpy.ops.uv.select_linked()
    bpy.ops.uv.pack_islands()
    bpy.ops.object.mode_set( mode = 'OBJECT' )

    return [ i for i, uv in enumerate( uvs ) if uv.select ]

for i in range( len( uvs ) ):
    bpy.ops.object.mode_set( mode = 'EDIT' )
    bpy.ops.uv.select_all( action = 'DESELECT' )
    bpy.ops.object.mode_set( mode = 'OBJECT' )

    flat = [ idx for isle in islands for idx in isle ]
    if i in flat: continue

    island = select_island( uvs[i] )

    exists = len( set( flat ).intersection( set( island ) ) )
    if island and not exists: islands.append( island )

#print( islands )
#print( " number of islands: ", len( islands ) )


Why is the Array Modifier offsetting this object by 1 in the Z axis when the Z field says 0?

You have rotations and scaling settings that are interfering with the Array modifier.

Press Ctrl + A with the object selected in Object Mode and click on Scale in the menu that comes up to set the default scale of your object to its current size, and repeat this with Rotation to set the current rotation of your object to the default rotation.


setting color_set of armature to CUSTOM via python

import bpy
from mathutils import Color

obj = bpy.context.active_object
bone_group = obj.pose.bone_groups['Group']
bone_group.color_set = "CUSTOM"
bone_group.colors.normal = Color((1.0, 0.0, 0.0))
bone_group.colors.select = Color((0.0, 1.0, 0.0))
bone_group.colors.active = Color((0.0, 0.0, 1.0))


Strange distortion of the image after rendering

The main reason for difference between the render and 3D View is modifiers that are disabled in view or have different setting for view and render.


Creating the effect of a Flip Flop gate using Logic Bricks

From the way you wrote your question, it sounds like you want to toggle between camera views. You can use a Boolean property, and have a keypress toggle that property to true or false. Then, if that property is true, the First Person camera will be activated, and if that property is false, the Third Person Camera will be activated.

This logic setup is one of the simplest you can use to toggle between two camera views:

Of course, you could use an integer property and a few more sensors and controllers to cycle through several camera views, instead of using a Boolean property (which can only be true or false) for the two camera views.


Method to animate a stroke along a curve

Add a Bezier Curve and set it to the required path using subdivide to add points as required. Click the green curve (1) on the properties panel and then the Geometry drop down (2).
In the Bevel section leave the type at Round then increase the Depth (3) slightly. Click to open Start & End Mapping (4) and set both Factor Start and End to 0.
Go to the first frame in the timeline. Right-click on Factor Start and select 'Insert Keyframe'. The dot after the Factor Start entry (6) will change to a diamond shape.
Go to your required end frame on the timeline, set Frame Start to 1 and click the diamond to add a key frame. Run the animation.


Would there be any value in having available a second kind of empty?

The main difference I see between a true empty and a mesh object without any geometry is that the empty-mesh can emit particles, and can get the entire range of physics types (although it will be useless for many of them without its geometry).

The interesting bit is that as an emitter, the mesh will emit only from its origin, and particles will fall in a straight ordered line - a potentially useful effect.

Both a true empty and the empty-mesh can receive the same constraints, and most modifiers will do absolutely nothing on the empty-mesh. It could be useful to parent the empty-mesh to an armature (directly to a bone, otherwise it won't be affected since it has no verts and no weights), but you can get the same effect with a real empty by parenting it to an individual bone.

So, particles and some types of physics is the only thing I can see that makes a real difference.


How to snap a part of a mesh into a part of another in Blender?

This script only work on meshes with no rotation or scaling though.

import bpy
from mathutils import Vector
objAct = bpy.context.object
objsSel = bpy.context.selected_objects
midptAct = Vector((0, 0, 0))

# Calculate mid-point of selected vertices of the active object
for v in objAct.data.vertices:
    if v.select:
        midptAct += v.co
midptAct /= 4

# Calculate mid-point of selected vertices of the each selected object then move the object
for obj in objsSel:
    if (objAct != obj): # since the active object is also inside the selected object list
        midptSel = Vector((0, 0, 0))
        for v in obj.data.vertices:
            if v.select:
                midptSel += v.co
        midptSel /= 4
        obj.location = objAct.location - midptSel + midptAct # moving the selected object

Select the vertices you want to perform snapping in both mesh.

Select both mesh, and press Run Script, then the selected mesh will snap to the active mesh

Is this the snapping you are looking for?


Run blender Still rendering from command line with external Python script

Check that bpy.context.scene.camera is set to your newly added camera. That property determines which camera is used for rendering, and if it's still None it won't work.


How do I make car acceleration in my game?

I'm not very sure if this is how you will like it, but I have a different idea. As you press W, the car's property 'accelerate' will increase. If the property is from interval 0-40; the property will have +6 added every time you hit W (with frequency: 10); the same applies for 41-80; 81-120; etc. It will add less in lower interval, and higher as it goes. For more realism, you can make a lot of intervals where it will add less to the 'accelerate' property when it is at a high speed. Now, when you hold W, the property will add as it looks like acceleration. All that is left is to bind it with however you have done your motion, such as "the car goes x fast if interval is from z to y," just play around with the values. You can do a very similar technique for deceleration. I have a GIF that is uploading right now of the logic bricks. I will add it to this answer ASAP.

GIF: http://recordit.co/Ahw2QIeaLu
-The intervals in the gif are very ruggid, they are: 0-40, 41-80, 81-120. For a racing game, you would want it much smoother, so you may have to do by tens or even five so it can be perfected. When you open the webpage for gif, just pay attention to debug properties.


Animation with physics, UV sphere can't fall through the ''empty'

Thanks cegaton The solution is to set "mesh" as the shape in the rigid body collisions setting.


I would try this:
Select your leg on Object mode, change to Edit mode
press "A" to select the whole leg
copy with ctrl+c
unselect clicking everywhere else
turn into object mode again
hide the leg you've just selected before with "H" and select the torso on object mode
change to edit mode and PASTE THE LEG (CTRL+V)
If I'm right, now you have a leg into the vertices group of the torso and now you can link them!


Why does the offset of a linked duplicated array modifier change?

It's still a little difficult to tell what's going on, even with the image, but I'll take a stab at it.

I think you're seeing an interaction between the shrinkwrap modifier and the array modifier. It's a little complicated, so I'll try to be clear.

The relative offset will move the next item in the array by a multiple of that item's own size. In your case, it moves "the item's z height * 1.0" So, if your item's height were to change, the next item in the list would still be exactly on top of it, because it's moving "one item's height." If you change that multiple to anything bigger than 1, you'll have a gap.

This works fine when each version of your array is the same. BUT you have a shrinkwrap modifier, which can change the size and shape of your mesh, if it needs to. It looks like your shrinkwrap is "reaching" to wrap itself to the nearest thing it can find. This makes your mesh bigger. Now "one item height" is much bigger than it used to be. Now it has to offset a lot more on the z-axis to get the next item ontop of the previous one.

To test this, change the windows that are working from relative offset to absolute offset. Find an absolute offset amount that gets those windows stacked correctly. Then change the other windows to absolute, and use the same amount. If I'm right, you should see all the windows stacking correctly.

Unfortunately, I don't think this will solve your problem. The real solution will be to get your shrinkwrap under control so that it's behaving correctly. If you fix that, then you can use relative or absolute and get the same result.


I added a subsurf after the armature modifier, turned on the "preserve volume" option, turned on the "edit mode visibility" buttons and tweaked the weight values: in the central joint edge loop 0.5/0.5, then 0.75/0.25, then 0.95/0.05.

In the arms there is not enough geometry to get smooth bends, you'll have to add some edge loops.


exported .obj files have now 3 seperate parts

I'm sorry, I'm not allowed to comment questions, so I have to answer:
I was not able to replicate the problem with different export settings, so I'm guessing it's how you join the meshes.
Did you combine them by pressing 'ctrl+j'?
What are your export settings?


How do you differentiate relative and absolute shape keys?

Relative Shape keys:
With absolute shape keys, the value shown for each shape in the list represents the current weight or influence of that shape in the current Mix.
Absolute Shape Keys:
With absolute shape keys, the value shown for each shape in the list represents the Evaluation Time at which that shape key will be active.


particles are shown in viewport rendering but not in final rendering

Go to particle panel and check out if the camera icon of your particle system has been lit up. It represents "Available in rendering" while the eye icon beside it represents "Display in viewport".

This reminds me of my another answer about the similar question lol


How to set Dimensions Unit and Metric unit on the same ratio?

Scale is a ratio, so it don't have units. You can think of it like the "1/24" (or whatever scale) of a scale model. There is nothing wrong to have a Scale that is different of the Dimensions.
However, if you absolutely want the Dimensions to fit the Scale, you can go in Edit mode and reduce the whole cube by a factor of 2 (S / 0.5). That's pretty much useless, because if you extrude some faces, or move them, the Dimensions won't fit the Scale anymore.


To what plane curve does a Catmull-Clark subdivision converge?

According to the original paper CATMULL, E., AND CLARK, J. Recursively generated B-spline surfaces on arbitrary topological
meshes. Computer-Aided Design 10 (Sept. 1978), 350–355.

For rectangular control-point meshes the Catmull Clark subdivision modifier creates a standard B-spline surface. Regardless of the number of subdivision it will not converge to an accurate circle, but with more control points the difference between a circle and the interpolated shape will be less noticeable.


The object could be a simple (say) Bezier curve, with a Bevel Object (another curve) assigned to it in its Properties > Geometry panel.

The 'Tilt' property of individual control points on a Bezier curve is keyable:

So just right-click it to set keyframes appropriately.. if you want a loop, set first and last keys to be visually identical, and go into the property's f-Curve, hit T, and ensure that the interpolation between the keys is 'Linear'.


What I would do is design the items of Enum property like this:

items = [('0','No Smooth',''),
         ('1','Smooth',''),
         ('2','Smoother',''),
         ('4','Smoothest','')]

Then you just need to cast it to int.

bpy.context.object.modifiers["Subsurf"].render_levels = int(self.SubSurfEnum )

When you change this Enum property and the subsurf levels you don't have to change any dictionary.


How to apply a cloud texture to a material in Cycles

The texture menu doesn't work for Cycles Render, only for Blender Internal, instead you can add a Noise texture inside the Node Editor of the water material in Cycles


How do I take a flat model and wrap around an axis like a wheel?

One way is to just add an Array modifier to your tread or flat object, bump up the counts a bit and add a new Bezier Circle to the scene.

Then add a Curve modifier, select the correct axis (it sometimes wacks out here, you can just apply transformations before you do this) and tweak accordingly until it aligns properly and is arched around a portion of the curve.

Bump up the array count some more and voila, a tire or whatever object wrapped around a circle. (When doing this, you might have to select the curve and scale it accordingly so that the ends of the object meet. You can also tick 'Merge' in the array modifier or use Alt + C to apply the modifiers and convert everything into one object, after this, if a gap still exists, it can be easily filled.


Is there an alternative to point density for rendering with GPU?

As of version 2.77, Point Density rendering is now supported on GPU. Additional color capabilities should appear in 2.78.


Same answer as this post

Keyframes Not Showing in Dope Sheet

i, aka submit a keyframe, in 3d View first, this will add that bone to the dope sheet.


Weight Painting - Can't smooth this deformation

Oh, lame me! I understand now. I had to smooth the other bones' influence. The problem lay not with the Shoulder.L bone, but with the Neck bone and the Shoulder.R bone. They are influencing each other.

I would only like to add, that switching between bones and smoothing out the imperfections with the Blur tool does wonders.


How can I actuate a different object than the one who's controller calls the script?

Internals

A controller is not supposed to access the internals of another object. This leads to hard to investigate dependencies and should be avoided. The BGE supports you be not allowing this.

Communication

The requester object can communicate with the serving object that it active/deactivates the actuators by itself. The serving object decides how to do that.

Example: A selection object marks selected object by setting a property at the selected object.

The selected objects play an action when the property is set/not set.

The selection object does not know how the select an object but does not care how it reacts on it. The selected object does not care how it was selected, but knows what to do in this case.

Selection operation and Selection presentation are separated
One selection object is performing the selection operations
Each selectable object can perform individual selection presentation.
The game designer defines the interface between selection object and selectable objects.

Passive object

The slave object can be a passive object (no own behavior towards the current aspect). The master object performs all operations on the slaves. The build-in logic bricks do support this behavior.

Example: A selection object adds marker objects (halo) to selected objects.

Selectable objects do not need own selection presentation logic.
The selection presentation has to be exactly the same on all objects.
The game designer defines the interface between selection object and selectable objects.


We will use shape keys, vertex groups, keyframes, and modifiers to achieve this.

First, go to edit > Preferences > Animation and make sure the default interpolation of F-Curves is set to Linear

Add a Circle. Add>Mesh>Circle
Immediately press F9 to open the popup menu and set the vertices to 64
Go into edit mode, select the top most vertex and press V and right-click to rip it and keep it in place. Do the same to the bottom most vertex. You now have two separate half circles.

While still in edit mode with the same object, add a plane. Add/Mesh/Plane
Press S, X, 0 to scale it to a line along the y axis.
Press S, Y, 2 to set its length to 2.
Press Right Click > Merge Vertices > By distance so that it is a simple line

Add a new vertex group named "Bar Left", click assign.
Press G, X, -0.1 to move it a little bit to the left.
Press SHIFT + D,  to duplicate, then type X, 0.20 to position it on the right.
Add a new vertex group named "Bar Right", click assign, select the "Bar Left" vertex group and click "Remove" so that each bar is assigned to a different vertex group.
Press L while overing over the right half-circle to select all the linked vertices.
Add a new vertex group named "Circle Right"
Unselect, and do the same for the left half circle. Name the vertex group "Circle Left"
Move both half circles 0.1 unit on either side along x axis.

Tab out of edit mode, add a shape key and then another one. Select the new one and go into edit mode.
Select the vertices of both bars and press Press S, X, 0 so that they are on the same spot. Move each half circle 0.1 unit closer to the center so that they form a circle again. Tab out of edit mode.
Go to frame 1 of your animation, and click on the little dot on the right of the value of your keyframe. Make sure the value is "0". The field becomes yellow.

Go to frame 10, set the value to 1 and click on the rotated cube on the right of the field. Now when you play your animation, the two bars begin separated and merge at frame 10.
Add a mask modifier to your object. Select either one of the bar vertex groups, click on the invert icon and press i while hovering over both the screen icon and the camera icon.
Go back to frame 9, unchek both these icons and again press i while hovering over them. The modifier should look like this on frame 10

Add a new shape key,and move the right circle 1 unit up and the left circle one unit down on the Y axis
Tab out of edit mode, set the value to 1 and while still one frame 10, add a keyframe (white little dot on the right)
Go to frame 40, set the value to 0 and add a keyframe
While on frame 40, go to the object's transform properties and add a keyframe to the Z rotation set to 0.
Add a new shape key, select the bar vertices which are not masked by the mask modifier (in my case Bar Left) and scale it to 0 along the y axis
While on frame 40, add a keyframe on the value of this shape key set to 0
Go to frame 70, set the rotation to 270° and add a keyframe, set the value of the last shape key to 1 and a a keyframe
Add a mask modifier and mask the bar from the frame 70 and on. (Same steps as for the first bar) Your modifier should look like this on frame 69 :

Add a skin modifier, go into edit mode after selecting the base shape key, select all the vertices, type CTRL + A and move your mouse to the left to reduce the width of the skin modifier.
If the skin doesn't appear on parts of the mesh, select one vertex from it and click on "mark root" in the skin modifier.
Go back to frame 1. Add a new shapekey and mute all the other ones (checkbox on the right of the shape key name)
Select the vertices of your first half-center and scale it by a value of 2.

Repeat those steps for the other half-circle. Un-mute all the other shapekeys.
On frame 70, add a keyframe with a value of 0. Go to frame 100 and a keyframe with a value of 1.
I did not really understand the final parts of your animation but I am sure you can achieve it with the knowledge from this answer. Play with vertex groups, shape keys and masks.
The final result


Align an array of vertices to vectors with python

The question is equivalent to say:

vert_array is a set of coordinates in world space
a coordinate system is given by its 3 vectors also in world space
how to convert vert_array so that it has in world space the coordinates it should have in this coordinate system

So, the point is to find how to do that.

To convert from 1 coordinate system A(X, Y, Z) to another B knowing X', Y', Z' of B in A, you can use a matrix like the following composed of 3 columns which are respectively the coordinates of X', Y' and Z'.

Once the matrix defined, as it allows to convert from A to B, we need to get the inverted matrix to have the result.

Here is an example in Python:

import bpy
from mathutils import Vector, Matrix

# Coordinates system: enter your own values there
x = Vector( (0.70711, -0.70711, 0 ) )
y = Vector( (0, 0, -1 ) )
z = Vector( (0.70711, 0.70711, 0 ) )

# The matrix to go from world to the coordinates system
# It is defined by rows
m = Matrix( ((x[0], y[0], z[0], 0 ), (x[1], y[1], z[1], 0 ), (x[2], y[2], z[2], 0 ), (0, 0, 0, 1 )) )
m.normalize() # mainly because values are approximated above

m_inv = m.inverted() # as we need to go from the coo system to world

objects =bpy.context.selected_objects #get some objects (or take your vector array)

for o in objects:
    o.location = m_inv * o.location #apply the transformation


Make smart use of modifiers here. You have a repeating shape, use an Array modifier instead of modelling it all one by one by hand.

For the face keep it simple. Just use the Poke Faces Alt + P operator on a simple unsubdivided face.

Move the resulting vertex down to vertically align with the bottom vertex of the face, then move it forward to make the protruding "pyramid" shape.


Mesh is not visible in viewport or render

Under the Maximum Draw Type it was set to "Wire"

To Fix this, Simply change it to "Solid"


Creating an object from a black and white image

I don't think you can do this per-vertex (without using python), but you can do this with a heavily subdivided mesh and a displacement modifier. Is something like this satisfactory?
(Just to explain the image - I used the same texture as both the basis for the Displacement Modifier as well as the Material so the areas that are being "elevated" by their color value are colored accordingly)


How put some objects (array of objects) to cover other object with its shape and curvature

There are plenty of ways to achieve the same, one of them is using particles, if the mesh of the grip is suitable, in case you don't want to use particles, here's one of the ways using Shrink Wrap modifier, since the object you're positioning is a simple object, this will work, in few words, delete all the faces in the object except for the face(s) that will touch the grip, apply the Array modifier, position the object in an orthagraphic view to the right place, add a Shrink Wrap Modifier, choose the grip as the target object, choose the method of Shrink Wrap that suits your case: Nearest Point, Project ...etc. Apply the Shrink Wrap modifier, in Edit mode Extrude the faces, while still selecting the new faces, use (Individual Origins) as Pivot center for rotation, scale the new faces, and your done. Following are the detailed steps:
1- I'll refer to obj#1 to the grip, obj#2 to the object to be positioned.
2- Select obj#2, Tab to go to Edit mode, select the base (the face that will be touching obj#1, Ctrl + I to invert the selection, and delete the other faces. You'll end up with obj#2 as an array of planes.Tab to go back to object mode.
3- Apply the Array modifier.
4- Place obj#2 properly in an Orthographic view to fit the desired area on obj#1, use Numpad 5 to set the viewport to orthographic view.
5- Still in Object mode, obj#2 still selected, add Shrink Wrap modifier, choose obj#1 as the target using the eye-drop in the modifier interface, or choosing it from the drop down list.
6- Choose the projection method that suits you better in the Shrink Wrap modifier panel.
7- You can still transform obj#2 using G, R or S to fit better it's position on obj#1.
8- When sure that the position is appropriate, apply Shrink Wrap modifier. It's a good idea to copy obj#2 using Shift +  D , move it to another layer using M before you apply the modifier, just as a back up.
9- Selecting obj#2, Tab to toggle Edit mode, press A once or twice to select all faces, press E to extrude the faces.

10- While still in Edit mode, new faces are selected, Choose Individual Origins as the Pivot Center for Rotation/ Scale, it's a small icon at the bottom of 3D View, Next to shading icon.
11- Press S to scale and drag to scale down the new faces.


Add an Empty, with rotation=90 (may be X or Y depending on the orientation of your slab).

Next, add a Simple Deform modifier to the slab, using the Empty as the Axis,Origin object:


Is possible to generate a preview material from python?

BlenderKit has a built in thumbnail renderer that does a pretty decent job, and the operator can be used quite easily in your custom script. The disadvantage of it might be the speed, since it renders a full cycles scene, unlike the preview that has obviously many optimisations and renders instantly.


User interface Scripting Issue Rigify Multiple Rigs Appended

I asked this same question on blender artist and got an answer that worked. Here is the link to that forum thread. Blender Artists Forum Solution


parenting object to an object deformed by armature

You can select the teeth, then the body, then ctrlJ to join. But at this point, the teeth vertices won't be part of any vertex group, therefore no bone will be able to move them. So you also need to assign these vertices to the vertices group that they are supposed to be part of, i.e. the group that has the same name as the bone that controls it: Select the teeth vertices, go in the Properties panel > Data > Vertex Groups, select the right group and press the Assign button.

You don't need to join the 2 objects if you don't want to, in that case parent the teeth to the armature With Empty Group, then in Edit mode select the whole teeth mesh and assign it to the vertices group it is supposed to be part of.


Select your chair back and check the Subdivision Surface modifier, you have not given the same subdivision level in viewport and render, so it won't bend the same when rendered. You rarely need subdivision as high as 4, bring it back to 2, like you've done for render, and move the screws a bit so that you can see them correctly, then render.


Cloth simulation works best with a 'flat' mesh - rather than one extruded to give thickness - otherwise both 'sides' of the cloth have to be simulated separately and they can overlap (which is, I believe, what you are seeing). If you want to give your cloth thickness, you can add a Solidify modifier below the Cloth modifier in the modifier stack. In this way the cloth simulation will simulate a 'flat' cloth while the solidifier modifier will give it 'thickness', without the possibility of opposite sides intersecting.


How to make different materials for different objects?

Most likely, you are sharing the material on several meshes. See below. If so, click the highlighted box to create a new instance.... and adding custom names helps keep track of what mesh should carry which material.

After clicking... name it something easy to recognize


Cropping background image when rendering region

I had the same problem.
I decided to render only one layer and only "render region" without checking "crop the render region" (output menu -> dimensions) to png so the output is transparent.

After rendering separate frames of animation I put it together with alpha over node in the compositor. I wonder if there is a better way.


How can I select unconnected vertices, edges, or faces that are nearby my current selection?

In Edit Mode you can hold L down while hovering the mouse over what you want to select. Then the whole piece of connected geometry will get selected, and you only have to move the mouse around a bit to pick up other pieces of unconnected geometry. Depending on what your setup looks like, this might help.


This really should be in a different exchange server but...
Yes, I watched your video...
Using the Part workbench, click "Create shape from mesh" then select the new object and export it.
Blender creates mesh objects, FreeCAD operates on "solid" objects. They use very different internal mathematics to calculate the shape. STEP format is a "solid" format so it cannot operate on a mesh. You should use Google to learn about the differences, it's very interesting...


You may have face normals facing the wrong way in that stripe along the front of the face. Try recalculating them outside and it might go away.

You can show normals in blender 2.8 by clicking on the overlays menu in the 3d viewport

You can recalculate the normals on the outside of the mesh with Shift+N if that truly is your issue.

Note that you can only recalculate normals on geometry that you have selected, so go to face mode, then select all with A before you use the shortcut.


Rigid Body Physics - Can't Transform or move mesh when applied

Whilst this was done in version 2.77a, from what I read, there are no significant changes with the physics engine in later versions.  All 3 methods should therefore work in yours.
Swinging a chain can (if you're inclined) be reduced to a basic rotation transformation that doesn't require physics at all.  Instead manually keyframe and time them appropriately to emulate how a pendulum would behave.  That's covered briefly in Method 1 below.
A more ambitious version, one using physics and a curve modifier to 'loosen' the chain on the initial overswings is also included further below, along with it's Blend file.  That's shown here -

This chain in all 3 cases was constructed as an array from a pair of mesh chain-links. One rotated 90 degrees along it's axis, then joined with the first. (CTL-J)   Once arrayed and the array eventually "Applied", it will provide vertices for a weight object to be attached later.  If the array isn't 'applied' there'll be no mesh at it's end to attach to.
There's also little need to keep the array active.  The less modifiers operating in a project usually proves beneficial when other forces, constraints etc, are also to operate on a model later or concurrently.

Details -  The basic (emulated) swing.
For a vertical swinging chain, essentially all that's required is to pivot the chain at the top link and rotate it firstly to the left, then to the right.   Some 30 frames might be a typical spacing between swing peaks.
e.g. at frame start, rotate to the left some 16 degrees, keyframe that, advance another 30 frames, rotate the chain to 16 degrees on the right side and keyframe that.  Set the interpolation to Bezier. (which is usually the default)
With one full swing keyframed, in the Dopesheet, those keyframes can be duplicated and slid to the right 30 frames on from the last.  Do this for as many swings as required.
In the graph editor each swing's angle can be reduced a little but linearly, to emulate attenuation so the swings diminish over time and would eventually come to rest.
Check that the swings and timing look natural. (Use the Dopesheet and Graph editor to adjust timing between swing-peaks and behavior respectively )
That's about it for the simplest scenario.

Version 2 - Using Physics - (the Rigid Body Constraint --> Hinge)
Our chain will be the same and still pivoted from it's top link but swinging (hinging) under physics control this time.
With physics and in particular, 'Rigid Body' constraint, things don't always go according to plan and it's often best to use simple dummy (invisible) rigid bodies to get the physics behaving as required, then using those as parents for the real models.
The dummies are the two planes.   'Plane West' & 'Plane East.' -

These can be scaled and moved in order to affect & tweak physics behavior without affecting your model(s).
The 'Hinge' option is used with the constraint.  This will stop the active plane (plane east) from falling away from the other.  'Plane West' is a 'Passive' rigid body and 'Plane East' - Active and Dynamic.
This is what tells the engine which is to swing from the hinge point, (the constraint's Empty) and which is to stay put.  Plane East will swing down, Plane West won't.
Once the swinging is behaving properly the dummies are then used as parents for the model(s).
If you don't want further antics, that's all that's required.
Please note - if Plane East doesn't swing and doesn't fall either, it tells you the constraint is working but it's Empty is pointing along the wrong axis.  Rotate it to the other 2 axis' in turn.  If you've set it up right, one has to work.

Version 3 - Bending the chain's length on excessively high swings
With the swinging sorted, should any bending be needed for the chain itself, that can be achieved by adding a curve modifier to the chain's mesh and using a 'Hook' at a lower control-point to bring about the bend.
Caution -
As the curve, chain, and added hook MUST maintain their relative positions to each other,  a 'Handle' (parent Empty - the circle) is added as a common parent for all three.  It must rotate from the same origin point as the chain and curve's.
It's the Handle-parent that holds them together throughout the swings.  The handle is parented to Plane East, not the chain or the curve and hook.
Should a ball or other object be attached to the chain's end, that would need to be parented to the chain's mesh using the "3 vertices" option.  This would force the object to swing at the same angle as the chain's end and appear properly attached.
Note - The curve is best without excessive control points at least along it's lower half.
Only one between the center point and lower end is ideal for this situation.
Moving this (with the hook) will affect the curve's end angle and subsequently the attached object.
In the example the curve's hook is moved a little to the right on the left swing and a little to the left for the right swing. (See dopesheet and graph editor)  This bends the curve's end enough to angle the weight object, so it looks much like a playground swing that's being pushed too high.
The hook's deforming action should only be in effect while the swings are high and even then reduced with successive swings so there is none when the swings are back to a civilized angle.


You would need to make sure all the objects have UVs that do not overlap in the UV space. This way baking will work if all the objects share the same material and are selected.

In order to edit UVs for every leaf you would also need to make their data unique with Make Singe User. You can find it using the search in 2.8, or by going to Object>Relations>Make Single User.

It's also now possible to edit multiple objects at once in 2.8 so it's very easy to unwrap all the leafs to one UV map at once.


Have a look in  File > User Preferences > Input > Screen Editing > and check how you have the  Move Area Edges  setup.

You need to have this option checked to be able to resize the windows by dragging on the windows edges. Also check to see what the selection method is. Mouse, Left Mouse button.


Try

subprocess.Popen(["blender", "proj001-master.blend"])


The F button is just for making a Fake user to avoid the non-user data being removed after closing.

To make a duplication based on current action data, you need to click the number button next to it.


How do I fade music in and out using Blender?

I trust your  using the video sequence editor in Blender? Load your video strip and sound/music strip into separate channels. Select the music strip press the N key to access the properties panel on the right hand side of the screen. Under the Sound tag you'll see a Volume slider. If you wish to fade the music in at the start, go to frame 0 and set the volume to 0 in the slider. Hover your mouse over the slider and press the I key to set a keyframe. The slider background should change colour, colour depends on your Blender Theme.

Now go to the point on the time line say frame 60 and set the volume to 1 or what ever level you would like at this point and hover the mouse over the volume slider and press the I key to set another keyframe. The music will fade in from 0 - 1 over these frames.

Fading out is the reverse process, go to where you want the fade to start; make sure the volume is level 1 hover over the slider and press I to set a keyframe. then go to the end of the clip set the volume to '0' and set another keyframe.

Note if you don't set the key frame to 1 near the end of the clip the volume will fade from the first keyframe set to 1 at the beginning down to 0 for the keyframe at a the end.

Hope this helps.


When I render the colors are not showing as they should, some parts are white

In your scene tree, it looks like there's a second donut that is hidden. Objects that are hidden in the viewport will still show up in renders. Either delete it, move it off camera, or since it is already part of a separate collection, "disable" the collection by un-checking the box.


is it possible to replace face of a humanoid model with a plane face object?

Thank you for stating your problem clearly.
Yes, there is a way to do the lazy way (but will only get you half way there).
Position your FLAT face directly in front of your ALIEN head.
Select your flat face and press CTRL+3 this will give it a lot of subdivisions.
APPLY this modifier to the FLAT face.

Now, press CTRL+A to APPLY all your transformations both for the alien and the flat face.
Select the FLAT face, go to properties>modifiers>Deform>Shrink wrap.
Select the ALIEN FACE as the object deformer and play with the X, Y, Z orientation parameters (by default should work immediately on Y).

Now you have conformed your increased polygonal flat face onto the surface of the alien's face like you wanted.

Thank you for voting me up as the answer for this question.

BFCT_Schiller


Accessing illumination of face/polygon in python API

It seems to me that what I asked is not easily done. As suggested by @maddin45 you can use baking. This looks complicated to script and I discarded this idea. The other suggestion of using Radiosity Rendering is out because Radiosity Rendering does not seem to be available in the newer releases of Blender.

My solution is to use ray casts. By casting a ray from every face towards my light source(s) I can see if the light source can be "seen" from that face, or if it is blocked by the structure I'm manipulation. This is a very simplistic approach to figure out something about how much light hits the face. The approximation can be improved by calculating the area of the face and taking the difference between the face normal and the vector pointing from the face centroid towards the light source into account. For my use this seems to be working quite well. Which is to say that it seems to be fast enough and accurate enough for my use.

I welcome any other suggestions for doing this.


How to deform a mesh based on bone rotation?

Your example is tricky because the ring forms a loop to rig, which is difficult for it to work omnidirectional and also stretch.

Normally for sliding stuff like handbags on shoulder etc. you would just IK rig it and give the control a Floor constraint to emulate the collision. But this would be too difficult here.

Instead I suggest placing reasonable amount of bones into the rubber ring and building the same amount of rigid-body collision meshes for it making together the ring. They need to collide with the shaft and be connected with rigid-body joints. When you parent the bones to the pieces it should give the most realistic results.

You could also try to rig the torus with a star of bones radiating from the torus center to edges and script a custom driver for them that will move the bones away from the shaft.


Is it possible to set the same keyframes values for another property?

So I found a pretty good way, using bpy. I post it if someone needs

import bpy
from bpy import context

for obj in bpy.context.selected_objects:
    print(obj.name)
    bpy.context.view_layer.objects.active = obj
    obj = bpy.context.active_object
    for fc in obj.data.animation_data.action.fcurves:
        if fc.data_path == "bevel_factor_end":
            list_co = list()
            my_fc = fc
        for pt in my_fc.keyframe_points:
            print(pt.co.x, pt.co.y)
            list_co.append(pt)
my_fc = obj.data.animation_data.action.fcurves.new("bevel_factor_start", index=-1)
for pt in list_co:
    my_fc.keyframe_points.insert(pt.co.x, pt.co.y)
for fc in obj.data.animation_data.action.fcurves:
    if fc.data_path == "bevel_factor_end":
        obj.data.animation_data.action.fcurves.remove(fc)


Found this answer in Mike Pan's and Dalai Felinto's marvellous book Game Development in blender (cengage learning, 2014). I will re-word it to avoid any copyright infringement.

This can be solved with the Compound option for collision bounds.
Make sure all the objects you have are collision bound enabled and then check the "Compound" box, described as "Add children to form a compound collision object". If you check this option on not only the parent, but all the children as well you get a parent object that dynamically adds the children to the parents collision bounds.

young parents, remember this as a way to control your children.


first use the simple mesh  "before applying the solidify modifier " because it will be flattened when you apply the shrinkwrap
add the shrinkwrap modifier with these settings

select the target and hit  Ctrl + A and apply object transform


Hexagon Sphere (wait!) with specified number of hexes?

The shipped add-on 'Add Mesh: Geodesic Domes' gets pretty close with the settings as shown:

Use X > Limited Dissolve to get rid of the triangulation of planar regions, leaving you with hexagons and pentagons.

Faces:362. 350 hexagons, 12 pentagons.


Advantages of using Python in Blender for Animation?

Python is useful in three ways:

Scripting and addons
Drivers
The Game Engine

Scripting and addons:

Python allows you to automate actions with blenders existing tools to speed up workflow and add functionality that would be (practically speaking) impossible to do manually.

Here are some nice examples of what can be done with python addons:

Molecular simulation

Drivers:

Drivers can be used to set properties from other properties, e.g. a python function, the location of an object, or another setting.

This can be very useful for animation, among other things/

From the wiki:

  Drivers can use properties, numbers, transformations, and scripts, to control the values of properties.

Here are some nice examples of what can be done with drivers:

Dynamic frosting
Randomly tweaking settings

Game Engine:

Python can be used in the game engine to control the behavior of objects (e.g. AI), the way the view looks (e.g. custom shaders), and interactions with the user (e.g. menus).

Here are some nice examples of the BGE in action:

Building demo
Water shader
Racing game


Blender Model goes black only in Edit Mode

Your model has a lot of vertices, and that is perfectly fine.  The black lines indicate edges going between vertices on your model.  The vertices are hard to pick out at this distance, but when you zoom in on your model, the vertices (where the crossroads are) will be a little bit bigger.

Keep in mind that the point of Edit Mode is for you to select/deform/etc. the vertices, so it needs to display them.  While in Sculpt Mode or Object Mode, those vertices are not needed, so they are hidden, instead displaying the material of the object.

You can also look at this like the difference between Object Mode and Rendered Mode.  Both display the model, one using the OpenGL render (default for the 3D viewport), and the other is the Blender Internal render, which takes longer, but still displays your model, with different lighting calculations that give a more realistic result.


How to use more GPU memory to render faster?

You could try increasing BVH Time Steps. The tooltip seems to say it it might be what you are looking for.


Take a look at this image from your particle system:
Your are telling Blender to Render everything that is inside Collection 2 as particles, so every new object that you put inside the Collection 2, will be part of the particles. Just move the lamps to a different collection and you will be good to go.

Good Luck


When was the Cycles renderer introduced?

It was in 2011 (Summer).
Today, it's just more stable (6 years, it's pretty long), and more complete.


How to make a grid of objects with individual rotations?

The Sverchok Add-on has convenient nodes for this:

You pick the object you want to duplicate, and you pass it a set of Matrices. These Matrices contain location and rotation data each.

The location data comes from the Plane generator (this generates the grid of locations using a subdivided plane with X and Y divisions (W, H).)
The rotation data comes from the Vector (0,0,1)  node and the integer range node produces a steady stream of 25 or (W*H) sequential integer going from [0 .. 18 .. 36 ... etc]

You might set the step size in the list Range int node to 45 or -45, and adjust the W and H to suit you.

The Plane generator generates coordinates (viewing from topview) from bottom left to top right. If you really want to start top left you would transform the output of Plane with a Rotation node.

I think the benefit of this method is that it's entirely dynamic. You can pick whatever number of rows or columns and the step rotation.


Animation - game object not staying in place

In the Dopesheet press the Only Include Channels button (arrow icon, allows to only see the keyframes of the selected object), select the weapon, you'll see if your object has an action assigned. You've given your gun an action called "Action", this action has bones keyframes, so I guess it is supposed to be used by your armature, not your gun. And this action also has LocRotScale keyframes, your gun will be affected by those LocRotScale. It makes no sense to use such an action, don't give any action to your gun (except for example propelling a bullet), your gun should rather follow the hand of your armature. So in the Dopesheet remove the action with the X button on the right of its name (Unlink this Action). Now your gun is free from any action. Now parent it to the hand bone, so that it will be moved by the hand, it's much more logical.


How do I change the number on the end of a animated render?

Check the manual. Or do some research before posting.


How can you align two vertices relative to a global coordinate when you want to preserve the orientation of the edges that contain them?

I would also like to know the answer :)

However, as a workaround for this specific case the knife tool K in combination with angle constrain C is very handy:


Duplicated mesh is not the same size as the original

The subsurf modifier works by interpolating vertices between the existing geometry to create smooth curves. So the the shape of the object depends then on not only on the placement of the vertices, but also on all the surrounding vertices connected to them.

If you copy and detach a just portion of the object, the Subsurf modifier will deform the object differently, as the surrounding vertices are different, there are less vertices connected to it. And even though the vertices are in the same place as in the original object, the way the faces deform in the original bottle are pushing the faces to a different place...

So what can you do?

First of all, it is really not a good idea to have objects with faces that occupy the same space. That will result in a problem called Z-fighting. Just like in real life, two surfaces cannot be in the exact same space, one will be on top of the other inevitably, and the other behind... But with 3d even when surfaces are very close together you might still experience Z-fighting.

(by the way you will have the same problem with the liquid inside the bottle, as it is overlapping completely with the bottle)

(read: Moire Like Blinking when preview rendering problem)

"pero qué tío más pesado, menos rollo..." I know...

How do you fix this then?

It all depends on what you are trying to do with that new object that you want to create. Maybe instead of adding more geometry you can assign those selected faces a new material. A lot of the times with 3d you are faking things, unseen geometry still uses computation resources and being true to reality doesn't bring any benefits...

An alternative is to select the faces in the original object and extrude them slightly so that they remain connected to the bottle and they subdivide in a way that follows the overall shape.


Why is my render color vastly different to the color in the material preview mode?

without seeing the blend file my guess is that you might have changed the object color under Object Properties - Viewport Display and also applied a color as a material or node giving you two different results.


Why can't I unhide objects in 2.8 that were hidden in 2.79 blend files?

When hiding an object in Blender 2.79 this is indicated by the eye icon in the outliner.

In Blender 2.8x the eye icon has a different meaning. It indicates that the object is hidden in the current view layer (Hide in Viewport), whereas the option in 2.79 had a global effect. Hence, when loading an old file from 2.79, it is treated as Disable in Viewport (Monitor icon) instead. The difference between the two is explained in this answer.

  The Hide in Viewport option is just applied for the current view layer, whereas Disable in Viewports is global and applies to all view layers and viewports.

In order to change the visibility for the hidden object you need to enable the setting to show the Restriction Toggles.

Afterwards you can change the visibility in the outliner and the object will appear in the viewport(s) again. The effect of the restriction toggles is documented in Blender's manual.

The same options exist for the collections as well. Additionally a collection can be excluded from the view layer by unticking the checkbox in front of its name.

More information about this topic is available on the following pages:

View Layers and Collections - An introduction to the concept in Blender 2.8x
Blender 2.8: View Layers and Collections - Release notes for Blender 2.80


Yes.  You just need to ensure that you have an image texture assigned to the object and that the object has a UV map.

In it's simplest form, using Cycles:

Split your screen so you can see the 3D view and a UV/Image
Editor
Create a new image in the image editor.  Let's call it
"BakedNormalMap"
Switch back to your 3D view and select your hi-poly object
Make sure you've unwrapped it and it has a UV map.
Add a new material
Click the dot at the end of the Color option and choose Image
Texture (this can be achieved with the node editor if you prefer)
Select your BakedNormalMap as the image
Switch from the Materials tab to the Render tab and scroll to the
bottom to find the Bake options
Choose the Normal option and below this in the "Normal Settings" choose Space: Object
Bake

Don't forget to save your file.


How to get material_index from individual faces in a Blender 2.8 Script

I used faces, I'm pretty sure that's what you were going after . It requires you are in edit mode to work and a mesh is currently selected.
import bpy
import bmesh

ob = bpy.context.object
assert ob is not None and ob.type == 'MESH', "active object invalid, select a mesh"
materials = ob.data.materials.items()
mesh = bmesh.from_edit_mesh(ob.data)
indexes = [[face.index, face.material_index] for face in mesh.faces]
material_indexes = []
for index in indexes:
    tuple = (index[0], materials[index[1]])
    print(tuple)
    material_indexes.append(tuple)

Result:
(0, ('mat2', bpy.data.materials['mat2']))
(1, ('Material', bpy.data.materials['Material']))
(2, ('Material', bpy.data.materials['Material']))
(3, ('Material', bpy.data.materials['Material']))
(4, ('Material', bpy.data.materials['Material']))
(5, ('Material', bpy.data.materials['Material']))

if you need just the material_index, you can take it back a step:
print(indexes)


I took a peek.

You are doing it quite well. But you should scale some more on just the X Axis through this part of the tutorial. (16:00 - 20:00)

At 19:28 he says exactly what I just said as a comment. That for a rectangular shape it's not gonna scale equally (for the X and Z in this situation).

Hope this helps...


How do you change the materials of linked instances stored in another blend file?

This is what worked for me.
I have two master blend files.  One containing the materials, which are specific to the product.  And another one of the product model.
When I create a new blend file to create a scene with the product using the materials, I need to be able to update the master files and see them update in the new blend file. For example, when I show the final scene to the client and they want you to make a tweak to one of the materials, or a tweak to the product model, I would be able to go to the master blend files, make the tweaks and any other blend file that is linked will automatically update.

This is how I set it up:
First I need to create a link to the model or material

Then I navigate to the master blend file for that model and import it.  Here I have the product saved as a collection, so I select the collection the model contains:

I repeat the same steps to import the materials, except this time I navigate to the materials folder inside the blend file and select all the materials I want to link:

Next I make sure the model is selected and while in Object Model I go to Object>Relations>Make Library Override and confirm:

Now I can access the materials panel, but in order to update the material to one of the linked materials I have to switch it from Data to Object:

Now if I click the icon to change the material, I now have access to my linked materials and can update the models material in the scene:

Now if I need to make a tweak to the material or model, I can open either of those master blend files, make the tweaks and save.  If I'm working with the current scene and master files and have two instances of Blender open, I can force an update by doing the following:
First I change the outliner from View Layer to Blend File:

I scroll the outliner to the bottom until I see the two linked files, indicated by the link chain icon.  I right click one of those and select reload.  Then it updates the scene to reveal the latest tweaks!


Floating objects from model after applying 'with automatic weights' I need help.

Select your mesh and Switch to Weight Painting mode using ctrl+Tab
Select your armature and switch to Pose mode using ctrl+Tab
Rotate your head bone as shown in the figure you posted, which will leave the other parts of the head not moved.
Now select your head bone and start weight painting using Mouse left click as shown below until all these parts are red, where these parts of the head will be assigned to the bone head and will move with it. You may need to turn off the limit selection as highlighted below


How to run some functions in an addon in blender start?

In user preferences choose add-ons tab check the box of the plugin you want to use and hit save user settings in lower left corner.
If the plugin is not enabled next time you open blender then either you are doing something wrong (like, the shortcut of the plugin activation is diffrent than you think or plugin is updated and changed it's interface so it doesn't appears in the same spot as shown in tutorials) or the plugin is glitched.

Try repeating these steps and downloading and using latest version of the plugin.


Hierarchy missing, how do I bring it back?

It looks like you've maximized a viewport.  Ctrl+Space should set it back.


Adding Subsurface Modifier to Cylinder Not Smooth

Yup, topo.  More than one solution:

Left is unchanged.  Middle has control loops for the outside and the cap (your pic is missing the control loops for the cap) which can be made with 1 loop cut (ctrl r) and 1 face inset (i).  Rightmost has edges marked as sharp (ctrl e menu) and creased (shift e) for subsurf.


Trying to export a cloth simulation to a Collada file

I faced similar problem. I have conducted extensive research. It seems that a mesh animation (created on base of cloth simulation) just doesn't get exported to .dae. You have to try other formats or re-design the project unfortunately... Check out here: Exporting cloth simulation to Collada results in static cloth instead of a waving one


Glossiness map with reflection in the BGE

Something you could do is use a node material and mix between a material and a reflection texture (here i map the reflection texture to the geometry normals but you might want to do something more realistic), using a metalness map as the mix factor.

here is a simple example image:

and results:


How to ensure there are no holes in my geometry?

you can use the 3d print toolBox :

press Ctrl+Alt+U
go to Addons and enable 3d print toolBox and save the settings

in the 3D view switch to Edit mode and select your mesh
use the Non-Manifold operator ( press T to show the tools panel )


Sub Surf looking weird how do I invert the curve direction

Merge and weld these four edges.

To make it completely smooth, you will have to add a supporting edgeloop on the outer side.

This is the resulting loop.


I would use a much simpler setup:

Math > Round to make texture black and white and Math > Multiply to control Volume Density.

You can use different textures to get different results, I've made examples above with Noise, Voronoi and Wave.

As always with Volume Shaders don't forget to crank up Ligth Paths > Volume to something more than 0.


The contrast primarily depends on the light in the scene. If it's one strong small light source, there will be more contrast. If there was some light maybe coming from the windows, or other light sources, the lighting would be more uniform and there would be less contrast. Obviously to have ambient lighting you need the light to be able to bounce around the scene, so render settings should allow calculating enough of light bounces:

It does not have to be 128 bounces for everything, just make sure there are a few where it makes sense.


Texture Paint Diffuse and Normal Map Over Existing Diffuse and Normal Map

I used two shaders input to a mix shader (cycles) and used two UV mappings - one is set to the default all faces overlapping for the tiled texture with normal map, and the other is for a smart UV unwrap for painting the stencil.

A normal Map node is for getting the bumps from the normal, and I chose blue for the original shader so it would contrast to see the effect.

Most people imagine that software like Substance Painter is projecting both the diffuse/albedo and the normal at the same time through the brush when it is actually similar to this set up using a stencil to reveal the automatic mapping.


why do i get a deformed mesh in weight paint mode and object mode but in Edit mode, the mesh appears the way it should?

I have had a problem like this before. If you have not been able to fall X the mesh by deleting the weight groups then try the following. 1.Go into edit mode. 2. Select all the mesh 3. Press "Shift"+"d" to duplicate the mesh 4. Press "p" and separate mesh by selection.
This will leave you with a new undeformed mesh as a separate object. And the original mesh if you decide to come back to it.


Yeah, you've actually done a decent job.
Only trick I might add is an Edge Split modifier.

It'll crisp the boundaries a bit,
especially around the circular parts.

Believe you need to apply it before decimation,
if memory serves correctly...
so you might need to start anew to see its effect.


Menu Edit User Preferences.  Then Keymap on left side.
Name Search  text ... rotate.
3D View will show the match.


Cloth bake: Certain parts of cloth deform very quickly and not consistent

This was caused by numerous triangles which were not connected to each other on the head area of mesh. There were also duplicate vertices in the problematic area.


How to apply gradient colour along a curve?

Depending on the way your mesh was made, it may or may not have an automatically generated UV map. As @ Master Heavy has commented, if it does, you can use a shader tree like this:

using either X or Y, depending on which dimension of your subdivided plane is the long one.

If the plane does not yet have suitable UVs, then you will have to unwrap it. That may be a supplement to your question .. perhaps the best way to get a clean answer to that would be to share your file on Blend Exchange.


Constraints include an ‘Influence’ property that varies between 1.0 (fully ‘on’) to 0.0 (fully ‘off’). The incluence can be keyframed so that you can vary it as desired. When you want the tracking to affect the camera you would set the influence to 1.0 and when you want to animate the camera you adjust it down to 0.0.


Subdivison Surface Modifier / UV islands boundary Problem

to get the same result as Maya/3DS Max, follow these steps:

apply SubSurf modifier with Sharp option instead of Smooth, keep corners

your uv layout will be changed into this (notice the sharp borders)

select uv's borders and pin them (press P key), so those vertices will keep the position in the uv-space (pinned vertices are red)

select all vertices (in the uv editor) and press U to update all the other vertices - you should get this result


As far as I know this is not possible in Blender, or hasn't been tried properly. You may be able to reproduce the effect, but you will have to develop the process in Blender yourself.

Other people have attempted to do this, but not successfully. As Gandalf said:

  I played around with trying to get this effect in the compositor a while ago but was unsuccessful. I think I decided that the only way to access multiple frames at once was via a lot of image sequence nodes with different offsets. So this would be possible, but you'd need a separate image sequence node for every "time pixel", or every horizontal bar in the case of the vertical gradient. Which means you'd certainly want to use python to add all those nodes :P


Setting up Diffuse, Illumination, Bump and Specular mapping

I'm afraid you are going to need to take a few steps back and understand how textures work before you can get that working without lots of step by step instructions. There is a pretty good tutorial here that should help: Blender Guru Principled Shader


How to save an image in UV/Image Editor with grease pencil strokes visible?

The most obvious workaround is to not use Grease Pencil at all and use texture painting instead. The "mode" button should be switched from "View" to "Paint" and then all the paint strokes are saved with "Save as Image" option.


apply ocean modifier to existing face/plane

OK I found out according to this answer: can I use ocean modifier on any custom shape?
You need to subdivide your plane as much as possible otherwise it will have no effect. and then you set the Geometry to Displace.
I used the knife tool to first make a rectangle and do some loopcuts and after this I manually took the knife tool to subdivide the parts that were near my "curly" edges.

My mistake was the subdivide (I tested the Displace but thought it didn't work because the waves were gone).

Hopefully useful for others!


Normal/Bump map show in Look Dev but not on Render

Okay, I did some more testing around and finally came to a solution. Apparently a Mix Shader into a Shader to RGB make the bump map get renderer in Look Dev but not in Render. The solution (and in hindsight the more reasonable) approach is to use a Mix RGB node instead.
I'm not sure if this can be considerer as just plain stupidity or of it's an actual bug.

Here is my new setup that works:


How can I create a mouse Shortcut in Blender 2.8x or 2.9x to select object siblings in a collection with double click

I manage to do it with this config in the keymap configuration:
under preferences - keymap - 3D View - Object Mode (Global)

Then when working, when doing double click on an object I select the "Collection type" in the sub menu.
Later it remembers the last option used.
Now I can select objects in a collection quickly. Kinda like the "grouping" objects in another software.
Thanks.


You could try the following:

1: In Edit mode select the vertice you want to use as the snap point.

2: Move the 3D cursor to this vertice, (Shft S to open the snap menu, then choose  Cursor to Selected).

3: In Object mode move origin to the 3D cursor, (Shft Ctrl Alt C and choose the Origin to 3D Cursor option).

4: Change the Snap Target from Closest to Active.

In the example gif below, I’m trying to snap the point of the pyramid object to one of the corner vertices of the cube object.


Is there a way to freeze a cloth with a shape key?

After enabling cloth, look under the modifier stack, there is a specific button there...


Difference boolean modifier leaving interfaces behind

There are probably precision problems where the compound cuboid components are not truly flush in a numerical sense.

You could try unioning the original cuboids into a single object rather than just joining them.

Alternatively, it looks like you could create the compound object via simple extrusions rather than as multiple cuboids.  This would give you a more consistent form that you could use for boolean operations.


I want to smooth hard edges without effecting other in close proximity

Marking the hard edges as Creases solved the problem.


Copy tracking settings to selected trackers?

You can use the following script to copy a given set of properties from the active tracking marker to the selected markers.

Paste this into a text editor, modify the values at the top, and press Run Script to run it.

############################################################
# Define your constants here                               #
to_set   = ('color', 'hide')  # list of properties to set  #
mc_name  = 'SomeMovie.mp4'    # name of movie clip         #
obj_name = 'Camera'           # name of track              #
############################################################

clips  = bpy.data.movieclips
clip = clips[mc_name]
obj = clip.tracking.objects[obj_name]
tracks = obj.tracks

# find the active track
active = tracks.active

# define a set of attributes to change
new_values = { k : getattr(active, k) for k in to_set }

# loop through and assign
for track in tracks:
  if not track.select:
      continue
  for k, v in new_values.items():
    setattr(track, k, v)

You can use this API page to find the names of the properties you want to set.


Precise openings (windows, doors )in meshes

You can use snapping limiting transforms on an axis.

Basic house with a separate window object :

Select your house, enter in edit mode (tab)
Activate snapping, open the menu and choose Vertex :

Add your edge loop (Ctrl+R) place it anywhere. Move your newly created edge loop with g, lock your movement on X axis (X) and move your mouse close to a corner of your window. You'll see a circle appear where the movement can be snapped (window corner vertex). Click LMB

Repeat this actions on the 3 other loops with the 3 other corners (X and Z axis)

You can move along all axis, 1 axis (with X, Y or Z) or 2 axis (with Shift+X all but X, Shift+Y all but Y, Shift+Z all but Z).


How do I change where imported objects appear in the world?

Objects appear in the center of the world because that is where the 3D cursor is set by default.

All objects have what is called an origin (a pivot point or a "center", usually represented by an orange dot) The origin of the the created object is then placed where the 3D cursor is on the scene.

But you can move the 3D cursor wherever you want the new objects to appear. Note that the origin of the new object will be at the 3D cursor's position.

To have your objects appear in a different place, just move the 3D cursor.


No, I don't think you can directly, as far as I know, but what you could probably do instead is a multi-step process to achieve your desired final result.

You can only bake to a texture, so bake said lamp influence to an image based texture, then use said texture to create a new vertex color layer from it using an addon to translate from image to vertex colors.

Rough steps: Create your desired mesh, add a "neutral" material to it, like say a purely diffuse white material that will receive clean colors from lamps.

Unwrap said mesh to a new UV Map, create a new texture and bake that object to said texture.

Save the image, then use the addon UV/Bake Texture to Vertex Colors to create a new Vertex Color layer based on said texture.


Is there a way to save composite node presets?

Yes, you can use node groups.
Creating node groups
You can create a node group by selecting the nodes you want to save and then pressing ⎈ CtrlG:

After you create a group, you'll end up inside the group, where you can edit it. Toggle in and out of the last selected group by pressing ↹ Tab.
While inside the group, you can edit the node tree and define what the inputs and outputs should be (if any) by connecting the special Group Input and Group Output nodes:

Now you have a reusable custom node.
For more control over the inputs and outputs, you can add1, remove2, rename3, reorder4, and change default values5 of inputs in the Properties panel (N) while inside the group (↹ Tab):

For value inputs (gray sockets for scalars, purple sockets for vectors) you can also define Min and Max values.
Note that node groups can contain other node groups, in which case navigating between between these with just ↹ Tab can sometimes be confusing. You can always go up and out of the current node group by pressing the up button in the header (think of the node editor like a file browser and node groups like directories):

To ungroup a node, press ⎇ AltG with the group node selected (outside of the node group)
Saving and reusing node groups
To see how you can save these in a library blendfile (or even your startup.blend) and import them into whatever project you need, see

Can I make a custom node from a group and have that available in other projects?

How can I apply some material included in a node-pack library?


why does the shortcut for "image.open" not work ? (ALT + O)

that shortcut doesn't work because it is under UV/Image editor shortcuts you have to add the same shortcut under the Property editor :

go to User preferences->Input->Properties editor
add the shortcut


Changing the color of non selected edges in the theme preferences

In the preferences you could change the Wire Edit color.

This influences the non selected edges in edit mode:


How do I offset the start of a cloth simulation?

Workflow:

Bake the the cloth simulation by clicking Bake button in Cloth Cache panel.
Find a folder called blendchache_[project_file_name] in the same directory of the .blend project file.
Per-frame data were saved here as files named like [some_num]_000001_00.bphys, [some_num]_000002_00.bphys... etc, the mid-section was actually the frame number, e.g. 000001 means frame 1. Now you can simply delete files from 000001 to 000099.
Then you can rename the rest files to [some_num]_000001_00.bphys, [some_num]_000002_00.bphys, etc. (There are many free and handy file rename tools online for download, to do the renaming work in a flash)

You needn't close the project during the process. You can play the offset simulation right after that.

Tip:

This trick can be used to offset other simulation types that generate cached data.


Snap vertex to face along a non-perpendicular direction

The shipped add-on (2.79 & 2.80) 'TinyCad' includes an 'Extend Edge to Face' option. Select the face in face mode, and then the edge in edge mode, hit the button..


BGE: How to make a Key inactive after pressing another Key?

You can use states: In the first state, you have a W keyboard sensor, linked to a motion actuator that moves the object forward, and you have an S keyboard sensor linked to a "Set State" actuator, which will set the second state.

On the second state, you have a W keyboard sensor, linked to a motion actuator that moves the object backward.

That should produce the desired behavior you described.

Here's a demo, if required: logic_brick_key_remap.blend


It looks like you just need better lighting. It's best to use an HDR image to light your scene. A good place to get them is HDRI Haven, which has low-resolutions for free (licensed CC-BY), and sells higher-resolution versions. It also has a small but growing collection of public-domain (CC0) ones.

For quick, basic lighting, I often use this HDR image, which should work pretty well here:
http://graphicslearning.com/downloads/hdr-light-probe-01-cc0/

UPDATE 2018: HDRI Haven has now changed its model. It's now completely public-domain at all resolutions!


I'm guessing your output information is set to an image output.  You need to change it to a video output in the properties panel (see image below).  Then hit Render > Render Animation.

You also may need to change some audio settings, which I would need to research to remember how.


You are encountering a circular dependancy: A child bone influences the parent bone, which influences the child bone.

Here's a pseudo explanation of whats going on. Assume, you're moving the mouse in an 45° arc as illustrated on the left. boneB (the child bone) rotates. But since it influences the parent bone slightly, the parent bone will rotate as well. But now the relation of the starting and end position of the mouse towards the shifted origin of the child bone are different and produce another angle. Since the boneB is slightly lower on the right illustration, the angle is slightly bigger, now the parent bone has to be recalculated. And then the child bone, etc. All this happening, while the mouse is being moved obviously produces this weird behaviour.

Y Rotation
To solve this problem for the y rotation, simply parent boneB to the parent of boneA. If you wish you can lock the translation axes of boneB.

All rotations
To create a similiar behaviour for all rotation do the following. (Remember, child bones aren't allowed to influence their parents, if this changing the child bone's properties.)
Create an additional bone, which will be the animated one and parent it to the firstparent (root). Add a copy rotation from the handle to boneB, and a copy rotation constraint to boneA with your desired influence.

The result works, but the handle isn't location at boneB, the segment, which the animator wants to manipulate. This is not intuitive. (At the same time, this is why everything works, the relation of the handle bone to the mouse doesn't change during the rotation operation.)
To enhance the setup, position the handle at a better location. Hide the other bones, or move them to another layer, since the animator doesn't need to touch them. Then choose a custom shape for the handle bone, and choose the boneB in the At field. The custom object will now always be displayed at the position of boneB. The origin of rotation (where the dashed line to the mouse is drawn from), remains at the handle bone's position though.


James from Crowdrender here, apologies for the late entrance but i jst found this post today, amazing what you find when you google your own org's name :P

Ok, the error you describe means that for some reason a critical component can't be imported. This can happen sometimes if the version of python in blender is not supported by our addon. We have (hopefully) fixed this now and there is a new version (v017) available from our website. This version supports a much larger range of python versions that are bundled with blender.

https://www.crowd-render.com/download

EDIT

One other thing to note is that if you use a 32 bit version of blender, Crowdrender will spit a very similar error stating that it cannot import some of it's components, this is because we only support 64 bit and as a result, when a 32 bit version of blender tries to use Crowdrender, it will not be able to find the 32 bit components, simply because, they aren't there!


removing head from character mesh using another head mesh

I think your best solution is brute vertex editing. Delete the head you want to get rid of by circle selecting the vertices and creating as smooth a transition as possible. In edit mode (of the body) you can even place the new head exactly where you want it. You can then refine the vertices and begin stitching them together.
A more complicated, but possibly faster, way would be to isolate the neck loop on the replacement head, separate it from the new head, convert it from a mesh into a curve, place it exactly above the body where you're going to be putting it (having already mostly removed the old head, and then using "Knife Project" to cut new geometry around the neck hole. You'll still have issues marrying the heights of the different vertices, which you'll have to do by hand, but it should be pretty closely aligned.
Good luck!
Hi, to follow up: You select the ring of vertices, hit [shift]+[D], then [P] to separate them from the new head object. Choose "by selected." Then click off. Select the ring of vertices that you've separated and go to OBJECT>CONVERT TO>CURVE
You will be left with a curve, which you can then use for knife project.


Mirroring / Copying Constraints over a whole rig

To use the Copy Constraint, you select an object then add a Copy Constraint, then select which other object you want to copy the property from (location, rotation). So no need for paste constraint.
For mirroring the armature, you will find x-mirror property in the tools menu in the edit mode of the armature. Just replace the name of the Armature with the name of your Armature.

UPDATE:

To do what you want it will be easier to use python. I wrote a script that copies constraint from bones with ".L" to corresponding bones with ".R"

import bpy
context = bpy.context
scene = context.scene
MyArmature = bpy.data.objects["Armature"]
bpy.ops.object.select_all(action='DESELECT')
MyArmature.select = True
bpy.context.scene.objects.active = MyArmature
bpy.ops.object.posemode_toggle()
bpy.ops.pose.select_all(action='SELECT')
all_bones = bpy.context.selected_pose_bones
for bone in all_bones:
    bpy.ops.pose.select_all(action='DESELECT')
    if ".L" in bone.name:
        boneL = MyArmature.data.bones[bone.name]
        boneR = MyArmature.data.bones[bone.name.replace('.L','.R')]
        boneR.select = True
        boneL.select = True
        MyArmature.data.bones.active = boneL
        if len(MyArmature.pose.bones[boneL.name].constraints) !=0:
            bpy.ops.object.constraints_copy()
            bpy.ops.pose.constraints_copy()
            for con in MyArmature.pose.bones[boneR.name].constraints:
               con.subtarget = con.subtarget.replace('.L','.R')

This is how it looks before running the script:

And This is how it looks after running the script where the constraints are copied:

Updated .blend file can be found here:


After all I didn't find solution for Cycles Nodetree. I'm sure that such behavior is due NodeGroup and can't work in different way at the moment.

Like Omar Ahmad has advised before, I had rewrite some code and create new Subprogram inside Animation Node tree. When Auto Execution is enabled it allows to see all changes in viewport without active animation, in real-time, even those that are inside NodeGroups.

Be careful if your nodetree has a lot calculations this action can reduce your performance. Use another AN NodeTree for such things. I have attached example below:


Alpha channels in cycles canceling out each other

One possible reason could be that in the Cycles render settings the "Max Bounces" for "Transparency" are set too low. Since Eevee is not a raytracing engine it doesn't need those settings. The default settings however should be high enough. With two images Transparency bounces must be set to 0 to block out the underlying image.


With the boolean on the circle set to 'Difference' I did not find that the circle lost it's material:

Note: Make sure that he circle has some volume so it isn't completely flat. Select all the faces of the circle and use 'Extrude' (E) to give the circle some volume.

The cube that is used as the masking object can then be set to not render by selecting it and pressing Ctrl+H.

Resulting in:


How do i fill in void space's with poly's?

Assuming Both sides that you want to connect have the same amount of vertices.
Step 1: select both edges like shown in image 1.
Step 2: Use "Bridge Edge Loops" (available in the edge menu (ctrl+e) or through the search function (F3 or space depending settings))
Step 3: Check for any problems