Where is the operator panel in Blender 2.8?

It can be found in the 3d Viewport:

As well as in the Edit menu where it is called Adjust Last Operation now, where you can also right click it and choose Assign Shortcut if you wanted to be able to call it with a keyboard shortcut like it was with F6 in previous versions:

Obviously, it does not need to be F6 and could be anything that is convenient to you.


How can i fix my displacement map. Its too big

As @Sanbaldo pointed out, you can multiply the values.

Add a Math node and set it to Multiply
Enter 0,001 and connect it into the Scale input.
Values you type into the second field, will be multiplied by that 0,001

(You can of course use Divide instead, if you want :)


I propose to use curves, parenting and hooks to do that.

The red ring have to move along (say) X
The gray tube is like pushed and unbent to the horizontal
The blue tube is translated along the gray tube

We can use a curve modifier to constraint both tubes to follow a curve.

But we also want that it unbend along its own size.
So the circular part of the curve have to be pushed on right. We do that using a hook to the ring of the corresponding control points.
The hook influence is set to 0.2 in order to avoid these points to be pushed right at the same speed as the other objects (an influence of 1 would have been the same speed).

From that, the blue tube is simply parented to the ring.
But the gray tube needs to move along from the ring but except its last part which needs to stay stuck on the black sphere.
So instead of parenting it, we use a hook again on all vertices except the last ones (the one near the black sphere which is simply placed near it). These vertices are set in a vertex group used in the hook modifier:

Though, this setup is very specific to this left/right movement.


[![my result][1]][1]

1)The hairs can do hair self collisions only in the same hair particle system! In your example you have two hair systems

2)Internal friction has to be set to 0.2 - 0.8 range.

3) density target slider controls collision margin smaller values equal smaller collision distance. Be careful ! values set too low will cause hair explosions.

4)Strength value (ALWAYS) has to be set to ((1)) unless you want interesting hair strands.

5) Voxel grid cell size optimal value 0.040

blendfile


Rigify automatically link UI text file in 2.8

Assoc text with rig via a pointer property.
To test, in a file named "RIG.blend" have asscociated all armatures with an internal  text file "foo.py". An object using the armature is added to "Rig" collection.
Ran the script below  and saved the file.
import bpy
from bpy.props import PointerProperty
from bpy.types import Text, Armature
context = bpy.context

Armature.ui_text = PointerProperty(
        type=Text
        )

if __name__ == "__main__":
    for arm in bpy.data.armatures:
        arm.ui_text = bpy.data.texts.get("foo.py")

Result of linking collection "Rig" from "RIG.blend" to a new file includes the linked text "foo.py"

Note this is a Probable dupe of How to make a Text File dependent of an Armature object so that it appends with it to other projects?
and it is pointed out in accepted answer that this can also be done as a one off single python console code line, via a custom property.
Using a pointer property with a poll, as demonstrated here https://blender.stackexchange.com/a/193608/15543 is a quick way to make a UI.  The example is for a pointer to an object, but same principal applies for texts. eg could choose from any or all texts in blend to assoc with armature depending on poll.
Have linked the object to a bpy.types.Armature object. Could instead link to the object or the collection.


How do I copy children of an object using copy() method, without messing up their positions?

Set the matrix_parent_inverse of the copy.
Thought I'd add a supplementary answer, using recursion to get all the children up to a certain level. Without it the code is going to get long and unwieldy for more levels.
import bpy

def copy_ob(ob, parent,  collection=bpy.context.collection):
    # copy ob
    copy = ob.copy()
    copy.parent = parent
    copy.matrix_parent_inverse = ob.matrix_parent_inverse.copy()
    # copy particle settings
    for ps in copy.particle_systems:
        ps.settings = ps.settings.copy()
    collection.objects.link(copy)
    return copy

def tree_copy(ob, parent, levels=3):
    def recurse(ob, parent, depth):
        if depth > levels:
            return
        copy = copy_ob(ob, parent)

        for child in ob.children:
            recurse(child, copy, depth + 1)
    recurse(ob, ob.parent, 0)

#test
tree_copy(bpy.context.object, None)


Try going to the node tree... See if there's another layer being composited on top.  Also, I'd check out the depth of field under the camera settings, and make sure that it isn't messing stuff up...


Blender wont find python in usr/local/bin

On OSX, open a terminal session.
In your user directory (e.g. mac/users/doeke) make sure you have a file named .bash_profile If it is not there then create one.

Open terminal.

sudo nano .bash_profile

add:

export PYTHONHOME=/usr/local/bin/python_whatever_the_fing_path_is

press ctrl + x to quit and hit y to save the file.

Now log in and out or reboot. Hopefully it is fixed now.


How to have multiple soft bodies in a single object?

Final:

Overview:

For the Soft Body object I've used two Vertex Groups. One for Goal and second one for Springs. I've assigned different weights for selected parts. You can also draw weights in Weight Paint mode.

Vertex Groups:

Soft Body:


I created a sphere on a chain link of meshes but it falls when in play mode

The chain is just clipping through the sphere. You should make it in a way that is actually realistically possible so what you could do is put a whole through the sphere so that the chain can hang from there.


Cycles Render grainy despite many samples?

Check "Square Samples", otherwise Blender will use -exactly- the number of AA samples as you type in. 700 unsquare AA samples is around 27 square samples.

The blend file you provided has it set at 100 AA samples, which is barely preview quality.

Additionally, you have some REALLY strange material shaders. Theres a fresnel node plugged directly into a color node. A ray path node directly in an add shader node. You mix glossy and glass shaders.
Its really strange, i've never seen shader setups like this.

Last thing: you built a closed box and put objects inside with indirect light, this gives you huge amounts of bounce light, which creates loads of noise. If you get a HDR instead you can get better results with way less bounce and noise than this approach.


Is FBX converted to blender doomed to have messy mesh?

The mesh should not be triangulated on import. My guess is that the mesh was exported with triangulate.

You can try to run Tris to Quads operator in the Face menu (Alt-J) but usually it will not give the desired result.


Rotate a cube to make it stand on one of its corners

Somewhat better non-mathematical solution:

Extrude one of the side edges along the 'Z axis' and split the extrusion with Y.
Set cursor location with Shift+S and pivot point with comma.
Enable vertex snapping, set 'Edge' snap element and 'Active' snap target.
Select the main object with L and make one vertex active with Shift-Click.
Rotate in front view and side view.

That's how it looks:


Your object's normals are not in the right direction.

You have to select all your object one after one and do this :

Tab for edit mode, then go to the Tools panel on left of the 3d view (t)and click on Recalculate on the Normals pannel.

This will correct how your normals are directed and also in your case your render.

If you want to see the direction of your normals (which have to always go on the outside of your object) go on the UI panel on right of the 3d view (n) go to mesh display and select display face (or vertex) normals as line here:

and little line are going to show you were your normals are pointing.

Last but not least : For a better render (a smooth shading of your object) you can add a smooth on the Tools pannel on left


Your Normals are probably flipped on this object: Select this object, enter in Edit mode, select all those black faces, hit ctrl N, it should fix it


Is there any way to select a smoothing group?

Ok, I found a solution. Select - Select Linked and choose Sharp in a pop-up submenu.


How to properly report Blender 2.8 crash and what files to send?

Blender can open the bug report page for you, and with 2.80 it also automatically fills in the blender build info and operating system data for you. Then you just have to fill in the details of what happened and how it can be reproduced.

Note that random crashes that can't be reproduced would be impossible for a developer to find and fix. The easier it is for a developer to make blender crash, the easier it is to find what is causing it. The more info you can give, including a sample file that can make getting the error easier, the easier it is for the developers to fix.

While the position may change over time, you can find Report a Bug in blenders Help menu.


How to switch between fk and ik when they are separate armatures?

IK/FK switches are constructed using three groups of bones: FK chain, IK chain and a deforming chain.
The deforming chain bones have a set of constraints that make them copy the FK loc rot and scale, followed by a set of constraints that make them copy the loc rot and scale of the IK chain.
By animating the influence slider of this last set of copy IK constraints (generally using a single slider, and drivers to control all the constraints at once), you will switch between IK and FK, that can be in separate rigs without problems.
The premade sliders you see in the previous answer are related to Rigify rigs only, which builds for you the IK/FK set, adding some more convenient options, like a snap IK to FK and a snap FK to IK function.


How to merge two weightpainted meshes with two separate armatures?

After joining the two objects,

To use more than one armature

i) Set up so the body rig is the parent of the mesh and the first armature modifier (armature parent) ... standard setup for one armature.  If you select your body last you will still have this setup on join.

ii) Make the body armature hand pose bones the parents of the glove armatures, arranged to appear as thought it is one rig.  If you have another face rig make the head bone the parent etc.

iii) Add another armature modifier to the modifiers stack for the glove armature.  (One for a face rig etc)

PS. good practice to apply scale to your rigs and meshes so they are all (1,1,1).  Not doing so can cause problems later.


Hoorray

I made my first Blender python script, and it works !
See here.

"""
nthObjectSelector by gordielachance
This will reduce your current selection of object to nth objects.
https://gist.github.com/gordielachance/ba32a3087f8d327bfdeb9d0ea7fb4935
"""
import bpy

#SETUP
nth = 3 #Specify your nth value here !

#list of selected objects
list_all = bpy.context.selected_objects

#start by unselecting everything
for obj in list_all:
    obj.select = False

#now only select nth
list_reduced = list_all[::nth]

for obj in list_reduced:
    obj.select = True

#debug
print("nthObjectSelector ({}) : selected {} out {} objects".format(nth,len(list_reduced), len(list_all)))


Replicating the World Ambient Occlusion setting on a per-shader basis

In simpler cases, AO node + Emission node + Add Shader node seems to do the trick. For instance, World AO with factor 0.1 may be reproduced in a shader as follows:

See also this thread on Blender Artists: thread


Use the "Limit selection to visible" option.

From the Manual:

Limit Selection to Visible
If you are in solid, shaded, or textured viewport shading mode (not bounding box or wireframe), you will have a fourth button in the header that looks like a cube, just right of the select mode ones.
When enabled, this limits your ability to view and select vertices occluded by the objects geometry (as if the object was solid). This is done by the viewport with depth buffer clipping.


