If I understand you correctly (and I might not) and you want to control particle emission with an image sequence, then this isn't possible. Only the first image in an image sequence will be taken into account for particle density.

According to Brecht, one of the Blender developers here:

  The problem here is a limitation of the particle system. The way it works is that a distribution of particles is generated once beforehand (to have an even distribution), and can't be dynamically changed.


Here are several ways to do a series of slots on a surface:

Beginning with the grid:

Create a plane, subdivide it:

Extrude its border, round it with an AltShiftS (or give the outer shape you want).

Select the faces you want and extrude down.

Continue to work on the shape.

Knife Project:

Create your surface object.

Create a plane, subdivide itd.

Delete the faces only.

Put your grid object above the surface object. Select the grid then shift select the surface object, then go in Edit mode. Then in the header menu choose Mesh > Knife Project.

The operation has cut the grid on the surface. As you can see and as I explained, if you cut a shape within a shape, you necessarily have an edge connecting the inner shape with the outer border.

Bring some correction so that your surface has a proper topology, i.e. edges that connect to the border edge and quads rather than tris or ngons if possible. Use the join tool (J) to join vertices. Create vertices on the border edge if necessary.

select the faces you want and extrude down.

Continue to work your object.

Arrays and Boolean:

Create an array of cubes with 2 Array modifiers.

Apply the Array modifiers. Delete the cube you want.

Bring your submarine object, give it a Boolean modifier with the cubes object as Object.

Apply the Boolean modifier, bring some corrections to have a clean topology.


In your brush settings, activate Tiling (X  and Y). Now when the brush go past the left of the texture, it continue to draw on the right seamlessely.

In the Properties of the Image Editor, you can check Display/Coordinates/Repeat. Now the texture repeats itself on both axis, and it's easy to see if it is seamless.


Test if empty touches mesh/depth object with python

Thanks to the link of batFINGER to the function closest_point_on_mesh() I wrote a function which does the trick:

def is_empty_on_mesh (empty,mesh,maxDist = .000001):

    empty = bpy.data.objects[empty]
    mesh = bpy.data.objects[mesh]

    # to compute distance via closest_point_on_mesh() the
    # objects have to be translated from global to local space
    emw = empty.matrix_world.to_translation()
    mmwi = mesh.matrix_world.inverted()

    local_pos = mmwi * emw
    (hit, loc, norm, face_index) = mesh.closest_point_on_mesh(local_pos)
    vec = mesh.matrix_world * loc

    dist = (vec - emw).length
    #print("Function Dist:",dist) # Debugging
    return(dist < maxDist)

is_empty_on_mesh(NameOfEmpty, NameOfMesh)

The function returns TRUE or FALSE, depending on the distance being smaller than .000001 (this value is somehow arbitrary).


When I move the my rig, it shows duplicate parts of the model

Nevermind I think I fixed it -- the joints that were not moving weren't bound to the armature, and the extra arm I just deleted by using "l" to select it and then deleting it.


How to slowly increase rotation speed of actuator

Timing
A logic brick represents the behavior of a single step. This step should be as fast as possible. It does not describe behavior that lasts longer than a single frame.
Therefore you should not try to describe a whole journey unless you want to finish it with one step. Even with that it has to be a fast calculation.
Bricks and Python
Your code reads an actuator but does not use it. Either the code is obsolete or it is missing something. I guess your original design was to reconfigure the actuator's parameter. Later you decided to use the applyRotation() making the actuator to act as actuator. Both ways are possible.
They do not make a difference regarding your question.
Model
A model describes the inner status of a specific aspect. In your case the aspect is how much to turn. So the model is "turning".
( A model can be much more complex. e.g. it can describe the status of a complete car including, speed, position, if doors are open, what lights are on ...).
Here the model describes how much to turn (single value).
Lifetime
You chose a variable as model. Please be aware that a variable exist only with the current processing of the code. It will not survive the exit of the controller. In other words you get a new variable at each single frame.
Thinking about a car model: your get a brand new car with each single frame .   (This might be a nice idea at the first sight, but it the car is always located at the car dealers place, without gas ).
You can see that at the console when you add print(turning).
It is better to keep the same model as long as the car exist. You need a model that survives when the controller's completed it's processing at the current frame.
There are several different ways to achieve that.
Property as storage
I suggest you use an object property. It will bind the "turning model" to the game object that performs turning. This allows different game object that all can perform individual turns.
The change to your code is minimal but has major impact:
import bge
controller = bge.logic.getCurrentController()
owner = controller.owner

PROPERTY_TURNING = "turning"

#Sensors
leftSensor = controller.sensors["Left"]
rightSensor = controller.sensors["Right"]

turning = owner.get(PROPERTY_TURNING , 0.0) # get your model from storage

if leftSensor.positive:
    turning = turning - .03
if rightSensor.positive:
    turning = turning + .03

owner[PROPERTY_TURNING] = turning # update the storage with the modified model

own.applyRotation((0, 0, turning))

I hope it helps


Yes this is a really common issue and im surprised that it hasn't been answered before... its imply just saying that your mesh has no material data, so say you have allocated it to a image texture node, you have no image set to it (no image data for the mesh). so make sure you have at least one material properties to it.

Thanks.


Thanks for all comments, the reason was in rendering noise. By default it was only 10 Samples for render (Properties -> Render -> Sampling -> Samples -> Render), Now I use 200 samples and Hair particular System looks perfect! But after changing this option each frame  rendering time increased in several times, so you should not increase Samples count too much.


Positioning object to the center of camera view in 3D scene?

This method centers the object's origin in the camera viewport. If you want to center the geometry position its origin at the center of mass first.⎈ Ctrl⇧ Shift⎇ AltS

The green circle indicates the desired position. The plane (perpendicular to the camera) indicates where the object is supposed to move.

Add a helper object (an empty) at the objects position. RMBselect the object. ⇧ ShiftS > Cursor to selected.  ⇧ ShiftA > Empty.

 RMB select the camera. ⇧ Shift RMB select the empty. Add a Copy Rotation constraint to the empty by pressing ⎈ Ctrl⇧ ShiftC > Copy Rotation.

Snap the cursor to the camera.

Set the Pivot Point to 3D Cursor.

 RMB select the empty and scale it to zero along its local XY plane.
S > ⇧ ShiftZ > ⇧ ShiftZ > 0

Snap the cursor the the empty, then the object to the cursor.


How to get the max and min value of a certain NodeSocket's slider?


Rotate UV by specific angle e.g. 30deg in Python script in backgroud mode

you can do the math yourself , if nothing is available :
rotate all the points around the center of the image (0.5, 0.5)

import bpy
from math import cos, sin, radians

def make_rotation_transformation(angle, origin=(0, 0)):
    cos_theta, sin_theta = cos(angle), sin(angle)
    x0, y0 = origin
    def xform(point):
        x, y = point[0] - x0, point[1] - y0
        return (x * cos_theta - y * sin_theta + x0,
                x * sin_theta + y * cos_theta + y0)
    return xform

ob = bpy.context.object
rad = radians(30)
anchor = (0.5, 0.5)

rot = make_rotation_transformation(rad, anchor)

UVmap = ob.data.uv_layers.active
for v in ob.data.loops :
     UVmap.data[v.index].uv = rot(UVmap.data[v.index].uv )

the make_rotation_transformation  is from this answer   by @200-success


Texture image tranparancy with multiple background colors

Following your approach, you have to create 3 different materials, one white + pizza, one green + pizza, one red + pizza.
They share the same node tree except for the color of their mix RGB node.
Image nodes are the "photoshop layers", and the mix rgb lets you choose the blending options (add, multiply, screen, ....).


Is there a way to use system RAM to save GPU's vRAM usage?

No, Cycles (version 2.79) is not able to use system RAM, all has to fit into VRAM.

These are the only ways that I know of to save memory when rendering: How can I save memory in cycles?

A lot of it can be saved by optimizing your scene and textures. That takes time or planning from the start.

If your time is money or your project just too big you might want to look into Octane or Redshift. Both offer using gpu only for computations and system RAM for storing large scenes.


How to get modifiers of instanced objects to to refer to their respective object?

With a script.

If make the particle system only have a one frame lifetime then all will be created on frame 1

After pressing Convert (make real) will notice that Lattice.001 is with Suzanne.001, Lattice.002 is with Suzanne.002, ...  we can use that.

Also give each lattice its own data so editing one doesn't affect all.

Here is a script  select the plane and run script

import bpy
context = bpy.context
scene = context.scene

ob = context.object # the plane
# make dupes real
bpy.ops.object.duplicates_make_real()
# remove the ps
ob.modifiers.remove(ob.modifiers[0])

lattices = sorted(l.name for l in scene.objects if l.type == 'LATTICE'
        and l.name.startswith("Lattice")
        and l.name[-3:].isnumeric())

suzannes = sorted(s.name for s in scene.objects if s.type == 'MESH'
        and s.name.startswith("Suzanne")
        and s.name[-3:].isnumeric())

for ln, sn in zip(lattices, suzannes):
    suzanne = scene.objects.get(sn)
    lattice = scene.objects.get(ln)
    # give each lattice its own data
    lattice.data = lattice.data.copy()
    # set modifier to lattice
    suzanne.modifiers[0].object = lattice

Note: Don't have any other objects other than originals starting with  "Suzanne" or "Lattice" in the scene.

Worth noting could extend this to look for collection instances in the particle system settings and get the object names from the collection objects.


You could add a cube, use an array modifier on it (set it to 4), then on your plane use a boolean modifier set on Difference and target your cube. It could help to add a subdivision modifier set on simple on your plane too (prior to adding the boolean), in order to get enough geometry for the boolean modifier to work. You could also just have a mirror modifier on your plane and cut it manually, there is a ton of ways to do this :).


Help with smoke and liquid simulation in Mantaflow

These are mostly cache refreshing problems, but for now there are workarounds:

What you said. Bake the simulation manually. I usually use "all" since I still don't understand the types.
In the case of an outdated cache, change something like the "resolution" factor then change it back to force the cache to reload.
This seems to be limitations of the engine. don't make fluid move as fast, increase substeps, etc.


Can I calculate the surface of a part of a mesh, confined by a square boundary?

Boolean Intersection modifier.

Given you are chopping aligned cylinders with an aligned box, the boolean modifier would be a much better way to go IMO.

Add a cube to the scene as the bounding box, scale in z to make sure it is taller than cylinders in z. Add a boolean intersection modifier to cylinders using cube as bounds.  A  copy of the cylinders mesh with the modifiers applied is calculated using  Object.to_mesh(...) This mesh can be loaded into a bmesh, to do face area calculations.

To only calculate the areas of the circular tops, would need to look at face normals being parallel to z axis or similar.

Result of running script. The result mesh on left in place, result in edit mode on right. The top face area is 2.5704, which is 64.26% of the square area (4).

Test script

import bpy
import bmesh
from mathutils import Vector
TOL = 0.0001 # anle test
up = Vector((0, 0, 1))

context = bpy.context
scene = context.scene
obj = context.object
# add a new default cube
bpy.ops.mesh.primitive_cube_add(location=(0, 0, 0))
cube = context.object
cube.scale.z = 4
# add a boolean modifer to the obj
bmod = obj.modifiers.new(name="bbox", type='BOOLEAN')
bmod.operation = 'INTERSECT'
bmod.object = cube

scene.update()
# create a copy
copy_mesh = obj.to_mesh(scene, True, settings='PREVIEW')
bm = bmesh.new()
bm.from_mesh(copy_mesh)
area = sum(f.calc_area() for f in bm.faces
        if f.normal.angle(up) < TOL)
print("Top face area:", area)
bm.free()
# clean up...
obj.modifiers.remove(bmod)

#scene.objects.unlink(cube)
# uncomment below to see mesh.
cube.data = copy_mesh
cube.scale.z = 1

Test run on cones. Bottom faces normals matched with -Z axis.  The sum of the areas of bottom edges of the mesh is 3.04279, 70.70% of a 2 x 2 square.


Just to illustrate @moonboots' comment.
Properties editor > Object Data (Green Icon) > UV Maps


You may be experiencing issues because of different normal map types. DirectX and OpenGL normal maps differ in the green channel. It is inverted. To convert one type to another you would need to invert the green channel of the map. This can be done with nodes inside Blender:


Is it possible to compare 2 meshes for the complementarity of their respective surfaces?

This is actually a not so trivial problem. You might be better off asking this question on the maths stack exchange as it will require more than just Blender knowledge.

This will require coding skills as well, I fear.


How to randomize textures that have an transparency/alpha channel?

I figured out how to add transparency to randomization. It turned out i need to duplicate setup for randomization in that way i have exact node setup for both textures and alpha channel. Iv also added ON/OFF switch to randomization.


Booleans in 2D Curves don't support self intersecting curves. Text is just a fancy curve.

Two overlapping shapes of the same curve object, will show the difference boolean.

As you can see in the above gif, there appear to be errors at the intersections, which cause some problems with the tesselation.

In an open tasks Campbell Barton says:

  [...] its not a bug because the code is working as intended.
  Of course adding support for self intersecting curves could be a
  useful enhancement.

The font features some problematic self intersection bezier shapes, which cause everything to render incorrectly. Removing this shape form the T character
 result in a correct shape.

You can fix this manually by ⎇ AltC converting the Text to a curve. And then removing the problematic curves.

This can be also easily achieved, by separating various parts in edit mode.


Why does the knife tool create random extra geometry?

try using line tool instead, it is pretty similar to knife tool, works pretty well and has some additional functionality, like create faces and objects
https://github.com/Mano-Wii/Addon-Snap-Utilities-Line/wiki


How do I create a Smooth Material for my Model?

Use smooth shading on the geometry of the object
Use a subsurface modifier to make sure there are no remaining sharp edges
Use a high roughness value, like 0.8 or higher
Use subsurface scattering to give it a plastic look, as if some light is passing through thinner sections, but this is optional
Use a large light source/lamp that won't cast sharp shadows.


Could be:

you have changed the "exposure" in the "Film" panel the Render Tab
and you have not re-rendered yet (i don't think is the case anyway)
there is a lamp, or a plane, or something that is hidden in the viewport but is still marked as
"rendered" as seen in the screenshot below:


You can animate the influence of both constraints simultaneously. And don't move the sword if it has already set it's offset to parents. Just place your hand to the sword's handle, keyframe sword's 'hand' constraint influence at 0.0, and its 'sheath' constraint influence at 1.0, and then at the next frame, flip the influence, and keyframe them again ('hand' becomes 1.0, and 'sheath' becomes 0.0). You can use the gradual influence switch (not the next frame, but a few frames delay).
If you have to rotate the sword during the battle, all you need to return it to the sheath is to restore it's original rotation first (duplicating keyframe in the dopesheet or copypaste pose for that bone at different frames).
I don't know how does your sheath work, and as you say, the sword jumps into the hand. See attached blend, how I understood it.


Is there a way to separate an object and keep the same "look"

I think that you need this addon

  https://github.com/fedackb/yavne


If you take screenshots from multiple sides and upload them I can just tell you how.

Add a seam everywhere there's a super hard angle between two surfaces, and in UV window unwrap the object. This is super straight forward, tbh.

On the inside of the piece of wood it doesn't matter too much where you place seams because likely no one will see inside depending on the size of the object. So just place them where most convenient and least likely to produce super obvious seams that aren't possible to hide without being super inconvenient.


Where the Dyntopo button is located in Blender 2.8?


How to rotate a selected number of vertexes using the end vertex as the pivot point?

Change the Pivot Point to Active Element :

The last selected vertex/edge/face (which appears white) is now the pivot point of the transformations.


How to create a cable/wire for animation?

Create a singe wire mesh composed of one edge, connecting the two cubes as desired.

Subdivide it a few times in Edit Mode. Create a new Vertex Group for the tips where you will only include the two end vertex (will be used for pinning later).

Now Object Mode select one of the cubes, then Shift select the cable so that both are selected. With both still selected enter Edit Mode on the cable and select only the corresponding tip vertex.

Hook that vertex to the cube by searching the Space Bar menu for Hook to Selected Object. Repeat the process for the other cube with its corresponding end vertex.

Now activate a Cloth physics type for the cable, and pick the previously created Vertex Group for pinning.

Add a Skin modifier to give the cable some thickness

Add a Subsurf modifier to the cable mesh at the end of the stack to get a circular section cable and smoother results.

Rearrange your modifier stack if necessary to make sure both hooks are at the top of the list, followed immediately by the physics modifier.

You can now move the cubes and have the cable behave realistically.

You can optionally add a second Subsurf modifier to the rope before skinning to get smoother bending, or alternatively right before the physics modifier for a more detailed simulation. Beware that the second option will considerably affect simulation complexity, and may severely affect performance and calculation time.


How to overlap between centers of edges while maintaining the uv shapes?

I came up with a way to use the faces of scale 0.


Is there a way to combine keyframes in groups?

Generally this task is demanded to Bone Layers: you can put a group of bones in a Bone Layer, then select that layer, select all bones and set keyframes.
In the dopesheet you can set the visibility to all, only selected, multiple objectes, etc with the little buttons on the header of the dopesheet window.


Is there a way to combine/flatten multiple edges together that are in a checkerboard pattern?

If I'm understanding your question correctly, you should be able to select the 2 planes and Join so they are the one mesh. Then if you select the vertices you want merged you can click Remove Doubles and it will remove the duplicate vertices, essentially merging them together.

EDIT: Now that I understand what you were meaning, the only suggestion I have is to get rid of the vertical edges and create them within the original mesh. I tried it myself and it's a little tedious, but gets the same result I think you're after. First subdivide the bottom edge into how many segments you want, but remember that the Number of Cuts is one less than the number of segments (eg. 9 cuts for 10 segments) and then manually connect each set of vertices and pressing J. If that doesn't achieve the results you're after then I'm afraid I'm out of ideas :)


How to change range of "bake sound to f curves"?

Add an Envelope modifier to the F-curve, and add one control point. Change the min and max values to flatten or raise the amplitude of curves and change Reference value to reposition the central axis of the curves


Using Blender on a Computer in another room

There is an addon to render using another computer, it's called netrender and it should be already in blender. Here's the instructions and stuff: https://wiki.blender.org/index.php/Doc%3A2.6/Manual/Render/Performance/Netrender

I hope this helps you


Collection/Object selection to the exclusion of everything else - unable to exit

When I load your file,  I see the ground and some stones in solid mode, and they're still there if I switch to Material Preview or Render Mode, though the HDRI file is missing, so I get a magenta "missing texture" in Render view.

If you were hitting Shift-1, etc. on the top row with emulate numpad turned off, that would have toggled visibility of different collections in the outliner.  I'd suggest going through the outliner systematically and clicking all the closed eyelids to open eyes, if you haven't already tried that.  If you made lights or environment invisible, it might be too dark to see in Render mode.

The only other thing I can think of is that you may have hit Shift-H to hide everything but the selected object.  If so, I don't know why it's not showing the same issue for me.  Anyway you can try reloading your file and hitting Alt-H to unhide.


Can't make my animated object follow a path

Just parent the main parent object to the curve. Select the large circle then Shift select the curve. Now CtrlP then choose "Object".

And... voilà:


There are two ways of beveling in Blender.

Method One:
Go into edit mode and hit 'shift b' and drag the cursor until you have the desired amount. This will add more geometry though.

Method two:Go to the modifier tab and click:
 add modifier > generate > bevel
This will not add more geometry unless if you select 'apply'.


You need to bake the texture:

Create a second UV map without overlapping. Create new image texture (press New in the UV / Image Editor view) and add it to your material node setup. Connect the new UV map to this texture vector slot using the Input / UV Map node, or in older versions of blender the Input / Attribute node. Select the new texture, so it becomes the active texture. Now you can bake texture to the second map, and then save it from the UV / Image Editor view.


Node Editor Material Transparency Problem

Use a math node and set it to Minimum and plug the Alpha output and the Front/Back output to it then connect the result to the Alpha input of the Output node. this way the the back faces will be totally transparent and the front faces will have the alpha you set in the material tab.


Why does EEVEE take More time when it is rendered from the button than viewing in the actual viewport?

Because viewport sampling is lower even with eevee. Also, viewport has lower resolution.


How can I make my selected edges render at a smooth angle?

Go into edit mode, select all edges, press shift+E and drag away from mesh to harden edges. Repeat the process while dragging towards the mesh to re soften soften the selected edges.


(v2.90) Gradual vertex group shrinkwrap?

The influence of a Shrinkwrap modifier is weighted by its target vertex-group, if it has one. All the usual tools in Weight-Painting are available to  modify the vertex-weights.. blurring.. normalising..

Once a group exists, and if at least one of its vertices is selected, vertex-weights can be set in Edit Mode, for more control.


Blender 2.8 - How to bake an ambient occlusion map to a second UV texture on a multi material mesh?

Add a new Image Texture node (with a new image for bake) inside each material and keep it selected (active).

To bake into a new UVMap, create one under Data Properties > UV Maps and enable Camera icon.

Then in Render Properties > Bake, change Combine pass to Ambient Oclusion. After image texture is baked you can use it as usual.


Vertex Group X Symmetry paints both weights onto same area

Can you try to use Vertex Groups X Symmetry without Mirror X.


How do I show vertex colors in Edit Mode in 2.9?

This is a bug and also already on the list to be fixed in 2.90.1
https://developer.blender.org/T80396


Can a material be keyframed on a per-object basis?

You can get a random value that is unique to each object using the Object Info node.

You can also use a math node if you want to add the random value to a keyframed value change. The random value will be between 0.0 and 1.0 so you may also find multiplying helpful if you want a larger range.


Python UI: How to load an image from drive and select it?

You can use the updated PointerProperty from Blender 2.79a RC1 onward.
However, take a look at the issues surrounding them first and decide if these drawbacks (mostly related to compatibility) are acceptable in your usage scenario: https://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.79/PythonAPI
(Section Data-block Pointer Properties)

This is how you use them:

In your register() function:

Remove the StringProperty, instead use this:

# (Import Scene and Image just so the line is shorter)
from bpy.types import Scene, Image
Scene.my_image = bpy.props.PointerProperty(name="Image", type=Image)

In your draw() method:

Remove the prop_search and operator, instead use template_ID:

layout.template_ID(self, "my_image", open="image.open")


Lighting on triangles - every other one is darkish

The triangles are all being displayed in 'Shade Flat' mode, which is the default. To change this, go to edit mode and select all faces (hit 'A' once or twice, until all triangles are selected). Then Hit 'W' then select 'Shade Smooth'

[Shade Flat] mode is appropriate for modeling a faceted gemstone, or cut crystal glass, for example. Since blender cannot know ahead of time what type of shading you need, it defaults to 'Shade Flat'.


How to rotate a 'non-active' object with python?

You could lookup the object by its name:

o = bpy.data.objects["Cube"] # Cube represents the name of your object

and manipulate the rotation

o.rotation_euler[0] = (self.screen_rotation * 0) + ((1 - self.screen_rotation) * 1.58825)


The process of rendering animation in Cycles Render

You could render it out to an AVI video file and import it into Magix that way.

In my opinion it's better to render out to an image sequence and then import that into Magix. The reason being is you eliminate one phase of video compression that way and Magix has better source material to encode to your final video file.

If you render out your animation to a series of PNG files (you can set the amount of file compression in the Output settings), Magix should be capable of importing the image sequence into its timeline.


Collision not working after moving armature/setting different pose

So I was able to find the answer for my problem: I parented the chest_collision object to the armature with empty weights instead of parenting it to a bone. Moving the armature would move the collision object like I wanted but the collision seems to be calculated based on the object's origin.

Sure enough, going into edit mode reveals it at the location of its origin:

Parenting the chest_collision to one of the neck bones fixed the problem!


How can I put the compositor viewer node result back into Cycles?

You could probably do this with multiple Render Layers:

first layer renders or loads an image and blurs the result as desired
second layer renders the rest and composite it with the result of 1, either directly or by loading an image texture from file saved in 1.

example:


If there are no mesh issues, overlapping faces etc. and it also appears when creating new faces, try the following:
In 3D Viewport, press N, to open the Sidebar, go to View > Clip Start / End and change the values to e.g. 0.001 and 1000.
Sometimes these issues appear when you have imported an object which is very large or very small in Blender because of different unit systems or similar reasons, and when you are zooming in or out on the object or change the clipping to make it visible this strange behaviour can occur.
Not sure if this is the case with your file, but I get this error every once in a while.


How do you rotate around an object in Ubuntu Studio?

I ended up doing this:

In Window Manager Tweaks, in Key used to grab and move windows, changed it to Super.

Then in Blender User Prefs/Input/3D View/3D View (Global)/Rotate View, assign Alt as shown in the image


Setting render options from the command line

Command line
One way is to set the properties from the gui, save the file, then render. The settings will be preserved for rendering from the command line.
Note that (as already mentioned by iKlsR) you can set the render output format from the command line with -F:
Format Options:
-F or --render-format <format>
Set the render format, Valid options are...
    TGA IRIS JPEG MOVIE IRIZ RAWTGA
    AVIRAW AVIJPEG PNG BMP FRAMESERVER
(formats that can be compiled into blender, not available on all systems)
    HDR TIFF EXR MULTILAYER MPEG AVICODEC QUICKTIME CINEON DPX DDS

However, it seems H264 is not a valid setting for this argument.
Further reading: https://docs.blender.org/manual/en/latest/advanced/command_line/arguments.html#python-options
Python
Another way is to use blender's python API, and run a python script in blender from the command line (see this post), e.g.:
blender --background /path/to/file.blend --python /path/to/script.py --render-anim

or
blender -b /path/to/file.blend -P /path/to/script.py -a

The render resolution can be set with bpy.context.scene.render.resolution_x and bpy.context.scene.render.resolution_y.
The output format can be set to H.264 with
bpy.context.scene.render.image_settings.file_format = 'H264'.
Note on scene values:
You may want to assign the settings for all scenes to avoid confusion with complex setups which use multiple scenes.
for scene in bpy.data.scenes:
    scene.render.resolution_x = 1920
    scene.render.resolution_y = 1080
    scene.render.image_settings.file_format = 'H264'

Note invoking render:
When using a Python script to render you have the choice to...

Pass the --render-anim argument.
Call bpy.ops.render.render(animation=True) directly from the Python script.

Both do the same thing however calling the operator from Python means if the script fails to run, render won't execute, This may be good/bad depending on your use-case.
Calling from Python also gives some flexibility - for example you could call render multiple times with different frame ranges.


I'm trying to texture a character models face

So, I solved this. first you unwrap your model in the uvmap then take the whole thing and
shrink the map down. Highlight certain parts of the body to figure out where the piece is on the uv map. Then, select all on the model. go to where that part is on the UV map. B select it then shift click any pieces you may have picked up from other body parts. drag it over to an empty space on the uv map and continue this process until you have a comprehensive uv map of your complex Model.


with the Blenrig 5 armature selected, in the properties pane with the data tab selected(bottom right in factory settings), there is actually a "reproportion mode" button. If this button is not selected, the problem I had above will occur.


motion tracking - is there a way to automatically clear tracks after they leave the frame?

I don't think there is an automatic way.

You could try  changing the Correlation or Margin settings to make a tracker fail earlier, so that it stops and doesn't continue tracking with errors on the edge of frame.

Otherwise

Go to the frame where you have the last accurately tracked item and press delete forward (or back if you are tracking backwards).

Another way to deal with elements on the edge of frame (or when an object is temporarily blocked) is to offset the tracker, so that you can use other elements to continue tracking.

See: Joining 2D tracking markers with an offset

Blender has great tracking tools, but they do require a lot of work and manual and constant supervision.

Keep in mind that you don't need a large number of tracking points (at least 8 for sure), but what matters is that the tracking is accurate. There are times where more tracking points can also be detrimental for the camera solution.

If you haven't done already read:

How can I get better results when doing camera motion tracking?


One of your examples is -

links.new(nodes[i.from_node.name].outputs[i.from_socket.name],
          nodes[i.to_node.name].outputs[i.to_socket.name])

Do you notice that you are trying to connect an output socket to an output socket. You would want to connect the from_node.outputs to the to_node.inputs.

Also of note is that as you know the socket names are rarely unique, which is the biggest cause of trouble here, but a socket also has a property called identifier that is a unique name for the node. I don't think you can use it as an array index but by counting your way through all sockets of the node you can find the same identifier and use your count as the index. The socket identifier property was added in 2.66 if you need to watch compatibility.

Another approach to get the socket index number is with something like -

matLinks = bpy.data.materials["SomeMat"].node_tree.links
socketID = matLinks[0].from_socket.path_from_id()[-2:-1]

So path_from_id() will return something like nodes["Mix Shader"].inputs[1] as a string, you can then use array access to get the second last character.

Most nodes only have a few inputs and outputs but to properly handle groups and script nodes which could have more than 10 sockets you would want to search for the last '[' and ']' to define your string extraction.


Subdivide only adding vertices, wont subdivide faces

I'm not sure but I think you may be referring to the Loop Cut tool.
You press Ctrl+R to use the Loop Cut tool.

To subdivide a certain face, select the face in Edit mode and press W and select Subdivide. Then in the Toolshelf in the lower left Last Operator panel on the screen you can change the number of subdivisions. The maximum is 10 but if you need more you will have to subdivide again or you can type value manually.


Why is my smoke animating on preview but not on render?

This also apply's to fluid simulation. Do not change the file format it will cause more issues than you can count

There is one key reason why it will not show in render(Don't worry all the settings are fine) the reason is the "Type" under cache is set to "Replay".

The type replay is typically used for quickly making smoke simulation and finding laws quickly and will bake while the animation is playing in view port. But this is not like the old smoke simulation engine where just playing the animation thing in view port will bake it properly and save it to disk. Because the simulation data is not saved to disk when you go to render it it will have no information about where the smoke is or anything about it (you can say it's in ram but Blender won't use that). Therefore it will render nothing or the same data as the last one used(last frame con occur due to other things) it will normally render nothing.

There is an easy fix for this to set the Cache type to Modular ,or Final.

Modular = Independently bake everything, bake the smoke then the noise then anything else

Final = Bakes everything at once for this one simulation, I do not suggest using this because one issue in the actual smoke simulation can make you bake the entire thing again

Do not change the file format


Access blender interactive python shell from terminal

The solution is to start blender with --python-console, see the user manual for Python command line args.


How do I taper a cylindrical object in blender?

That should be easy. Add a lattice to your scene. A basic one with just 8 vertices is best. Scale it in world space to match your engraved form. Don't do it in edit mode! Now, when the lattice object enwraps your engraved form completely, add a lattice modifier to it. Now, if you move a vertex of your lattice in edit mode, the mesh deforms accordingly.

Select the top four vertices of the lattice, press Shift+S and click Cursor To Selected. Now, you can simply scale these vertices, until your engraved form match the form of your cylinder.


My blender game is not rendering properly, some faces not showing and materias don't show up correctly

So, you have a model in your game. Some of it's faces seem to have disappeared:

This is probably due to the normals of the model having been scrambled somehow. To check if this is indeed the case, you need to enable the normals display of your faces in edit-mode. To do this, hit N on your keyboard to open up the properties tab on the right of the viewport. Scroll down to 'Mesh Display' and under 'Normals', tick the symbol that displays a face on it:

If you now look at your model, you should see little blue lines stick out of its faces. All lines that are on the outside of the model are attached to faces that have its normals on the outside of the model. This is good. All lines that are on the inside of the model are of course wrong normals. These will display as basically nothing in your game because you are looking at the back of the face.

To fix this, make sure to be in edit-mode and select everything by pressing A until the whole mesh is selected. Then, go to the bottom of your viewport, hit 'Mesh', then 'Normals' and choose 'Recalculate outside'. You can also do this by hitting Ctrl+N:

This handy tool will recalculate your mesh to make every selected face face outwards. You should see all the lines stick outwards now:

Now, of course your last step is to get out of edit-mode and run your game:


Blender game engine modification of material value node during game

I solve my problems by write my own shaders.
1) create a material
2) Create a vertex shader

uniform float variable_name;
void main()
{
    vec4 co = gl_ModelViewMatrix * gl_Vertex;
    gl_Position = gl_ProjectionMatrix * co;
}

3) Create a fragment shader

void main(void)
{
  gl_FragColor = vec4(1.0,0,0,1); // RGBA
}

4) load it

#vertex
with open("__path__.vert") as a:
    vertex_shader_code = a.read()

#fragment
with open("__path__.frag") as a:
    frag_shader_code = a.read()

import bge
own = bge.logic.getCurrentController().owner
m = obj.meshes[0]
shader = m.materials[0].getShader()
shader.setSource(vertex_shader_code, frag_shader_code, 1)

5) pass variable to GPU over uniform value.

shader.setUniform1f("variable_name", 10)


Glowing Eyes On Model Texture for export into ohter Programms

I make my models in blender then and I color my objects at UV editing. After that I export my blender stuff to Unity as fbx files. I simply just export them to Unity and I create a new material. After creating my material I place my pallets to Albedo slot (Which you can see in the first image). Now you can drag and drop your materials to your objects material slot (which you can see in the second image).


How do you affect the translate node by the location of object?

Not sure if its what your looking for but the [Input > Object Info] node allows access to the vector location of the object in the current context...

from there basic maths should magic you up some results

best of luck =)

screenie =P

Here are some links to some decent youtube channels that have helped me learn cycles

https://www.youtube.com/user/AndrewPPrice

https://www.youtube.com/user/blendercookie

https://www.youtube.com/user/tutor4u

and of coarse blender.stackexchange is here for specific quesions


Armature bends object but makes one side bump out

It looks like a Weight Paint issue. Sometimes weights can be applied accidentally and even a .01 influence will affect the mesh. There are two ways to check for that.

A) In Edit mode, scroll down the Properties panel on the 3D window (right panel, press N if hidden). Click on the vertices where the bump is and you will see a section called Vertex Weights". There you can see what bones are affecting the selected vertex. Press X to remove unwanted influences and fix the remaining weights.

B) In Weight Paint mode, go to the Options tab, find "Show Zero Weights" and press the Active button. The blue mesh now turns black and you are able to see if bones have an influence of less than .1. Use the Subtract brush to paint them out and then go to Tools>Weight Tools>Clean


If you're using Blender's default startup.blend as your initial starting place, the easier solution would be to change to the "3D View Full screen" layout and then change that area to hold the editor you want (in your case, the UV/Image Editor). The code might look something like this:

bpy.context.window.screen = bpy.data.screens['3D View Full']
bpy.context.screen.areas[0].type = 'IMAGE_EDITOR'


How do I apply sharpening via compositing to several movie clips simultaneously in my video editing project?

Afaik, there is no sharpening filter in Blender.
In general, if you need to add an effect filter to several strips, add an Adjustment Layer over all strips and add an effect to that.
For modifiers, there is a button in the sidebar/Strip Menu to copy the modifiers from the active strip to all selected strips.


Does 3D printing with Blender only print faces?

Mr. Zak is right that you'll get better answers on the 3dPrinting.SE, but the answer is that it will print a solid cube. Printing starts at one face, and continues until it finds another face (sort of). So if you only have one face, it knows where the material starts, but it doesn't know where the material stops. If you wanted a hollow cube, you'd have to specify a width for those walls by creating an inner cube with normals pointing toward the center of the object. The printer can't (won't) assume how thick a zero-thickness polygon should be.

It's useful to remember that all 3D polygons only have 1 face. This can be confusing, because there's nothing in the real world that works this way. That's why a single face is considered "non-manifold."

Duarte's answer includes the same information, but the terminology might not be familiar to you. A closed, coherent, manifold shape is one that is:

closed: all edges of all faces are shared by 1 and only 1 other face, like the default cube.
coherent: (essentially) it that has dimensions that can exist in the real world. Intersecting geometry, or geometry that has zero width is not coherent.
manifold: (basically) geometry that has one distinct "inside" and one distinct "outside." More specifically, all the normals are pointing the same direction. With the default cube, you have normals on the outside, and they are all pointing outside.

If you were to do this:

You would have an interior face, with a normal that is neither pointing inside... nor pointing outside. Thus, this is non-manifold geometry.

For a more thorough a technical discussion of non-manifold geometry, see the answer to this question.


Set active bone in pose mode from Python script

Set bpy.types.ArmatureBones.active

It's a matter of setting the active bone of the armature (the data part), and hence the active pose bone.

Python console code. An armature object is active and in pose mode. Long windedly sets the active bone.

>>> C.object
bpy.data.objects['Armature']

>>> C.object.data
bpy.data.armatures['Armature']

>>> C.object.data.bones["Bone"]
bpy.data.armatures['Armature'].bones["Bone"]

>>> C.object.pose.bones["Bone"]
bpy.data.objects['Armature'].pose.bones["Bone"]

>>> C.object.pose.bones["Bone"].bone
bpy.data.objects['Armature'].pose.bones["Bone"].bone

>>> C.object.data.bones["Bone"] == C.object.pose.bones['Bone'].bone
True

>>> bone = C.object.pose.bones["Bone"].bone
>>> C.active_pose_bone
bpy.data.objects['Armature'].pose.bones["Bone.001"]

>>> C.object.data.bones.active
bpy.data.armatures['Armature'].bones["Bone.001"]

>>> C.object.data.bones.active = bone
>>> C.object.data.bones.active
bpy.data.armatures['Armature'].bones["Bone"]

>>> C.active_pose_bone
bpy.data.objects['Armature'].pose.bones["Bone"]

Use bone.select = True to have bone both active and selected.

Note There is no need for the operator.

Example adds a copy rotation constraint to each selected pose bone.  The cube is used as the constraint target.  Run script in pose mode, else context.selected_pose_bones will be None

import bpy

context = bpy.context
scene = context.scene
cube = context.scene.objects.get("Cube")

if cube and context.object.mode == 'POSE':
    for pb in context.selected_pose_bones_from_active_object:
        # use if already existes, else create
        cr = (pb.constraints.get("CubeRot")
                or pb.constraints.new(type='COPY_ROTATION'))
        # set some properties
        cr.name = "CubeRot"
        cr.target_space = 'LOCAL'
        cr.target = cube


For some reason (bad weight painting?) the parenting is bad but, if you redo it, it will work fine.
First delete the bones on the hidden layer so that they are not taken into account:

Also, deactivate the Deform option for the controller bones:

Then parent With Automatic Weight again and it should work fine:


Weight paint subtraction yields strange results

Weight painting on one vertex group will affect others vertex groups only if the "auto normalize" and/or "Multi-paint" buttons are checked.

The first option makes sure that the sum of all weights of every vertex is 1.0 (normalization); this operation takes over anyway, when Blender calculates the deformations, so it is unnecessary to activate it, it's useful only to have a visual rappresentation of the influences that weights will have on the mesh (i.e. if a vertex has weight 0.1 to one bone and 0.4 to another, when animating they are automatically treated as if they were 0.2 and 0.8; the auto-normalize function lets you have a visual rappresenattion of this behaviour, but it can be misleading during the painting process, as it has happened to you).

The second option works when two or more bones are selected, and lets you altre the weights values leaving the proportions between the selected bones unaltered.

In my opinion both options should be unchecked unless you really need them.


I think I have figured it out. It has to do with the shape keys I was experimenting with. I had a shape key assigned to the jaw to make the mouth move. Apparently attaching the teeth to the jaw after the key was assigned is not a good practice. I believe that's what led to the teeth expanding and moving out of place. I am going to remove that shape key, create the teeth, and then redo the shape key. If that doesn't fix things, I'll be back!


What's the easiest way to get as close to cycles as i can on Eevee?

Eevee uses approximated direct-source lighting, and Cycles uses bounced lighting. To approximate bounced lighting in eevee, you must use an Irradiance Volume. Additionally, you must bake indirect lighting. As you can tell from this instruction, this only works with indirect light sources (point lights and the like are considered direct lights in eevee - use emission materials instead.) The "softness" in the shadows of the image below are as a result of the indirect light from the World Environment (grey background) - not the point light.


Change animation fps at certain times (i.e. slow down the animation for a moment)

This won't accomplish exactly what you want, but you could always simply animate as usual, and then stretch out your IPO curves in the editor evenly so that, even though the FPS stays the same, the animation appears to slow down.

(Added bonus: the change can be gradual if you use this method).


Are you sure that you reset the rotation in the pose mode? Because i assume you reset the rotation for the armature rotation as object in object mode, while you are supposed to reset every bone rotation inside the pose mode.

If this is the case, enter pose mode for your armature, select all bone by pressing "A" shortcut, then reset the rotation by pressing "alt-R", and press "alt-G" to reset location if necessary


Multiple animation on one rigged character

You use the action editor (a sub part of the dopesheet) to create multiple actions. An object can have one action associated with it at a time so remember to add a fake user to keep other actions.

Once you have setup multiple actions you use the NLA editor to combine and repeat a mixture of actions for the final animation.

It is also possible to use multiple blend files with linked copies of your character that each contain one animation for a shot. After each shot is rendered out you edit them together into the final video.


Could try exporting the animation as a bvh, then importing back as empties, using the target Object option.

If that doesn't work could elaborate on https://blender.stackexchange.com/a/1287/15543 to create a script to add empties to bone locations.


Is it possible to export animation cache data from Maya and apply it to a look dev mesh in Blender?

MEL example
Convert a maya cache into pc2 format. The maya cache is named pSphereShape1.xml and located in c:/test/  directory.
cacheFile -pc2 0 -pcf "c:/test/mypc2.pc2" -f "pSphereShape1" -dir "C:/test/";

Furher reading:
https://download.autodesk.com/us/maya/2010help/Commands/cacheFile.html
"/" slash direction is important! Also you need to use "keep vert order" function when you import your .obj file in Blender. Otherwise you mesh will crash blender (but it will still have the animation). Then turn on the modifier:


Getting just white light instead of actual colors by exporting emission based models

There are three different issues interfering with your ability to export this particular model.  Let's take them one at a time.

Arbitrary material nodes not supported.

The glTF format has a system of materials that's more sophisticated at this point than many other public 3D formats, but it doesn't support the full set of Blender material nodes, many of which are specific to Blender itself.  There's documentation in the Blender Manual on which nodes can be exported to glTF.
For a complex graph like the one you've shown here, you will need to "Bake" the resulting pattern to a simple UV texture image.  The process is a bit complex but well worth learning, in my opinion.  There are various tutorials online, including a YouTube video on baking fractal noise into glTF that I put together last year with a coworker.

Lots of "bloom" is shown in your Blender screenshot.

Bloom is what causes that glowing effect around the model, where the bright parts spill over into neighboring pixels.  I've long wanted a setting in glTF to enable bloom, but there is some opposition.  Many people use glTF for models, not whole scenes, and bloom is more of a scene or camera setting.  Still, if you have control over the viewer (such as access to the JavaScript driving a ThreeJS visualization, or similar), there may be an option in the rendering engine to enable bloom.

Emissive strength

This one is a little problematic, but will get fixed someday hopefully soon.  The core glTF 2.0 format has a clamp on emission, it can't go higher than 1.0.  This is believed to have been just an oversight, but the clamp is in the official JSON schema where it can't just be ignored.  Still, this can be fixed at the format level by introducing a glTF extension for "emissive strength," and at least one draft of that has appeared on GitHub recently.  So there's hope this will get fixed.
Even so, emissive strength by itself won't give you the glow effect, you need a strong emission paired with a bloom effect.  So for now, you would need to load the model into an engine where you have control of a few things, crank up the emission strength and turn on bloom.
If you get strong emission and bloom going, with a baked texture showing the pattern above, you should be in business.


Rendering objects in the same scene with different sampling?

Put both objects on separate render layers
Override the number of samples:


I suspect that you have scaled the mesh in Object Mode and did not apply the scale before entering Edit Mode. To make the bevel operation work as you expect it to:

Press TAB to exit Edit Mode.
CTRL + A, select "Scale".
Press TAB to enter Edit Mode again.


How to change dimension of circles without scaling it?

One way of doing this (it may not fit your workflow, though) is using an array modifier, fitting and following a circled curve (you can create a mesh circle, then convert it to curve with ALTC in object mode):

First, you create a thin rectangle that will fit and then follow a curve, with modifiers. A thinner rectangle will give (as replied by array) higher resolution of the curved shape.

which produces this:

to make another circle, of the same width, duplicate both curve and rectangle, first:

then, scaling the curve, will keep the same width:

another bigger curve:

If you need to have just static meshes, you can then apply (in order) modifers... (maybe keep a "dynamic" copy to create new ones...)


Dealing with Inverse Kinematics - End of "Leg" Moves the Entire Model

Go to the IK bone constraint and check the chain length. The default is 0, meaning that the whole chain is included. Set it instead to the number of bones in the leg. Here is the documentation.


Controlling BGE properties with python script

If you want to access a property from the current object controller it's :

cont = bge.logic.getCurrentController()
own = cont.owner
my_property=own['propName']

But if you want to access to a property from an other object it's

scene = bge.logic.getCurrentScene()
my_property=scene.objects['other object']['otherpropName']


Can I animate something with the Transform Panel, without keyframes?

Yes, they are called drivers.
Click in the transform panel and type #. Then enter the expression you want to use. You can use the keyword frame for the current frame number.
For your suggestion 6 degrees every 30 we can use math:
#floor(frame/30) * radians(6)

The property field will turn purple, when a driver has been added. If you click in it again you can edit the expression. (The # will remain hidden once the driver has been added.)


You find the Backface Culling option in the Properties Panel N shading section while in Object Mode.

The effect with a default cube and one partially removed face.

When renderer is set to Game Engine the Backface Culling option is also available in the material's settings.


Blender 2.8: Move (g) a face like in the direction, extrude would do, when object is "sheared"?

You can do it switching the transformation orientation to 'normal', then grab G and use Z to indicate the Z axis which is by convention the normal direction.


Applying texture shows some weird artifacts

These artifacts were caused by not having a big enough texture size for my texture. Once I made it a 4k image the issue was fixed.


It is possible to quickly align an object with an axis of a custom transformation?

Tell me if this is what you want:

Create you first object and rotate it.
Create your second object, put its origine on its base (with Cursor to Selected then Origin to Cursor).
Activate the Snap tool of your horizontal menu bar, choose Face mode, enable all options.
Grab your second object, it will snap on the surface of the first one.
You can assign an Array modifier to your object so that it duplicates along.


Leverage multiple CPU cores for video rendering (VSE)

Thanks for the comments! Figured it out:

I used BPSRender which is the root tool of the youtube video posted above. However it didn't work out of the box; needed to add blender to the system path in Windows for it to work.

https://gitlab.com/razcore/BPSRender
https://pypi.org/project/bpsrender/


Curve very sharp after converting from mesh

This is because the converted curve is a Poly spline.
To convert it to a smoothly interpolated curve:

Convert it to a Bezier or NURBS spline in 3D view > Tool shelf > Curve Tools > Set Spline Type:

Then convert all the Control Vertices to Auto (or something besides vector) by pressing A> Select all V> Automatic.

Now you can adjust the Resolution as desired to adjust the "smoothness":


How does blender calculate poseBone.matrix?

Look at this link. the difference between matrices is described here:
How can I manually calculate bpy.types.PoseBone.matrix using Blender's Python API?


You can enable Progressive Refine (Render Properties > Performance > Tiles), set the sample count to a high amount like 10000 and stop the process manually (ESC) when satisfied.
However, I'd suggest use the Render Region feature and drag a rectangle around the darkest spot in the image (CtrlB), set the viewport samples to 0 and wait until the noise is resolved to get an idea how many samples are required and do a full render based on that knowledge.


For your first question, to stop your diffuse texture from using the alpha channel of the image, go to the Texture tab and under Image, untick Use  Alpha.

Here is how it looks now as compared to those above.

If you tick Specular under Influence, Blender will automatically use any specular highlights in the image .

Additionally, you can check parts of your textures you want to be affected and or by how much under Influence in the same texture tab.


How can I automate a audio file to transformations?

Bake Sound to FCurve

Add a single keyframe to the Y location,  open the graph editor and choose "Bake Sound to Fcurve" from the graph editors "Key" menu.

To change the range of the baked fcurve add an envelope modifier.

Combine F-Curve Modifiers with baked Sound

What's the range of values on a sound-baked f-curve?

Rescaling a baked F-curve to values between 0 and 1


How to project back rendered depth maps to recover the ground-truth 3D shape using Blender?

After looking at the following image from your paper, it seems to me as if your image is basically a sprite map, so I propose the following workflow to get you there.

Proposed Workflow:

I'm certain that you could mimic the polyhedron shape in blender to set active planes (viewports) on programatically, and use an UV coordinate mapping per sprite location to get a depth map per the corresponding camera location/angle (position).

Set up a highly subdivided plane for each view, then attach the Displacement Modifier to it, along with a custom UV layout to the sprite sheet that corresponds with the appropriate viewpoint.

I would then add a global driver to attempt to control the displacement modifier strength per projection, and when they get close to each other...

Apply the modifier, Join the objects together, and remove duplicate verts.

Uploaded a Video


Gridlines doesn't show in topview anymore (np 7) in Blender 2.8 (Mac)?

Are you sure you didn't disable them? Check your Viewport Overlays settings, top right corner of 3D view.


What keys do I click to go into camera perspective?

If you forgot some shortcuts, you can always find it in menu:


Is this what you mean?

It's the loop selected, and  GG, Edge slide, with Alt held down, or  C pressed, to release the clamp.


How do I set up a driver that will be effected by an object location and also changes based on that location

You can use the following formula:
max( 0, 1 - abs(y - 6) / 6)

max is used to stay above 0
abs(y - 6) is centered around 6, between 0 and 6 for y between 0 and 12
abs(y - 6) / 6, between 0 and 1


armature disappears when importing a skinned character in obj, format?

Obj format that supports only geometry and does not support rigs or animations.

  The OBJ file format is a simple data-format that represents 3D geometry alone — namely, the position of each vertex, the UV position of each texture coordinate vertex, vertex normals, and the faces that make each polygon defined as a list of vertices, and texture vertices. -wikipedia

For animations you should use some other format. Fbx for example is supported by most 3d software and popular game engines Unity and Unreal.


Nothing happens during sleep mode, not even the operating system is running.
Blender will not render because the computer is not powered on.

During Stand By the computer is in a low powered state with minimal energy consumption and little to no activity.

Depending on your version of the operating system the computer will either store the session in RAM memory or down to the hard drive reducing the power consumption to virtually zero.

If it serves as consolation Blender generally prevents Windows based operating systems, at least, from entering Stand By while running, so your renders will theoretically not be interrupted if the computer never enters sleep.


Ho to emulate Grab/Move (G) with python script?

I've found this question searching solution for same one. I use this line : bpy.ops.transform.translate('INVOKE_DEFAULT'). It  emulates the "G" key for me.


You can always use a cutout shape or other abstract, but since

  There are many tutorials how to make eyes in blender

let's take advantage of that. I would simply take a head model which is closed at the bottom, so no light will enter from anywhere but the eyes. The blinking eyelids can be rigged in a standard fashion.

The camera may be place behind the object to get less distorsion. Therefore the near clipping distance has to be adjusted.

  make it to be looks like more realistic eyes

Then let's give it a fleshlike material with subsurface scattering. To create a more conving fadeout, you can remove the subsurface scattering of the outer edge loop inside the eye socket by painting it in dark vertex colors and using them to control the mix of the SSS BSDF.

I have highly exaggerated the effect, you can make the material much darker or control the edge with the vertex colors making the inside darker than the ledge of the eyelid.

low samples, defocus and denoising should be improved. Very creepy though.


This script will render your scene from the number of angles you specify in the variable numAngles, assuming you have your camera set in the zero position, and the camera is parented to an empty. You can review the setup in the attached blendfile.

The script replaces a traditional animation render, it will by itself render each frame and set the frame number each time. It iterates over the entire span of the animation (specified in the variable animLen) as many times as the number of angles specified in numAngles.

import bpy
from math import radians
from os.path import join

S = bpy.context.scene

renderFolder = "C:/MyRenderFolder/"

camParent = bpy.data.objects['Empty']

animLen   = 40 # frames
numAngles = 8
rotAngle  = 360 / numAngles

for i in range(numAngles):
    # Set camera angle via parent
    angle = i * rotAngle
    camParent.rotation_euler.z = radians( angle )

    # Render animation
    for f in range(1,animLen + 1):
        S.frame_set( f ) # Set frame

        frmNum   = str( f ).zfill(3) # Formats 5 --> 005
        fileName = "angle_{a}_frm_{f}".format( a = angle, f = frmNum )
        fileName += S.render.file_extension
        bpy.context.scene.render.filepath = join( renderFolder, fileName )

        bpy.ops.render.render(write_still = True)


What is the difference between a Billboard and a Plane?

In CGI, billboards are images/textures mapped onto a flat plane to approximate 3d object. They are usually used for particles or distant objects in games. They are also typically setup to always face the camera, so the flat side is never visible.

So basically a billboard is a plane used in a specific way, but not all planes are billboards.


Just rig one half of the model and mirror the mesh after the Armature modifier.

If you need to mirror pose bone poses, you can use the Copy/Paste buffers to copy a mirrored pose to the other side (Ctrl C, Shift Ctrl V).

If you need one side of the bones to follow the other side interactively, you will have to use constraints.

The Copy Location/Rotation/Scale constraints should do the work. Setup them like this (for mirroring on X axis):

Note that you will be able to only pose one half of the model with the other just being a "dummy side", else there would be dependency issues.


Why is automatic weights missing from ctrl+p?

I noticed that when I select Armature it highlights all my bones and when I press ctrl + p it seems that the automatic weights is missing as well.

If you're in Object Mode and you hit "a" to select everything, and then hit ctrl + p it shows the automatic weights in the context menu. Hope that helps :)


I was just finding out each option in the blender and suddenly found the option "Object" tab marked in the picture by with  a "1". Then scaled the object around only the required axes.

Amid Lewis commented same answer above on my question.

I was trying the scaling using S key but the mouse was not able to do it with small extent, and I gotya the option while searching.


Error message when trying to open blender

https://www.khronos.org/opengl/wiki/Getting_Started#Downloading_OpenGL

In the contents, it has 2. Downloading OpenGL
The link varies by Operating System

Read your Graphics Card Vendor notes about openGL support.
For instance, NVIDIA has notes about openGL support here:
https://developer.nvidia.com/opengl-driver

Hope that helps.


Make sure that you are in Object Mode if you'd like to add a new primitive or new object to the scene.

From the manual:

  Creation of a mesh primitive typically starts by adding a mesh object
  in Object Mode. Limited types of editing such as size, location, and
  orientation can be accomplished in Object Mode. Object Mode also
  provides the means to Join and Group multiple mesh primitives.


from the image you posted it looks as though you double tapped the "R" key, which is 'rotate on all axis'. 'R' > 'Y' = Global,, 'R' > 'Y' 'Y' = Local,, 'R' 'R' = rotate  on all axis


Animation Nodes. Rotate instanced objects in their individual rotation axis

You need to get a one direction for each object:


Bump node seems inverted on one side of the object

Your 'Bump' node is not being used correctly.
The 'Bump'takes a 'Height' and generates a Normal - to be fed into the Normal of a shader node. However, you're using the Normal to pass into Displacement of the Material Output.
The Displacement socket of the Material Output used to only be a Scalar value (a grey socket) but has since been enhanced to be a Vector. This does mean that it's now the same colour as the Normal and can cause confusion.
Instead of Bump, use a Displacement node. You should connect the output of your Multiply node into the Height of the Displacement and the output from the Displacement node can then be passed into the Material Output 'Displacement' socket. This will result in a diplacement in the direction of the normal of the surface at each point.


I'm pretty sure you're the same person who asked it on Blenderartists, so here's the same answer for other people who fell here instead :

Blender currently doesn't have this feature, but there's a rightclickselect proposal about it, so you should upvote it !

In the mean time I found a workaround but it requires 3 add-ons and the detail is limited to the resolution of your current geometry :

Weight-and-Color
Mask Tools
Bake UV-Texture to Vertex Colors (included in Blender, you just have to enable it)

Here's how to do it :

enable Blender Internal renderer
select your object and go in Edit Mode
in UV/Image Editor, select your texture
in 3D view go in Vertex Paint mode
In Tool shelf > Misc tab > Bake, click on "UV Texture to VCols" (you can then go Back to Cycles if that's where you were)
with your cursor hovering the 3D view, hit Space and search for "weight & color"
in Convert, select "Vertex color to weight" and in "Color type" select "Gray scale"
go in Sculpt Mode
In Tool shelf > Sculpt tab > Mask Tools, click on "Create Mask"
MMB drag on the 3D view to refresh the view and reveal the mask
BOOM !
haha !

It gets fast enough when you're used to it. But if someone knows a quicker workaround, TELL ME !!!

Notice that since you can convert vertex colors to a sculpt mask, this means you can use "Paint Dirty Vertex Colors" ! How neat ?
Don't forget that unless you check "Dirt only" you won't have a high contrast with pure white, so you may want to enable it and tweak the angle values to have a good contrast.

ALSO, you may notice that the Mask tools add-on (sculpt tab) has options to directly mask by cavity, but you will find that it looks crappy as f*** compared to "Paint Dirty Vertex Colors".


The answer below is obsolete since the Rock Generator is now part of Extra Objects add-on since commit rBA7347930a0fa14e752929e28c9b48adf74597b018. The separate Rock Generator add-on has been removed from the add-ons contrib repository by commit rBAC70b649775eeeebedb02c1c7b7aa996a7f6294177.

The release versions only contain the official add-ons. Anything that is from the Blender Add-ons Contrib repository isn't included.

You can either clone the repository if you're familiar with git or you can download a .tar.gz archive of the latest commit of the contribution add-ons using the following link. Extract and copy the files into ./2.81/scripts/addons_contrib/ and you should be able to activate them.


Smoke behavior is heavily impacted by the temperature difference between the smoke and the domain : if the smoke is hotter, it will go up (like smoke from a burning fire) ; if the smoke is colder, it will go down (like mist, or nitrogen).

In the case of a drifting car, the "smoke" is probably more dust than smoke. By the way, it should be the same temperature as the domain (or maybe a little bit colder, to simulate the gravity).

This setting can be found in "Domain/Smoke/Temp. Diff.". I suggest starting with a really low negative value, like -0.0001.


Is it possible to have automatic LOD (level of detail) on large scenes?

I have two pretty detailed posts that when added together, would seem to come up with a pretty good fit for your situation.

I won't detail out those steps, but I will link to them, and summarize the workflow in a summary of logic.

Creating Distance/Rotation/Scale Based Drivers - See this post

Swapping Groups of meshes with drivers - See this post

The main rundown here, would be to drive your level of detail threshold by camera distance values, then using the same logic of swapping groups of meshes, use this threshold value to determine which LOD group to select on any given instance with this driver attached.


Disable save (Ctrl+S) confirmation possible?

Although I wouldn't recommend this (I always increase the version number before saving), it is possible. Open up the User Preferences and add the parameter check_existing to the save function referenced from the dialog: (Note I tested this with F2 you might prefer the other expanded dialog)

  check_existing (boolean, (optional)) – Check Existing, Check and warn
  on overwriting existing files


How can unwanted rotation of hair particles be avoided?

This sudden odd orientation change appears to be caused by the Armature modifier on the tree. The particles seem to respond much differently when the vertex positions are moving (it could possibly be because it is changing the size of the faces).

One way to combat this would be to move the perticle systems up the modifier stack until they are before the Armature modifier.

So instead of this:

You would instead end up with this:

It is important to note that when the armature moves the mesh, the particles might not move with it. You will need to convert to a mesh and add it to the armature deformation.


Can I use Weight Paint to Control Animation Properties?

I'm sure you could do this with weight paint, however, I think it might be overkill. Weight paint and dynamic paint is per vertex, and bullet collision settings are per object.

You can animate the constraint Enabled variable. and you can also add a driver.

The following code will work on an object I fractured using  Cell fracture, the object named "Cube". Then I used the Bullet Constraint tools 'Single constraint' to make the constraints.
This code won't work if you have used Empties to constrain the objects together.

Link to a blend file

Press alt A, you will see the box stays together.
Run the script (alt P in textblock) and then animate again. You will see the box stays together, until the plane moves above each object.

object_name = "Cube"

import bpy

for obj in bpy.data.objects:
    if  object_name+"_cell" in obj.name:
        driver = obj.rigid_body_constraint.driver_add('enabled')
        driver.driver.expression="this_obj<mask_obj"
        driver_variable = driver.driver.variables.new()
        driver_variable.name = "this_obj"
        driver_variable.type = 'TRANSFORMS'
        driver_variable.targets[0].transform_type = 'LOC_Z'
        driver_variable.targets[0].id = driver_variable.id_data

        driver_variable = driver.driver.variables.new()
        driver_variable.name = "mask_obj"
        driver_variable.type = 'TRANSFORMS'
        driver_variable.targets[0].transform_type = 'LOC_Z'
        driver_variable.targets[0].id = bpy.data.objects['mask']


It is possible to mask a Image Texture with Emission?

Set up the nodes as pictured below to achieve it. Just use a Gradient Texture as a mask. Set its type to Quadratic Sphere.


Another way is to use only Bezier curves for the whole shape.
You can use the handles to adjust the faloff - sharp/gradual.

Here is the .blend
(updated 16:40 - matched more precisely to the original + works properly with bevel)


To insert a keyframe for a single axis, change the value of your axis in the properties panel (N), hover over it, right mouse button click it and select "Insert Single Keyframe".
This will allow you to change the value of a single axis while keeping the other values untouched.


Mesh problem after subdivision and boolean in blender

Your topology is probably not good, here is how you could do your object:

Create a 32 vertex cylinder and a 16 vertex cylinder:

Boolean:

Rework the topology:

Give it a Subdivision Surface modifier, add edge loops to sharp the edges:

Only apply the Subdivision Surface modifier if necessary, don't if you don't need to.


Option 1

If the face you are extruding from is planar one way to do this is to use a custom orientation which you can take from that face and use as a local coordinate system for future operations.

In the example I already had a "Transform Orientation" named Face, and Blender made a new one called "Face.001" so as not to override the old one.

Option 2

Select the edge you want to extrude, change the transform orientation in the tool below, to Normal. Hit Extrude, and press (X,Y, or Z) twice until you see an orientation line that matches the direction you want to translate the extrude edge in.


not really. In wheight paint mode you are a assigning wheights to the vertecies of the mesh. what you see between the vertecies is only colored based on the vertecies around it. so if you have a base mesh with not that much geometry and you have a vertex an you have one in the mask and one outside, blender cant do better that  to make a gradient between them.
hte only way to make that effect less pronouced is to give the wheight paint more vertecies to work with.
If its crucial that you have a sharp edge you could copy it ad apply the subsurf modifier i assume you use. Or dependant on your use cas you could also switch to a texture map instead.


Using Wave Modifier instances in Animation node

Actions in Animation Nodes are abstractions of F-Curves, or possibly other data. So actions are not effective when it comes to animations that depends solely on data such as the current frame in this case.

If I understand what you want to do correctly, you can use the time offset parameter of the wave modifier. So, instance your objects using the Copy Full Object option to copy the modifiers from the source object to the instance, and modulate the time offset parameter using an attribute output node as follows:

Ghosting Value

What you can do is set the pass index of object to an arithmetic sequence, then in the shader, sample the object's pass index, and divide it by the number of instances as follows:


You can use the Boolean Modifier

Add a new cube with Shift+A and doublicate the cube with Shift+D
position the second cube where you want to cut out the main cube

Select the cube you want to cut out
Go to the Modifier tab in the Properties window and choose the Boolean Modifier

Set the Operation to Difference
Choose the 2nd cube in the Object list box
Click Apply (Object Mode)

Delete the 2nd cube.

Note: After applying the Boolean Modifier the mesh could be not suitable for a good topology.


Edit mode viewport looks exactly the same as object mode

You have viewoprt overlays turned off. Click on the icon so that it's blue and white and they will reappear!


Is there a bpy function to convert from blender units to Imperial?

I found several internal conversion code in the source, like one in view3d_ruler.c for bpy.ops.view3d.ruler(), or in drawobject.c for measurement stats, none of them with direct Python interface. No reference to it, too, in the API manual.

CMIIW, but I think we'll have to write one. All distributed addons so far, like Measure Panel, also write their own conversion function, and it looks like the aforementioned addon have several function we can use directly:

import space_view3d_panel_measure as pm

uinfo = pm.getUnitsInfo()
print(pm.convertDistance(2, uinfo)) # prints 2.0m, 2.0 BU, or 6.56168'
                                    # depending on selected unit system.


Geometry nodes - lock distributed position in animation

What version of Blender were you using for this as I get different results using 2.93.0 Alpha - I get a small number of particles popping in and out of existence as the surface moves but most of them stick with the surface as the ocean modifier distorts it. Also, I note that the Join Geometry node in your example has two separate input nodes but the 2.93.0 Alpha version has a single "multi-input" input node, showing you're likely on an earlier version.
Since the Geometry Nodes feature is still under development, I'd suggest re-trying with the latest version and seeing if this improves the situation.


Reflections visible in Vieweport but Flat/Barely noticeable in final render

Your scene environment is not set up properly. The HDRI is using an ordinary Image Texture node, not an Environment Texture node:

Deleting it and replacing it with an Environment Texture node fixes the render:

The reason the result looks okay in the 3D viewport is because it looks like you had Scene World unchecked in the scene options:

If you check that box, then the 3D viewport matches the rendered result.


I want Glass to be transparent where nothing exists

One way you could do this is by using a sort of "greenscreen".

Add a big sphere which encloses the entire scene, and give it a material which will only be visible when seen directly through a transmissive material. Also disable visibility for unwanted ray types:

Put the sphere on it's own layer (I put it on layer 2), and create a second renderlayer which excludes it:

The first renderlayer is identical except for the Exclude setting.
Use the compositor to turn the green channel of one renderlayer into the alpha channel of the other:

If there is already red green and blue in your scene, you could try using the compositor to turn the difference between the two renders into transparency:

However you may need to tweak things to get it to work as desired.


A try to give a very short overview:

The principle is globally the same for all "object" types depending on their nature.
Above that, give a look at the documentation (probably you've already), which is very structured, module by module and allows to navigate through all data and ops hierarchies.


What is the difference between adding a custom property via the Object Data tab vs the Properties Shelf?

Custom properties are always associated with a data block they belong to.
The place you add them from determines which datablock they are associated with.

Adding custom properties through the Properties Window will make them associated with the datablock of the currently selected tab.

You can add properties to Objects, so selecting a different one make them "disappear", but you can also add them to Object Data so several instances of the object sharing that data will have the same property.

You can also add them to Materials or Scene, Textures, Particles, among others, regardless of the object they are applied to.

Likewise custom properties added through the Tool tab are associated with another type of datablock, in this case not dependent on selected object, but the current Workspace.
Workspaces are represented by the tabs at the top, an are themselves datablocks that can be linked to or appended, and can bear their own custom properties.


White material shows up as gray regardless of lighting

I looked at both files and the only difference really is that you got rid of the camera and light in the wrecking ball file.

If that is the only thing you want to change:

Load the "rigid body sim.blend" file.
Switch the render engine to cycles to get the same result and switch to render view!
Go in the file menu and select "Append..."
Find and double click the "default.blend" file to open up it's content to chose from.
Go in the "Objects" folder and select "Camera" and "Light"
Confirm to load.
In the scene the two new objects are hidden inside the cubes, so select them and scale them (yes scale, will only scale them in regard of position from world center) far enough to have a good view. Check by switching to the camera view.
Now select the light and increase it's Power from 1000 to something like 10000+..
Go from there and you should be fine.

Here the visual aid/explanation:


Try the decimate modifier.

Select your mesh and go to the modifiers tab, where you can add the decimate modifier. Play around with the settings until the you are satisfied with the poly count, while retaining a good look.

Learn more about the decimate modifier here: https://docs.blender.org/manual/ja/dev/modeling/modifiers/generate/decimate.html


You can inset the 3x3 faces that surround the one you've extruded instead of extruding it. Once inset done extrude the inset.

Then add a loop inside of the hole to sharpen the borders:


The Tilt of the vertices are at 0° (3D View > N panel) so it's not the problem. You need to select the curve and choose Twist Method > Z-Up. That said the object is still not completely vertical. If it's too noticeable you need to switch to the Instancing method: Give the Array and Curve modifier to a vertex instead of your object, enable the Instancing > Vertex of this vertex, and parent your object to the vertex.


Possible to combine a pie.operator and box.operator together?

No, you cannot have all 8 pie positions and another extra box.

You can have boxes instead some pie positions though. So you can have 7 pie positions and the bottom 8th one being a box:

def draw(self, context):
    layout = self.layout
    pie = layout.menu_pie()
    #4 - LEFT
    pie.operator("mesh.primitive_cube_add", text="LEFT", icon='MESH_CUBE')
    #6 - RIGHT
    pie.operator("mesh.primitive_cube_add", text="RIGHT", icon='MESH_CUBE')
    #2 - BOTTOM
    box = pie.box().column()
    box.operator("mesh.primitive_cube_add", text="BOTTOM 1", icon='MESH_CUBE')
    box.operator("mesh.primitive_cube_add", text="BOTTOM 2", icon='MESH_CUBE')
    box.operator("mesh.primitive_cube_add", text="BOTTOM 3", icon='MESH_CUBE')
    box.operator("mesh.primitive_cube_add", text="BOTTOM 4", icon='MESH_CUBE')
    #8 - TOP
    pie.operator("mesh.primitive_cube_add", text="TOP", icon='MESH_CUBE')
    #7 - TOP - LEFT
    pie.operator("mesh.primitive_cube_add", text="TOP - LEFT", icon='MESH_CUBE')
    #9 - TOP - RIGHT
    pie.operator("mesh.primitive_cube_add", text="TOP - RIGHT", icon='MESH_CUBE')
    #1 - BOTTOM - LEFT
    pie.operator("mesh.primitive_cube_add", text="BOTTOM - LEFT", icon='MESH_CUBE')
    #3 - BOTTOM - RIGHT
    pie.operator("mesh.primitive_cube_add", text="BOTTOM - RIGHT", icon='MESH_CUBE')

You can split rows, create multiple columns, etc. Normal formatting methods of Blender UI applies. If you omit the .box() you don't have that ugly border and only grouped entries which looks better imho.


How can I randomly instance and distribute objects from a collection on a mesh using Animation Nodes?

Using Mesh Point Scatter and Object Instancer node we can scatter objects on the surface of given mesh. Since Object Instancer node cannot be used inside Loop we can't randomize objects. One solution for this problem is by replacing instanced object with other object data(random objects data from collection). For that we can use Copy Object Data node.


Animate Property gets activated whenever I move an object

Disable the Auto-keying above the timline.


Clicking on the 'windows' object, changing to Weight Paint mode and clicking on each of the vertex groups in turn we can see that the small triangle of window is part of the 'door_fl' group in addition to the 'car_body' group (red highlighting means a weight of '1' is assigned):

The small part of the window that is 'lagging behind' needs to be solely part of the 'door_fl' group. Because it is also assigned to the 'car_body' group (and therefore also under the control of the 'car_body' bone), the 'door_fl' bone is not fully in control, which is why it is not exactly matching the movement of the bone. When vertices have weights of '1' in two groups, the bones connected to those groups share control of the vertices 50/50.

To remedy this, simply select the vertices that make up that part of the window in edit mode, click the 'car_body' group in the Vertex Group panel of the Object Data tab in the Properties editor and click the Remove button:

The window will now be only in the 'door_fl' group, only be controlled by the 'door_fl' bone and will move correctly.


If you look in the console/terminal, you will see python errors which describe the problem type, and where it occurs, with pretty decent accuracy (for the most part).

Here's how I solved the problem:

I start your game; I check the console; I see this error:

Python error compiling script - object 'camera', controller 'Python':
  File "mouseLook.py", line 27
    return vec_mouseposition = vec_screencenter
                             ^
SyntaxError: invalid syntax

It tells you everything you need to know: The object, controller, file and line where the error occurred. It even prints out the line in question, and points out the problematic symbol.

If you watch the video tutorial again, carefully, you'll notice that it's a -, not a =.

After I fixed that, I tried again:

I start your game; I check the console; I see this error:

Python script error - object 'camera', controller 'Python':
Traceback (most recent call last):
  File "mouseLook.py", line 2, in <module>
ImportError: cannot import name 'vector'

And that makes sense, because vector doesn't exist on the mathutils module.

If you watch the video tutorial again, carefully, you'll notice it's Vector.

After I fixed that, I tried again:

I start your game; I check the console; I see this error:

Python script error - object 'camera', controller 'Python':
Traceback (most recent call last):
  File "mouseLook.py", line 39, in <module>
NameError: name 'MouseLook' is not defined

You defined mouseLook, but you're trying to instantiate MouseLook.

If you watch the video tutorial again, carefully, you'll notice that the class name is MouseLook, and that the filename is MouseLook.py.

After I fixed that, I tried again:

I start your game; I check the console; I see no errors; I move the mouse a bit; I check console again; I see no errors ... but nothing is happenning.

I look at the controller; I notice that you're running in Script mode ...

If you watch the video tutorial again, carefully, you'll notice that the controller is set to Module execution mode, and that it specifies the actual function being called MouseLook.main.

After I fixed that, I tried again:

I start your game; I check the console; I see this error:

Python script error - object 'camera', controller 'Python':
Traceback (most recent call last):
  File "/dev/shm/blender/mlook.blend/MouseLook.py", line 43, in main
  File "/dev/shm/blender/mlook.blend/MouseLook.py", line 31, in main
NameError: name 'self_getMouseoffset' is not defined

If you watch the video tutorial again, carefully, you'll notice that it's self.getMouseOffset().

After I fixed that, I tried again:

I start your game; I check the console; I see this error:

Python script error - object 'camera', controller 'Python':
Traceback (most recent call last):
  File "/dev/shm/blender/mlook.blend/MouseLook.py", line 43, in main
  File "/dev/shm/blender/mlook.blend/MouseLook.py", line 31, in main
  File "/dev/shm/blender/mlook.blend/MouseLook.py", line 24, in getMouseOffset
NameError: name 'self_screen_center' is not defined

If you watch the video tutorial again, carefully, you'll notice that it's self.screen_center.

After I fixed that, I tried again:

I start your game; I check the console; I see no errors.

At that point the mouse look works, but if you want to have a proper orbiting view, you'll need to create an additional empty to act as the head, parented to whatever acts as the body. The camera should then be parented to that new head, not the body.

Here's your demo, with those modifications: http://www.pasteall.org/blend/32275

If you don't know Python basics, and you wish to learn, try my Python video tutorial series: https://www.youtube.com/watch?v=iGQv7bR6zCQ&index=1&list=PLDFB7FFF90EE6F0C1


Armature appears in edit mode but not pose/object mode

The pose bones are hidden.

To selectively unhide the bones click the plus sign next to "Pose" and select the closed eyes.

To unhide all posed bones at once, select "Pose", hover over your mesh and press alt +  H.


Apply pose as rest position keeping previous frame

Finally this addon (with pose mode features) along the usage of a helper bone exactly helped me to solve my broader kind of problem. My original question only involved a harder way.


How to remove unwanted edge between adjacent coplanar faces?

The 'meaningless' edges are not meaningless.

because, internally ..

A face is bounded by a single unidirectional loop of edges .. so..
An edge may not appear twice in the same loop

The red areas in first two examples above are not faces, as far as Blender is concerned. The last example qualifies to be 2 faces.

So in this case, Blender has held on to the minimum number of edges to preserve the faces around the frame of your crate. If you got rid one or both of those edges, (say, by deleting them ) the faces would have to go too.


Reflections are part of what makes glass look like glass. The issue is not so much with the material (making a shader with no reflections completely is quite easy, but will make the glass look like there is no surface at all).
Look at images of watches and do a search on how to photograph them. The important thing that you will notice is how the surrounding elements play a crucial role in the scene. You want reflections that show the glass, but you want also some black (or dark) elements reflected on the surface that make the transparency more evident. So you have to be strategic about how objects and lights are placed around the watch.
Read: How to turn off reflections on glass
Also, when dealing with elements behind glass, the thickness of the glass will play a crucial role. If the glass has no thickness (like a a plane) then the glass material will behave like a single glass solid, as if the insides were encapsulated completely in a glass block instead of being behind a thin piece of glass. The glass has to have a realistic thickness.
To create a shader for elements behind glass in cycles read:
How to illuminate the darkness inside glass objects in Cycles?
Objects behind glass appear too dark
As a final note: a plain HDR of trees as environment is not the optimal way to light a scene like yours.


How to limit how far an object can move in Blender Game Engine?

You can make the wall invisible. Then make the cursor object a sensor physics type, and when it collides with the wall, have it send a message to the player to unparent. This method isn't fool proof (if you move the mouse too quickly, then the guy can clip through the wall.) but it's very simple to understand and I'm sure you can make the most of it.


Blank Texture on Cycles GPU Baking (AMD)

AMD GPU computing is not as well supported as NVidia's solution, and definitely or on par in terms of feature set as of the Blender 2.78# series.

Either use CPU baking or try a newer 2.79 testing builds at your own risk. Cycles OpenCL support will be thoroughly improved and will roughly be on par with CUDA in terms of features and support as of Blender 2.79#.

At the date of writing Blender 2.79 is not released officiall yet so if you want to try it you must use development testing builds.
To do so head over to https://blender.org/download , and check the "Bleeding Edge" link in red at the bottom.

Have in mind that these are unreleased development versions, meant for testing purposes and not recommended for production; bugs and kinks are expected.
Save your work often, make backup copies of your files if necessary.

And please, for the love of God, stay away from the 2.8 builds for the time being, they are not ready for end users yet, not even for testing purposes, so do not ask about or report any errors or missing features you my find.


Revisit Previous question
Python: Calculate angle between vertices
The answer: Interior Face Angles
Think of it like walking around a table with left hand on surface. The table's up is face normal, our up (or the corner's up going thru v3 in question) is axis. A certain condition flipped axis, making us upside down, the test and negate fixed this. The main gist is need some reference to get the angle into 2d and hence get a signed value.
The verts are ordered the choice is which side of the line of verts is the table top (or face).  We need some reference ie since the projection is onto Y plane would use Y or -Y axis as a proxy for face normal (in front view -Y is coming at us).
In the other question, if edges are made from the verts in x order, if the area below is a "face" with normal pointing at us (front view) then we are going clockwise, if above counter clockwise around the face.
Signed angle of 2D vectors.
Simple example, 2 points (p1, p2) and an origin point o  If the 2d vectors represent the xy plane, the origin in middle,  then this is y axis (12 o'clock) to (1, 1) (half past one).  Travelling clockwise it's 45 degrees, counter clockwise 315
import bpy
from mathutils import Vector
from math import degrees, pi

context = bpy.context

o = Vector((0, 0))
p1 = Vector((0, 1))
p2 = Vector((1, 1))
#p1, p2 = p2, p1 # flipped
v1 = p1 - o
v2 = p2 - o

# if in z=0 plane this is axis of rotation
axis = v1.to_3d().cross(v2.to_3d())

a1 = v1.angle_signed(v2)

if a1 <= 0:
    a2 = 2 * pi + a1
else:
    a2 = a1 - 2 * pi

print(degrees(a1), degrees(a2))

# Results
#45.00000125223908 -314.9999987477609
#-45.00000125223908 314.9999987477609 flipped

So to re-iterate need to know what direction to go in. Assuming clockwise then return positive result above, p1 -> p2 is 45 degs, p2 -> p1 is 315.

but the range values do not work and I can't explain why. uniform(a1,
a2) in a loop produces a complete circle

The angles are how far to rotate from p1 to get to p2 either the short way or the long way. Adding them together (range) is effectively adding questions two ranges together.

The only thing I can think of is that v1, v2, v3 positions, relative
to one another, are variable and can occur in different orders.

Yes. It is clear in face edge angle answer link that the order is known. In this case it is not.
To get to p2 from p1 either rotate relative to p1 range (0, a1) or (0, a2)
3D Vectors
Can calculate the rotation difference between two vectors as a quaternion, ie how much to rotate vector to get to match alignment of other vector.
import bpy
from mathutils import Vector
from math import degrees, pi

context = bpy.context

o = Vector((1, 1, 1))

p1 = Vector((2, 3, 4))
p2 = Vector((5, 1, 5))

v1 = p1 - o
v2 = p2 - o

# to rotate v1 to v2

axis, angle = v1.rotation_difference(v2).to_axis_angle()

print(axis, degrees(angle))

if angle <= 0:
    angle2 = 2 * pi + angle
else:
    angle2 = angle - 2 * pi

print(degrees(angle2))

output
<Vector (0.5774, 0.5774, -0.5774)> 40.89339099490394
-319.10660900509606

Rotate about a pivot point
Recommend look at answer here https://blender.stackexchange.com/a/194802/15543 re making a matrix to rotate about a pivot point.
The example above gives us the angle and axis required to make the rotation matrix R
R = Matrix.Rotation(angle, 4, axis)

the direction of this rotation is determined by the sign of angle and the way the axis is pointing.


How do I avoid gaps to a mirror modifier when I am scaling a model vertices?

Select all the vertices (Alt+RMB) that should be at the mid point, then press scale along the x axis(whichever is the horizontal one) and press zero (SX0) this will align them all in a straight line.


2.8 freestyle modifiers animation not works


Is it possible to calculate the center of an incomplete sphere?

The shipped add-on tinyCAD has a 'Resurrect Circle Center' operation, which finds the circumcenter of a triangle of 3 vertices.
If you select 3 vertices from your sphere-section, which lie on one of the sphere's great circles, it will place the 3D cursor at the center of the complete sphere, and draw the great circle in the plane of the vertices.


The selection tool can be changed by

locating the tool bar in the top-left of the 3D Viewport (T if it is hidden)
long pressing on the selection tool icon (usually the arrow with the selection tool)
choosing the proper selection tool from the appearing menu