Emulated Numpad Mapping - Numpad Period?

In emulated numpad mode there isn't a non-numpad key that's mapped to the same functions as numpad period.  The way to get a key to do what numpad period does is to map your own choice of key to do the same things as numpad period does.  Numpad period is mapped to "View Selected" in eight or more windows (you can find them by searching for key-bindings for 'numpad' and scanning through the results but searching for 'numpad .' doesn't work).  The window in which I use numpad period most often is the 3D view.  Below is an explanation of how to remap the numpad period key in that window. A similar process would work for any other window type you want to remap.

I used this explanation to change the key binding in user preferences (Ctrl+Alt+U) for the View selected command under 3D View> 3D View (Global)> View Selected (see below, I have mapped it to semicolon ;).

Before you pick the key to map it to, you might like to make sure that your new binding isn't used for some other command. You can search by key by changing Name in the top search bar to Key-Binding and enter the key you'd like to check.  If nothing shows up (see screenshot) then you're safe; if some bindings show up you might still be ok if none are applicable to the 3D view.

Rather annoyingly, searching for 'period' . doesn't find the bindings to numpad period - not even if you type the period with a numpad - but you can get close by searching for the key-bindings for 'numpad' (type in the word as though it was a key).

If you feel adventurous, you might prefer to add an additional binding rather than removing the numpad binding (maybe you'll buy a numpad one day). To do that, take a look at the command you would have remapped by clicking the little white triangle:

That shows the command is view3d.view_selected.  Scroll way down to the end of the list of bindings and find the Add New button. Press it and you'll get a new binding called none just above the button you clicked:

Expand the key binding, enter the command and set the key you want bound to it:

.

Finally, don't forget to save your user preferences!


Go into camera view (Numpad 0) and use Lock Camera to View.

Then, navigate as you would normally do in the 3d viewport using the mouse or the keyboard.
Numpad 4 and Numpad 6 will rotate left right.
Numpad 8 and Numpad 2 will rotate up and down
Numpad + and Numpad - willmove the camera forward and back

Or Use Fly/Walk mode:
https://docs.blender.org/manual/en/latest/editors/3dview/navigate/walk_fly.html?highlight=walk%20mode


Bake sound to F Curve giving square curves?

The issue was that in setting up the custom property 'Sound'. In the video, the tutor enters '0.0' into the Property Value. I didn't notice the decimal and entered '0', thus switching the property to 'integer' instead of the desired 'float'.

I removed the keyframes from the Sound property, edited the Property Value to '0.0', added a keyframe and reimported the sound (bake sound to fcurve).


Is there a way to rotate and pan view while in knife tool and other tools that lock the view ports?

I figured out my problem. I am using a 3Dconnexion 3D mouse and it does not manipulate my view while a tool is active. The normal mouse/keyboard ways of rotating etc do still work as expected while a tool is active.


Where to find correct syntax for operator in Blender API manual?

The docs have this information if you know what you're looking for.

http://www.blender.org/api/blender_python_api_current/.../wm.call_menu

In this case TextEditor > Templates > Python > UI Menu has a working example of how to trigger a specific menu

The UI source is often the most comprehensive documentation. For example space_view3d.py's class VIEW3D_MT_mirror(Menu) shows how to pass properties to an operator. As you have now seen

props = layout.operator("transform.mirror", text="Z Global")
props.constraint_axis = (False, False, True)
props.constraint_orientation = 'GLOBAL'

Here both constraint_axis and constraint_orientation are passed as values to bpy.ops.transform.mirror as soon as the button is pressed.


Cutting a part into two objects using a plane

Partial answer: Don't select both the cube and the plane before going to the modifier.  Select the cube, specify the boolean modifier, specify difference, select plane, then apply.
This results in a part of the original cube (depending on the normals of the plane?) and the plane as the two surviving objects.  I would expect this result if I had started with a cube and another smaller cube and done a difference or an intersection. In other words, slicing with a plane (0 thickness) shouldn't result in loss of the original volume.


Combine Cycles passes in way compatible with photoshop

According to this, Linear Dodge is the same as Add in Blender. However, if you are working with 8 or 16bit jpg/png/tga, Photoshop by default will works in display-referred space (i.e. everything is gamma corrected and non-linear), so the results of adding multiple render layers together in a non-linear space will be WRONG.

The only way to work in a linear space, which is absolutely critical, is to use 32bit EXR, that's the only way Photoshop will operate in linear space, and follow this workaround.

In short, don't use Photoshop. It's really not designed for linear values and will give you wrong results  unless you specifically configure it to work in linear space.


bpy.context.space_data is read-only, but it's properties are not.

For the active scene camera

context.scene.camera.data.clip_end

This gets the clip_end value for the active camera from the current scene, assuming there is one. If the current scene doesn't have an active camera, then context.scene.camera is None and this will raise an AttributeError.

For the viewport:

for a in bpy.context.screen.areas:
    if a.type == 'VIEW_3D':
        for s in a.spaces:
            if s.type == 'VIEW_3D':
                s.clip_end = <your value>

This iterates through all areas in the current screen until it finds a 3D view, then iterates through all spaces in the 3D view until it finds a 3D view space, which is the object containing the clip_end property.


In your preferences, make sure you enabled the "Import images as planes" add-on

Go to Add (or SHIFT + A ) > Image > Images as Planes

Then choose your video.

Add your modifiers :

Set some keyframes and play.


Mesh is deformation is mirroring very strangely, how do I fix this?

You'll need to create a symmetrical armature first, rig it properly, and then assign proper weights to the mesh. What you get is partially logical. Think about it: The vertices of the right hand side of your crossbow are parented to the left bone. That bone, when it deforms, rotates counter-clockwise. Since the vertices have no idea yet that they should behave like they were mirrored, they just inherit this rotation, and everything becomes distorted. Without having your model in hand, it's impossible to judge what's causing the middle section to deform in such a strange manner. But in your screenshot, some bones under the large deformation bone are visible, so I'd suggest looking there.

To tell the right hand side to behave mirrored, they need bones which behave like so. So your rig should in top view look like this:

I've created the left hand side, setup the constraints in Pose Mode, and when I was done I mirrored the deformation bones using the Cursor as the mirroring center. To mirror, select the bones in Edit Mode, Shift + D to duplicate, RMB click to Cancel translation. Then, Ctrl + M to activate mirroring, and type in the axis:

The weighting for this example is easier, as you can take advantage of the mirror modifier, which creates the right half for you automatically. Important: You need to stick to a naming convention for this to work. Name your bones Bone.L, Bone002.L for the left side, and Bone.R, Bone001.R for the right side, so Blender knows its way. There is a nice tool in the Specials Menu, keybinding W, in Edit Mode, which helps you in this:

Paint your weights now before you add a mirror modifier, make sure there are EMPTY Bone.R, Bone001.R vertex groups present, and then add and apply the mirror modifier afterwards. Alternatively, you can of course use the Automatic Weights Binding and fix the weights later.

Here is an example Blend file:

Use it like this:


Scene is being rendered instead of animation?

Go to Node-Editor change it to COMPOSITING and press Shift+A for adding an IMPORT --> Movie Clip. Connect Image from Movie Clip with Image Composite.


There are alternatives, such as this, but you have to accept that rigging is a technical skill, so my advice is to let those brain cells burn, and ask here what exactly you don't understand.

Note that in 2.78 drivers were improved, but this means that older tutorials became a bit confusing.

Another alternative is to create only thin, skinny characters because they usually deform acceptably with correct weight painting, and the drivers are not needed.


You're using a color ramp output in a normal input. That cannot work.
If you intended to use it as a displacement map, use a vector displacement node with the displacement input of your material output.


Object appears in 3D view, but partially disappears in camera view and rendering

Try checking the N-panel (right pop-out of the 3D view) in the View section where the Clip settings are.  This is not necessarily identical to the camera and controls what you see in the 3D view (which can be different from what gets rendered).

( your question is probably a duplicate of short view distance in 3d view? )


How to get blender to write the correct diffuse color (Kd) in exported .mtl files?

Since 3D file formats such as .obj/.mtl cannot represent complex node graphs, the .obj exporter add-on only considers the Principled BSDF when creating the file. All other shader nodes are ignored. This is documented in Blender's manual.

I can't reproduce the problem with Kd having different colors in 2.81a. In case previous Blender versions applied the view transform on the scene linear RGB value from the color picker before writing the .mtl, try to temporarily set the View Transform to Raw in the Color Management panel.


How do I format an integer text object using just logic bricks

Not really elegant:

I guess this is pretty similar to your solution.


How to select vertices on different meshes in edit mode

Joining

Tab out of Edit Mode, select one mesh, Shift select the other, and key Ctrl + J to join them. Tab back into Edit Mode.

Shading

If the shading does not look weird (darker) on one or both of the meshes, ignore the following paragraph.

Select one vertex of the weird one(s) and key Ctrl + L to select the rest of it(them). Key T to toggle open/close the Toolshelf, go to the Shading/UVs tab, and click on the Recalculate button. Key A once or twice to deselect the mesh(es).

Bridging

Do read this paragraph.

Key Alt  and RMB while hovering over one of the edge loops. Do this for the other edge loop as well. This should select the whole loop. Key W to open the Specials pop up menu and select Bridge Edge Loops.


Editing colors in Blender for vibrance and saturation

Besides the postproduction options outlined in other answers, you can be intentional on how you use the elements instead of resorting to "fixing in post". You do have absolute control on the quality of the scene by careful crafting of the materials used and the lighting of the scene, without having to resort to additional effects.
If you want more saturated colors... use more saturated colors, or darker colors, in the shaders those are the ones that determine the color of an object in the scene, you have total control on how objects reflect light or how shiny they are. Also make sure that the intensity, and quality, of your lights is not making the objects too bright, and that is helping you get what you want.
Also play a bit with the different looks on the color management section. A higher contrast might be useful.

Read both answers on the following link very carefully:
Desaturated red when rendered
And read the whole page (comments and answers) here:
How can I get more saturated colors when I render?
To understand the relationship between brightness and saturation on the filmic color transform read this as well:
Render with a wider dynamic range in cycles to produce photorealistic looking images


"Loop Cut and Slide in blender 2.80 beta?

You can find this tools inside the Tool Shelf, in edit mode

Hope that helps.

Good Luck


I'm not very much into sculpting, but you can try the Layers tool. Make sure you are in Subtraction Mode (the minus-button on the top) and set the falloff type to Constant.
But to make the edges so smooth like in your reference, you would need a hella lot of vertices, which can be performance-eating.
This is the closest result i achieved with sculpting lol:

You could try it with Bump Maps. I have to admit I haven't done this myself, but i've seen a colleague doing this. Basically you use an image with black an white values (black = low, white = high) as your source for the heights.
I think you would have to paint your mouth in grey tones and a sharp edge on a white background and plug in certain nodes in the shader editor.
I found a pretty short, but on-point-tutorial on this, which i can recommend (warning, it may be a bit fast): https://www.youtube.com/watch?v=_dU3DONwSzU


Using particle data to effect an unrelated objects material

Using dynamic paint
Result:

How to:

UV unwrap your "receiver" object (I'm using a cylinder)

On that object, enable (from the Physics panel): Dynamic Paint > Canvas > Add Canvas. Make its type "Image Sequence", and its initial color completely black. Enable "Dissolve" and use a very short time for dissolve, like 5.

Select the Emitter object, enable: Dynamic Paint > Canvas > Add Brush. Make the brush fully white. Change the "Source" to "Particle system" and select the correct particle system. Increase the brush radius.

Go back to the target object, select the correct "UVMap" under "Dynamic Paint Output", and bake the Image Sequence.

Create a material for the target that has an emission shader modulated by the Dynamic Paint paintmap (for the Image Texture, remember to open all the image files together with Ctrl+Shift+Select, and "Detect Sequences" activated):


what other option in python keymap line for 'PRESS'?

Enum as below:

value (enum in ['ANY', 'NOTHING', 'PRESS', 'RELEASE', 'CLICK', 'DOUBLE_CLICK', 'CLICK_DRAG', 'NORTH', 'NORTH_EAST', 'EAST', 'SOUTH_EAST', 'SOUTH', 'SOUTH_WEST', 'WEST', 'NORTH_WEST'])

You can find the reference here: KeyMapItens

If you want to simulate holdup method, use the 'PRESS' and 'RELEASE' with if stament. Or maybe 'CLICK_DRAG'


Particle effect showing only on one side of mirrored object

Have the mirror modifier be on top of the particle system.

Use the arrows top and down arrows on the right of the modifiers to re arrange the modifier stack.

Then in the particle system enable Use Modifier Stack


The cloud generator has been removed from the Blender Add-ons Contrib repository by commit rBACf439379cf637af05bec87e2ee0273dd2b2b43d6b because it wasn't maintained and therefore not updated for Blender 2.8x.


How do I display the ~bounding box~ of a Render Border that is already created?

I figured out. Simply select the active camera for the bounding box to appear. :D


Short Answer
The pacing for an animation is controlled by the proximity of the keyframes over time. In the Dopesheet or the Graph Editor windows you can select keframes and move them horizontally. If the keyframes are moved closer to each other the movement will happen faster. If the Keyframes are moved away from each other, then the movement will happen in more frames and will take longer. Additionally you can use graph editor to adjust the animation curves which will affect the pacing of motion.
Long Answer
The hardflip is quite a complex movement: not all motions occur with the same timing, and the number of keyframes needed to describe it is not the same for all axes, and is different for location, rotation and tilt.
The location movement is quite simple for the X axis: the board keeps travelling forward even when it is in the air, but at a lower speed, then lands and picks up a bit of speed again.
Heightwise the motion is almost a parabola, but there is a sharp movement down once the feet touch the board pushing it down back to the ground.

The rotation is the complex part:
On the X and Z the movement is 360 on X and -180 on Y, and they both start almost immediately after the board is kicked on the back to raise it, but the rotation ends while the board is still in the air and the feet of the skater stabilize it and push it down.These rotations can be described with only two keyframes per channel and are basic bezier curves.

On the Y axis it is a very different story because the movement is sinusoidal to describe the hard initial kick and the landing with the back of the board first and then landing the front last.

So, going back to the original question... Once you have the keyframes you need, then you can control the pacing for the animation by moving the keyframes closer or further away from each other...

Additionally you can fine tune movement by playing with the control points and its handles on the curves on the Graph editor window.

Here's the file used for this example:


How to make 15 textured billiard balls roll?

You need just basic rigid body options, imho, there's the standard collision and rotation damp. Just set the collision shape to mesh, always behave better for collisions. Also you can lower collision margins (not zero, at least .01).

it should work like this:

here is the test .blend:


How to obtain a set of separate objects from an Array Modifier (or other method) and keep their rotation and scale?

Well since I couldn't find an exact solution for this anywhere, I came up with a Python script that processes all Array Modifiers of an object to create clones of such object (rather than just create geometry like Blender does) that correspond exactly to the distribution obtained with the Array Modifier.
This is particularly useful for me when I create something using Array Modifiers and want to export the whole geometry resulting from applying them but also the positions, rotations and scales of all parts. For example I use this in Unity to have one joined mesh to draw efficiently but using this script I can also keep the information about the parts' position, rotation and scale in Unity's Transforms and use this information for interactions.
import bpy
from mathutils import Vector, Matrix, Quaternion, Euler
from random import uniform

# Uses Array modifier data to generate OBJECTS rather than just geometry

# Only works with Array Modifiers with ObjectOffset
# Tested in Blender 2.83.1

# HOW TO USE
# - Select an object that has at least 1 Array Modifier
# - Make sure all Array Modifiers on that object have an Object Offset set and active
#  (those that aren't set or active will be skipped)
# - Optionally disable the Render/Realtime Display of each Array modifiers so you won't see the Blender's result
# - Launch this script with Alt+P

# - - - - - - - - - - - - - - - - - - - - - - - - - - - -

# Removes all modifiers from an object
## Needed to cleanup the clones
def RemoveModifiers(_obj):
    for mod in _obj.modifiers:
        _obj.modifiers.remove(mod)

# - - - - - - - - - - - - - - - - - - - - - - - - - - - -

# Recursively applies the affine transformation
# copying _obj and applying the transformation described by _matrix to its copies, relatively to the currently processed object matrix
# writes all cloned objects to _clonelist
## _OT is the original object transformation matrix
def CopyAffine(_context, _obj, _matrix, _count, _clonelist):
    copy = _obj.copy()
    RemoveModifiers(copy)
    _clonelist.append(copy)
    copy.matrix_world = _obj.matrix_world @ _matrix #@ _obj.matrix_world @ _matrix.inverted() # _matrix @ _obj.matrix_world #
    _context.collection.objects.link(copy)
    c = _count - 1
    if (c > 1):
        CopyAffine(_context, copy, _matrix, c, _clonelist)

# - - - - - - - - - - - - - - - - - - - - - - - - - - - -

# Gets all array modifiers from _obj
def GetArrayModifiers(_obj):
    arrModifiers = []
    allModifiers = _obj.modifiers
    for mod in allModifiers:
        if(mod.name.startswith("Array")):
            arrModifiers.append(mod)
    return arrModifiers

# - - - - - - - - - - - - - - - - - - - - - - - - - - - -

# Process all Array Modifiers
def ApplyArrayModifiers(_context, _targetObject):
    arrModifiers = GetArrayModifiers(_targetObject)
    if(len(arrModifiers) == 0):
        print("No Array modifiers found in " + _targetObject.name)
    else:
        objs = []
        objs.append(_targetObject)
        arrModifiers.reverse() # we have to go backwards, from the last modifiers to the first
        for aMod in arrModifiers:
            count = aMod.count
            offsetObj = aMod.offset_object
            print(offsetObj.name)
            if(offsetObj == None or not aMod.use_object_offset):
                print("offsetObject not set or not active")
            else:
                clones = []
                # Here we need to counter the target object's transformation. Can this be seen as a change of base?
                D = _targetObject.matrix_world.inverted() @ offsetObj.matrix_world
                for obj in objs:
                    CopyAffine(context, obj, D, count, clones)
                objs = objs + clones # concatenate clones to all objects for the next iteration

######################################

print(" - - - - - - - - - - - - - - ")
context = bpy.context
A = context.view_layer.objects.active
ApplyArrayModifiers(context, A)

Blender Array Modifier

Result after running the script
All clones of the object are transformed in a way that matches the Array preview.


How to apply a several modifiers with python (but not necessarily all modifiers)?

Objects don't have a .modifier_apply(), you can't do active_object.modifier_apply(). That's what the main Error message is saying.

modifier_apply is an operator of bpy.ops.object, which works if there's an active object. Confused? :)

# pick any object
obj = bpy.data.objects['Suzanne']

# set the object to active
bpy.context.scene.objects.active = obj

# this operator will 'work' or 'operate' on the active object we just set
bpy.ops.object.modifier_apply(modifier="my_modifier_name")

In the event that you want to apply a subset of modifiers, you have to start applying from the bottom up. You could put checks in place to skip certain modifier by type, but in your case you have only Boolean_Modifiers.

import bpy

def execute(self, context):

    target_obj = context.active_object
    tool_objs = [o for o in context.selected_objects if o != target_obj]

    BOOL = 'BOOLEAN'
    # first add them.
    for obj in tool_objs:
        bool_mod = target_obj.modifiers.new(name='diff_' + obj.name, type=BOOL)
        bool_mod.operation = 'DIFFERENCE'
        bool_mod.object = obj
        obj.hide = True

    # then apply them individually.
    for modifier in target_obj.modifiers:
        bpy.ops.object.modifier_apply(modifier=modifier.name)

execute(None, bpy.context)

This is one way to apply the modifier, there is also a direct way to apply all modifiers at once to the Mesh without such a loop. See this answer for details


Is there any way to connect blender to processing?

Maybe the question is a little off topic for the blender.stackexchange

There is python-osc for talking over OSC between Blender and any OSC supporting program (Processing comes with an OSC library). You could make your own bindings.


Export fluid simulation for usage in three.js

Try using LightWave Objects plug in, you can export physics simulation to keyframes, if you export and import it as .mdd (Lightwave Point Cache), I think this will covert the simulation to keyframes, from there you can export to gltf


Select the keyframes in the dope sheet editor, than - Shift+M (in the menu: Key - Mirror)


Is there a way to identify colours in a mesh

Sure thing.
Just use the black and white image as a mask for transparency.

Connect your material nodes like this.
And use the Transparent BSDF node.

If you're using Evee, don't forget to enable Alpha Blend

You can also combine different colors the same way.
All of these planes were created using the same bw image.


What's the shortcut for return to previous 3d viewport scene?

I don't think you can save user perspective locations unless you have a Camera in your scene, in which case you could position the camera to your desired perspective and press "Num 0" to return to that position.

It might also help to enable "Lock Camera to View", as you could easily adjust the perspective like you would normally in the 3D view. If you switched to any other perspective hotkey, you could just hit Num-0 and go back to your previous view.

Hope that helps, feel free to ask any questions.


I have just downloaded video into Twitter with next rendering settings. On the picture below I marked significant properties. Some of them can be set with other values according Twitter documentation I guess. For example fps can be till 40.
In my case it looks like the problem was in audio codec. I did not have any sound so the codec was none. But Twitter require audio codec anyway.


Mesh gets out of sync while in edit-mode (Python)

In edit-mode, the mesh as defined by bpy.types.Mesh is not used, there is in fact a different mesh-representation being used (bmesh.types.BMesh), which supports editing operations and modifications.

So changes to bpy.context.object.data are not displayed, and they will be overwritten when exiting editmode.

Instead, you have to access the BMesh.

import bpy
import bmesh

obj = bpy.context.edit_object
me = obj.data

# Get a BMesh representation
bm = bmesh.from_edit_mesh(me)

Once you have a bmesh from the edit-mesh, you are directly accessing the same data which the user is manipulating.

For the full example, see:

  Text Editor -> Templates -> Python -> BMesh Simple Editmode

See BMesh API docs:
http://www.blender.org/api/blender_python_api_2_72_release/bmesh.html


Boolean Difference failed - Give me an alternative

The problem is that your mesh is non-manifold, meaning you have holes on its surface, it can't boolean properly. To fix that, go in Edit mode, select the whole mesh, go in the Mesh menu > Clean Up > Fill Holes. Also you should recalculate the normals with a ctrlN even if it seems to work with bad normals. Then boolean with the Union mode and it works.


Model is not generating weights with auto-generate, what am I doing wrong?

First of all for the automatic weighting to work (which is never guaranteed by the way) each bones should be inside the mesh. Your hands here are problematic, you want to place the hands bones inside the hands mesh. This could fix it.


When I enter sculpt mode my model's hair looks deformed

To fix this you could add a subdivision surface modifier and use that with the smooth sculpt tool to keep things without all of those bumps. Make sure that your head is rounded ish to keep the subdivision surface working. I did the same with a hair model and it worked for me. try giving it a shot.


Render with same output as "solid" viewport

Not a complete solution, but perhaps a hint: in the 3d "solid" viewport there's a default (hidden) lighting that heavily influences how the scene is rendered by opengl. The user preferences have settings about diffuse/specular colors and direction for 3 lights, and you can also edit them interactively:

So, you could try a lighting setup that acts in the same or similar way, to render it, perhaps: the position of those lights is not accessible, though through the blender user interface (it could be possible to read those light position/direction through python, perhaps, but I'm not sure at all)


Is there a smart way to apply a better transition between colours while maintaining one solid colour per face?

The following script reads the face position normalize it and assign it to the vertex color of this face ( new group named 'face_pos' will be created ) :

import bpy

obj = bpy.context.object
obj_data = obj.data
group_name = 'face_pos'
#check for existing group with the same name
if None == obj_data.vertex_colors.get(group_name):
    obj_data.vertex_colors.new(name=group_name)
color_map =  obj_data.vertex_colors[group_name]

#collect dimension info
dim = obj.dimensions
min_x = -1*min([p.center[0] for p in obj_data.polygons])
min_y = -1*min([p.center[1] for p in obj_data.polygons])
min_z = -1*min([p.center[2] for p in obj_data.polygons])

for poly in obj_data.polygons:
    pos = poly.center
    color = ((pos[0]+min_x)/dim[0], (pos[1]+min_y)/dim[1], (pos[2]+min_z)/dim[2])
    for loop_ind in poly.loop_indices:
        color_map.data[loop_ind].color = color

we wont apply this vertex color but instead we use it as a face position input in the material nodes using the Attribute node and the vertex color name , then we manipulate this information to create the desired effect

material node

the result is color transition for faces not points :

This solution maybe a bit complicated but it introduce a trick for accessing other properties in cycles(this is not like drivers since it updates per point not frame)


EEVEE Volumetrics disappears when I plug in a noise texture to density node

This is a bug with Mac. I don't know if someone already reported it, but I saw a video on Blendernation ("Blender 2.8 Eevee Volumetrics tutorial from Chocofur") and there was a comment from someone with the same problem and Chocofur confirmed it on his Mac.


Whole mesh rotates with armature, not just the arms

If you use automatic weight, Blender can only "take" what it has. Since there is only one bone in your armature, Blender takes all vertices to do it, so your whole person moves.
If you add bones like this:

it works:

blend file (but be aware, i just made "rough" bones, and just on one side to prove it works):


A script to exclude specific vertices from Shapekeys?

Found the answer on BA! So all I need to do is to

Select the Basis Shape Key, Tab into edit mode
Select the vertices you want to keep unchanged,
Hit Ctrl+V >Propagate to Shapes.

And it will overwrite the vertices shapes in that particular area and thus will not change anymore. The downside is that it is going to apply it to all the shapes (my understanding) but that's ok for now.


How to scale snapped measure along with objects?

You cannot scale measure bars, but you can get what you want with some arithmetic. In the bottom right, the 3D View editor has a dark grey box that appears when you do something like scale. This is the Adjust Last Operation Panel (blender docs link). Click the little arrow on it's left to open it up, and you'll see adjustment wigets for whatever you just did. In the case of scale, you'll mainly see 3 numbers that correspond to the 3 axes. IE: 2, 2, 2 means the object is twice as long on each axes (or 2^3= 8 times bigger volume-wise). It's basic multiplication from there: Current measurement*[SOLVE FOR FACTOR]=desired measurement. Enter that factor in all three areas, and you're good to go.


How do I use shape keys to bake a soft body animation?

To convert a Soft Body animation into shape keys you can use the MDD importer/exporter. The Export option exports the soft body animation to a file and the Import option imports the file into a set of shape keys, along with keyframes to automatically control the shape keys to maintain the animation.

First, use the User Preferences option to enable the MDD importer/exporter addon by opening the Add-ons tab, typing 'MDD' into the search and enabling the Import-Export: NewTek MDD format add-on.

Next, select your soft-body object and use the 'File/Export/Lightwave Point Cache (.mdd)' option, specifying a filename to export the animation to.

Once exported, use the 'File/Import/Lightwave Point Cache (.mdd)' option to import the animation. This will create a set of shapekeys with keyframes. The keyframes automatically adjust the shape keys influence so as to activate/deactivate them to animate through the frames of the animation. At this point you can remove the Soft Body simulation.

You can adjust the keyframes on the shape keys to effectively 'blend' the animation at the start/end.

Here is a fantastic answer which uses a similar technique except that it uses a Mesh Cache modifier in place of the 'Import' step. By using two modifiers (with offset frames) the animation can be more easily blended at the start/end of the animation : https://blender.stackexchange.com/a/10661/29586


As you're using the cube's UV, in the modifier you need to choose Texture Coordinates > UV. Also, reduce the modifier's Strength, and put one Subsurf above and one under the Displacement with subdivisions of 2, this will make it smooth nicely.


Where can I find documentation for the Blender Game Engine?

The official Blender/BGE API

Check section Game Engine Modules specifically Game Logic (bge.logic)


rotate objects based on pixel value of video footage

Create the alpha mask in the compositor and render it as an image sequence. Then load those images—as separate images—into blender and follow my answer here to access image pixels and orient objects based on it.

To get this to work for the image sequence, adjust the image access expression to be something like this:

bpy.data.images[str(frame).zfill(3)].pixels[:][0::4]

Where frame is your integer frame number. This assumes the images are named 001, 002, 003, ..., adjust the expression to your naming style. This will access a different video frame image based on your scene frame number, effectively giving you the video pixels.


advice on how to reduce the polygon count for this twisted structure (made using simple transform)

One way would be to use the decimate modifier to lower the poly count od your model and maybe add a smooth shading to hide some glitches :

the reduction result :

the model ( with smooth shading ) :


How to export several render outputs at once?

I'm using this setup as addition to the normal path and filename for the composed image:


Align object's orientation -rotation, transform, and scale to another object's orientation

Yeah that exists in Blender 2.8 as well as in 2.7.

Just select the object or objects you want to apply the rotation to first (press shift to select multiple objects).
Then also select the object you want to copy the rotation from at the very last.
Then open the Properties Region (menue on the right side , shortcut [n]).
There you hover over the rotation or location or scale and click the right mouse button. Then you select 'copy all to selected'. You can also only copy the one value you hover over by selecting 'copy single to selected'.


Adjust last operarion menu does not work with newly made mesh and mesh is placed twice

This was a quick answer to the user's question, however batFINGER's answer provides more details on how to improve the add-on. It also addresses other issues such as the architecture/structure, imports and the naming convention.

If you want to use object_data_add() from bpy_extras.object_utils then remove the object creation and linking to the scene from add_object.

def add_object(self, context):

    verts = [(1, 1, 0), (-1, 1, 0), (-1, 0.9, 0), (-0.25, 0.9, 0),]

    mesh = bpy.data.meshes.new("mesh")

    bm = bmesh.new()

    for v in verts:
        bm.verts.new(v)

    bm.faces.new(bm.verts)
    bm.to_mesh(mesh)
    bm.free()

    object_data_add(context, mesh, operator=self)


Unable to set number of output channels for Audio Render

The audio options are visible once you choose ffmepg video as File format.
Then you can set the audio codec and channels in the audio section of the encoding.


Can I make the array modifier work on global coordinates?

Modifiers work on the mesh.

The orientation of the default cube is "logical".  With (0, 0, 0) rotation it sits "flat".  It all makes sense. Start to rotate in edit mode (or in object mode and apply) it all starts getting a bit hard to follow.

Modifiers work on the mesh (data) part of an object.  A couple of ways to change the orientation of the mesh before using the array modifier.

1. Armature Modfifier before the array modifier.

If the armature modifier rotates the mesh before the array this'll work.

Rotating the bone, and result on cube 16 x 16 array

Here I've added a single bone middle of default cube, selected cube, ⇧ Shift selected bone, ⎈ Ctrl P set parent,  and chosen automatic weights. Now rotating the pose bone rotates the cube. If the armature modifier is before the array modifier it will do what you want, ie rotate each cube in the array.

Shape keys

Keep the normal orientation of cube as the Basis key.  Add a shape key(s) for the rotated state(s).  Because shape-keys are moving the vertices (data) of the mesh, this will give desired result too.


In 2D animation, how to draw coloured shapes?

I found the answer shortly after posting the question for the second time. For everybody who is puzzled about this as well, follow this description

By default, 4 materials are visible in the material box at the top of the screen (the one that drops down when you click on "Materials"): Black outline, red outline, grey filled, and black dotted outline. To make it possible to fill a shape with another color you need to add a new material.

To add a new material, open the "Material Properties" window at the right side, by clicking on the little red ball icon:

After that, press on the '+' sign in the corner, and a grey bar appears in the list. Then press the 'New' button:

In the properties that then appear, change the default 'Material' name to anything you like, and enable the 'Fill' property. Then click on the 'Color', which is black by default, and a color selection dialog appears, with a black color wheel. The easiest then is to use the color selection 'thermometer' to sample the color you want. Or sample any other color at all, except black, and then select from the color wheel:

I have not found an easy way to do this.


How to export animations to use in an Android app

Probably the easiest solution is to export a Wavefront Obj sequence; This will give you a sequence of files, where each represents the positions of each vertex, at the given time. This format is probably the best, since it's very simple and uses ASCII.

To do this in Blender, after you have your animation ready, go to the Header, then File, the Export and finally Wavefront (.obj). The interface layout will change and show you the File Browser, where you can select the output path and name. Before clicking Export, you need to go to the panel on the left and in the subsection Export OBJ check Animation.


How do I get a clean slate after every run of my add-on?

EDIT: Actually, my implementation was broken, but thanks for all the help given in this thread!


Turn 2D Mesh into a 3D Mesh reuleaux solids

The wikipedia article says

  Four balls intersect to form a Reuleaux tetrahedron.

Which is easy to implement with boolean operations (and balls).

Start with a pyramid. To create it, activate the Extra Objects Addon.

In the 3D View, add (⇧ ShiftA) a Geodesic Dome.

Add a subdivided cube cast into a sphere and snap it to the vertices of the pyramid.

Select one of the cubes and add three boolean modifiers. Choose the other three cubes as inputs.

The distance of the centers of the spheres is the length of an edge of the pyramid. The radius of the spheres should equal this value. (The dimensions (diameters in this case) will naturally be twice the value.) In my case the pyramid has an edge length of 1.633, hence the spheres have to be rescaled to match a dimension of 1.633 * 2.

Hide all the objects, except the  one with the boolean modifiers. Add an edge split modifier to clean up the seams. I used a high subdivision value (4).


If the armatures have the same bone names:

Remove the armor from its rig (select the object and press Alt+P or remove the relationship in Properties > Modifiers)
Parent it to the character rig (select the armor object, select the character armature and press Ctrl+P > Armature Deform).

If the armatures have different bone names:

Remove the armor from its rig (select the object and press Alt+P or remove the relationship in Properties > Modifiers)
Parent it to the character rig (select the armor object, select the character armature and press Ctrl+P > 'Armature Deform With Empty Groups'.
Select the armor object, switch to Edit mode in the 3D view and go to Properties > Object Data Properties > Vertex Groups.
Make sure no vertices are selected in the 3D viewport by pressing Alt+A
In Properties > Object Data Properties > Vertex Groups you should see all of the names of the bones of the armor armature (even though it is no longer linked). Click a name, click 'Select' to select all the vertices in that group, click the name of the character armature group you want to that piece of armor to follow then click assign.
Test in 3D Viewport > Pose mode to see if it is working as intended.
Repeat steps 4-6 for all the bits of armor.


Baked metal material looks different than material preview

First of all, the difference between your Material Preview and the Rendered View: the preview uses HDRI images to artificially light up your scene by default, this HDRI can also be seen in reflections. You can change the settings in the dropdown menu, choose a different HDRI or change the strength etc. You can also choose to display the current Scene Lights and Scene World instead of the generated lighting.

If you switch to Scene Lights and Scene World the preview would look much more like the final render. Now the problem with your render... I don't know about your bake settings and if you want/need to bake a texture, but this is definitely not necessary just for rendering an image. And if you're just baking the Color information of the Glossy channel, you only get the color, no reflections etc.
But your object and world materials have several issues. For the object, you've plugged a Color Ramp into the Roughness. Usually the Color Ramp is used to convert some input into a color distribution, where the input values from 0 to 1 reflect the positions on the range, and a slider at 0.2 means, convert the grey value 0.2 into the color which the slider is set to. IF you have no input for the Color Ramp, it's output is the medium value which is found at the position 0.5, and since your black slider is past 0.5, the output is black or 0, which means you have an overall Roughness of 0 which makes the Color Ramp obsolete.
Also the Metallic value: to get more realistic results (a material in reality is either metallic or non-metallic) you should only use 0 or 1, all values inbetween are for artistic reasons but not realistic.
If you would have set it to 1, than your object would look worse, because than it would not only be dark grey but completely black with just some bright spots maybe where your lights are reflected. Because your completely shiny metallic surface would only reflect a black environment.
Which brings me to the issue with your world material: you've put a Glossy BSDF in there. But this doesn't emit any light which means your sky is pitch black. Usually there should be a Background shader plugged in. This has a Strength to determine how much light it will emit from the color or image texture or whatever there is. For example, just using a white color makes it less pitch black:

But of course there is still not much to reflect because it's just a plain color. If you're looking for something that's more like the preview, better use an Environment Texture instead of a color in which you load an HDRI image. You can get many for free on HDRI Haven for example. Usually HDRIs are used to generate more realistic scene lighting and create reflections when you don't have a real environment that could be reflected from your object. Since the HDRI is lighting your scene, you don't have to necessarily put extra lights in there as long as you don't need them for special reasons.

If you don't want the HDRI environment to show up behind your object like in Material Preview, go to Render Settings > Film > Transparent and enable it. By the way, you can set the the Rendered View to show what is seen in Material Preview by disabling Scene Light and Scene World in the options, but beware that an actual rendering of the camera image will show the real world settings, not the preview settings.


Simplify F-Curves of Shape Key animation

The simplify f-curves operator has been created in a rigid way that only looks at the objects animation data. Not all animation data is stored in the one place, for example the shape key animation is stored as part of the mesh data, not as part of the object animation.

While some more work should be done to make the simplify f-curves a little more flexible, this modified version(v1.0.4) allows the shape key f-curves to be simplified. You can download and unzip this version, then use the install addon from file button to select the unzipped py file, blender should then replace the existing addon with this version, if you have permissions to write over the file.


Your problem is that you have Subsurf modifier before Hair, but forgot to enable Use modifier stack in Particle System. Moreover you hide Subsurf from viewport render, thus problem remains only in final render.

I assume you have to undo all Hair editing and enable Use modifier stack, then comb Hair from the start. Also your levels for Subsurf modifier are different for final render and viewport. This can cause another problems in the future.


Reuse the value of an animated shape-key-value for the animation of a emission strength value of a material

Enable Python Tooltips in Preferences > Interface > Display.
This helps discovering the data paths. To check if a path is correct, paste it into the >>> prompt in the Scripting workspace and hit enter. Either you'll see its value printed out, or it'll give an error message that the path was wrong.

With that, I was able to work out this:

Select your object with the keyframed shape key.
In its object data under Shape Keys, right-click the keyed value and select 'Copy Data Path' (or Shift-Ctrl-C). For me this yielded key_blocks["Key 1"].value, since "Key 1" was the only shape key I had other than the Basis shape.
I noticed that the Python tooltip was actually longer, and said: bpy.data.keys["Key"].key_blocks["Key 1"].value

Which tells us everything we need to use this in a driver.

In the Shader workspace add a new Input > Value Node.
Right click on the numerical value field of that node, and 'Open Drivers Editor' or just Add Driver and try editing in the smaller window.
Set the 'var' input variable to be a 'Single Property'.
On the 'prop:' row set the ID Type (the small icon part) to "Key".
On the 'prop:' row set the ID to be the key name from the python tooltip above.
Note: this one is the name from the first part of the full Python path, bpy.data.keys["Key"] in my case, so "Key".
In the 'path:' row, paste in the copied shapekey path (in my case key_blocks["Key 1"].value). That is, just the latter part of that full Py tooltip.

This appears to work and do what you asked.


How to access properties of the 3d Viewport?

Operators and properties are often context sensitive. It means they need to be executed from specific context (screen area). Your example needs to be run from View_3D context, so it cannot run from the Python Console.
Luckily, there is a way to access different screen areas and get their types and properties. In your case use_occlude_geometry is a property of SpaceView3D, thus only accessible from that space:
for area in bpy.context.screen.areas:
    if area.type == 'VIEW_3D':
        if bpy.context.active_object.mode == 'EDIT':
            area.spaces[0].use_occlude_geometry = not area.spaces[0].use_occlude_geometry

You can paste and run the above example in Python Console as a multi-line command or run it from the Text Editor as usual.

However, best practice for Addons is writing your own Operator to match the context:
import bpy

class OccludeGeometryToggle(bpy.types.Operator):
    """Toggle Occlude Geometry Option in 3D View"""
    bl_idname = "view3d.toggle_occlude_geometry"
    bl_label = "Occlude Geometry Toggle"
    bl_options = {'REGISTER', 'UNDO'}

    @classmethod
    def poll(cls, context):
        return context.active_object.mode == 'EDIT'

    def execute(self, context):
        context.space_data.use_occlude_geometry = \
            not context.space_data.use_occlude_geometry
        return {'FINISHED'}

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

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

if __name__ == "__main__":
    register()

Once the operator is registered, press Space in Edit Mode (since the poll() method checks whether the active object is in the correct mode) and type "Occlude Geometry Tog...".

Note that the code above used to work till Blender 2.79. Since version 2.8+, the property use_occlude_geometry was removed from the API. A similar effect can be achieved by the property shading.show_xray -- it's not exactly the same thing though, because it also makes grid lines peek trough the object.


I think this is what you mean, but data.uv_layers doesn't provide that functionality. uv_textures does. If you hover over the UVMap menu item in UV Maps it's a uv_texture.

import bpy

uv_textures = bpy.data.objects['Suzanne'].data.uv_textures
uv_textures.remove(uv_textures['UVMap'])
# uv_textures.remove(uv_textures['UVMap.001'])
# uv_textures.remove(uv_textures[0])   or by uv index

You might want something like this:

import bpy

selection = bpy.context.selected_objects

for obj in selection:
    uv_textures = obj.data.uv_textures
    uv_textures.remove(uv_textures[0])


Curve Inner Edges of an Mesh (Not the outer edges which I can use bevel on)

I didnt found a precise answer but you can delete the mirror modifier then delete the vertices that are in the positions (x,y,0) axis (so you should be left with a mesh that contains vertice that are connected,) then apply a screw modifier and change axis to y. then once you have that object you can apply the screw modifier then use knife to cut through in souch a way that it would be useful to add the mirror modifier again , apply the cut.Then enable clipping in the mirror modifier and scale at x axis to get a pleasing result.Also at this point instead of scaling you can play around with the curve modifier or others modifiers like deform.If you are good in nodes you can install a plugin called sverchok and try creating the cockpit there but it can be ways harder than doing it with this way.


Unfortunately Blender Render has been completely removed in Blender 2.8, so this functionality is no longer available.

Could't agree more about having to use materials slowing down my workflow when I'm going to be exporting to something that completely ignores the materials anyway.

However there are at least ways of speeding the process up, and you can still get the same visual feel as Textured Solid.

The button to the right of the colour option lets you quickly pick a new input node type while avoiding the node editor. So you can quickly switch to an image like this:

Then just select the image with the dropdown that appears.

You can get a similar visual feel as "Textured Solid" in the viewport by setting your shading up like this:

(I have both of these set up this way in my startup file. Then when I need to add a new texture, I just duplicate the material and change the texture.)


A Material that has Colourful, Swirly Turbulence

Its not exact but maybe can get you in the right direction.

I just used a mixRGB node for all the different colors I needed. Then I just seperated the colors with a noise texture. The trick is to change to distortion on the node to get those swirls.

Use the ColorRamps to control how sharp you want the edges of the swirls to be.

It will just take some playing around with all the settings I circled to get that specific look.


Mesh with cloth simulation and particle instance modifiers (used in a particle system) not responding to wind

The size of the leaves is too small that is what causing the leaves to not respond to the wind force to solve this :

scale up all the objects involved in the simulation
move the emitter further from the ground to give the leafs space to fall
increase the size of the particles in the physics panel :

here is the result :


Packing all linked Files for Render Farm submission

You should try this option:
Object=>Relations=>Make Local=>All

Unfortunately, it does not work for proxies. At least it didn't some time ago.
As for the render farm, you can try GarageFarm.NET. Their plugin uses this option automatically.


I had the same problem, what you need to do, is set the end value at the bottom to the end keyframe that you have.


Stretching model with ik makes model bigger

Normally, scale will use global coordinates.
You want to use local coordinates.

Tap N to bring up the properties panel.
Scale along the appropriate axis, such as Y.

In the example, I scaled (from her view) left arm the standard way.
You can see it inflates, like you mentioned.

Scaled her right arm using local properties instead,
along the Y-axis, so it stretches, but doesn't balloon out.

edit:  OK, in response to the BlendSwap link you posted:
I've never used that rig before.

The website look nice, but loading in Blender gives me this:

I assume it's a version mismatch.  It's for Blender 2.74
You might need to ask the developer (nocemperor) about that.

I would try this instead:  http://www.manuelbastioni.com/manuellab.php
because it uses a standard Blender bones rig.

Again, try to scale along one of the local axis
How to scale along the local axis of an object?

edit:  Oh, I just realized it wasn't loading fully.

It's better, but only loads Orange model, not Black or Blue.
Perhaps, because it's for an earlier ver of Blender.

If you'd still like to use that .blend file,
the other trick you can do is add a Scale Constraint to the bone.

Select rig > Pose Mode > click a limb.
Set it to the limits you need.  To scale along Y axis:


I solved it this way: I turned off the tree collection on the current layer, but created a new layer and there the tree collection is turned on. Still it’s not comfortable, but that’s all I have


I'd try increasing the fluid domain resolution or switching from "preview" to "final" in both Viewport and Render Display (in the Fluid Domain options).

It looks like the dimension of each fluid grid element is comparable to the section of the pipe, therefore a slight change to the pipe geometry can result in an obstruction for the fluid. Alternatively, you can make the pipe section larger.

If you're going to increase the resolution, do it little by little (around +20) or be aware that the simulation time and required memory can dramatically increase.


How to combine two objects with smoothing

What's not lined up? Loop Tools > Bridge Tool (as suggested by @moonboots) works for me.

Join objects (Ctrl+J)
Delete last loop of Arm object
Select end loops of body and arm
Search for Bridge (F3) and hit Enter
Adjust vertices as needed to get desired shape


So it looks like you've parented With Empty Groups, which makes sense for an object like a robot, which is mechanical and not organic.
For a human, With Automatic Weight would be preferable, it would automatically create as many vertex groups as you have bones, and assign these groups to the vertices that these bones are supposed to control. But you'll have smooth transitions between vertices groups, as it is what is supposed to happen in an body.
Smooth transitions between vertex groups is not what you want for a machine, because a piece of a machine is supposed to be only controlled by its own bone. In that case, parent With Empty Groups, it creates as many vertex groups as you have bones but for the moment it doesn't assign them to any vertex, you'll be the one that will assign each group to the vertices you want, without any transition.
To do so, once parented With Empty Groups, you need to select a part of your mesh, for example the chest, then go in the Properties panel > Object Data, Vertex Groups, find the group with the name of the bone that is supposed to control this part (here, Chest), click Assign, and so on fo the other vertices.
Little trick: To sort the vertex groups by alphabetic order, click on the down arrow button on the right of the vertex groups list and choose Sort By Name:


In your case it really doesn't seem to be necessary to model this all joined together into one continuous mesh, but if you really want to try erasing two faces instead of just one, it will make topology a lot easier.

Erase two faces from the side of your conical surface, then use the Bridge Edgeloops operator to join the two resulting 6 edge loops.


first remove doubles just in case, and then mark a seam in that face and in where should have it as well, and then re-unwrap again


Why are Grease Pencil Strokes converted to thin Lines?

I had the same problem with the random hotkey, still don't know what it was.

On the top right corner of the viewport are four icons which change the Viewport Shading.

Select the second or third icon on the top right corner of the viewport to change Viewport Shading


Using global nodes to control environment quality?

You can use the Simplify panel to do some of this with global control.


Would it be possible to make your game for Mac Linux and Windows

Yes the blend files can be opened on any system that can run blender. You can then export to game engine runtime on that system. You just need to check that they have the player installed as well, this should be included with release downloads but may not be for custom builds or graphicall downloads.

As gandlaf3 pointed out there is a new addon included with 2.72 that allows you to export to multiple platforms from your current system. You just need to enable the addon and test it. This is a new addon so be sure to report any trouble you have.

Be sure to pack all external files or include all external items for each platform.


How can I add a texture to a specific face?

Okay, I think I found a way (since unwrapping doesn't seem to work for me).

Select the part, go to edit mode, do a Ctrl+Tab and choose Face
Then select the face of the part I want to add texture to (there's a bunch of little triangles that need to be selected)
Next, assign a new material to that face, and deal with texture in Nodes.


How can I move the position of a cue for the second shot in a pool game

Maybe something like this:

A very simple rig: The bone that controls the cue is parented to another bone that represents the cue's target. You can move and rotate the parent bone to match the position of the target, and rotate it to the angle you want to strike from; the cue will revolve around the target accordingly. Then you can control the movement of the cue toward the target by moving its bone along the local Y axis.


Script to add rigid body to object in scene?

This worked for me:

candidate_list = [item.name for item in bpy.data.objects if item.type == "MESH"]
for object_name in candidate_list:
    bpy.data.objects[object_name].select = True
bpy.ops.rigidbody.objects_add(type='ACTIVE')

In the loop it selects all the objects that you want to add rigid_body to. Then add them in one go.


strange behavior duplicating objects in blender 2.8

I think there may be a few problems. Either this is a Blender glitch, in which the answer for that case is to restart Blender, or you may have set the objects to be linked when you duplicate them. You can fix this by looking at the options Blender shows on the left when you duplicate the object. If the box shows "linked" as being checked, then click that to unset linking the objects when duplicating. Also, perhaps, it may be because you hit enter to confirm the duplication. If you left-click the mouse (or track-pad), it will also confirm the duplication's location. Right-clicking keeps the duplicated object at the first object's location, but keeps the duplication.


Light not going through the glass in the window

You have 3 options.

Let the room Recieve Transperent
Use Cycles render
Let the Sun light cast no shadows

I believe the first one is most helpful.

1. Let the room Recieve Transperent

Change the material applied to the room. (Not the window)

If you scroll down, you can find the Shadow panel. Tick the Recieve transperent.

This works with the default blender render.

2. Use Cycles render

Cycles is a physic based render and let the light penetrate through the window.
For links, check the comment on the question.

3. Let the Sun light cast no shadows

I believe this is not your required solution but just in case this was.
The ray will IGNORE the ceiling.

Go to the light setting of the sunlight and Switch from Ray shadow to No shadow. (at the Shadow panel)

What I think is best

Combining 1 and 3 might be a neat solution.
Make two sunlights and let one light ray shadows, the other, none. This will lighten up the entire room while especially lighting up the wall on the opposite side of the window.


You use a good few materials on certain objects and i first thought that might be the reason, removing them one by one brought me to the bad one.

Problem :The material, "platne white+color?", is the reason, more specifically the "Normal Map Node" which is set to "Tangent Space".

Solution: Changed to "Object Space", all was fine, see the video below.

Little extra:
Since i always check for wrong normals when there are issues, please bear with me, as i mentioned in the comments already. Your scene has 2 objects with a few of each that i would strongly advice to correct the normals from. May not have been an issue yet, but i's generally a very good idea to keep them blue(correct) to have no issues later with renders. Glass reflection and refraction as well as subdivision as well as maybe materials can all be affected.

I put a little video here to show you the bugger and the way to correct the normals, just in case you didn't know yet.

By fixing the material, all objects that used the same material got corrected as well.
Also the material preview can give an indication that something might be wrong.


You can use a combination of a lens distortion node and a mask.

In the lens distortion, chromatic aberration would be controlled by the Dispersion value.

With a mask you can designate areas of the screen that would be affected by such dispersion.


How to sculpt a High Poly Mesh in Detail?

You could enable Dyntopo(it is in the toolbar) and set it to a high detail. I would search for a tutorial on its use. Hope this helps


Blender 2.83.5 will not run if archive extracted with xarchive

Yikes! Forgot to answer how I fixed this. Extract with
tar --xz -xfv
Sorry!


I have yet to get the mesh deform modifier to do anyhting

In your file everything would work exactly like it should my friend if you'd add mesh deform modifier to appropriate mesh :). You should add it to the mesh you want deform and as Object choose the mesh you want to deform with, so in this case modifier should go to Suzanne and the object should be Cylinder.


Bisect / Cut Along Vertices That Are Selected?

There is a Bisect Operator that might do what you want it to.

3D View > Mesh > Bisect, requires a Face Selection

This allows you to split the mesh along a plane you can define by dragging, or numerically. If your Operator Panel is not open, hit F6 to show it. It come with a bunch of useful options, like

Fill, which fills the cut edges with faces
Clear Inner/Outer which remove one or both sides of the cut
Axis Threshold that gives the cut adge some fuzzines in where the cut-off happens.

If your vertices are already defining you cutting edge, it would be more efficient to simply separate the part into its own mesh by selecting it and hitting P to do Separate > Selection


How can I trace an image to create an object?

You can hit e to extrude a vertex or you can ctrl + right click to extrude to mouse position. F while two vertices are selected will join them with an edge, and if you have an edge loop selected the same f will fill it with a face.


I fixed it a bit. Dissolved the tangled vertices and manually selected the lines and filled the grid.


What advantages in using progressive rendering?

Progressive render is always slower than a properly configured non-progressive render.

You use progressive rendering if you don't know how many samples to use. For example, you might use progressive on your initial render to get a feel for how many samples will look good, or to extrapolate how long a given number of samples might take. You might also use progressive if you have a specific amount of time to render, but don't know how many samples you can get done in that amount of time.

You might also use progressive if you don't know how much time you'll have to render the image. For example, if you have a SUPER complex scene and you know you're going to be out of town for a few days, you might start the progressive render, set it for umpteen-billion samples, and just let it go until you get back... whenever that is. That way, you're rendering the WHOLE time (it doesn't stop too soon with too few samples), but you also have a FULL image whenever you decide to stop (without having to wait for the last tile... or two... or more, to finish).

http://www.blenderguru.com/articles/4-easy-ways-to-speed-up-cycles/

look to 3. point

With CPU you should use a small tile size it will be faster.

With GPU you should use a big tile size.

Progressive rendering will make a tile as big as your image -> render time will be long

Composite could be done if you simply take a image (use openexr format if you use passes)  as input


Solidify thickness doesn't correspond to specified scale although scale of object is applied

Immediately after posting this question, I realised my problem.
Hopefully it might help someone else, in the future (or in the past)

The object was parented to a dummy object (this project is full of it, I think I didn't import this drawing the right way), which wasn't scaled properly, affecting the scale of the child-object.

I remember now that it appeared strange to me that the object (a technical drawing of a MAN NG272 Public Transport Bus, wasn't scaled properly,
but as an afterthought I think it was, but the empty (empties) wasn't (weren't).

So, instead of removing the dummy parents, I just scaled the whole drawing  to what I thought was right, hence a number of problems later on ...

So the actual solution was to remove the parent of the object, keeping the transform (Alt-P) and then re-apply the scale, after which the solidify parameter works as expected.


I wonder if the normals are inverted on them.
viewport overlays can help identify this (top right of the viewport, looks like 2 circles intersecting) select face orientation. should all be blue


Why won't anything in my scene rotate when I press"r", or "r" "r", or go to the rotation tool and click it?

In the header where you can choose visualization mode(Rendered/Wireframe/Solid...) you have a button with "..." and two arrows below, that mode is causing the problem.


How to stop colours of overlapping spheres from mixing?


Find and select the end control points
Hit F to join them with a new segment
Select the point which goes least in the direction you want, and X dissolve it.


No way to natively hide/mute channels. Only strips:

'H' & 'Alt+H' will mute/hide & unmute/unhide a strip.

'Shift+H & 'Shift + Alt + H" the same, but inverts selection.

However, this add-on can mute/hide entire channels:
https://github.com/venomgfx/addonitos/blob/master/space_sequencer_channel_tools.py


pause blender project and restart and continue after a day.

Unfortunately, you can't pause an ongoing render, but for future reference there is a way to get similar functionality. You can render your video as a series of PNG images and then put them all together at the end.

First, in the render tab, go to output and make sure PNG is selected. Point it to an empty folder on a disk with plenty of space because it is going to spit out a lot of images.

Then when you click render animation it will make a PNG for each frame. When you stop the render, you can just set the start frame to the last frame it rendered and then continue.

Once you've rendered the whole thing, take all the images and put them together into your video. This guy does a pretty good job of explaining how:
https://youtu.be/OGapXgrLOnI


So after some googling and reading API I came up with a little script to automate the process:

import bpy

scn = bpy.context.scene

bpy.ops.object.mode_set(mode='POSE')
bpy.ops.pose.select_all(action='SELECT')

initial_keyframe = scn.frame_current

scn.frame_set(0)

while True:
    bpy.ops.anim.keyframe_insert()

    if 'FINISHED' not in bpy.ops.screen.keyframe_jump(next=True):
        break
    else:
        # A hook to update bone positions after jump.
        # See http://blender.stackexchange.com/a/8534/14703
        scn.frame_set(scn.frame_current)

scn.frame_set(0)

while True:
    bpy.ops.pose.copy()
    bpy.ops.pose.paste(flipped=True)
    bpy.ops.anim.keyframe_insert()

    if 'FINISHED' not in bpy.ops.screen.keyframe_jump(next=True):
        break
    else:
        scn.frame_set(scn.frame_current)

scn.frame_set(initial_keyframe)

Running this will x-flip all frames in the animation.
Unfortunately copying and pasting pose creates unwanted keyframes so you may want to clean up the result manually.


Is it possible to render animations on server, with input from other server, changing the animation?

The short answer is yes. How you do it will depend on what you have access to.

You should start by creating a script that can get the data from another machine, then move the armature with that data and send the job off to the farm. Python's urllib could be used to request data from another machine.

When you get stuck along the way, ask a more specific question. The first part of transferring data will be python specific and probably better asked on stackoverflow, once you get to blender specific tasks ask here.


After merging objects: how to get rid of double faces?

As I cannot obtain any good result with the boolean (starting from Blue Fox's file), I propose this editing approach.

The steps below are in the layer #15 of the blend file :

The objects are still separated. Open the faces to be merged.
Relocate the upper mesh and merge the two
Select the upper opposite edges and CtrlE and "bridge edge loops"
The same for the lower opposite edges
And the same for the last opened part, but without the extremities, because of the needed ngones at these extremities
Make faces for the extremities (select manually the vertices and face F)
Remove doubles

This is not a real answer of the question (more or less "how to make the boolean work"), but the job is done. No vertices were moved.

I have noticed these here :

Face centers with no face (maybe construction points ?), surrounded by O
A plane, is that printable (1) ?
And in (2), the inner faces overlap


Every armature looks like that in the outliner. An armature is a little different from other objects - the bones show up twice, the Armature item holds the bone data used in edit mode, while the Pose data is what you animate in pose mode.

To deform a character mesh with an armature ensure you have selected your mesh and your armature and that your armature is the active object, that is the one that is highlighted in yellow rather than orange (if your armature is in pose mode it will be blue if it is active) this answer includes pictures. Automatic weights will only work if the armature is positioned within the mesh.

If you do have trouble setting up the armature you can also add an armature modifier to the mesh object and setup vertex weights using weight painting or manually assigning weights to a selection of vertices.


Duplication options segment is for telling Blender whether it should be rendering object itself or instances of child object assigned to it.

Parent and child has "None" selected. Objects are rendered as in viewport:

Parent has "Vert" selected in Duplication objects. It will be not visible. Only child Sphere instances will be rendered, without original Sphere. Sphere has to have "None" selected, as it do not have child objects assigned that could be duplicated.

In Your file, object has not any child nor parent, so it should be set to "None". "Only render" option is for viewport displaying only. When checked it displays only object that are selected to be rendered (camera icon in Scene Outliner - top, right panel). It is helpful for temporary clearing viewport from helper objects, grids, manipulators, lamps etc.

I uploaded a blend file with example: http://www.pasteall.org/blend/31324


Animation Nodes - Object ID keys - Additional influence for a selected objects?

If you want the objects to stop at a certain height that may be computed as an offset of the object's location, simply overwrite the used falloff by taking the maximum or the minimum of it with a custom falloff that represents the state of the object. Here is an example:

This offsets the matrices by the maximum amount if their x location is larger than 2.


Can I control hair thickness with weight values?

There is a way to add Alpha to the tips of the hairs, using a Hair Info Node. This will require you to use Cycles.
I just pulled this here straight out of the Cycles Encyclopedia by Blender Guru.
https://www.blenderguru.com/articles/cycles-input-encyclopedia

You can also use the Strand Settings to scale all hair equally.

I am checking to see whether you can feed in a texture or a vertex map to drive the render attributes, so you could paint in the width of the scale of the individual strands. Can't tell you off the cuff if that is possible, but I would find it useful, too.


Weird shading after extrude, tried everything (i think)

Add an Edge Split modifier. Ideally, you would redo/alter all the letters to have no more that 4 vertices per face.


How to find out if an object has an action with Python?

My friend managed to achieve this with a bit nicer code than my artistic approach :)

GitHub link

Code:

import bpy

#########################################################
# INSERT ACTION LOGIC BRICKS TO SELECTED OBJECTS SCRIPT #
#########################################################

#########################################################
# Note:
#
# Each of the selected objects must have a transform
# (Location/Rotation/Scale) action (animation/keyframes)
# before running this script. The action can be empty.
# Otherwise nothing will be inserted to the objects.
#########################################################

############
# Settings #
############

action_brick_start_frame = 0

action_brick_end_frame = 9999

# action_brick_end_frame = bpy.context.scene.frame_end
# Uncomment to set the Action Logic Brick end frame to be
# the end frame of the Timeline.

#############################################################
# Make sure that each of the selected objects has an action #
# Credit goes mostly to Sakari Ekroth                       #
#############################################################

selection = bpy.context.selected_objects
noActionObjs = []
for obj in selection:
  if not obj.animation_data or not obj.animation_data.action:
    noActionObjs.append(obj.name)

if len(noActionObjs) > 0:
  print ("Objects missing action: %s" % ", ".join(noActionObjs))
  def oops(self, context):
      self.layout.label("All of the selected objects must have an action. Cancelling... ")

  bpy.context.window_manager.popup_menu(oops, title="Error", icon='ERROR')
  print("All of the selected objects must have an action. Cancelling... ")

####################################################################
# The following adds the Logic Bricks to objects that allow them to
# be playable in Blender Game Engine, but only to the selected
# objects that have an action. Actionless objects are ignored.
# Credit goes mostly to Jeremy Behreandt
####################################################################

else:
  print("Inserting some Logic Bricks to the selected objects")
  ops = bpy.ops
  context = bpy.context

  # Cache shortcuts.
  ops_mesh = ops.mesh
  ops_object = ops.object
  ops_logic = ops.logic
  scene = context.scene

  for obj in selection:
    if obj.animation_data and obj.animation_data.action:

      bpy.context.scene.objects.active = obj
      current_object = context.active_object
      # Cache shortcut to cube's game engine.
      game_engine = current_object.game

      # Add sensor.
      ops_logic.sensor_add(type = "ALWAYS")
                            #name='Always')
                            #object=cube_name)
      sensor = game_engine.sensors[-1]

      # Add controller.
      ops_logic.controller_add(type = "LOGIC_AND")
                                #name='And')
                                #object=cube_name)
      controller = game_engine.controllers[-1]

      # Add actuator.
      ops_logic.actuator_add(type = "ACTION")
                              #name='Action',
                              #object=cube_name)
      actuator = game_engine.actuators[-1]

      # Set actuator action to cube's animation data action.
      actuator.action = current_object.animation_data.action

      # Play mode options are:
      # ['PLAY', 'PINGPONG', 'FLIPPER', 'LOOPSTOP', 'LOOPEND', 'PROPERTY']
      # 'PLAY' is the default.
      #actuator.play_mode = play_mode

      # Set frame start to scene end.
      actuator.frame_start = action_brick_start_frame

      # Set frame end to scene end.
      actuator.frame_end = action_brick_end_frame

      # Link logic together.
      sensor.link(controller)
      actuator.link(controller)


Move the human model to a layer seperate from the glowing object and try rendering it that way.


So, I ended up modifying limb_rigs.py @ line 1014 with the following prints

print("Dir Result", dir(self.properties))
print("ctrl_bones",self.properties.ctrl_bones)
print("extra_ctrls",self.properties.extra_ctrls)
print("fk_bones",self.properties.fk_bones)
print("ik_bones",self.properties.ik_bones)
print("pole_prop",self.properties.pole_prop)
print("prop_bone",self.properties.prop_bone)
print("use_pole",self.properties.use_pole)

this outputs the results of a signature enough to pinpoint any new bones and variables that need passing.

It seems to me that the current implementation of the function suffers from a bug when variables are left empty as they should be.

fk_bones is always empty. but a value is required for calling the function because of it's type.
As a result you need a call of this sort

bpy.ops.pose.rigify_limb_toggle_pole_wlnrc42c2a6335e5(
prop_bone="upper_arm_parent.L",
pole_prop="pole_vector",
fk_bones='[""]',
ik_bones='["upper_arm_ik.L", "MCH-forearm_ik.L", "MCH-upper_arm_ik_target.L"]',
ctrl_bones='["upper_arm_ik.L", "hand_ik.L", "upper_arm_ik_target.L"]',
extra_ctrls='[""]',
use_pole=True)

Glad I sorted it.
Still if someone from the Rigify team eventually spots this I'd like you to consider NOT changing function signatures without documenting and publishing your changes...


Rendered Normals color getting distorted?

I think the main cause of the differences is the way data is encoded when the normals were rendered initially.
If you save that in jpg or png, colors are encoded as integers. So that leads to some rounded values that cannot be converted to the exact initial normal values.
So you can save this rendered file with OpenExr format to keep things as float values:

(codec can be "none" or "zip looseless" for accuracy, if needed... give a try to the codecs depending on what you want, file size vs. accuracy).
The result can be this (not perfect though):

Instead of this using png:

Additionally, keep the image texture as "non color" or "raw", and as you said in the question, set "raw" and "non color" in the color management part.
Edit: other thing that alter the rendering is anti aliasing. If using Cycles, set the pixel filter to box in the film section. Rendered back using the image texture projected on the window should give a better result.


Carrying UI Settings from Windows to Linux

Copy the startup.blend and userprefs.blend from the old computer to the new one.
For the location of the prefs file read:
Where is the startup file stored?
Also on the windows version export your keyboard configuration and load it on the linux box.
Lastly, make sure that all of the addons you were using in the default setup are available and installed on the new box as well.


Press Z then hit 2.
It also has options for LookDev, Rendered, etc.


How to offset the texture coordinates of an object with an array modifier for mapping an image texture?

It needs a little tuning and tweaking with the y-location and y-scaling in the mapping node, but I think this would work:

Unwrap one board and make that board cover the complete image texture in the UV-image editor
Make an array with offset along the y-axis
Add a material to the mesh, with diffuse, image texture, mapping and texture coordinates (generated) as the image and tune and tweak the y-location and y-scaling in the mapping node.


What is this black bar in the Dopesheet and is it the reason I can't play my animation?

You set Start and End Frame of your Animation to the same Frame. This means it plays your Animation, but because it is only one frame long, it loops over the same frame. The black Bar is your Animation Range, 1 Frame long. Therefore it is shrunk to a line.

Current Playhead Positiion
Start of the Animation (set it to 0 in this case)
End of the Animation (set it to 450)


See UVs for beveled curve in UV/Image Editor

Try this:
https://www.deviantart.com/vickym72/art/Blender-Empty-Decal-Tutorial-207942535

It's essentially a tutorial for manipulating decals using an empty, but you can use it for the curve as well. (Credits to: VickyM72)

Hope this helps :)

EDIT: Here's how to do it in cycles --> https://www.youtube.com/watch?v=dnmovLzKU44&ab_channel=KarstenH%C3%B6hne (Credits to: Karsten Höhne
)

EDIT 2: try this:

1> go to the curve tab and open Texture space

2> click Use UV for mapping

3> Click match texture space

4> Go to material node editor

5> Add your image texture

6> Add Texture coordinate node and hookup the vector of the image texture to generated

7> use the Location and Size values to manually manipulate your texture

EDIT 3: I made a video: https://youtu.be/bx1FdoG2xo8

Hope that works :)


Object dimensions changing but not changing

It seems the answer is to do a scene refresh after updating values.   This works for this particular problem, but I suspect this issue is also elsewhere in the API.
Code up to 2.79:
bpy.context.scene.update()

For 2.8+ version:
bpy.context.view_layer.update()


How do I bevel this object if subdivision surface modiefier is already applied?

Sometimes, it can suit to let the subdivision do the bevel for you.. the resulting curve is not quite the same shape as one you would have made yourself, and can be subtly altered by holding loops a fair way back from the 'bevelled' edge.

If you don't put the holding loops in, though, the edges between  the bevels are slightly curved, and the large face is not as flat.

The bottom surface is the top topology with three levels of subdivision.


If you are working with rigid body objects, you could try and set the container object Collisions > Shape to Mesh, inside the RigidBody properties.


You definitely need to use Quaternion rotation, but you don't have to use linear interpolation. If you set it to Bezier and set the handles to Automatic, then select all in the Graph window, then hit Shift+S, you can select Flatten Handles, which will help fix the problem of different cubies moving at different rates than their neighbors.

You should also add keyframes for all cubies whenever you record a turn, so that all the handles are the same widths. These two things together will completely solve your F-Curve troubles.

You should also move the individual centers of your cubies to the center of the whole cube, so they rotate correctly, and so that the only keyframes you'll need are those of Rotation.


Cannot get shadows working with shader graph nodes

The way to get control of the shadows was to have a light with high intensity, and then a mesh with white albedo color. Then the node graph in the image shows how to filter the shadowed part out from the render. There's no light path node at all anymore.


How to move one edge's vertice without interrupting other mesh

Connect Vertex Path & Dissolve Edge
You don't have to move any vertices: they all are right in place. What you want is to re-arrange the topology, aka changing the connections between them. You'll need this two tools:
Use Connect Vertex Path to create an edge between two vertex

This tool connects vertices in the order they are selected, splitting
the faces between them. When there are only two vertices selected, a
cut will be made across unselected faces, a bit like the Knife tool;
but this is limited to straight cuts across connected faces.

https://docs.blender.org/manual/en/dev/modeling/meshes/editing/vertex/connect_vertex_path.html

and then Dissolve edges to remove an existing edge:

Removes edges sharing two faces (joining those faces).

https://docs.blender.org/manual/en/dev/modeling/meshes/editing/mesh/delete.html


In the user prefs > add-ons > mesh > 3D Print Toolbox __ options are in the side panel in Object or Edit mode.


Render out of compositor without rendering scene?

Alternative 1

Know that by default the Compositor renders the current scene and that image is used by the RenderLayer Node.  The compositor can use any combination of live Rendered Layers or previously created image files.  The render layer can come from any scene present.  See the nodes options above.

If your Compositor work only requires a few changes and your scene take a long time to render, your work may be more efficient by saving files in PNG format or other more flexible format. Then reuse the images without rendering again.

You may direct the image compositor to read in files from an image sequence on hard disk or similar, and ignore the render layer node.

In the image above the Compositor uses an Image Sequence Node.  The Render layer Node is not used, it has no connections.  A camera exists and non renderable text.  The arrows show the setting for the Compositor.  Please click on the image to see a larger version.

Alternative 2.

You can create a single image plane and map previously created images to it as an image sequence. Perhaps Shadeless for Blender Render and a different setting for Cycles or other. You may need to place a camera and non renderable object such as a non rendered cube

Create the initial set of Image Files.

Render your complex scene as images to a PNG file sequence with some file name sequence such as base name sequence001.  No compositing.  The idea is multiple compositing nodes will be used later.
In a separate scene, for convenience, use the compositor, read in the file sequence001.  Composite these images in the compositor.
You might put some non renderable text object in the scene such as "See the compositor" as a form of notes.  Otherwise this blender scene might have very few objects.
Repeat step 02 if necessary to achieve your goal.
The assumption is that your compositor nodes are doing more the the Blender VSE can.  VSE and the Compositor are sometimes in Competition.
Some Blender Users may have special file writing needs.


what are the requirements for mesh transformation using armatures

Requirements for a pose mode transformation of a bone to affect a mesh object:

Mesh must have an Armature Modifier with the armature set.
Mesh must have a weight group with the same name as the bone.

Since we usually also want the object to move, if we move the armature object as a whole, it is advisable to parent the mesh object to the armature object.

It is possible to setup a bone, which doesn't deform the mesh regardless of weight groups. This is done with the Deform option. It is enabled by default, you must have disabled it by accident.


Your cubes are sticked to each other, so you must be sure that the Sensitivity > Margin is at 0. So give Margin > 0 to one of the cubes, select all the cube, select the one with 0 at the end to make it active, go into the header menu > Object > Rigid Body > Copy From Active and it will work:


Be careful with the musgrave texture. Its values are not constrained to the [0...1] range, which can result in negative values. The roughness is not supposed to get negative values, thus the black artifacts.
An easy fix is to add a clamp node, which will constrain the result between 0 and 1.


Checker deselect doesn't seems to work properly

In my limited experience of this tool, it does not seem to work reliably on loops when your deselected & selected are not 1, 1. i.e. a checker board.  Any other combinations may result in gaps. I can't checker deselect a face loop around a default sphere, with a setting of 2, 2 without a gap of 1 or 3 appearing, although there is no reason why it shouldn't work. The same goes for edge selections.
Selecting an even number of faces or edges on a subdivided plane, the side of a sphere or a subdivided cylinder does work as expected.
The combination of Deselected and Selected should logically fit into the number of elements the object has. You have 8 and 1, adding up to 9, but your shape has diagonal rows with around 12 or 13 faces per diagonal.
You have chosen the most confusing image possible to illustrate your point. It might have helped if you had used a solid view, and a more regular shape to show the problem.


How can I add custom icon for my operators in a specific addon?

Well I found the solution from this attached file here, and here is a code example...
import os

import bpy
import bpy.utils.previews
from bpy.types import Panel

preview_collections = {}
# If you work with a simple script.
dir = os.path.dirname(bpy.data.filepath)
# If you work with an addon.
# dir = os.path.join(os.path.dirname(__file__), "icons")

pcoll = bpy.utils.previews.new()

for entry in os.scandir(dir):
    if entry.name.endswith(".png"):
        name = os.path.splitext(entry.name)[0]
        pcoll.load(name.upper(), entry.path, "IMAGE")

class VIEW3D_PT_test(Panel):
    bl_label = "TEST"
    bl_category = "TEST"
    bl_space_type = "VIEW_3D"
    bl_region_type = "UI"

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

        layout.prop(scene, "use_gravity", text="Enable Layout")

        col = layout.column()
        col.enabled = scene.use_gravity
        col.operator("object.duplicate_move", text="Custom Icon", icon_value=pcoll["ICON"].icon_id)
        col.operator("object.duplicate_move", text="Built-in Icon", icon="OUTPUT")

bpy.utils.register_class(VIEW3D_PT_test)

Just note, that If you work on an addon, the dir should be like this dir = os.path.join(os.path.dirname(__file__), "icons") and icons should be saved in .png format into folder icons into the same place where your .py file is.
And if you work on a simple script, dir should be like this dir = os.path.dirname(bpy.data.filepath) and icons should be into the same place where your .py and .blend file is.


In edge select mode (CtrlTab>Edge), select all the outer edges and press EZ to extrude along the Z axis:

In the above gif I used the new boundary edge selection tool, which is currently only available in the latest development builds (it will be in 2.71).
If you are using an older version, you can select the boundary edges like so:

Enter edit mode (Tab)

Select all (A)

Press 3D view > Header > Select > Select Boundary Loop:


these are the settings you need to change


You have 2 options available in the viewport to control the placement of new strokes.
Hint : Hover your cursor over a setting to see more information about it.

Stroke Placement
You can choose to place the drawing plane on the World Origin at $(0, 0, 0)$, on the 3D cursor, a 3D mesh surface or another stroke.
Drawing Plane

You can Choose a plane orthogonal to the view, on the global XY, global YZ, or global XY plane or on the local XY plane of the 3D cursor.
By default the 3D cursor is not visible in the 3D viewport in 2D Animation. Enable it in the overlays :

To move or rotate the 3D cursor, you have to open the "N" panel with N, and go to View > 3D Cursor Panel. You can also change the tool in the left hand side and move it with the mouse in Object mode.


How to achieve pressing against invisible wall effect facing camera? (animation)

This is not a simulation but a similar effect can be obtained very simply with a shrinkwrap modifier:

Set the modifier to "Project" and "Outside" (if orientation faces the model / normal of it pointing to the monkey).

Axis the one of the glass normal. Direction: positive. Cull face is not needed.

I've added a subdivison after it to curve a bit vertices that are stretched by the glass.


You can use proportional editing to 'round' such corner.

Select the edge and move it inwards (this will be the bevel radius)
Enable Proportional editing set to Sharp
Use the Size slider to adjust the influence


How to project an image of high dynamic range?

The ability to project high dynamic precision images had been added to Blender's master branch by Campbell Barton. Thanks Campbell!

See the corresponding issue


Issues rigging and skinning a characters helmet

I'm assuming that helmet and head are the same mesh, I would go this way: create a new bone which will be the "helmet" bone, and parent it (keep offset) to the head bone.

During weight assignement, the main error is to think that if vertices are 1.0 to the head bone they will follow the bone movements exactly: this is not true, unless those vertices have weight assignement relative to the head bone ONLY.

So probably in your actual rig vertices form helmet and top head vertices have the same weight relative to the head bone (probably 1.0) but have different weights relative to others bones (neck or others), so they don't move together.

If you want to check all assignement of a vertex, select it in edit mode and search the "vertex weights" tab in the "N" properties panel.

A precisation: as Blender does a normalization of weight values, if a vertex is assigned to a bone only, it will move exactly with that bone, even if the weight is very low (0.01 is infinitely greater than zero).

P.S.

Looking better at your picture it seems that the head is moving ok, while the helmet is overshooting: this is probably due to a double parenting: if the helmet origin is parented to the head bone and the helmet vertices are "armature locked" to the same head bone, a movement of that bone will result in a double movement of the helmet.


Bevel and Subsurface makes concave corners weird

In edit mode
select the edges
press CTRLB
Roll the MMB (mid mouse button)
turn until you get the number of bevel cuts you want and press enter or LMB (left mouse button)

and that's all the work is done
The only thing you should do is practice these types of bevel exercises

Blend Solution

 Click in the pumpkin


How can I create a boolean mesh to replicate the movement of a milling bit?

This might not be quite what you're looking for, but come back (comment) if it isn't....

I'm starting with a 32-sided cylinder, Z-up, rotated RZ in edit mode by 360/64, so its flat sides face down X and Y.

Cut across the ends of the cylinder, joining the faces facing Y and -Y, preparatory to making a central section (see below)
Cut in circumferences, and SShiftZ scale them in  XY to create the profile.
Split a copy of the bit as shown.
Make a central section made by duplicating ShiftD the X - central face-loop, and flattening its front and back sides by scaling to 0 in X about an unscaled vertex on each side. (Set pivot to 'active', and select an unscaled vertex last)
Make front and back sections made by taking the remaining faces, and extruding their inner edge-loops to X=0, so they meet in the middle. (E, followed by SX0, with pivot set back to '3D cursor' at the origin). Split those off to new objects, as before.
Create the curve which will be the path of your bit.
Assign an Array modifier to the central section, Relative offset to 1 in X, count set to 'Fit Curve', and Start and End Caps set to the other sections.
Assign a Curve modifier to the array, down X. (It's easier if the origin of the curve coincides with the origin of the central section)

Now you could use the result in a Boolean, or turn it inside out, remove the top face, and model with it.


Why NLA editor run only the top action strip

You keyframed all bones in the movement action:

When you delete everything but the first (master) then it would work as expected.

The reason why couldn't see this is the checked show_only_errors option:

.blend


Where did my material / texture buttons go?

When using the Cycles render engine, the textures tab will only show if you have a texture added to your material.

If there's no texture properties, then you can enable it by assigning a texture of any kind to the color input of your shader.

Click the dot for the Color Input of your shader
Select a texture of any kind
The texture properties will now be shown