Please save your file, close blender and re open it, open your blender file and un check the Load UI check box as shown below:

More details can be check here


I can't see Dynamic Paint neither in viewport nor in render, why?

The Dynamic Paint is stored as Vertex Color data.
You need to create a Vertex Color named "dp_paintmap". That's the default name. It's defined in the Canvas → Output section. There, you can just click the [+] button. It will create the Vertex Color for you. (Then you'ill find it the Object Data Properties → Vertext Color section.)
After that you will see the paint when you enter the  Vertex Paint mode or switch color to Vertex in Viewport Shading options for Solid render mode.
Finally, to see the paint on the material you just need to mix the output of a Vertex Color Node with the color of the material in the Node Shader Editor.
Here is an older, complete example: Dynamic Paint not showing in rendered image. It works in Blender 2.9. (Notes: The output of the Attribute Node is the same as the Vertex Color Node. Dynamic Paint Output is just called Output in Blender 2.8+)


How to add Key frames to the compositing nodes?

The way to do keyframes has not changed. Hover the cursor over the item you want to keyframe and press the I key (I as in "Insert keyframe")

Or right click on the item and select add keyframe from the menu.


Why is not enough to copy the node configuration from an object to another to texture the object A the same as the object B?

Head B has different UV map then the head A. That's why you can't use the same texture and expect to get the same result. To fix this problem, you should bake head A texture to head B. If material of Head A consists of few different textures (f.ex. color, normal, glossy etc.) you should each of this textures in head A material, (one by one-different texture for each bake) connect to Diffuse BSDF and straight to Material Output and bake Diffuse Color on new texture for head B. From the node setup, that you have on the images uploaded, it's obvious though, that you are using only Color texture (the rest of the nodes is useless in your setup), so you need to bake only one texture. Your head B need to have only one material added. If there will be more materials, you would have to add Image Texture node with the new texture added to each of the materials. Otherwise you'll get an error and bake will fail.


How to make a circular array with a fixed radius. whose elements gradually scale?

For this, you can use DupliFrames.

Create a Curve Circle at the desired radius.

In the object to be duplicated, Object tab >'Duplication' panel, choose 'Frames', set the number of frames to the number of duplicates, and uncheck 'Speed', as shown.
You can also set which axis of the duplicate which follows the path, in
the 'Relations Extras' panel. Here, it's the default.

In the circle's Data tab, check 'Path Animation' with the 'Frames' also set to the number of duplicates, and 'Follow'.if you want the rotation of the duplicates to align to the curve.

CtrlP Parent the duplicate to the circle, with
the 'Follow Path' option. You may have to use AltO on the duplicate to clear its origin to get it to sit on the path.
In a timeline, set up an animation of your duplicated object, and
keyframe its scale at frames 1 and 12, by right-clicking in the Transform > Scale panel of the properties region of the 3D View and selecting 'Set Keyframes' . Here, the scale was 1 on frame
1, and 2 on frame 12.

As indicated in the manual, you can use ShiftCtrlA to make the duplicates real.


Volume section missing in material panel

if you are using cycles you need to check the "use nodes" button in the screenshot above. once you have done that i suggest using the node editor to work with your materials instead of the properties panel shown in the image. if you need help using the node editor ask and i can help. i do not know much about volume shading in particular but i can help with nodes.


How to shoot a character from one platform to another. (BGE)

Final result:

What's happening

So I have a player, a floor for the player to walk on, a wall to jump over, and a cannon to launch him.

The player has a basic setup:

W to move forward, A to turn left, S to move backward, and so on.
The motion of the Dynamic player is simply the Location of the Motion Actuator.
(You probably have a different setup)

Now, inside the cannon, I added a child cube, that I'm calling inside. It's static and has the cannon as a parent. It's also Invisible and has the Ghost property applied.

The logic bricks

Referencing the above image, when the player comes into contact with the inside cube, the keyboard sensors will activate. When A is pressed, they will activate the cannon's Motion Actuator, that will turn the cannon 2 degrees along the Global Z axis. Likewise, when D is pressed, it will move -2 degrees.

Last of all, when the Spacebar is pressed while in contact with the inside cube, the Player's Motion Actuator is triggered with a force of 800 along the Z axis. Because the cannon is slanted, the player will hit the top of the cannon and will be forced out of the cannon at the same angle. This will not work if your cannon is vertical.

Here is the .blend file:


Motion tracking always gives me error messages and acts unpredictably

Everytime you get the "some data failed to reconstruct" error it means only one thing: tracking is not accurate.

Without seeing the video file is hard to determine what is wrong. Post it in some video sharing site and share the link as part of your original question.

Vague advise is the only thing that is left until you can give more information:

If the video is blurry, shaky or has any kind of motion blur distortion you will have a hard time getting good results when tracking.

Yes, you need at least 8 good trackers,and 8 trackers means 8 solid trackers on a portion of the video where there is useful information. Use the keyframe option so that blender determines what section that is.

Check your trackers one by one on the track window to see if they are slipping or jumping about.

Example of bad tracking:

Accurate tracking:

Make sure that you are using the correct solve model. If the camera is stationary, and the camera is just panning, and tilting, but not being displaced you need to use "tripod" as the solve model, and you will get no 3D information.

There are many tools to help you figure out what is wrong(like the graphs with green, red and blue lines) use them.

Motion Tracking. What do the graphs represent and how are they useful?

There is a very detailed post in this site to help you troubleshoot tracking:

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

Read it carefuly and follow the links on that post. It makes no sense to repeat all of the info here.


How do you return to the default view (the one you see when blender starts)?

I assume you are wanting to have the same arrangement of windows as when you start blender.
If you have chosen another screen layout at the top: , just choose the Default layout.
If you have modified the Default layout, you can reset all your layouts to normal by:

Save your current file.
Choose File > New and reload the startup file.
Open your file, but make sure that the "Load UI" checkbox isn't checked:

To save your new layouts, save your file, and the new (default) layout will be saved with it.

If you just want to reset the view of the 3D view in the screen layout "Default", there's some python code that will make that happen.  So temporarily change one of your windows to the type "Python Console" and paste this code in:
for space in [area.spaces[0] for area in bpy.data.screens['Default'].areas if area.type == 'VIEW_3D']:
    space.region_3d.view_matrix = Matrix((
        (0.4100285768508911, 0.9119762182235718, -0.013264806941151619, 0.0),
        (-0.401742547750473, 0.19364379346370697, 0.8950446844100952, 0.0),
        (0.8188281059265137, -0.36166486144065857, 0.44577914476394653, -14.988801002502441),
        (0.0, 0.0, 0.0, 1.0)))

This will reset the view for any 3D view windows you have.
Note:
The numbers in the matrix above are not something I figured out using complex math.  I just opened a new blender file and read the value in
bpy.data.screens['Default'].areas[-1].spaces[0].region_3d.view_matrix


Using booleans for holes is an easy temptation, but often brings horrible results, due to horrible topology. I would try something simpler like this:

and then let subsurf make the rounding:


Duplicate mask including animations in vse (2.81)

Save your file with a new name (myproject_tmp.blend), then reopen the original file. File/append, select myproject_tmp, Mask, mymask, Append.

You can now delete myproject_tmp.

That's a dirty workaround... The miss of this button is either a bug or a regression in my opinion.


Trouble Importing Paint Bumps from Sculptris into Blender

In Blender Internal, you must select every texture in use and assign a "target" to their values. In Example I selected the bump map (BW), I unchecked the "color" destination and assigned it to "normal".

Anyway this model has severe modelling issues, resulting in black artifacts, expecially on the right wing.


Increase minimum clip distance on camera. That should solve the problem. Explanation here:
https://devtalk.blender.org/t/why-eevee-with-zoom-up-cause-broken-mesh-for-layered-parts-solved/4098


How can I recreate this Material and flat Colors?

Do you mean something like this?

It can be easily done by simply linking color node straight to output, bypassing any kind of shaders

But I don't know how it'll export for a game, you can always use Emission shader on strength 1, which doesn't modify visual appearance at all


Custom squash and stretch without spline length ratio

Array modifier fit to curve.

Am of the opinion that Spline.calc_length() would only return the length of the non deformed local coordinates of the curve. It is unaware of what of many objects it is the data part of... trying to bend it out of shape with modifiers and shapekeys etc.

Fortunately can estimate the length simply and quickly using method below.

Add an arbitrarily small "unit" object, could be single edge, or two verts,  to the scene at the location of start of curve and assign it an array modifier and fit to curve. Using defaults of array modifier, it is as long in X direction as the curve.  The smaller the size of unit object the better the precision of estimate.

A little cube set to fit the length of curve

Now at any time the estimated length of curve is given by the array modified "unit" object's x dimension.

Dragging a hook on curve changes dimension of cube.  UI update a bit sluggish, but you get the gist

This can be attached to rig and hidden.


I believe I solved my problem. There was a hidden object in my scene, it seems that hidden objects are not included when rendering, but they are when baking. The hidden object was a cage for the object I was trying to bake so it was blocking all light to that object which resulted it just a black texture.


Missing "Building Objects" addon in V2.79

Never heard of this addon before.
Apparently you can download it from this github repository though it hasn't been updated in a while.
There's no guarantee it will work under current versions of Blender.


How can I loop animation in Blender through Viewer Node

If you already rendered the animation, you can use Blender Video Sequence Editor. Just add clip with the animation and duplicate it as many times you need.
If you want to render already looped animation you can use NLA Editor. Just switch Dope Sheet to Action Editor and click on Push Down to move the animation to NLA Editor. Then switch to NLA Editor and from there you can select the strip and set Repeat in Playback Settings on the right tool shelf, to whatever number you need.


Bones stretches the body instead of rotating

I don't know what you are trying to achieve, but usually you want the bones rotated, not moved. Your bones look like they are set up right, but you need to rotate the bones, not move them.


Select all base edge rings with Select > Select Loops > Edge Rings then deselect a desired ratio with the Select > Checker Deselect operator (may require an Offset value of $2$ for an even distribution).
Select all linked loops with Select > Select Loops > Edge Loops to extend the full corresponding loops.
Bevel the selected edges with Ctrl + B, then extrude them using the Extrude Along Normals option.


Why the mirror modifier is not applied on my half-cube?

You are mirroring in the X direction, while your half cube is oriented along the Y direction. So the mirror works, but the generated vertices coincide with existing vertices.


I'm getting these weird spots on my Mechanical arm?

Those spots are due to the voronoi that is feeding your leftmost principled's roughness.  You're getting random-ish circles from that texture that your color ramp is then quantizing into 0 or 1.  If you don't want it to look like that, don't do that to its roughness.  (The normal of the leftmost principled is also a function of that voronoi, so you probably want to change that as well, but it's subtle, whereas your roughness is anything but.)
While it's not responsible for the problems shown, what you're doing with the normal input on your rightmost principled also doesn't make any sense.  A "normal" output is a (world space) vector-- 3 components.  Do not feed it into a math node or a colorramp or anything else that expects single component values.  And you shouldn't output the color from a normal map directly into a normal input, or use a bump node without any height input, or use a bump node with a distance of 23.5 when your entire mesh is about 4 units tall.


To express some object's local y axis in world coordinates you just multiply a (0,1,0) vector with the object's world matrix:

import bpy
form mathutils import Vector

ob = bpy.context.scene.objects.get("Object")
forward = ob.matrix_world * Vector((0,1,0))

If the object has scale and you need a vector with unit length, you also need to normalize the result.


Is it possible to simulate tape measure bending with Soft Body physics?

Plastic deformation & Stiff quads

I made several changes to the provided Blendfile to achieve this result.

I'll try to summerize them focusing on the most important ones in a qualitative way, as to make a simulation look good what matter is the "whole":

Stiff quads should be enabled. The option will add to the face a "skew resistance", as material elements in the real world have. This way we ensure that the tape has more chanches of keeping his shape
Springs strenght increased (almost 1). Metal have quite big elastic deformations compared to other materoals, but the deformation of the elements at the simulation's scale is almost none, so we should make the springs between the faces as rigid as we can.
Spring Damp lowerd (and Goal Dampening too). Arbitrary dampening factors usually kills the simulation features in favor of its stabilty. I would generally try to keep them as low as possible.
Some Bending resistance. As you already did, must be present in order to give some consistency to the structure.
High Plastic Deformation factor. This is probably the key of the whole simulation. While the other feature were all made to give resistance to the tape, this is what brings it to the "breaking point". If enabled, each polygon will keep the occured deformation. Step by step, the structure is falling, bending the wings of the truss toward the outside, lowering the momentum of inertia of the section in the area near the fixed part, till it became so little that the section cant' resist anymore and the section becomes a hinge.

Other minor changes:

Geometry of the object (shorter and more compact section)
Resolution of the object (less polygon to have more control upon them and faster baking time :P )
Mass of the Soft Body.
Initial rotation of the bar (15°) (to increase the folding visibility)
Post simulation modifier & Matcap... for "beauty's sake"


cycle renderer with multiple textures on single mesh

You have quite a few problems here, you should probably watch some basic cycles material tutorials. You appear to have misread some stuff about alpha blending, it is not how you would achieve what you are trying to do.

The way to do this would be to assign one material to the shirt (using the shirt texture) and a whole different material to the skin. As they are separate meshes this should be fairly easily.

Another problem I have noticed is that you are plugging colour data (the yellow node connections) into shader data (the green ones). While cycles will try and make sense of this, generally if you are plugging connections between different coloured sockets, then something isn't quite right. In this case you want the put a shader node (Like a diffuse BSDF) in between the texture and the mix shader or output(if you get rid of the mix shader).


How do I give objects with the same texture, a different viewport color?

First, select one of the desired objects and give it a new material with a new color.

Then pick all the other elements you want to change the material on.  You can add to the current selection with Shift + Click.  Finally select the object with the new material.

Then you can press Ctrl + L and select Materials to carry the material of your last selection over to all the other selected objects.


The difference between BI and Cycles is the difference between a biased and unbiased renderer.

BIASED RENDERING

A biased renderer uses shorcuts to achieve the final image  (fewer samples on every pixel, averaged out by the engine, and certain effects are pre-calculated in dedicated passes). It does not simulate how light behaves (at least not fully). Blender Internal does not have indirect capability, so that helps in speed too.

The advantages of a biased renderer is speed.

UNBIASED RENDERING

Unbiased rendering similates how light behaves. While Cycles can be tweaked to defy physics (certain brightness/contrast node combinations that exceed the brightness of what its reflection should be), it simulates the photons (though in reverse direction, tracing the rays from the camera to the source). Too few photons (samples) will produce a grainy image, as under-exposing a camera sensor or film would. There is a lot more math involved, and as a result, is slower than biased ray tracing and even slower than rasterization.

The advantage of an unbiased renderer is physical accuracy.


If you are a beginner, an easy shader to get good results will be the Principled BSDF, it's a little different than other shaders, you can google it to know more, here is a example:

Keep in mind that if you want glossy objects to look good or realistic, you will need reflections from somewhere, in my example I used a HDRI map to my world shader, I post here to help any guys out there, but it's not a beginner node tree mind you. Essentially what you want is, a image texture to light your scene and also reflect on it.

For you to better understand HDRI maps, maybe these links will help you:

https://www.hyperfocaldesign.com/tutorials/blender-hdri-tutorial-cycles/

https://www.creativeshrimp.com/hdr-lighting-in-blender.html

https://blenderartists.org/t/beginner-professional-lighting-in-blender-2-78-using-hdri/677353

http://hdrmaps.com/blog/blender-hdri-setup/

Hope it helps,

Edit: Here's the file with a better bench topology,

Notice that for you to access the world shader, you need to click on the little globe icon in the node editor. That's where the magic happens with HDRIs.

Also I packed the HDRI maps in the blend file. But If you or anyone reading this, want some free quality HDRIS, here a great source:

https://hdrihaven.com/hdris/

Cheers,


I discovered the problem!

I needed to to undo the tangle of my shader nodes and leave the normal map as the only thing connected to the normal node of the principled shader. Then it stopped freaking out.

So if you have this problem temporarily rearrange your shader nodes to have exclusively the textures you're working on connected.

I answer my own questions a lot I'm realizing.


Rigid Body Constraints
Introduction
Constraints (also known as joints) for rigid bodies connect two rigid bodies.
The physics constraints available in the non-game modes are meant to be attached to an Empty object. The constraint then has fields which can be pointed at the two physics-enabled object which will be bound by the constraint. The Empty object provides a location and axis for the constraint distinct from the two constrained objects. The location of the entity hosting the physics constraint marks a location and set of axes on each of the two constrained objects. These two anchor points are calculated at the beginning of the animation and their position and orientation remain fixed in the local coordinate system of the object for the duration of the animation. The objects can move far from the constraint object, but the constraint anchor moves with the object. If this feature seems limiting, consider using multiple objects with a non-physics Child-of constraint and animate the relative location of the child.
Connect
The quickest way to constrain two objects is to select both and click the Connect button in the Physics tab of the Tool Shelf. This creates a new Empty object (named “Constraint”) with a physics constraint already attached and pointing at the two selected objects.
Physics Tab
Also you can create Rigid Body Constraint on of the two constrained objects with Rigid Body Constraint button of the Physics tab in the Properties editor. This constraint is dependent on the object location and rotation on which it was created. This way, there are no Empty object created for the constraint. The role of the Empty object is put on this object. The constrained object can be then set as Passive type for better driving the constrain.
Additional parameters appear in the Rigid Body Constraint panel of the Physics tab in the Properties editor for the selected Empty object or the one of the two constrained objects with the created constraint.
Common Options
Rigid Body Constraint panel.
Enabled
Specifies whether the constraint is active during the simulation.
Disable Collisions
Allows constrained objects to pass through one another.
Object 1
First object to be constrained.
Object 2
Second object to be constrained.
Breakable
Allows constraint to break during simulation. Disabled for the Motor constraint. This can be used to simulate destruction.
Threshold
Impulse strength that needs to be reached before constraint breaks.
Override Iterations
Allows to make constraints stronger (more iterations) or weaker (less iterations) than specified in the rigid body world.
Iterations
Number of constraint solver iterations made per simulation step for this constraint.
Limits
By using limits you can constrain objects even more by specifying a translation/rotation range on/around respectively axis (see below for each one individually). To lock one axis, set both limits to 0.
Fixed

Panel: Physics ‣ Rigid Body Constraint
Type: Fixed

Options available to a Fixed constraint.
This constraint cause the two objects to move as one. Since the physics system does have a tiny bit of slop in it, the objects do not move as rigidly as they would if they were part of the same mesh.
Point

Panel: Physics ‣ Rigid Body Constraint
Type: Point

Options available to a Point constraint.
The objects are linked by a point bearing allowing any kind of rotation around the location of the constraint object, but no relative translation is permitted. The physics engine will do its best to make sure that the two points designated by the constraint object on the two constrained objects are coincident.
Hinge

Panel: Physics ‣ Rigid Body Constraint
Type: Hinge

Options available to a Hinge constraint.
The hinge permits 1 degree of freedom between two objects. Translation is completely constrained. Rotation is permitted about the Z axis of the object hosting the Physics constraint (usually an Empty, distinct from the two objects that are being linked). Adjusting the position and rotation of the object hosting the constraint allows you to control the anchor and axis of the hinge.
The Hinge is the only 1-axis rotational constraint that uses the Z axis instead of the X axis. If something is wrong with your hinge, check your other constraints to see if this might be the problem.
Options
Limits
Z Angle
Enables/disables limit rotation around Z axis.
Lower
Lower limit of Z axis rotation.
Upper
Upper limit of Z axis rotation.
Slider

Panel: Physics ‣ Rigid Body Constraint
Type: Slider

The Slider constraint allows relative translation along the X axis of the constraint object, but permits no relative rotation, or relative translation along other axes.
Options
Limits
X Axis
Enables/disables limit translation around X axis.
Lower
Lower limit of X axis translation.
Upper
Upper limit of X axis translation.
Piston

Panel: Physics ‣ Rigid Body Constraint
Type: Piston

A piston permits translation along the X axis of the constraint object. It also allows rotation around the X axis of the constraint object. It is like a combination of the freedoms of a slider with the freedoms of a hinge (neither of which is very free alone).
Options
Limits
X Axis
Enables/disables limit translation around X axis.
Lower
Lower limit of X axis translation.
Upper
Upper limit of X axis translation.
X Angle
Enables/disables limit rotation around X axis.
Lower
Lower limit of X axis rotation.
Upper
Upper limit of X axis rotation.
Generic

Panel: Physics ‣ Rigid Body Constraint
Type: Generic

The generic constraint has a lot of available parameters.
The X, Y, and Z axis constraints can be used to limit the amount of translation between the objects. Clamping the min/max to zero has the same effect as the Point constraint.
Clamping the relative rotation to zero keeps the objects in alignment. Combining an absolute rotation and translation clamp would behave much like the Fixed constraint.
Using a non-zero spread on any parameter allows it to rattle around in that range throughout the course of the simulation.
Options
Limits
X Axis/Y Axis/Z axis
Enables/disables limit translation on X, Y or Z axis respectively.
Lower
Lower limit of translation for X, Y or Z axis respectively.
Upper
Upper limit of translation for X, Y or Z axis respectively.
X Angle/Y Angle/Z Angle
Enables/disables limit rotation around X, Y or Z axis respectively.
Lower
Lower limit of rotation for X, Y or Z axis respectively.
Upper
Upper limit of rotation for X, Y or Z axis respectively.
Generic Spring

Panel: Physics ‣ Rigid Body Constraint
Type: Generic Spring

Options available to a Generic Spring constraint.
The generic spring constraint adds some spring parameters for the X/Y/Z axes to all the options available on the Generic constraint. Using the spring alone allows the objects to bounce around as if attached with a spring anchored at the constraint object. This is usually a little too much freedom, so most applications will benefit from enabling translation or rotation constraints.
If the damping on the springs is set to 1, then the spring forces are prevented from realigning the anchor points, leading to strange behavior. If your springs are acting weird, check the damping.
Options
Limits
X/Y/Z Axis
Enables/disables limit translation on X, Y or Z axis respectively.
Lower
Lower limit of translation for X, Y or Z axis respectively.
Upper
Upper limit of translation for X, Y or Z axis respectively.
X/Y/Z Angle
Enables/disables limit rotation around the X, Y or Z axis respectively.
Lower
Lower limit of rotation for X, Y or Z axis respectively.
Upper
Upper limit of rotation for X, Y or Z axis respectively.
Springs
X/Y/Z Axis
Enables/disables springs translation on X, Y or Z axis respectively.
Stiffness
Spring Stiffness of the translation on X, Y or Z axis respectively. Specifies how “bendy” the spring is.
Damping
Spring Damping of the translation on X, Y or Z axis respectively. Amount of damping the spring has.
X/Y/Z Angle
Enables/disables springs rotation around the X, Y or Z axis respectively.
Stiffness
Spring Stiffness of the rotation around the X, Y or Z axis respectively. Specifies how “bendy” the spring is.
Damping
Spring Damping of the rotation around the X, Y or Z axis respectively. Amount of damping the spring has.
Motor

Panel: Physics ‣ Rigid Body Constraint
Type: Motor

Options available to a Motor constraint.
The motor constraint causes translation and/or rotation between two entities. It can drive two objects apart or together. It can drive simple rotation, or rotation and translation (although it will not be constrained like a screw since the translation can be blocked by other physics without preventing rotation).
The rotation axis is the X axis of the object hosting the constraint. This is in contrast with the Hinge which uses the Z axis. Since the Motor is vulnerable to confusing perturbations without a matching Hinge constraint, special care must be taken to align the axes. Without proper alignment, the motor will appear to have no effect (because the hinge is preventing the motion of the motor).
Options
Linear motor/Angular motor
Enable
Enable linear or angular motor respectively.
Target Velocity
Target linear or angular motor velocity respectively.
Max Impulse
Maximum linear or angular motor impulse respectively.


How can I create a wall(mesh) from 2 profiles and a path that connects them?

Using Follow path constraint offset

Add a flat profile mesh on the xy plane, give it a follow path
constraint of -Z forward (face normal pointing out) and y up.
Set to fixed position. One end of curve will be 0 and the other 1.
Duplicate the profile mesh and move to another offset on curve.
Scale either end or both.  With both end profiles selected run the script below.
"Extrudes" segments time around the curve linearly interpolationg
from start scale to end scale. Makes a mesh object using the global
coordinates of the arranged profile.

EDIT: Update for 2.8x

The script:

import bpy
import bmesh
from mathutils import Vector, Matrix

context = bpy.context
scene = context.scene
dg = context.evaluated_depsgraph_get()
coll = context.collection or scene.collection

def offset(ob):
    return ob.constraints["Follow Path"].offset_factor

ob1, ob2 = sorted(context.selected_objects, key=lambda o: offset(o))
T = ob2.matrix_basis @ ob1.matrix_basis.inverted_safe()
ml2 = ob2.matrix_basis.copy()
start = offset(ob1)
end = offset(ob2)
segments = 10
d_offset = (end - start) / segments
me1 = ob1.data
me = me1.copy()
bm = bmesh.new()
bm.from_mesh(me)
# remove non boundary edges
#bmesh.ops.delete(bm, geom=[e for e in bm.edges if not e.is_boundary and e.link_faces], context='EDGES')
bm.to_mesh(me)
bm.clear()
# build the mesh by sliding ob2

def ring_fill(ring1, ring2):
    for e1, e2 in zip(ring1, ring2):
        bm.faces.new(e1.verts[:] + e2.verts[:][::-1])

bm.from_object(ob1, dg)
bmesh.ops.transform(bm, verts=bm.verts, matrix=ob1.matrix_world)
offset = start  # + d_offset
copy = ob2
copy.data = me
scale2 = ob2.scale.copy()
nring = len(me.vertices)
ring = [e for e in bm.edges if e.is_boundary]

for i in range(segments):
    offset += d_offset
    copy.constraints["Follow Path"].offset_factor = offset
    copy.scale = ob1.scale.lerp(scale2, (offset - start) / (end - start))
    dg.update()
    bm.from_object(copy, dg)
    bmesh.ops.transform(bm, verts=bm.verts[-nring:], matrix=copy.matrix_world)
    next = bm.edges[-len(ring):]
    ring_fill(ring, next)
    ring = next

# reinstate the end (much of the same)
ob2.data = me1
ob2.matrix_basis = ml2
dg.update()
bm.from_object(ob2, dg)
bmesh.ops.transform(bm,
                    verts=bm.verts[-len(me1.vertices):],
                    matrix=copy.matrix_world)
next = [e for e in bm.edges[-len(me1.edges):] if e.is_boundary]
# fill
ring_fill(next, ring)
# recalc normals
bmesh.ops.remove_doubles(bm, verts=bm.verts, dist=1e-7)
bmesh.ops.recalc_face_normals(bm, faces=bm.faces)
ob1.select_set(False)
ob2.select_set(False)
# make new object and link to scene.
ext = bpy.data.meshes.new("Extrusion")
bm.to_mesh(ext)
extrude = bpy.data.objects.new("Wall", ext)
extrude.show_wire = True
extrude.show_all_edges = True
coll.objects.link(extrude)


Has anyone started a project similar to Grasshopper (Rhino) for blender?

Sverchok

There is such a tool, it is called Sverchok. It's russian for "Cricket" as a sign of respect to Grasshopper. Sverchok is a Blender add-on that works on all platforms, and has over 180 node types.

The project github page: https://github.com/nortikin/sverchok/ (including download links)
Ask questions on the issue tracker

To get a sense of what people are making with Sverchok checkout the google+ group

sverchok community


You switched Maximum draw type to Solid. Set this back to Textured

And also note, that this type of lamps must be rotated, to see the effects.


How can I add displacement to part of a material in Cycles?

To have a good control over a bump value add to your existing nodes set a Mix RGB node (Add--> Color-->Mix RGB), set its type to Multiply and the Color 1 to pure white. Connect it to other ones as shown below.

Now changing a factor of the node  will result in a different amount of bumpiness.


It's important to have the normal pointing outward of your model, otherwise back face might be visible at render time and give bad visual effect.

The reason blender still allow normal to be calculated inside is for specific use case like rendering a room from the inside.

However, when there is something wrong with a model, blender might have a bad time computing the normal and you might have to flip them manually if some if them are wrong.

I can help you more if you post screenshots or share your blend file.

Update new that I have seen the blend file :

You faces were indeed inward, you can see that by going in edit mode and activating the face orientation visualization tool ( red is the back of the face, blue is the front, so red should never be in render sight ) :

The reason Blender is having trouble computing the orientation is because your model is "open" at the hands, neck and bottom, that kind of hole should not appear in your final model. If you don't want to add more geometry I would suggest using the solidify modifier, it will simply add some thickness to the planes and red faces won't appear anymore.

Or if you want simply want to have the faces in the correct orientation as a quick fix just select every faces and perform a flip normals operation.


They are normal UV's, although a UDIM style layout has been used. UDIM support in blender is being worked on and should be included in the 2.80 release.

UDIM support will allow a single material to use multiple image textures, all sharing a single UV layout.

The model you have uses multiple materials, each assigned to a different part of the mesh. Each material uses the same UV layout with a different image texture. In the end the result is the same.

This is possible from the way UVs work, the position of a vertex in the UV layout is an X,Y position on the image as a percentage, that is a range from zero to one, so 0.0 is one side of the image, 0.5 is the middle and 1.0 is the other side. This helps by allowing us to use different resolution textures with the same UV layout. Unless set to clip, an image texture will repeat continuously, so a UV position of 1.5 resolves to the same image location as 0.5. In this case it is only used for clarity, you will get the same result by placing each section directly on top of each other.

The main difference with UDIM is that it repeats on larger numbers, were UVs go from zero to one, a UDIM layout can be zero to ten, with each whole number corresponding to a different image, so 1.5 will be the middle of the second image, 3.5 the middle of the fourth and 10.5 should wrap back to the same place as 0.5 on the first image.

For reference ptex is another approach to this from Disney, it allows a different texture resolution to be used for each polygon, technically it is considered a different texture for each face and doesn't use UVs, all thee textures are then combined into one texture file. There has been some work done to add ptex to blender but it has never been completed.


Splitting a mesh at the end of a shape key-based animation

Consider switching from 1 mesh to 2 meshes if convenient.  Render or Not Render is animatable with keyframes.  Combined Mesh is replaced with Floor Mesh and Floating Bubble Mesh.  Advantage Seams are avoided. Disadvantage Shape Continuity efforts will be needed.
Consider your mesh as always 2 separate submeshes if the Viewer cannot see seam vertices which are joined for part of the animation.  Shrinkwrap Modifier and Warp Modifier.
Consider Metaballs with reservations.  Explained Below.
Consider fluid simulations.  Larger Compute Time Demands.

Two Separate Meshes
Preliminary Results.
Warp Modifiers. Shrink Wrap Modifier.  No Shape Keys Yet.

Metaballs

Lower Portion Connected in image below.

Lower Portion Disconnected in image below.

I wrote with reservations because I have seen metaballs stop working at the most inconvenient times and simple conditions.    Then they work under other conditions such as particles.


Why does a bezier curve twist when rotated?

According to Wiki:

  A 3D Curve has Control Points that are not located on the Curve’s local XY plane. This gives the Curve a twist which can affect the Curve normals. You can alter how the twist of the Curve is calculated by choosing from Minimum, Tangent and Z-Up options from the drop-down menu.

There are three tilting calculation methods. Choose the one that results as expected.


Why isn't my metallic material showing in lookdev mode?

I know a glitch that could cause this.
Sometimes when you focus on an object with the Numpad "." button, objects turn black and you can get rid of this by pressing undo.
Sometimes this can happen randomly (I don't know how), so I think that might be your problem.
(Save and then try this incase it doesn't work)


If I am rendering with blender, can I open a new project while it is rendering?

Just open a new instance of Blender:

Windows:
Right click on the blender icon then choose Blender. This will open new blender instance.

Linux:
Just run the application another time

Mac OS:
By default, only 1 instance of an app can be run. You can work around this limitation by invoking Blender from the terminal command line. open -n /Applications/blender.app


Use Filebrowser in a node for the Animation-Nodes-Addon

That is actually very simple because I developed a system to simplify tasks like this one.

You just have to call the invokePathChooser function in your drawing code and give it a callback (the name of the function that handles the result). AN will do the rest for your.

class MyNode(...):
    # ...
    def draw(self, layout):
        self.invokePathChooser(layout, "setFilepath", text = "Find File")

    def setFilepath(self, path):
        print(path)


Physics Colliders Explode Array of Blocks Prematurely

I did not allow enough space between blocs.


How can I automatically create edges according to the number of vertices?

You have a couple options:
Triangulate:
Press F with everything selected to make an n-gon, then press CtrlT to triangulate it:

Bridge:
As Leon Cheung already mentioned, you can use the bridge tool.
Select the opposite edge loops (in this case, everything) and press W> Bridge edge loops or WE.

This method will create quads if the the edge loops have the same vertex count but otherwise creates triangles. You can press AltJ to automatically convert some of the tris to quads.
Fill:
You might already know this, but I thought I'd mention it just in case.
Fill now automatically detects vertices for the new faces, so to do what you did in your question you only have to select two vertices and then repeatedly press F.


If you select your body mesh and go to the vertex groups, you will see that you have two "series" of vertex groups: one has been created by Rigify parenting (all thoose starting with the suffix "DEF"), the other created by another rig. The DEF vertex groups have no weights assignements (so they don't act), while the others do have weights, but they don't "talk" with rigify bones because they have non corresponding names.

There are three different ways of repair:

1) delete all "DEF" vertex groups, then rename all others vertex groups, i.e. "lindex3" shall be renamed "DEF-f_index.03.L" (I know, it's a pain".

2) rename the deforming bones of Rigify (the opposite, but another pain).

3) Delete all existing vertex groups and redo the weighting. If you want to use Automatic weighting you will have to temporarily detach the head from the body, because in the head region you will get the "Bone heat failing" error, and probably this is the reason why you did the parenting but only empty vertex groups were created.

BTW, it's correct to parent the mesh to "Rig", not "Metarig".


How to cut out unwanted content from the 3D model

Sometimes it can save time to build the new geometry you need.

In this case:

Add a new UV sphere aligned to the world axes, with twice as many segments as rings. (Here, 32 and 16)
Delete the exterior faces over the section to be removed.
Put your snap settings to vertex, active, snap to self.
Extrude the vertex at the north pole downwards, constraining to Z, (E,Z) and snapping to a convenient vertex on the equator. This will create the edge from the north pole to the centre of the sphere.
Set 'Automatically merge vertices' on, and extrude the new central vertex outwards twice, once to each of the bottom corners of the removed section of the sphere. This will create the other two straight edges you can see.
Select all the new straight edges, and from the (ctrl-E) edges menu, select subdivide. At the bottom of the Tools panel, set the number of cuts to 3.
Fer each new flat face you are going to create, select the edges surrounding it, go to the face menu (ctrl-F) and select 'Grid Fill'. At the bottom of the tools panel, set the span to 4.
Bevel the edges of your new faces, if you want to.

It may all seem like a bit of a faff, but once you can find your way around, this sort of approach can take less time than tidying up after a Boolean. (I'm sure someone here will point out how I could have saved a few steps.)


There is an incredibly easy way to do this using the outliner. All objects with the  "invisible" property enabled will have the render icon faded out. Instead of selecting all your objects and manually turning off "invisible" on all of them, you can simple click the render icon in the outliner to re-enable visibility.


How do I add to my scene a shader I downloaded?

What you are trying to download is a full blown shader that is designed for wood. Unless you are making wood of all types, it seems like overkill to download a shader for it, as the principal shader included with blender more than enough. What you need is a wood texture.

Here is a texture website that I would recommend: https://cc0textures.com/list?q=wood&method=&type=&sort=Popular

Select the one you need, and hit download. Unzipping the file will give you a folder.

New go back to blender, select the object you want to give a wood texture, and press the shading tab on the top. Create a new material for that object by pressing "new" on the top of shader editor.

But first you need to enable an add on called Node Wrangler which will help you a lot while editing nodes. Go to "Edit" near the top, -> Preferences -> Add-Ons -> Search "node wrangler", and check the box.

Go back to the shading editor and select the big green box. Press Ctrl-Shift-T. In the file picker it opened, find the folder you got from the texture website, open it, select all the files inside, and press Principle Texture Setup on the bottom right. Node wrangler will open up a lot of nodes automatically, and should look something like this.

Aaaand.. that's about it. Now you can view this new texture by switching to LookDev or Render mode on the top right (make sure to go to the layout tab first).


Detect and fix holes in an object (not mesh holes)

Assuming you do have a closed, clean, manifold surface, and you're looking for the number of genuine topological holes, you could use the surface's Euler Characteristic? (You'd better get Math SE to check me up on that one) .. anyway...

Object mode, select the object, run this snippet..

import bpy

ob = bpy.context.object
me = ob.data
v = len(me.vertices)
e = len(me.edges)
f = len (me.polygons)
g =  1 - ((v - e + f)/2)

print(g)

.. and the genus is returned in g.


Make animation so that there is no transformation in between keyframes?

That can be a driver

If many cubes, certainly you don't want to animate them all, so use a driver:

Using the selected cube in the image above, add a driver to its "show in viewports" (and when all is good do the same for "show in renders").
The driver uses some other object's location (an empty) and uses the formula on its x location (named e for empty):

e <= (self.location.x + self.location.y * 5 + self.location.z * 20)

The empty is animated along X axis from 0 to the amount of cube (multiplied by the size of the cubes).
When the empty moves, we want to change the cube visibility from false to true (so hide_viewport from true to false).
If you want to go along X, then Y, then Z, the formula takes the empty X position and test it over the cube location.

e <= (self.location.x + self.location.y * 5 + self.location.z * 20)

is to:

change over X
every y * 5 locations because 5 cubes along x when x changes
and every z * 20 locations because 5 * 4 cubes along z when z changes

Pragmatically:
Set this driver for the first cube, the one at (0, 0, 0),
then select all the cubes and use CtrlL and "animation data".

this will copy the driver to all other cubes and make the animation.


Figure out the problem. The python interpreter can be forced to use unbuffered prints if we set the PYTHONUNBUFFERED environment variable. Just use
export PYTHONUNBUFFERED=on
Nevertheless that still did not solved completely my problem because I had a piped  grep together with blender. Hence, although blender was running unbuffered outputs to console, grep was... Just used grep --line-buffered (saw that in s very good post about stdout here https://eklitzke.org/stdout-buffering)
Hope that helps somebody! Thanks for everyone that tried to help!
/edit:
Since 16.01.2020, to make this work you have to launch blender with --python-use-system-env to make it work.
Source: https://developer.blender.org/rBS7c2f0074f3fe2411daa7a6e351d7cbc535246871


There's nothing wrong with UV maps overlapping. While it is difficult to say so for certain with all game engines, all of the game engines I have used have always been comfortable with overlapping UV maps.

Depending on what you're looking to unwrap, you may wish to use Cube Projection, Sphere Projection or Cylinder Projection instead of simply UV unwrapping by default. You can find these options below "Unwrap" in the "UV" dropdown.

You may also wish to use Smart UV Unwrap. All of these settings can be found in the "UV Editing" tab.

Of course, overlapping UVs could potentially be messy to work with, so some people choose to simply duplicate a part of the texture for a duplicate UV island in a different location.

For adding your textures into Unreal Engine, you will need to duplicate any pipeline you have in Blender. If you have multiple nodes running into a shader (e.g. Image Texture into Base Color & Noise Texture + Bump into Normal), you will need to replicate the same nodes using Unreal Engine shaders.

It is possible that you could bake the texture - however, keep in mind that you are baking the lighting as well, so this would likely only be useful for static objects with similar lighting to your UE4 project.


How to make particles fall straight down instead of initially going up?

This is the result of the direction that the normals are facing. If you rotate your plane 180° on the Y or X axis (upside down), it will be resolved.

Also you can flip your normals by going into edit mode and select all faces. Then press CtrlShiftN to flip the normals.


How to make that hair, coat & similar things animate automatically?

Here is a basic setup for using a cloth simulation.  It's really basic and uses all default settings.

For the 'clothes' or 'mesh-hair' you would add a Cloth Modifier which you can add through the Physics tab.  I've indicated the button in the attached image below.

For objects that will affect the cloth shape, you can add a Collision Modifier which is also located in the Physics tab.  Just make sure that you have the proper object selected when you add each of the Modifiers(that isn't clear from the images ;)

Now make sure the Timeline is set to the first frame and start the animation.  You can use the Play button in the Timeline or press Alt+a to run the simulation.

Here is what this looks like when you run it.

Stop the animation when it looks the way you would like it to. If you want to 'freeze' the Cloth sim, you can press the Apply button for the Cloth Modifier under the Modifiers tab.


On the left, a shrinkwrap modifier is used, and this is both shrinkwrap and cloth simulation on the right.

The left one

It is a UV sphere, rotated so that the poles are at the sausages extremities, scale to be close to the target and subdivided in order to fit the target more accurately. The idea is to create a surrounding shape so that it helps the modifier to project the vertices correctly.

Then a shrinkwrap with a little offset and set to 'nearest surface point'.

As you can see below, the gap between the two sausages is composed of stretches faces.

The right one

It uses both shrinkwrap and cloth simulation.

The shrinkwrap is this time set to 'project' and uses a vertex group: here we want to shrink/project only the needed parts:

The shrinkwrap is only here in order to level up some part of the mesh as if not the flat film may cut the sausages. But you can also sculpt/shift it up manually to avoid the modifier.

The cloth simulation uses a pin group and sausages are collision object:

After animation we obtain this shape:

Though, the blend file here uses Cycles and not Blender Render (as I don't know it enough). But I think the question was mainly about the film's shape.


Is there a way to combine colors in blender?

I think the behavior you describe is human perceptual mixing color, which the color need to be deal in HSV, HSL like color space. Then the mixing between two value can be meaningful.
Main Node

AVG Node Group

Circulate Connected Average Node

Circulate Details:
let color1, color2
if abs(color1 - color2) > 0.5:
then:  # We need to get the closest average rather than the far one
output = avg(color1, color2) - 0.5
else:
output = avg(color1, color2)

The interpolation of HSV color can preserve saturated and value(brightness) and interpolate between color. While RGB value is bind to it's own R,G and B color, which make the color "dirty" when you trying to mix them directly.
I can't find directly HSV color ring node inside node editor so I manually separate them into HSV, and mix them together, and then combine them back to color. The given result is desirable compare to MixRGB node.
Different Behavior when Hue is difference by 180 degree

A more reasonable result using XYZ for interpolation and HSV for tuning

XYZ model is additive color space graphics - Calculation of a mixed color in RGB - Stack Overflow, it could be used in mixing light color properly, but in your requirement, HSV model is suitable for lightness, so manually separate them and combine after XYZ is done mixing.


Making grass. Difference between hair particles and emitter?

Generally, hair is recommended because you can use Cycles particle hair options to get a decent grass shape. It can also be softer on performance due to Children. However, Emitter pulls ahead when you have a diverse set of grass objects. Load them into a Group, and have the particle system use the Group option. This gives better look and performance (assuming you have good grass assets), but requires more work to set up.

Overall, both options work and have their uses. As far as I can tell, hair is commonly recommended in tutorials because Blender Guru put out a good tutorial for Hair grass some time ago, and so the method caught on.


How to stretch a mesh object over another?

You could also try Cloth simulation or the Shrink wrap modifier.
Soft body simulation could be useful if you need the cloth to stretch (see What is the technical difference between softbody and cloth simulation?), but other than that you are probably better off with cloth. Note that if you do use soft body, remember to set the Cache step in Physics > Soft Body Cache to 1 to cache soft body deformations on every frame.
Cloth simulation:

Cloth simulation is one of the hardest aspects of CG, because it is a deceptively simple real-world item that is taken for granted, yet actually has very complex internal and environmental interactions. After years of development, Blender has a very robust cloth simulator that is used to make clothing, flags, banners, and so on. Cloth interacts with and is affected by other moving objects, the wind and other forces, as well as a general aerodynamic model, all of which is under your control.

Note that a new feature for "sewing" cloth has been added on February 6th 2014. This could be very useful for pulling cloth together (like in your first image). If you want to try it out, get a recent development version and have fun :)
Shrinkwrap modifier:

The Shrinkwrap modifier allows an object to “shrink” to the surface of another object. It moves each vertex of the object being modified to the closest position on the surface of the given mesh (using one of the three methods available). It can be applied to meshes, lattices, curves, surfaces and texts.

As mentioned by ideasman42, you can also try using the Convex Hull tool.
Run it by pressing Space> Search > Convex Hull:


The knife tool has no undo support.
While it is possible to have undo history in a modal operator tool, at this time the knife tool does not. Nor is adding undo functionality planned.

However after confirming the knife tool cut, there are other modeling tools that can help you get around a misplaced vertex.

X > Dissolve Vertices, that will delete the selected vertex, or vertices and fill the surrounding geometry.
V if you accidentally snapped the vertex to a vertex already on the model, then you can rip the vertex and for a new one.
AltM > At Last or At First Merging, if you placed a vertex but wanted it to connect to a vertex already on the model, you can select the two vertices and merge them at the location of the "Good" vertex.
GG or ShiftV vertex slide, will let you slide the selected vertex along an edge.

Another tool that adds edges is Vertex Connect, it works by adding edges in a straight line between selected vertices.


Memory increasing but not adding any new geometry

Whenever you execute an operator, even if that just means to select something, or deselect it, Blender needs to keep track of what you were doing by recording those actions to what is called the Undo Stack. You can think of it as a pile of commands which were run. If you press Ctrl + Z Blender will travel backwards in time along this stack so to speak. So you might be thinking you're not doing anything, but for Blender you do something  :)

Think about it: How else would any application know what state you were in before, what the document or model had looked like before you performed a specific action? How would the app be able to go back to previous states, unless recording and keeping those states around?

After performing a few actions, you can see the whole stack by pressing Ctrl + Alt + Z. This will show a menu with the latest commands you executed, and allow you to choose a specific state of the model. The one with the eye icon is the state you're looking at in the 3D View currently:

To verify this, you can simply disable the Undo Stack alltogether by going to the User Preferences, Section Editing and set the number of Undos to Zero (section marked in red):

When you now perform a few actions like select and deselect, you'll see that the memory consumption will jump slightly, but it won't just increase like a one way street any longer. There will be occasions where the memory consumption actually will be reduced, depending on what you do. However, this is strongly discouraged, as you really lose the Undo functionality. You can't even undo selections any more.

The settings in the prefs allow you to set certain boundary conditions on when Blender should forget about what you did. One is the number of steps, the other is the memory limit. Both help you to tailor your personal Blender prefs towards your machine specs. The memory limit is a limit for the Undo Stack itself. So in my case, Blender is allowed to allocate 2 GB of RAM for just the Undo functionality. If I perform a lot of memory intense actions in sequence, this limit could be exceeded, and Blender would start to delete the first element in the stack, then the second, until the stack fits the limit again. Sounds complicated, but bottom line is: Blender will never use more than that, so the constant increasing of RAM consumtion stops at that point.


Based on the comments and the question i take it that you want to close the bottom area of the object and at the same time reduce the number of vertices to a minimum.

In that regard, i would do the following:

Go in edit mode -> edge selection
Select the edges that go along the long side ending at each side at
the n-gon
Press X and Delete the Edges
Now switch to vertex selection
Select the vertices at each side at the bottom edge of the n-gon, where the previously deleted edges were connected.
Press X and Dissolve Vertices
Now the left over edges can be used to create faces along the bottom area by selecting two edges and pressing F to fill the area between those.

All this sounds stretched and long, but once you know the steps it's done in a jiffy.

Here a little visual of the procedure:

I didn't go through all faces at the end, as it is just rinse and repeat.

A tip at the end, i would suggest to use the "F2"-add-on, that comes with Blender:

Makes it easier and faster while modeling.

Happy Blending


Archimesh in Blender Version2.79

Go to File > User Preferences menu. A new dialogue will appear showing User Preferences.

Click on Add-ons, in search and type Arch , below the search go to Supported Level and click Community.

Wooo, finally you will see Add Mesh: Archimesh on the right panel.


How to fix streched texture areas after unwraping UVs?

Ok, i found the solution by myself, i added a loop cut (ctrl + r) where the texture stretches.


You missed this little step here ...

For the type, add image texture.
Point the target to the texture named "untitled" you have created in your image editor.
Change the Mapping Coord from "Generated" to "UV" - Paul Gonet

Additional Notes
 When you are done painting your texture go to the UV/Image editor and press F3 to save the image. Otherwise all of your work will be lost. Saving the blend file will not save the image with it. Please read this link: Why did the texture I painted in texture paint mode disappear?

  Image painting will display in render view mode in Cycles setup, but
  to make  sure the image renders, you need to save the image to
  directory and save the changes you make. Many users forget to do this,
  and assume that saving the file will save the state of the image
  painting, and this is false. In the Image Editor, you can choose 'save
  image' or 'save image as' and iterate changes to new images if you
  want. You can also indicate 'pack into file' from there, as well as
  'pack external data' from the File header. - Craig D Jones


The scaling is probably not uniform across the mesh (i.e. X, Y and Z have been scaled to different values in object mode), therefore the "Solidify" thickness varies according to direction.

Do CtrlA > Scale to fix this and this should fix the behaviour of Solidify too.

Example: the mesh (with solidify) is stretched along a single direction. Solidify gets distorted. Then "Scale" is applied and it gets fixed.

at the end it's not a glitch: it's me comparing the effect before and after


How to "refresh" variables / selected components for an operator in python script?

The right answer is, that all tho code outside the OP stays "static".
Running everything inside the OP solves the problem.


How to set up shader materials with main node Principal BSDF

The glTF format has a different material model from Blender, and does not support arbitrary nodes.  It uses a principled PBR model powered by textures and uniforms.
For some materials, it's possible to use the Blender Cycles "Bake" panel to render a complex node graph to a texture atlas.  This allows such a material to be used even on lighter-weight mobile rendering clients that wouldn't normally support arbitrarily large numbers of shading nodes.
For complete usage instructions, see the Blender Manual on glTF.


For a compact "control thing" you can use the dope sheet view. This will combine all object's animation data into one window for editing. In the dope sheet view you can reverse the animation data (for the door to reopen after closing) and then simply duplicate this new set of keyframes and voila 4 cycles of the door animation. Then again, it depends on what you are wanting to use this longer animation for, nevertheless, here is an excellent tutorial explaining the dope sheet: https://www.youtube.com/watch?v=JIWd0xfzxIc


Control transparency of image texture in nodes?

Change it from opaque to alpha blend under the texture box in properties, Then apply any sort of color related node, connect it to a mix shader with a transparent node connected too. Make sure your wire is black and white, if not just change it whith a color ramp. The topmost image texture, I'm pretty sure can be changed to your image beneath it, that way you don't see through the cube.


How do I add the same Modifiers to all Linked Duplicates?

If you create a linked duplicate of an object (Alt+D) it will copy any existing modifiers. But the modifier stack of each duplicate can be individually manipulated without affecting the original. So if you retroactively add any modifiers to duplicates they will only be applied to one object.

You cannot add modifiers to multiple objects from the modifier panel. The modifier will only apply to the object selected last. However you can copy modifiers to a group selection, by selecting all the unmodified objects, and then the object with the modifiers, and use Ctrl+L to copy Modifiers.

Useful tip: to select all linked duplicates of a mesh use Shift+L or Select > Linked > "Object Data"

1st Image: Ctrl+L to copy modifiers from the last selected object

2nd Image: Shift+L to select all linked duplicates

S/O to @Ray Mairlot and @Gorgius for their comments, which I have redrafted as an answer for the sake of completion


Unable to parent bones (not getting the 'keep offset' option)

Okay, I got it. I just had to select the armature and the root bone and press Ctrl J (in object mode). Then go to Edit mode and select the bones accordingly AND IT WORKS!


Is UV mapping and texturing necessary? Can I just use materials before rigging?

You don't have to texture a character before you rig it and you don't have to UV unwrap it if a procedural texture works.

While a UV wrapped texture can be used to control the glossy factor in precise parts of the character, you can turn down the overall glossiness of a procedural texture, the steps will depend on which render engine you use and the material you have.

I think it is better to rig a character before unwrapping (especially when learning) as the rigging process can lead to finding bad mesh deforms that need better topology to fix, this leads to an existing UV unwrap needing to be adjusted for the changes.


What does the ! mean in user preferences?

It is a support level warning icon.

That generally means it is an experimental, community contribution, or "work-in-progress" under development addon or extension, not officially supported or endorsed by the Blender foundation, as opposed to official addons, or stable fully supported ones, I think.

Generally means use at your own discretion, though most likely no harm will come from it.


Blender has no reason to take the rotation you've made into account as you've not saved it with an Insert Keyframe (shortcut i).
If you want any transform to be automatically saved without the need of Insert Keyframe, you need to enable the Auto Keying option in the Timeline:

If you enable its Only Active Keying Set option, it will only take the selected transform into account:


Blender Sculpt Mask bush is not showing the masked area

In the top right of the 3D view, there is the Show Overlays button with a down arrow next to it. Click the down arrow and make sure that the mask overlay is turned on. That was the issue I had.


How to setup Light Linking in blender 2.9 or 2.8x?

As far as I know Blender doesn't have that feature. A huge amount of people asked for it for years, but nothing so far.


The subdivide tool in Blender [W > Subdivide] mainly works on edges, but in a few special cases including the cases of triangles and quadrangles, it will also work on a face. However, the subdivide tool will not work on the class of faces called N-gons. To subdivide an N-gon either  manually divide the face into quadrangles and triangles, or enter edge select mode, and divide the edges around the face and subdivide the edges.


How do I fix the "context invalid" issue when using python method weight_paint()

This most likely needs to be wrapped in an add-on that is in the 3d view (as in the button to call this is in the 3d view so that the last user input before this runs is in the 3d view). An operator class, like when you call bpy.ops.paint.weight_paint(stroke=strokes, mode='NORMAL'), often has a poll function as this one does. A poll function basically checks for certain criteria to be met before running its execute method, and one of the most common checks is if the context is correct. If you are running this from anywhere other than the 3d view in weight-paint mode, the context will likely be incorrect.

Here is an add-on demo (very heavily commented):

# Blank Addon

bl_info = {
    "name": "Blank Addon",
    "author": "Anonymous",
    "version": (1, 0),
    "blender": (2, 76, 0),
    "location": "3D View > Tools > Blank",
    "description": "A completely blank addon ;)",
    "wiki_url": "",
    "category": "3D View",
    }

import bpy
from bpy.types import Scene, Panel, Operator
from bpy.props import IntProperty

# UI...this creates a new panel in the 3D View
class BlankAddonPanel_PT(Panel):
    # name of the panel...
    bl_label = "Blank Addon"
    # used to register panel
    bl_idname = "3D_VIEW_PT_layout_BlankAddon"
    # specifies to make panel in 3D View
    bl_space_type = 'VIEW_3D'
    # it is in the tools not the properties region
    bl_region_type = 'TOOLS'
    # only show panel when in object mode
    bl_context = "objectmode"
    # name of the tab for the panel
    # (if this is 'Tools' it will be on the first tab)
    bl_category = 'Blank'

    # the meat of how to draw the panel
    def draw(self, context):
        scene = context.scene
        layout = self.layout

        # create a new column and label it column
        col = layout.column()
        col.label("Blank Column", icon="COLLAPSEMENU")

        # create a button that is linked to the operator
        col.operator("scene.blank_print_ba", icon="QUESTION")

        # create a property field linked to the prop
        col.prop(scene, "blank_prop", slider=True)

# Operator this is setting up what the "button" executes
class BlankPrint_PT(Operator):
    # the label for the button in the UI (if not overwritten in the panel code)
    bl_label = "Do Nothing"
    # the name of the operator (only used in python ie. for ui)
    bl_idname = "scene.blank_print_ba"
    # tooltip for when user hovers over button in UI
    bl_description = "Prints useless information =)"
    # options: can be registered, support undo (Blender does this for you)
    bl_options = {'REGISTER', 'UNDO'}

    def execute(self,context):
        scene = context.scene

        # this is where the meat of your operator would go :-]

        # send a message to the info bar
        self.report({'INFO'}, "I didn't do anything :-D, but your prop is " + str(scene.blank_prop))

        return {'FINISHED'}

# classes to register/unregister
classes = [BlankAddonPanel_PT, BlankPrint_PT]

def register():
    # register each class
    for i in classes:
        bpy.utils.register_class(i)

    # create props
    Scene.blank_prop = IntProperty(name="Blank Prop",default=1,min=0,max=100)

def unregister():
    # unregister classes
    for i in classes:
        bpy.utils.unregister_class(i)

    # delete props...it's very important to delete each prop
    # you add in register here!
    del Scene.blank_prop

if __name__ == "__main__":
    register()


Is there a way to (Cycles) render fire with no emission?

There are a couple of different ways to handle this, depending on the exact result you want. Obviously, if you want no emission at all you can just not include the emission shader in your node graph and just add the "fire" grid (attribute node) onto the "density" grid. It sounds like you want the fire to emit light visibly, just not illuminate anything else?

The easiest way to do that is just use the light path > is camera ray output. Multiply it by your flame grid and it will only appear when viewed by the camera. Here's an example in an otherwise typical fire shader:

"Is Camera Ray" returns 1 if the ray has originated from the camera, zero any other time. By multiplying it with the flame grid, we essentially delete all data from the flame grid for any ray type other than camera.

If you want the fire to illuminate the smoke plume and show up in reflections, but not light surrounding objects (because let's face it, that's slow and noisy) you can turn off diffuse visibility on the domain object:

Since we are using ray visbility here, this will also allow us to skip the volume shader calculation entirely for diffuse rays, which might give some extra speedup.


Moving the 3D cursor while in Blender 2.8's Grease Pencil Draw Mode

It appears that this possibility is currently missing.

You can work around it by setting a key binding for your purpose. I suggest CtrlShiftLMB.

Open Edit > User Preferences > Input
Search "Set 3D cursor"
Edit the first entry (under "3D view"), by clicking on the current key binding and by "recording" CtrlShiftLMB (you can change it later to CtrlShiftAction Mouse for compatibility with left-click-select mode)

"Save User Settings"

It should work fine. Using LMB alone will still work in modes other than Draw, and the Lasso select should still work with CtrlShiftLMB if you do click-and-drag instead of click-and-release.


How to create a gradient texture from one material to another (opaque to clear)?

All you need to do is use a Gradient Texture (see how to create it procedurally here: How to create a gradient texture?) as a mask for the transition between two materials.

Set up the nodes as pictured below. Try to experiment with a Mapping Node settings (adjust the Location, Rotation and Scale parameters) to achieve a desired effect.

To have a better control between materials transition add a Color Ramp node and experiment with its slider.


Is it possible to see an image as plane through a transparent object?

Sure it is possible.
You just need to enable the right blend modes.

Image plane - set blend mode to Alpha Hash or Alpha Clip
Glass - Set blend mode to Alpha Blend, and check Screen space reflections
Render tab - enable Screen Space Reflections > Refraction


How to make scopes that actually magnify using materials like glass?

It is posibbly to do it. Try building a Kepler or a Galilei scope. A kepler scope is easy to build, but the image is inverted. Here is one I made:

To zoom, scale up the objective lens along the point where the empty is located, or scale down all the other objects along that point. The background image is missing, replace it with anything to see the sope working.


The image posted as part of the question shows that you are using an old version of blender (2.76).

Denoiser was introduced in version 2.79


There is no software in the world that can do this, simply because a lot of (3D) information is missing in the 2D image. As MarcClintDion pointed out, it can be done out of multiple images from the same chair, but I doubt the result will please you. I'd encourage you to watch some basic Blender modeling tutorials and model the chair, you'll be done in 30 minutes and have a clean model.


The rig is working OK. If you bring up the transform manipulator and set it to rotate on local access:

You can visually see the orientation of your bones:

The red circle is x-axis etc. Clicking on these sequentially gives the range of movement you stipulate in the constraint. Notice x-axis is on an orientation I assume you would want the tail to move but you've set it to zero. The "s" shape movement you describe happens when you try to force movement in a direction that is choked by the constraint.

I also noticed that the bone roll doesn't quite agree with the orientation of the tail (all the bones are diagonal to the axis). I hit ctrl-n and chose global +z in edit mode to recalculate the tail bones. This ensured up/down, side-to-side but not twist movement - again assuming this is what you wanted.

ps. Nice model

Edit: I notice TeeTrinker has already answered in the comments as I was typing this LOL.


How do I link armature on separate objects to work together?

So I got this going with a little help from a video tutorial, here is the quick run down:

Add an armature single bone.
Press E to extrude a new bone from the first bone.
Press ALT+P to detach the bone.

You can then move it and parent the bone to different objects but they remain linked and still work together when you pose them.

Credit goes to this video - https://www.youtube.com/watch?v=B9iL1hmJXrI&t=153s&list=WL&index=6


object cannot be written into a 3ds file

There is a maximum number of faces limit with .3ds files. You might be exceeding this. If possible, consider using the .OBJ format, which doesn't have this limitation. Try removing all but a small part of the model and exporting that to confirm if this is your problem.

If it is not this which is causing the problem, try baking all the modifiers before exporting.


I know I'm late to the party, but I'll leave this here for reference. Blender Internal is an extremely outdated engine, hence why they replaced it in 2.80 with Eevee, which is far superior in every way.
The most prominent difference between Eevee and Blender Internal is that, while Blender Internal renders offline using the CPU only when you manually go to render, Eevee is a real-time rendering engine that runs on the GPU utilizing OpenGL. This means that Eevee is significantly faster than Internal in every situation, even when rendering on the CPU. In fact, Blender 2.80's material view actually utilizes Eevee for its rendering.
Furthermore, Eevee is much easier to use and has a node-based material system identical to that of Cycles, including PBR support. (Eevee materials are actually compatible with Cycles and vice-versa.) No longer do you have to fiddle with a million settings in order to get a decent result, although optimization settings are still present and very powerful for those so inclined. But your optimization (or lack thereof) in the scene will only ever affect render times in matters of seconds, as the main bottleneck when it comes to Eevee is the time it takes Blender to save the frame to disk and queue up the next frame.
In short, use Eevee and your render times will be faster and your results will look way better.
PS: I don't actually know that much about the technical side of Blender Internal, so forgive me if I got something wrong.


What does 'Cube Size' mean when using Cube Projection UV unwrapping?

Cube projection iterates over the mesh faces and for each does the following:

It considers the dominant normal axis of the face, and keeps the coordinates around this axis. For example if the dominant normal axis is X, the considered coordinates will be Y and Z. This is the 'cube/cube projection' aspect and this cube is fixed along the global axis (we'll have a flat projection on the world's axis).
Then it calculates U and V from the center of the UV Map (0.5) and adds 0.5 * (the parameter 'cube size') * (the object's location + the corresponding vertex location)

The code is the following:

luv->uv[0] = 0.5f + 0.5f * cube_size * (loc[cox] + l->v->co[cox]);
luv->uv[1] = 0.5f + 0.5f * cube_size * (loc[coy] + l->v->co[coy]);

So the result will depend on: the cube size parameter, the object's location (at 'object level') and the vertices location (at 'edit level').

BUT for the first vertex of the face, it calculates a rounding which will offset all the vertices of the mesh, using:

if (first) {
    dx = floor(luv->uv[0]);
    dy = floor(luv->uv[1]);
    first = 0;
}

And after that using the following for all the vertices of the face:

luv->uv[0] -= dx;
luv->uv[1] -= dy;

So the result may appear erratic as the way the rounding of the first vertex works does so, depending on the way the faces are organized (shared vertices between faces), some UV faces will overlap or not.

Once this calculation is done, the operator considers the two other parameters which are 'clip to bounds' and 'scale to bounds'.


How reproduce a real led lamp with IES photometric data?

The first bit of info you need is that in Cycles, the emission unit of light is Irradiance (or Radiance Flux), it is in watts per square meter.

You can read how that corresponds to Lux (in lumen) here: What kind of units does the Cycles emission strength use?
The second bit is that you can import IES files into Blender through this addon. It will create a light with rig that you can control to for example set direction of the lamp.

This light uses mapping vectors and a custom Curve (that is imported from the IES file) to influence the strength of light based on emission direction:

The tricky bit is that the imported light type is Point, so you are getting only the emission of light, but not the light surface itself. You will have to fake the light's glass cover with translucent shader, that does not effect the light from the Point light - for camera ray it will be translucent, for light it must be completely transparent.
The third bit of puzzle is that you get the color from black body radiation node:

Note that in sRGB color space the white point is at 6500K, so you might want to compensate for that.


how to align object according to specific axes

Answer: Rotate the object you want to change and then apply the rotation.

Explanation

One way to change the orientation of an object is to rotate it and then apply the rotation.

For instance, I create a torus (SHIFT A -> mesh -> torus).

Next I go to the object tab of the properties editor and check Display -> Axis. I don't need to do this to complete the steps, but it makes it easier to see what happens.

As you can see, there is now a yellow axis. You can see 'Z', but 'X' and 'Y' are within the torus

Now, in object mode, I rotate the torus on the X axis 90 degrees (R 9 0 ENTER) The world axis has not changed, but the yellow Z axis now points along the green (Y) world axis.

This is because there are two different coordinate systems.  There is a coordinate system that is shared by all objects. It is called the 'world' coordinate system.

But the second coordinate system is unique to each object. it is called the 'local' coordinate system.  When I move an object in object mode, I move the origin of the object.  When I rotate the object in object mode, I change the orientation of its axes. (Moving and rotating in edit mode do not change the orientation.)

When you add an object in blender, it is positioned so that its local axis align with the world axis.  When you rotate the object, while in object mode the axis changes.

You can apply the rotation. If you do this the object will remain in its orientation but the axis will realign with world axis. (CTRL-A R)

with the result


Why is the Blender soft body physics permanent deformation not working?

In order for the Soft Body 'plastic' setting to have a meaningful effect you need to disable the 'goal' for those vertices - otherwise the 'goal' will simply pull the vertices back to their original positions.

However, in your situation it probably isn't as simple as disabling the 'goal' since the soft body will then be subject to other forces such as gravity so you'll need to create a Vertex Group of just those vertices that would not be expected to move (eg, the wheels) that the rest of the mesh can be supported upon. In the Soft Body Goal settings you can then leave the 'goal' enabled and set the Vertex Group to limit the goal to only the desired vertices (eg, the wheels that would be resting on the floor).

This can produce the following :


Is there a way to connect two bones to one?

You can 'Parent' the extra tail to the same 'Bone' that the original tail is parented to. A Bone can have multiple 'children' but only one parent.


Why is my background image not scaling right?

It may have something to do with the aspect ratio of the images. Try setting the scale of the vertical image to 5.


Create a gradient effect, like for coffee?

This can actually be done quite easily (and efficiently) using the volume absorption shader:

You're correct that this is a volumetric effect - it's dependent on how far the light travels through the coffee. There are two volume shaders (three, if you count emission) - volume absorption, and volume scattering. Volume scattering is the slow and noisy one everyone is talking about when they say "volumes are slow". Volume scattering adds an additional bounce possibility within an object, hence the noise.

Volume absorption, however, does not alter a ray path or do any other probabilistic anything. It just attenuates a ray based on how far it transmitted through the object. As a result, it's not really any noisier or slower to calculate then coloring your glass or transparent shader, and the result is much more realistic. In fact, in pretty much any case where you'd use a non-white transparent or glass shader, it's best to leave the glass/transparent shader as full white and color your object instead with the volume absorption shader.  This will allow the color to vary through your object based on thickness, which is where almost all color comes from in transparent objects.

Note that finding the exact color will take some trial and error to balance saturation, brightness, and the "density" (overall strength) of the absorption. Be prepared to fiddle around in rendered view for a bit.


The small preview displayed in the render layers node is only visible after you have first rendered your scene. The preview can also be hidden by clicking the little material circle at the top of the nodes.

The image displayed as the backdrop in the node editor comes from the viewer node. This is also not available until the scene has first been rendered.


My Blender Object is "see-through" in Unity

To see faces which face the wrong way inside Blender go to the Shading top in the top right corner of the vieport and enable Backface Culling:

This is what it looks like:

Now select the faces which are facing the wrong way, press Alt N and choose either recalculate Outside or recalculate Inside depending on what you need:


How to make the skeleton move relative to the bone that is touching the floor using animation nodes

Always Touch The Floor

In this section, we shall position the root bone of the armature such that the lowest bone is touching the floor. Since the ankle/heel bone's local z axis is perpendicular to the global z axis, the head and tail z locations are identical and since the tip/tail of the toe bone will be the last bone touching the floor, to identify the lowest bone, we shall use the location of the tail instead of the head.

First, we compute the index of the bone with the lowest tail z value by using numpy's argmin() function, the input of the function should be a memory view of the values computed using the asMemoryView() method, so the expression becomes:

numpy.argmin(z.asMemoryView())

To get the minimum value itself, we simply get the value at that output index as follows:

Now, we should move the armature along the global z axis—By moving the root bone Spine—to make the lowest bone touch the floor, this is done by subtracting the lowest z value from the z value of the root and assign the new location by using the expression:

object.pose.bones["spine"].matrix.translation = location

The result is the lowest bone always touching the floor which concludes this section.

Root Displacement

In this section, we shall displace the armature—By displacing the root/spine bone—based on the displacement of the bone that is touching the floor, that is, the lowest bone which we know from the foregoing section. To compute the displacement of all bones, we shall use the method I described in this question. Note, however, that all bones are children of the root bone and thus any displacement in the root bone causes further displacement on all the children, so, to get the actual displacement of the bones without the displacement caused by the root, we should add the displacement of the root to the displacement of the bones. Now that we have the displacement of all bones, we can get the displacement of the lowest bone using the index we already computed in the foregoing section.

Notice that the Get List Element node with zero index is the one that gets the the position of the root bone and the subtract gets the displacement, also notice how we add that displacement to the displacement of the bones.

Now, all we have to do is displace the root by the displacement we computed by adding it to its original position (Or subtracting depending on how we computed the displacement, which is the case here). Note that we already have the z location of the root from the foregoing section, so we just need the x and y locations. One last thing to do is reset the location of the root bone to some initial location of your choice at the initial frame, zero location for instance. This is done by checking if the current frame is the start frame and use a Switch node to switch between the current and the initial location.

And the result is as you might expect.

Blend file for study: