How to model effectively using exact measurements?

The absolute first step is to set the real-world units in the scene tab. This will make Blender's arbitrary units relate to something you can actually measure, like feet or meters.
Lines/Edges that Follow an Axis
You can click on a vertex, press E to extrude, press X, Y, or Z to choose the direction, then type in 1 and hit Enter. This will produce a line of length 1 (scene units) in that direction.
Lines/Edges at Arbitrary Angles
If your line needs to be at an angle, and you know how long it needs to be, then you could:

Create an edge with that length. Position the 3D cursor on one of
the vertices of the edge.

Set the pivot centre to be on the 3D cursor. (important)

Rotate the edge: (select the edge, hit R, hit (X,Y, or Z for axis) and type in the angle to rotate on that axis) , then Enter to finalize

Rinse and repeat until all axis of that edge are dealt with.

Extruding Edges/Faces
Edges and Faces can also be extruded and knowing how to do it can save you a lot of time:

select an edge or face, hit E and choose an axis using X,Y, or Z and type in the distance, then Enter.
Faces will start to extrude along their normal if no X,Y, or Z direction is given.

Directly entering coordinate values (global / local)
Get familiar with entering exact coordinates into this box. (found on the right hand panel, the N-panel). In Global mode when you change the position of a selected vertex using those fields then the coordinate will be relative to the world origin (0,0,0). When in Local mode the coordinate will be relative to the origin of the Object.


One way to get any number of 3D views to copy the view angle from one is to have all the 3D views in Camera view NumPad 0. Then check "Lock Camera To View" in the "View" section of the properties region N.

The downside to this approach is that you always have to stay in the camera view, you can not use any of the view navigation controls. However you can hold Alt while panning the view to snap the view at 45° angles.

The 3D view on the left is the view copying the center's view. The center is where I'm rotation the view, and where Lock Camera To View is checked. The 3D view on the right is just to show what is happening in the scene.


The Blender documentation says:

  Volume Scatter lets light scatter in other directions as it hits particles in the volume. The anisotropy defines in which direction the light is more likely to scatter. A value of 0 will let light scatter evenly in all directions (somewhat similar to the diffuse BSDF node), negative values let light scatter mostly backwards, and positive values let light scatter mostly forward. This can be used to shade white smoke or clouds for example.

The Vray documentation adds some examples:

  Most water-based materials (e.g. skin, milk) exhibit strong forward scattering, while hard materials like marble exhibit backward scattering.


Options Missing in the View Layer Properties Panel

Make sure Cycles is enabled in the user preferences.
Edit > Preferences > Add-ons

Also, make sure this is unchecked in your current workspace :

If you have to have it checked, make sure the cycles add-on is checked.


how to correctly import .wrl in blender?

Got it!

I have selected the model in blender, changed to from object to edit mode, then pressed ctrl + n and. after that on the lower left hand side appeared "Make Normals Consistent" with a checkbox "Inside". clicked that, exported as fbx, imported in ue4 and everything looks fine.

Thank you for your help!


Camera tracking: Moving the camera too much

You should use weighted tracking; To do this, go to the Motion Tracking perspective, select a marker, and open the Properties Panel(N) and go to the subsection "Track"; There is a field labeled Weight, which controls the importance of that marker;

Like most fields in Blender, this can be animated. What you need to do is make this field change, such that when it's almost out of view, the weight is 0, then, when it gets back in inside the Camera's frustum (Camera's View) make it go up again, 1 being the maximum; Keep in mind you shouldn't just make it 0 all of the sudden.


Weird thin lines after unwrap cube uv mapping

You are running into Blender interpolating your texture a little, so that when it "smoothes" the pixels of the texture, it's grabbing the next texture over and averaging with the local color, creating an off color along your UV edges.

You can:

Turn off interpolation, but beware, this will make the texture a little more pixely.
Unpack your UV's a little and put an "average color" in the space in between so it interpolates better.  It looks like you baked this texture, you also might want to try just re-baking after doing this.

[Edit]

Downloading and messing with the file showed that interpolation was not the issue here (or at least turning it off doesn't help).  It seems that the UV's overlap so perfectly that the line is an artifact of that.  Fixing it is simple:

Go to the UV editor, press a until all UV's are selected.
Switch pivot type to "Individual Origins"
press s and scale all the uv's down a hair, doesn't take much

Should be fixed after that.


Problem rigging with automatic weights and shape keys for Unity

Have you tried using a Driver for that?

Add a bone to your armature that will be your Driver, it works
similar to an IK bone, as in, it doesn't affect the mesh directly.
Select the shapekey you want to add the driver to, click with the
right mouse button on the bar below and select Add Driver, it shall
turn purple.
Then on the Graph editor window, where it says F-Curve, change it to
Drivers. Click on "Key", there you can select each shapekey that will
be controlled by the Driver.
Expand the right panel, there you can select the bone that will
control the shapekey, a.k.a. the Driver.
One detail though, On the right panel where it says Type, change it
to Average Value, then moving the bone will change the values on the
shapekey.

There rest is up to your preferences.

Hope it helped.


See the little Icon with the Camera in Outliner its not checked.
Click that Camera to get the plane appear in Render view

By Clicking The Camera Icon in outliner you are restricting the plane to appear in Render.


You may change custom bone shapes size and other attributes going to the last layer. Just select the desired shape there and adjust it in Edit Mode.


Most likely you have accidentally put the HSV node to a value that blows out the resulting pixel values. See this screenshot here to understand which value I mean:

In your case, you have set this to 2.0. This will likely send so much light energy down the line that the resulting pixels will overshoot the 1.0 range, thus being clipped to white. I've done this in the screenshot below:

Lower that input value of the HSV node to something reasonable (between 0.0 and 1.0) and see if this resolves the issue.


Yes. Multiply it by 1000.

Temperature
Gives a scalar defining the temperature of the volume. Values in the range 0..1 map to 0..1000 kelvin. This may be used to render physically-based fire with the Blackbody or Principled Volume shaders. All three outputs are the same.

From https://docs.blender.org/manual/en/dev/render/cycles/nodes/types/input/attribute.html
So the attribute node gives the temperature in Kelvins in the range [0,1000] mapped linearly to the range [0,1]. To change it back, you can simply multiply it by 1000.
Interestingly, what seems to refer explicitly to "Temperature" is actually referencing the "heat" attribute. using "temperature" in the attribute node simply returns 0, as if it were any undefined token.


Why does my mesh flatten on the X-axis in the game engine?

Select your object and press CtrlA -> Apply Scale. This will set scale of both objects to 1.0, 1.0, 1.0.

Before you applied the scale, you must have scaled the objects along the X-Axis at one point. This will change the dimensions of the object, but the scale will be something like: 5.0, 1.0, 1.0. This won't change much in the 3D view, but BGE will reset all scales to 1.0 which (as you noticed) causes issues.


What is the difference among Alpha Over / Alpha Under / Over Drop?

To my surprise, my following report here confirmed that there was something wrong here since 2.4x. Thanks to psy-fi (Antony Riakiotakis), the developer who has helped to fix it in commits here and here.

Now it makes sense that, as Wiki said, Over Drop is actually a "mixture" of Alpha Over and Alpha Under. In other words, the first selected strip would be the foreground (same as Alpha Under), while the fade value also controls this foreground (same as Alpha Over).

For easy understanding:


How can you scale stairs to decrease per step?

Add a "Simple Deform" modifier. Then select "Taper" and check either "Lock Y Axis" or "Lock X Axis" . Then adjust the "Deform Factor"


A face is a polygon. A polygon is an array of vertices.

The way it is interpreted is:

Make a first triangular part with vertices 1, 2, 3
Then make another one with 2, 3, 4
Then 3, 4, 5
Etc.

This does not allow to have holes in it except if there is only 1 hole, or in some special cases for example if the holes are triangular themselves (at least, I think, this is surely a complex topology problem...).

So, my though is that you can dissolve only if there is a path of triangles "calculable" all along this polygon. And I don't think this is the case here due to the 3 square holes. Or if you dissolve, the polygon will cover/overlap the windows.


How to use bpy.context.scene.use_denoising in Blender 2.8?

Try this:

bpy.context.scene.view_layers[0].cycles.use_denoising = True


(Blender 2.8 Stable) Smoke Domain renders as cube in EEVEE

You have a Principled BSDF shader connected to the surface of the domain object. Objects with volumetric materials generally should not have any shader connected to the surface slot. Simply remove the principled BSDF shader, and leave the principled volume shader, and it should work. I

You want your node setup to look like this:

Hope this helps!


I know I'am answering my own question, because I knew how to do it only after posting the question, so for anyone who may need this answer here it goes.

I used a wrap function that I made my self, like this:

def wrap(width, text):

  lines = []

  arr = text.split()
  lengthSum = 0

  strSum = ""

  for var in arr:
    lengthSum+=len(var) + 1
    if lengthSum <= width:
      strSum += " " + var
    else:
      lines.append(strSum)
      lengthSum = 0
      strSum = var

  lines.append(" " + arr[len(arr) - 1])

  return lines

The width argument is the width of the panel in terms of number of characters that fit in there.
Then in the draw function I got the width of the panel like this:

tool_shelf = None
area = bpy.context.area

for region in area.regions:
  if region.type == 'TOOLS':
    tool_shelf = region

Where tool_shelf is now the panel I created, then I call the wrap function with the width and text like this:

lines = wrap(math.ceil(tool_shelf.width / 9), "Some long text that is out of borders")

I divided by 9 because tool_shelf.width gives back the width in pixels, and I assumed 9 pixels for each character, now lines is an array where every element is a line.
Then I write the lines in the panel like this:

for var in lines:
  row = layout.row(align = True)
  row.alignment = 'EXPAND'
  row.label(var)

I know this is not the optimal way, but anybody can get the main idea from this code and optimize it to their needs.

Note: function wrap is not in any class, but all the other codes are inside the draw function of the class Panel.


Importing Adobe SVG cuts off half the image

Your best bet for high precision results is to simplify the Paths in Illustrator first, then export as svg. I tried loading that SVG into another vector drawing tool (Inkscape) but the Paths it contains also do not get read/displayed correctly. This doesn't mean the SVG is bad (it loads in Google Chrome just fine), but it does mean the Paths themselves are not optimal for use to interchange between some programs.

Your SVG has a lot of dense areas which Blender's Curve objects don't handle very well. -- (In Blender if you converted to mesh and did a Remove Doubles it would remove about 800 points..) . The linked Answers in the Comments under your question suggest valid reasons why this SVG isn't showing correctly. There are overlapping areas due to the dense clusters of points (Open the SVG in Illustrator and zoom into the area where it cuts off in Blender to see the overlapping edges).

but if you have to do it in Blender, then one process is:

join all curves  (select all curves, then Ctrl+J)
convert to mesh  (in Object Mode hit Alt+C and pick  Mesh from Curve)
remove doubles (in Edit Mode, select all verts, then W -> Remove Doubles
convert to curve (in Object Mode hit Alt+C and pick  Curve from ...)
set curve to 2D (In the Curve Tab in Object Properties, to get the fill)

then you get:


Loving texture paint - How can I make a square 'pixel' brush?

You can use an image rendered by setting up a plane with a shadeless material, looking through an orthographic camera.

Then you can set that resulting image up as a brush mask, and the key is to set it up to calculate alpha and to clip, not to repeat. Here I set up the spacing of the brush to be 40%, and the mapping of the brush mask texture at 200% to get the right amount of brush radius. Also, I set it to use the full hard brush curve so that it would fill well.

I did also think maybe you could just user the image I have made so here you go.


Bone's constraint limit X axis rotation more than 180° doesn't work

The values for the Rotation Limit Constraint are clamped 180 to -180. This is a known limitation. An example:

As soon as i try to rotate the bone beyond 180° the bone snaps back to 0°

You can find more about this in the Blender manual about Limit Rotation.

Note: There is a small chance that this limitation will be released some time in the future. You can find more about that in the bf-animsys mailing list.


How do I make a 3 dimensional character out of flat picture?

You may do it using the Transformers add on. It'll transform every flat textured plane into 3d model.

Activate it in User Preferences. Then go to a Tool Shelf and choose a desired transform option.

OKAY I'M KIDDING :), NOW SERIOUSLY:
There's no such way to do it fast. If you manage to invent a tool that may do such thing automatically you'll be probably a millionaire :). While there's a very simple way to transform 3d model into 2D image (using e.g. shapekeys), reverse process is impossible (at least right now :)).
As @Shubol3D said there are no shortcuts. You'll have to master a lot of skills to create your lion model. It's very time consuming process, so if you like to save it I suggest you to go to Blenderartists.org forum and make a paid job offer there. There are a lot of super talented people, who may do it for you.
But if you still want to do it by yourself...
Here are some ultra basic 3d model production steps:
First of all get familiar with this topic: Resources for Blender It's super useful for the blender beginners.
MODELING
You should start from setting up the reference images for modelling:

How do I set a background image while I am editing?
How do I scale my reference images correctly within Blender and is there an easier way?
Modeling with reference image

First add a cube. Use Toggle Quad View option (Ctrl+Alt+Q) to split the screen into quarters and set separate background images for each one. Adjust their positions, so they fit the cube position in Top, Front and Right 3D views.

To make the modeling workflow faster use a Mirror Modifier:

Is their a way to create half of a model and duplicate other side

How can I make the mirror modifier work right?

Divide the cube into two identical parts with Ctrl+R and delete one half of it (X). Add a Mirror Modifier to it. Now you may model just one half of the mesh and the other one'll behave symmetrical.
Enter Edit Mode and start modeling basing on the background images you set:

What techniques are used to begin creating new models?

There are few buttons which are very helpful in modeling: G- for grabing/translating vertices, edges and faces, S- for scaling them, R- for rotating, E for extruding and F for filling the holes. You may also subdivde the desired faces using Ctrl+R shortcut.
Start with extruding the cube to create a basic shape that fits the background drawings. Then subdivide it successfuly to add more and more geometry and details.

Thanks to quad view you may control the shape of the mesh in every view at once. Fit it to the background drawings as accurately as you can.

Finally you may add a Subsurf Modifier to make your model smooth. Go to the Modifiers header, activate it, set the desired subdivision levels and smooth it even more with Smooth shading option in Edit panel of the Tool Shelf.

I think that in your case this tutorial may be a good start: https://www.youtube.com/watch?v=6mlGT6T9bfQ
It shows how to create a 3D animal model based on the 2D images.
UNWRAPPING AND TEXTURING
To unwrap your model properly you may need to make seams for it:

How to properly unwrap my mesh?

How to Place the Right Seams for UV Unwrapping

Select the edges you want to put the seams on and press Ctrl+E-->Mark Seam. Now select the whole mesh (A) and press U-->Unwrap.

Now you want to put the texture on your model. Though there are many methods to do it, I prefer the texture painting with Stencil method:

How to make textures in Blender without any flat work with a painting program? (3D painting)

Select your model, set up the shading type to Texture and go to Texture Paint mode. Add a new Paint Slot-->Diffuse Color in a Tools bookmark of a Tool Shelf (T). Add a new texture in the Texture panel on the left, then go to the Texture header on the right, select Brush and open a texture, which will be used as a stencil for painting. Paint the texture and save it.

Now add a material to the object and assign a newly created image texture/textures to it:

Add an image to an object (Blender Internal Render)
How are texture maps imported into Blender? (Cycles Render)

Go to the Material header and add a new material (click New button).

IN BLENDER INTERNAL: Go to Texture header to assign a texture to it. Add a new texture, set its type to Image or Movie. In Influence panel check the Color checkbox. Set the viewport shading to Texture to display it on model.

IN CYCLES RENDER:  Go to Node Editor, check the Use Nodes checkbox and set up nodes as pictured below.

Basic tutorial showing how to UV unwrap an animal model and apply a texture to it: https://www.youtube.com/watch?v=p4ngVoGIj1Q
RIGGING AND ANIMATION
Now you have to construct the rig (skeleton) and parent it with your model:

how to rig the body
How can I automatically generate vertex groups for an armature?

Add a single bone (Shift+A-->Armature-->Single Bone) and extrude it (E) in Edit Mode creating a skeleton. Limbs can be mirrored from one side to other using Ctrl+M command.

When your skeleton is ready you may you may parent your mesh with it. In Object Mode select your model, then your armature and press Ctrl+P-->With Automatic Weights. It'll automatically create specific vertex groups for the specific bones.

Finally you can animate your bones:

How to make an animation / armature remember poses?

Select a bone in Pose Mode, translate it using R,G or S and press I to keyframe it. Go to the next frame on the Timeline, translate it again and keyframe again. Press Alt+A to play the animation. Adjust your keyframes spacing in Dope Sheet Editor. Control every aspect of your animation using curves in Graph Editor.

Very, very basic tutorial showing how to make the skeleton for your animal and how to animate it: https://www.youtube.com/watch?v=Kr6-_NT_olo


The Brush preset and a few others were removed in 2.73 because they were essentially the same as other presets:

  Some brushes really do the same thing and we have agreed not to offer
  extra presets for one brush type. Removed those brushes from default
  .blend. They are Polish (Flatten Contrast does the same), Brush (Does
  the same as draw) and Draw from texpaint (where texdraw/draw does the
  same)

Also note that the "F" is not part of the brush's name, but rather indicates that it has a Fake User.


How to play movie file on a curved plane?

add a plane

press tab to enter edit mode

right mouse click -> subdivide plane -> 10

s -> x -> size your plane as much as you like

tab to go to object mode

add simple deform modifier

choose bend -> z axis and whatever angle you like

go to shader editor and build these nodes:

hit space and enjoy the animation

you can also wait a little while because my internet upload speed is slow as hell and then watch my tutorial about it:
https://youtu.be/v5gbEg3Qwz8


Blender 2.8; Combine Cycles and Eevee render engines into single composite

This solution seems to get me 99% of what I originally asked for in the question.

Okay I got it to work, my problem was I was trying to create two different View Layers - create an additional Linked Scene instead so all your objects stay consistent between the two, in compositing make two Render Layer nodes and set each one to the respective Scenes you've rendered. Then you can alpha over the scene with the Freestyle pass and the Eevee pass.

My only problem now is that if I render both the scenes (as in neither has "Use Single Layer" clicked) it takes about 2 minutes for a very simple scene, but if I render them individually (One after another with "Render Single Layer" clicked) they each respectively take a second or two. It seems that when I render them both concurrently the Cycles pass still path traces the objects even with all the passes and ray visibility disabled. Not sure if I am missing something or if this is a possible bug.


How can i see if my flickering light is working right without rendering the animation?

Have you tried going into to texture display? It shows a crude representation of light intensity and placement. Eevee is another option that would allow you to visualise your lights easier.


Are my CPU temperatures okay and safe while rendering?

The short answer is that you're probably fine.
Personal aside: there have always been these arguments about thermal stress on computer components, ranging from "turning off your pc at night is bad" to "overclocking reduces the lifetime of your components".  It's just a fact that most PC hardware outlives its useful lifespan, and it's either thrown in a landfill or recycled, so I mostly ignore these arguments.  Obviously heating something up to the point it turns off while you're using it is bad, but a modern processor monitors its own temperature and will underclock when it hits the thermal limit.
The long answer is kind of complicated.  Intel's guidance to laptop makers is basically "ride the thermal limit as hard as you can, if you don't you're leaving performance on the table".  As I said the processor will take care of its own thermal situation, so for short batches of processing (basically everything the average user will do in a day) it's in everyone's best interest to let the processor hit whatever frequency it wants to get the work done as fast as possible.  It's not going to saturate the heatsink in that amount of time, the fan probably won't even have to do much work.
You're in a different boat since rendering is a sustained workload.  You saturate the heatsink to a great degree just while rendering pixels (the CPU has to do some work after the GPU compute stage), so when something like a denoising task comes along (heavily CPU bound) the added heat makes your temps go crazy.  You're hitting the thermal limit of 100C (literally boiling), and the processor is backing off to compensate.  It targets a steady state of 90-95C during sustained workloads, so the absolute high end that you're seeing is only the case for a short while.
But all of this is absolutely within spec for Intel, and it should be said that your laptop isn't weird.  This happens a lot.
You can potentially look for some fan options or a "performance mode" in the power options on your laptop, oftentimes they will limit the fan speed for noise reasons.
Otherwise, if you are concerned there are ways to make render times longer.


Try this

http://blenderartists.org/forum/showthread.php?338598-Addon-WIP-VSE-Quick-functions-Snaps-Fades-Zoom-Parenting-Titling-Play-speed

This addon already has that function


How can I create complex edge profiles on columns?

For the circular base, you can use the Screw modifier.
That way you can easily change the shape and number of sides.

Create a profile from vertices or using a Bezier curve
Add a Screw modifier
Done


How to make a specific area of a soft body behave like rigid body (or vice versa)?

Although it seems impossible to make a part of the mesh like a true rigid body, but following cgslav comments I could do this to some degree by assigning the vertex group to Springs as shown below. Note that the object is a bit heavy (10kg) and that's why assigning weight 1.00 to the vertices will still result in them moving a lot. Assigning lower weight values to the object fixes this issue to some degree and that is sufficient for my work.


Ok, I basically messed around with it until I figured out that selecting the 'Pose' option in the bake settings only works if you have a bone selected in pose mode, so I just selected all my bones in pose mode, chose 'Pose' and 'Object' in the bake settings, deleted the path, and now it works. Thanks to @joshsanfelici for giving me the idea to check edit mode, which made me think of selecting the bones.


Why does this cloth go down past the top surface of the cube?

Seeing objects fall into another even with collisions on, always makes one word pop up in my mind, Normals.

They are the problem here and at the same time the solution.

The object below the cloth object is acting like it's a box, nicely taking the cloth object fall inside it. If you go in the "Viewport Overlays" and activate the "Face Orientation" checkbox, you'll see that the lower objects normals are showing red, which indicates that they are facing inside.

This is essentially making the supposed to be mattress a box, as the collision with the top will be ignored since there is no collision with the backside of the topside, but once the cloth object is inside the mattress, it's captured.

Select the mattress object and go in "Edit Mode" with Tab
Select all vertices with A
Open the "Normals menu" with Alt+N in the Viewport, and click on "Flip" (in this case all normals are facing the wrong way, so this is easy, other times you may need to use "Recalculate Outside").
You can deactivate the show "Face Orientation" again.

Here a little visual aid/explanatory video:

[Regarding the issue with the size of your objects before]

You mentioned the size of the objects, while it usually is not as much of a problem, there are cases when the size of the object is too small and results in the simulation failing. That is because the simulation is based on steps, where each step there is a check on collision, which then leads to a more complex resolving of the situation. That said, too small objects can be stepped over, as in one step the collision would not yet happen, and the next step the simulation is already past the object, thus resulting in no collision at all.

For completeness sake i mention rigid bodies here too, since both have their settings at different places.

The rigid body related "Steps Per Second" value can be found here:

The cloth related "Quality Steps" value and "Quality" related to collisions can be found here:

Happy blending.


mapping using cylindrical map via script

I am not a professional myself, but the code looks okay, I guess. Your direction isn't "view", though, but "VIEW_ON_EQUATOR", you could also use "VIEW_ON_POLES", "ALIGN_TO_OBJECT", though: see the documentation

If it's "right" or "wrong" depends a little on the shape of your objects and how you want the unwrap to be aligned to it. Maybe try out all three and see which one fits best?


I changed a primitive mesh, need to restore it to defaults.

Every time you add a new primitive object you get this little window (if it's closed, click on the + icon), in which you can set all preferences.

The window disappears after you perform any operation.

In the file menu you have also the option "Load factory settings" to restore all preference changes to their default value.


Saving multiple poses to Pose Library via Python

I find a solution. If somebody else would want to do that, here's the code:

bpy.ops.pose.select_all(action="TOGGLE")
bpy.ops.poselib.pose_add(frame=1+num_poses,name=str(num_poses))
bpy.ops.pose.select_all(action="DESELECT")

Before adding new poses, Blender requires that you select and deselect pose. Otherwise not whole armature is saved.


It is available under theme settings in the user preferences
Open Edit > User Preferences > Themes > 3D View towards the bottom look for Face Dot Size


Converting global object location to local location in Python

Converting global coordinates of object B to local coordinates of object A

The global coordinate of object A (obj_a)

global_coord = obj_a.matrix_world.translation

To convert from a global coordinate to the local space of object A

local_coord = obj_a.matrix_world.inverted() * global_coord

Using the global coordinate of object A in the local coordinate equation above yeilds Matrix.Identity().translation ,  since multiplying a matrix by its inverse results in the identity matrix, which has a translation component of (0, 9, 0) aka the origin of our local coordinate system.

Putting it altogether in a test script.  Object A is represented by the context object   All #other selected objects are  iterated as object B.

import bpy
# context for test code
from bpy import context

selected_obs = context.selected_objects
ob_a = context.object
#selected_obs.remove(ob_a) # will be at local origin
mwi = ob_a.matrix_world.inverted()
print("local coordinates of", ob_a.name)
for ob_b in selected_obs:
    local_pos = mwi * ob_b.matrix_world.translation
    print(ob_b.name, local_pos)

Result of running on Default Scene, with cube then camera as active object

local coordinates of Cube
Cube <Vector (0.0000, 0.0000, 0.0000)>
Lamp <Vector (4.0762, 1.0055, 5.9039)>
Camera <Vector (7.4811, -6.5076, 5.3437)>

local coordinates of Camera
Cube <Vector (-0.3382, -0.3767, -11.2523)>
Lamp <Vector (3.1254, 3.9298, -6.5683)>
Camera <Vector (0.0000, 0.0000, -0.0000)>

Global locs from console

>>> for o in C.scene.objects:
...     o.name, o.matrix_world.translation
...
('Cube', Vector((0.0, 0.0, 0.0)))
('Lamp', Vector((4.076245307922363, 1.0054539442062378, 5.903861999511719)))
('Camera', Vector((7.481131553649902, -6.5076398849487305, 5.34366512298584)))

>>>


Normals - Adding an edge loop improves smooth shading

By smoothing normal direction is overriding by 'fake' normals which interpolated from surface area between edges.

There are detailed answered questions, one of them How to smooth shade an object while retaining hard edges?

And a little bit of theory Normals, Vertex Normals and Facing Ratio


Can't move the viewport after updating from 2.69 to 2.78

It's possible that not all of the settings were copied over from your old blender version into 2.78 when you installed it.

As far as I know, the option to move the mouse with Option (or Alt)+Click and Drag isn't enabled by default, but can be enabled by checking the 'Emulate 3 Button Mouse' box under the Input panel of the User Preferences.


Blender 2.81 doesn't seem to be importing vertex color for .ply

Blender's ply importer only adds vertex colors when they are part of a face or triangle strip. You can see this in the source code of import_ply.py.

mesh_colors is the list that collects the vertex colors. The assignment of values to mesh_colors and the indices to mesh_faces happens in the add_face() function. This function is only called when a b'face' or b'tristrips' is encountered in the ply object. Only when mesh_faces is not empty and the required color channels are present the new set of vertex colors is created through mesh.vertex_colors.new(). Therefore vertex colors are only imported if the colored vertices were part of a face.


A more detailed documentation on the 3D sound options you find in the Wiki on Sound Actuator it illustrates the meaning of the cone and all the options.

A older post mentions that 3D sound only works with mono (WAV) files. if this still applies you could convert your sound with a tool like Audacity.

I edited the file from the post mentioned above and needed to adjust some values in order to hear anything and uploaded it here.


Check the radius of each control point of your curve and set them to 1. You can select all of them and set the "mean radius".

Most likely you scaled down or up your curve then applied the transform. This actually keeps the curve at the same position but changes the radius of each control point.

Note : You can deactivate the use of the radius of control points altogether by toggling "radius" in the curve properties. That means any deformation using this curve will consider every control point with a radius of 1 :


I was unable to reproduce the case you mentioned above as all exporters bundled with Blender will always apply the scale on export and in some cases, you can choose to apply the modifiers and other things as well.

You more than likely missed or changed something or it is a bug, try updating the version of Blender you are using.


If you scale an object by negative 1, it will reverse it on all axes.  Then you can just rotate it by 180 degrees on a single axis, and you will have essentially created an exact mirror image of an object without the hassle of a mirror modifier.

Hope this helps!


You would really want to consider changing the file location that your simulation bakes to. This could be another simulation you tested that didn't work. Try changing the location to a file on your computer (not "//cache fluid") because that is a .tmp location.


Can't see weight paint heatmap in blender 2.8 release candidate. What should I do to toggle it?

You can now pick weight painting heat map opacity, but for some reason it defaults to zero with some previously saved projects (probably because the category didn't exist before now).

Hope this fixes your problem.


In 2.79, in object mode, with all objects selected, ShiftCtrlAltC will send the origins of all the objects to their geometry simultaneously.

in 2.8, until you set a personal shortcut, it's available only through the header > Object > Set Origin menu.


Solution:

Install OpenCl Packages.

For Arch Linux: libopencl and opencl-amd


In edit mode, Snap onto itself feature disables snapping to other vertices within the same object.
In 2.9, the feature is under the Snap icon dropdown menu:


The order of operands is important. See matrix multiplication.
face.center is a 3x1 column vector. So swapping the operands

òb.matrix_world * face.center

will yield the correct result.


Performance of mixing colors vs mixing colored shaders

If there is, it's a pretty subtle difference.

I rendered 5 frames without the mix shader setup and 5 frames for the mixRGB node setup, and averaged the times for each. The results:

Mix Shader: 23.021
Mix RGB: 22.78


The simplest way to get decent weights on clothing, especially tight-ish clothing like you're showing, is via a data transfer modifier from your body.  Select vertex data, vertex groups, from nearest face interpolated, nominate your properly weighted body as the target, hit generate data layers, apply the modifier, and then ctrl-p parent it to your body's armature using (no-description) armature deform.

A very good alternative to this is to use a surface deform modifier instead.  Nominate your body as the target, bind, and you should be good to go, even without parenting to the armature.


How can I remove the multicolored lighting from an environment texture background?

If you just want to remove the color from the World Environment, but keep the lighting strength in B&W, place a RGB to BW Node between your HDRI texture and the Background Node of your world shader:

If you want to keep the HDRI colors, but still have only white lighting, mix a regular background with the black and white background, using the "Is Camera Ray" output of a Light Path node as the mix factor:

If you want to remove all reflections from the HDRI and replace it with pure white, mix the Environment Background with a plain white Background, using either "Is Reflection Ray" or "Is Glossy Ray" (depending on your needs) from the Light Path Node as a mix factor:


align reference image with orthographic camera

Rotation values should be [54,736; 0; 45]

The provided picture is showing an Isometric Graphic.

In this particular case, by measuring the ratio between the edges,

and the projected angles of what we can imagine as perpendicular extrusion (the bridges) of a quadrangular face, we can deduce that we are in front of an Isometric axonometry with 120°, 120° 120° angle between axis.

But as I marked in bold, 60° is the projected angle, that means that is the result of the transformation of the camera and should be not used straightfoward as input for the X rotation.

Relying instead on the the math that's describing the camera orientation for such type of projection, we discover that the real X rotation is give by the formula:

X rotation = 90°-arctan(sin 45°) = 90°-35,264°= 54,736°


Some of what you are showing in the first image is caused by extra geometry you have in the mesh. Before following Patdogs suggestion you should first sort that out.

Use the Delete > Delete Vertice tool on the 2 inside faces and the Delete > Disolve Vertice tool of the rest.

Then use the knife tool to add back some now missing edges.


Dark Shadows when using AO with Transparent Materials?

There are several thing that could cause this, including

Shadows

Make sure that the table material has Receive Transparent enabled:

With Receive Transparent and Without Receive Transparent:

As you can see form this render with the glass raised, the reason for this is that even if the glass casts a transparent shadow, unless Receive Transparent is enabled for the table, solid black shadow is rendered which the glass then refracts:

Ambient Occlusion:
Ambient Occlusion would cause this too, as it works by darkening surfaces that are close to other objects. (The closer the darker)
Then you have the same problem as Receive Transparent, with the glass refracting the dark areas.

Add blend mode:

Multiply blend mode, with the glass on the table and with it in the air:

To make this disappear, you can enable Indirect Lighting in Properties > World

However, this can get your rendertimes rather insane, (Just for this low resolution render it took 2:27.26)

And as already mentioned by SteveW:

Depth
The Depth setting from one to four:

And at a value of 20 :

Cycles

Probably the best way to do this is use Cycles, as you need caustics to get light to properly illuminate after being refracted through the glass.

(quick example:)


Cycles Render: How to remove accidental gloss/wet?

Unless misunderstood what you mean it looks like a basic normal problem. All you have to do is recalculate normals to make them all consistent.

Just enter edit mode select all faces of your model and press Ctrl + N


If Auto Perspective is set in User Preferences > Navigation ...

.. then the view will revert to perspective on leaving any of the standard orthographic views.


First of all the emission is obviously working:

[

so the question would be in my opinion on how to make it more obvious that there is an emission going on.

Here I suggest two routes:

First, adding additional geometry, that the light can actually illuminate(scatter or reflect upon). So once this is put in a scene the problem will solve it self.

If the object needs to be standalone, you can add a plane for it to rest on and add lens effects that make the illumination bounce in the camera.

Also tweaking the filmic color management might give you the desired effect.

Here is my short effort:

see here and here for reference

This part might also be interesting


The particle info node does not work with EEVEE.

From the manual

  Particle Info Node
  Cycles Only

Switch to the Cycles Render Engine and your node setup will give the expected result.


Both a mirror and a 90 degree prism are not reflecting light on to a screen (cycles)

You should use way more samples than 201 samples (which you used in your .blend file) to the green wall to illuminate properly in cycles.Thats because tre light source you are using in your scene is way too far and way too strong. Atleast when i put the lamp near the prism the green plate was brighter.
U can clearly see in my picture that with about 10K samples the green plate was very bright


Is my Inverse Kinematics not working correctly or is it working correctly?

If you make a 2 step vertical IK chain (controlled by a target bone), without any pole bone, and then in edit mode you move slightly the "knee" forward, in pose mode the bending of the chain will follow this slightly moved direction (tipically forward).

With a pole bone you can further control the direction of the bending.

Make sure that as seen in the image, the resting armature's knee (in edit mode not pose mode) is forward of the rest of the leg, ie: bent forward just a little. That way IK will bend it in the right direction.


If using Cycles Render, In Properties Panel, go to Render Layers tab, under Passes, under Diffuse, check Color, then render your scene, When render is done, in Compositor, link the Diffuse Color in the Render results node to the Output node, you'll get the diffuse only.

Edit: My apologies for the mistake, I mentioned earlier that you should check Diffuse Direct, I corrected the answer since Diffuse Color should be checked.


Why do all objects bend upon joining them?

When you join objects with Ctrl+J, only the modifiers of the Active object are kept. (Active = the last one you selected, appears in lighter orange).

What you can do is Apply all the modifiers before joining. Just click Apply under the name of the modifier, for each object.


There is no smoke in render view instead it scatters outside the domain in blender 2.9 Eevee render

i downloaded your blend file.
I raised the resolution division to 64 (which is already low - but 32 is too low).
I checked adaptive domain.
I tapped on "bake all".
Result (Rendered view):

if you want more smoke, go to shader editor and increase density:

then you get:

more density:

more smoke:


why Booleans slow my computer more than expected

Blender 2.91 comes with a new "exact" solver for Booleans. The old one is still around but by default EXACT it enabled.
There's the option "fast" in the Boolean Modifier (this enables the old algorithm/solver). If you click it you get way better performance but a less accurate boolean operation.


For things like the wheels of a car, you want them to be separate meshes, in separate nodes.  A glTF "Node" corresponds to a Blender "Object" which owns the glTF "Mesh" or Blender "Mesh".  Each node and each mesh get their own block of JSON in the glTF.

If your car is all one mesh, go into Edit Mode on that mesh, select all the faces/vertices of the wheels, press P, and choose Selection.  This will create a second object with the selected faces.  Leave Edit Mode and rename the new object to a more descriptive name like "Wheels".

If your plan is to spin the wheels, you may wish to take some extra steps.  The back wheels and the front wheels should be separate objects (or perhaps all four wheels could be separate, if they spin individually).  The origin point for each wheel should be somewhere along the centerline of the axle for that wheel.  The wheels should each declare the car body as a parent object, so that when the car itself moves, the wheels come with it.


Isolate light cast on a surface through glass

Alpha masks will not work for this
Alpha is for blending one image on top of another so it will not work with light, because light should be added, not blended, but you can separate only the light information.
Separating light information
To separate light going through the glass object you would need to render it and then render a version without it. In this case it happens that the light that we need is going through glass, so if caustics are disabled the render will come out without it. Or if you wanted the light to be only from a specific light source you could disable the light source instead. You should just subtract the image without the light from the image with the light and you will be left with the light information that now could be added to another image. Note that it is important to work with 32bit color depth here.

Separating glass
Glass is a lot harder to separate since it has refractions and internal reflections. You can have a look at this post, but I ignore internal reflections here. the refractions are also not completely accurate, because they come from a plane and not from realistic directions. To have more accurate results, it would be possible to separate glass to components like internal reflections with render passes and light paths node in the materials so it can be reconstructed in a more acurate way with different refractions. That gets a bit complicated, let me know, if you wish to explore this further.


How to change pose without deforming my mesh?

I don't know a lot about the Skin modifier but it looks like the parentage was not good. If you apply the Skin modifier, then put your armature in Pose mode, then put your mesh in Weight Paint mode, you can see that the weight painting is not good, the legs control the hip, when they are not supposed to. Now you can correct with the brush.


Frame Duplication with Changing transparancy and colors

Construct an action from the target object and delay it with the required amount. Then instance the target object and transform it based on the delayed action. Then just set the the color of the object as you wish, in this case, I change the hue based on their offset amount:


Driving an Object at Half the Speed of the main Object

Use one property to drive many

In leiu of setting up a property for RPM of the engine, will use the current frame.  All drivers added will be a function of frame.
A simple driver to rotate one revolution per second on a file using 24 fps
2 * pi * frame / 24

A driver for half this rotational speed  would be
pi * frame / 24

To rotate in equal but opposite direction, negate the value.
Can create this  driver by typing   #2 * pi * frame / 24  directly into a property. The hash designates it is a driver. (turns purple) Only need the hash first time
Here are the six drivers I have added to create animation.

Turning off use selected in the drivers editor allows us to quickly navigate from one to another.
Instead of using frame could instead set up a custom property RPM and use that in any driver for a component driven by shaft revs.
PS. Not sure I have animated the correct items, but hopefully it shows the theory of using one property to drive many based on its value.


Changing current frame without updating depsgraph

If you already modified things go ahead and create a new keyframe that overwrites the previous. Go to the dopesheet, select the newly created keyframe (by selecting the yellow diamond icon) and copy it (CtrlC). Then press CtrlZ a few times to undo the changes you had made in the pose and get your previous keyframe back. In the dopesheet move to a different frame and paste (CtrlV) the modified keyframe, now you have both keyframes.

(But the easiest solution is to press the right arrow key so you are in a different frame before modifying anything...)


Print(store) particle velocity vector and distance from other particles

You can loop through the particles in a particle system and read the location and velocity of each particle.

For the distance you will need to calculate that for each particle. The distance is a pythagorean calculation.

import bpy
from math import sqrt

scn = bpy.context.scene
obj = bpy.context.object
p_system = obj.particle_systems['ParticleSystem']

def distance(p1, p2):
    return sqrt((p1[0]-p2[0])**2+(p1[1]-p2[1])**2+(p1[2]-p2[2])**2)

for f in range(scn.frame_start, scn.frame_end):
    scn.frame_set(f)
    print('At frame {}'.format(f))
    for i1,p1 in enumerate(p_system.particles):
        if p1.alive_state == 'ALIVE':
            print(' particle {} has a velocity of {}'.format(i1,p1.velocity))
            for i2,p2 in enumerate(p_system.particles):
                if p2.alive_state == 'ALIVE' and i1 != i2:
                    d = distance(p1.location,p2.location)
                    print('  particle {} is {:.4f} from particle {}'.format(i1,d,i2))


Bone heat weighting failed to find solution for one or more bones (tried all fix, don't work)

So I separated all objects and parented each one by one and it seems that the belt and torso are the issue. I tried to recalculate the normals and Remove doubles, but it seems that there is something wrong with the two. Maybe try Retopo-ing the the two. Also for whatever reason there is no weight appearing in the weight paint mode which brings me to the conclusion that you will have to manually weight paint the model after fixing the two objects of course.

Additionally I looked up the issue and found a concise list of the stuff you need to check in your model on a reddit forum Here it is:

Anything that has lots of intersecting meshes seems to bork the auto weightpainting. If you separate loose parts, weight all the parts, and then join them, you can get an approximate weight painting.
Other things worth checking
-Are the rig and mesh aligned on the axis properly?
-Have you applied scale and rotation on everything you're weighting?
-Did you make sure to keep the x - axis mirror option on when rigging? The weight painting gets wonky when things are less symmetrical.
-Have you removed double vertices, checked your mesh for bits that don't aren't connected, and recalculated normals?
-Is your mesh or armature too large? Sometimes scaling it down can help.
That error message is frustrating because it gives very few clues as to what you're doing wrong.

Here is the file:


Why does 'diffuse_color' expect four values and not three with Python in 2.8?

You saw the wrong version of document, 2.80 change a lot. Ones should always use new document page for 2.80 version:
Material(ID) - Blender 2.80 API (latest)

diffuse_color
Diffuse color of the material
Type:
float array of 4 items in [0, inf], default (0.8, 0.8, 0.8, 0.8)
last update: 2020-08-04 Blender 2.91 Alpha

The four values are represented as: [Red, Green, Blue, Alpha] by default rendering pipeline. These values may stay from 0.0 to 1.0 if the color is interpreted as diffuse. Other wise, it doesn't need to less than 1. eg. a light color node might contain a value more than 1 unit.


Make white molecular particles on the outside and red on the inside?

I'm not sure if reference object in your linked video is done by the same way, but you can try ...

for outer particles - add Solidify modifier to your object
for inner particles - copy outer object, Apply modifier, go to edit mode select one outer vertex, select Linked L, delete, Recalculate Normals Shift+N

Like this you create "inset" object without overlapping particles.

Enable under Collision

Activate Collision with others
Enable under links
Activate Particles linking with others


Hotkey for selecting transform manipulator type

First what you linked to is for blender version 2.37 not 2.73, so the shortcuts are wrong.

To add a shortcut to switch the manipulator type; open up the user preferences.
Under the Input tab add a new shortcut under 3D View > 3D View (Global). Type view3d.enable_manipulator in to the identifier field, then just check one of the grayed out boxes for Translate, Scale, and Rotate. The only hard part will be finding 3 unused shortcuts to use for the new transform manipulator shortcuts.

Other transform manipulator shortcuts:
Ctrlspace is the default shortcut to toggle on and of the transform manipulator.
Altspace open a menu to change the orientation type.
When using the buttons in the 3D view header, holding Shift allows for more then one  manipulator type to be active at a time.


Here's my approach to creating materials in Cycles.  In my opinion, it helps a great deal to have a decent understanding of how Cycles works.  Knowing at least a little bit about the gears behind the rendering process can be a huge help in putting together a decent shader.
Cycles in a Nutshell

Cycles is a backwards ray tracing engine.  Ray (or path) tracing is the process of simulating light bouncing through a scene.  It is a backwards ray tracing engine because instead of emitting rays from each light source and tracing them through the scene to the camera, it shoots the rays from the camera "through" each pixel and traces their paths backwards through the scene to the light sources.  Once the ray reaches its final destination its pixel's color is calculated based on the path it took.

See this answer for a more detailed explanation.
What is a shader?

A shader is what tells Cycles how light interacts with a surface or volume.  When a ray hits the surface of an object, the shader assigned to that surface is invoked.  The shader tells Cycles two things, how the ray bounces off the surface, and how the surface affects the color of the ray.
The Fundamental Shaders

There are two basic types of surface shaders, reflective and transmissive.  Reflective shaders bounce light off the surface, transmissive shaders let light pass through the surface.  For each type there are two basic shaders, what I am calling scattering and sharp.
Diffuse - scattered reflection
When a ray hits a diffuse surface it will bounce off scattering in a random direction.  Since light reflects in all directions from a diffuse surface, the surface will look the same no matter what direction you are viewing from.   Diffuse is what most people would consider "flat" or "matte".

Glossy - sharp reflection
When a ray hits a pure glossy surface it will bounce off along the angle of incidence (specular angle).  Since incoming light from a given direction will always reflect in the same direction, glossy reflections change when viewed from different angles.

Glossy shaders also have another parameter, roughness.  Roughness introduces a small amount of randomness into the direction of the ray as it bounces off the surface.  The higher the roughness value the farther away from the specular angle the rays will scatter.

Translucency - scattered transmission
Translucency is the transmissive equivalent of diffuse.  When a ray hits a translucent surface it will pass through the surface and scatter randomly on the other side.

A variation of translucency is subsurface scattering (SSS).  Subsurface scattering simulates materials like skin where the light enters the surface, bounces around, and comes out again close to where it originally hit the surface.

Transparency - sharp transmission
Transparency is the transmissive equivalent of gloss.  When a ray hits a transparent surface it will pass through the surface and continue on its way on the other side without changing direction.  This doesn't necessarily make the surface invisible though since the color of the light is still changed based on the color of the transparent surface.

A variation of transparency is refraction.  When light hits a refractive surface it passes through but is bent slightly, according to Snell's Law.

There are a few more shaders than this available in Cycles, but they are essentialy all "fancy" versions of the above properties.
Combining Shaders

In real life surfaces really don't just exhibit one property, just about any surface is a mix of the properties described above.  So to produce realistic materials in Cycles you have to be able to combine various shaders.  There are two ways to combine two shaders, mixing and adding.
Mixing shaders
Mixing two shaders means the surface will partially behave like on shader and partially behave like the other shader.  In other words, if you mix a diffuse shader and a glossy shader with a mix factor of 0.3, the surface will be 70% diffuse and 30% glossy (the fac parameter determines the fraction of the second input).  Or more precisely, when a ray hits the surface, there is a 70% chance it will behave in a diffuse manner and a 30% chance it will behave in a glossy manner.
Adding shaders
Adding two shaders means the surface will be have like both shaders.  Meaning if you add a diffuse shader and a glossy shader, when a ray hits the surface it will bounce off in a random direction (diffuse) and along the specular angle, effectively creating 2 rays for every ray that hits the surface.  It is worth noting here that without carefully calculating the energy of the shaders being added, adding shaders is likely to produce non physically accurate results.
See this question for more on adding vs. mixing shaders.


How to create a prefixed list of transform data for objects?

You can use startswith('prefix') to detect objects' names start with this prefix.

I have changed the keys so there values don't get overwritten by new ones ,this is the portion of the code that needs to be changed :

def RunPerFrame(scene):
    prefix = 'prefix'
    url = ''
    values = { 'msgInstruction=' : 'MOVE_OBJ'}

    for obj in bpy.data.objects:
        print(obj.name)
        if obj.name.startswith(prefix):
            mat = bpy.context.object.matrix_world
            loc = mat.to_translation()
            rot = mat.to_3x3().to_quaternion()
            scale = obj.dimensions
            qtX = round(rot.x,3)
            qtY = round(rot.y,3)
            qtZ = round(rot.z,3)
            qtW = round(rot.w,3)
            loX = round(loc.x,3)
            loY = round(loc.y,3)
            loZ = round(loc.z,3)
            scX = round(scale.x,3)
            scY = round(scale.y,3)
            scZ = round(scale.z,3)

            name = obj.name.replace(prefix,'')
            this_object = {'object=': name,  name+'_rotQuat=' : str(qtX) + ',' + str(qtY) + ',' + str(qtZ) + ',' + str(qtW), name+'_objLoc=' : str(loX) + ',' + str(loY) + ',' + str(loZ), name+'_objScale=' : str(scX) + ',' + str(scY) + ',' + str(scZ) }
            values.update(this_object)


You are baking the normals form a high poly model, but it's not totally aligned with the low poly model.

You can see how the dark areas produced by the normals are where the high and the low poly models don't match.


Is there a Blender Virtual Camera? Or How to create a Virtual Camera?

I don't think it is a good idea to use a phone for running Blender. You will probably need to come up with some other hardware solutions to display the scene that would be portable as in the example video.

If you know how to get movement and orientation data from some device, moving camera in Blender via Python is not a big deal at all. You could use an accelerometer and gyroscope sensor connected to some microcontroller board - probably would be easiest to use an Arduino, maybe have a look at this one that comes with Bluetooth Maybe then receive data with pySerial...

Once in Blender, you can take any camera and move it with scene update Application Handler continuously. It's as easy as bpy.data.objects['Camera.001'].location = ... and bpy.data.objects['Camera.001'].rotation_quaternion = ... You might want to add functionality, like for example recording the movement to keyframes and so on. That is obviously also achievable with Blender's Python API.

I suspect that you might want to add quite a lot of additiona features like that and probably some sort of an interface so at the end of the day, this might not be the most suitable/enjoyable first project to try for someone without any knowledge of Blender's Python API. You might want to dedicate some time to learning to use it first.


Rigid body cubes exploding when on floor

One easy solution is to add another plane which will be use only for collisions.

Turn off the rigid body on the floor you have now.
Add a new plane, and position it so that it is at (or sightly below) the top of the bumps on your original floor.
Add passive rigid body physics to the new plane.
Disable render of the collision only plane, by unticking the camera icon for it in the Outliner.


Glass shader appears black when touching another object

For some reason, caustics were disabled, and turning them on fixed the problem.


Where can I find the Open Street Map addon?

The OpenStreetMap addon for Blender has been completely rewritten.
Here is the link: https://github.com/vvoovv/blender-osm


Hair particle system as dynamic paint brush not working?

Use Particle Instance modifier.

I used Cylinder as basic mesh, which was instanced via another object's Hair system.

So, this Instanced mesh will be a Dynamic Paint Brush, set brush option to Mesh Volume or Mesh Volume + Proximity to get it work.

Default Cylinder is vertically oriented, but I gave it 90 degree rotation on X axis in Edit mode (note, that you should do transforms in Edit mode, otherwise transformations will affect whole instanced object). Add some loopcuts to make it easier to bend along hair strands.

Cylinder in Edit mode:


If you use a Multires modifer, check the "preview" level, and increase it if you need.

However, it is useful to keep it low during Preview, to save up memory ; and use a higher level for Sculpt and Render.


How to add a new item to the Mesh submenu of the Add Menu in this script?

bl_info = {
    "name": "Realistic Stone",
    "author": "",
    "version": (0, 0, 1),
    "blender": (2, 79, 0),
    "location": "VIEW3D > ADD > Mesh > Add Realistic Stone",
    "description": "Realistic Stone",
    "warning": "",
    "wiki_url": "",
    "tracker_url": "",
    "category": "Add Mesh"}

# Imports
import bpy
from bpy import context
import bmesh

class RealisticStoneStone(bpy.types.Operator):

    """Realistic Stone"""
    bl_idname = "mesh.realistic_stone_add"
    bl_label = "Realistic Stone"
    bl_options = {'REGISTER', 'UNDO', 'PRESET'}

    def execute(self, context):

        # Mesh - Create Cubic
        bpy.ops.mesh.primitive_cube_add(location=(0.00, 0.00, 1.00))
        bpy.context.object.scale = (1, 1, 1)
        bpy.ops.object.select_all(action='TOGGLE')
        Cube = bpy.context.object
        Cube.name = 'RealisticStone'
        Object = Cube.name = 'RealisticStone'
        bpy.context.object.data.name = "RealisticStone"

        # Modifier - Multiresolution
        bpy.ops.object.select_all(action='TOGGLE')
        bpy.ops.object.modifier_add(type='MULTIRES')
        bpy.ops.object.multires_subdivide(modifier="Multires")
        bpy.ops.object.multires_subdivide(modifier="Multires")
        bpy.ops.object.multires_subdivide(modifier="Multires")
        bpy.ops.object.multires_subdivide(modifier="Multires")
        bpy.context.object.modifiers["Multires"].show_expanded = False

        # Modifier - Displace 1
        bpy.ops.object.modifier_add(type='DISPLACE')
        bpy.context.object.modifiers["Displace"].strength = 0.5
        bpy.data.textures["Texture.001"].type = 'VORONOI'
        bpy.data.textures["Texture.001"].noise_scale = 1
        bpy.context.object.modifiers["Displace"].show_expanded = False

        # Modifier - Displace 2
        bpy.ops.object.modifier_add(type='DISPLACE')
        bpy.context.object.modifiers["Displace"].strength = 0.25
        bpy.data.textures["Texture.002"].type = 'CLOUDS'
        bpy.data.textures["Texture.002"].noise_depth = 7
        bpy.context.object.modifiers["Displace.001"].show_expanded = False

        # Modifier - Displace 3
        bpy.ops.object.modifier_add(type='DISPLACE')
        bpy.context.object.modifiers["Displace"].strength = 0.01
        bpy.data.textures["Texture.003"].type = 'NOISE'
        bpy.context.object.modifiers["Displace.002"].show_expanded = False

def invoke(self, context, event):
    return self.execute(context)

def draw_item(self, context):
    self.layout.operator("mesh.realistic_stone_add", icon="PLUGIN")

def register():
    bpy.utils.register_module(__name__)
    bpy.types.INFO_MT_mesh_add.append(draw_item)

def unregister():
    bpy.utils.unregister_module(__name__)
    bpy.types.INFO_MT_mesh_add.remove(draw_item)

if __name__ == '__main__':
    register()


Creating a Custom Properties Tab in Blender 2.80

The code you've posted adds a tab to the Tool Shelf, not the Properties. As far as I know you cannot add new tabs to the properties, you can however add tabs in the 3D View.

In Blender 2.8 you need the following attributes to create your own tab:

bl_category = "Name of your tab"
bl_space_type = "VIEW_3D"
bl_region_type = "UI"

A minimal add-on that adds a panel in a separate tab:

import bpy

class EXAMPLE_PT_panel(bpy.types.Panel):
    bl_label = "My own addon"
    bl_category = "Name of your tab"
    bl_space_type = "VIEW_3D"
    bl_region_type = "UI"

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

        layout.label(text="This is a label")

classes = (EXAMPLE_PT_panel,)

def register():
    for cls in classes:
        bpy.utils.register_class(cls)

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

if __name__ == "__main__":
    register()


add a keyboard sensor and connect it to a python controller

    own = cont.owner
    key_w = own.sensors['w']# can assign any key make sure the sensor is the same

        max_speed = 2
        if key_w.positive:
            if speed_var < max_speed:
              speed_var += 0.25#how quickly to accelerate
        else:
        speed_var = 0#you can also do the same here by subtracting 0.25
# until 0 is reached...make sure you do a check that it stays above 0


Yes.

By creating a node group (⎈ CtrlG) you can append (⇧ ShiftF1) those node groups from other projects.

See my answer here for more detail.


Should I just quit Blender when after two weeks of learning and watching tutorials I cannot model anything?

Two weeks and you are thinking of quitting? No, no, no that will not do.
For anything even starting to be complex two weeks is just not enough time to call it quits. Learning takes time. How much time depends entirely on your effort. You have a good motivator to learn blender, to get into University. So do not loose sight of your goal.
Now how to go about that.
Stop watching tutorials. That's right, Stop watching tutorials. You said yourself that you "forget everything and the things I've learned are just gone." (That is because you never actually learned them, you just saw some guy on youtube do something). I bet you have spent a fair bit of time watching tutorials. Look at the outcome, for you it is not worth it.
This is a common problem with tutorials. We watch all these tutorials, and feel great "look at what I can do." Except if you just watch them, its nothing more then a movie. We feel like we conquered the world, but really we just sat on our butt for two hours.
So with tutorials out of the way, just make something. Start simple, such as the desk your sitting at. Yes it will be hard, your model will be pretty bad, and you will get stuck. However this is how you learn.
Ok so you are modeling, you hit a wall, no idea how to do X. Search for that thing (you very likely will get an answer from this site), then keep modeling.
It is ok to have to ask google how to do every step.
Here's the exciting part. You open blender up on day two, start by making another simple object. Say a wood stove. Now instead of having to search for everything you remembered that GG is edge slide, and why you should be moving that edge loop.

 Image from HomeDepo
Keep it up. Make something, anything every day. Keep it very simple. If you try to bite off more then you can do you will get discouraged and then it is easy to skip blender today, and down the spiral you fall.
Make a simple object everyday for a week and I guarantee you will learn more in that week then you have in all the time you spent in blender and watching tutorials up to this point.
Don't get discouraged when your models don't look like you wanted, or your renders aren't pretty. This is part of the learning process. I bet your first steps as a baby weren't too good either.
Please do not feel like you have to remember everything or every keyboard shortcut. Many times I have searched for something and found the answer, only to discover that I wrote the answer!

TLDR
Stop watching tutorials and just make stuff, mistakes included, in blender.


Does anyone else have this problem when trying to open a .BLEND file?

I have the same issue, and I suspect that your notion that you downloaded the zip file rather than the installer is, in fact, the cause of the problem. It appears to me, that you are using a recent version of Windows. In which case, you can try clicking on "start", and in the menu interface, click on "Default Programs" (in my installation, in the right hand column, directly above "Help and Support"). In the resulting menu, click on "Associate a file type or protocol with a program", which will bring up a list of most of the file types present on your system, perhaps after a period of time to load. In the list, right-click on the Blend extension, and in the upper right hand corner, click on the "change program"

In my installation, when I do this, there is no option to associate the file with Blender, despite the fact that I have about a dozen versions of Blender present on my machine. But each of these is in a separate folder on the desktop of one particular user (I have a half dozen set up, each associated with a particular activity), so that it might be that Windows apparently does not see that the executable programs in those files. It might be that if the unzipped folders containing the various Blender versions were in the root directory of the drive on which they are located, instead of the desktop folder of a particular user, that Windows might be able to see them.

My workaround is to open an instance of Blender, and open new projects from there, and use "open" from the Blender menu to open existing files, and if it's a project I have previously worked on, to use the "open recent" option.


How do constraint and parenting interact with each other?

In the copy rotation constraint you say you have set the copy space as world->local, that means rotating CubeB on the global z-axis will rotate CubeA in it's local z-axis.

As you parented CubeA to CubeC and then rotated CubeC, Cube A is located below CubeC but you should also notice that as CubeC is rotated, CubeA is rotated using the CubeC location as the pivot point, this leads to the CubeA local z-axis now aligned to the global x-axis.

This leads to the local rotation that you now see, CubeA is still rotating on it's local z-axis but that is no longer aligned to the global z-axis, so it appears to rotate differently to CubeB.

If you use an object that is easier to see the orientation, what is happening will be clearer.


Internal Render with colored shadow pass

Recently found something usefull. I don't know how does it work exactly, but anyway:

Make second material, which will be replicating first Transparent material in all aspects except for transparency (!).
Then enable nodes and plug Transparent material to the Output.
Finally add another Material node (Input-> add Material node). And choose there your second material (one without transparency), but don't plug it anywhere, just click it with RMB to set as active in node system.

P.S. It is not the best solution and I guess, it can corrupt other passes with more complex materials.

Blend file with this setup is attached here:


can't set the location of the object by program?

When directly manipulating transform values fails (it shouldn't, but it does sometimes), I often just try to use the transform operators insated, and it often fixes the problem.

 def choose_car_position_byname(name, pos):
    o = bpy.data.objects[name]
    o.hide_render = False;
    print("location     ", o.location )

    bpy.ops.object.select_all( action = 'DESELECT' )
    o.select = True
    bpy.context.scene.objects.active = o

    bpy.ops.transform.translate( value = ( pos, 1, 0 ) )

    print("location     ", o.location )

    return o

 car1 = choose_car_position_byname('AudiA2',1)
 car2 = choose_car_position_byname('JeepCherokee',0)

By the way, if this still fails, check if you have keyframes on the car objects' locations. If you do, that could definitely explain why they aren't moving (the keyframes will keep them in place).

EDITED: based on blend file, my suspicion has indeed been confirmed that you have keyframes on your car models. You need to delete these keyframes to enable control over the objects' locations via script. Here's how to do this (mouse cursor is a bit off due to weird issues in recording on my laptop's screen, you need to select a car object, then right click on any of the location boxes in the properties panel):


My keypad numbers shortcuts doesn't work! Help!

You can anyway access to these functions in the view menu, until you will be able to find how to make the numbers work.

Try also the "file - load factory settings" option, then check the  "emulate Keypad" button and don't forget to save your preferences settings.

Hope it helps.


Colour shift when viewing render outside of blender

Blender saves to different formats using different techniques and curving according to some file based assumptions. TIFFs do not save "raw" by default, nor does the term "raw" have any real meaning here. Some examples file formats may have on output include:

Saving to a JPEG or TIFF at 8 bits per channel will apply a nonlinear sRGB curve to the data, and may change the internal float format to the respective format's storage type.
Saving to an EXR will transfer the internal reference space buffers unchanged which, by nature of EXR, is a linearized float scene referred format.

From what I can deduce from your screenshot(?) it appears that a subtle shifting is happening in the intensity along the trunk. This suggests that the right image is being color managed for your display from within Photoshop.

Blender does not use ICCs for color management, nor is the display corrected by default[1]. Further, it will not tag images with ICC profile information when saving. This means that the software will make a guess as to what reference space the image is in when it is loaded.

If I had to speculate, I would guess that the image viewer on the right is color correcting the assumed sRGB image format you have loaded. This effectively takes the theoretical sRGB values output from Blender and attempts to emulate the correct sRGB values based on a profile of your display. It may also have to do with an incorrect reference space being set from within your image viewer.

So without further information, it would be impossible to diagnose what is happening with absolute certainty. That said, if you open the color management settings in Photoshop, you will likely find a display correction profile in place there, or an incorrect working reference space ICC profile. In the case of the former, you can disable the display profile and see the raw dump to the screen as Blender rendered it. In the case of the latter, there are sadly many sRGB ICC profiles out there that are not identical to each other, and some are even outright incorrect[2].

Hope this helps you make a little progress into figuring out the issue.

Blender can be augmented to display color critical and accurate results, hardware depending. This involves profiling one's display, converting the resulting profile into a 3D LUT, and inserting it into the OpenColorIO configuration set.
The sRGB.icm ICC file included with the Argyll color management system is accurate and should deliver proper output.


It appears that you are in WXYZ rotation mode. You can see in your transformation tab there are four parameters. I honestly have no idea how that rotation mode works, so you can change the tab below those four parameters to "XYZ Euler." It should behave differently now. Hope that helps!


How can I make certain vertices unselectable?

To avoid separating the vertices into a new object you can use Vertex Groups

Select the vertices you want to group.

Make a new vertex group (With the + sign) and assign the selected vertices to it.

To hide those vercices press H

To unhide press H

Once you've created and asigned vertex groups is very easy to select and unselect groups of vertices as you need. Vertex groups can be named, edited or deleted.

Vertex groups are also of particular importance if you are going to be using cloth simulation.

More information on the blender manual:

https://docs.blender.org/manual/en/dev/modeling/meshes/properties/vertex_groups/assigning_vertex_group.html?highlight=vertex%20groups


How can I import a rigged model(Facial controls included) from SFM to blender?

Try exporting it from the external application into a format Blender supports such as:
.dae
.abc
.fbx
.bvh
.ply
.obj
.stl
.svg
.glb/.gltf

Then in Blender: Go to File, Import - select the matching format, locate & import the file.


Rigging and auto weight painting not working

I took a look at your character.

It appears you've parented the metarig to your character which creates an infinitate loop. blender stops that from happening to avoid crashes. The solution is very simple:

Unparent your character mesh and try again. Here are some pictures to help you.

Loop in Parents is the error you get. Looking at your outliner, you can see the metarig is a child of the character mesh. Click and drag it un clear the rig of its parent.

Again, selecting the character mesh first and then the rig second in object mode. Press Ctrl+P and parent with automatic weights.

Now the rig works perfectly. Easy mistake to make, easy solution to fix it.

I would also note that the hierarchy is a bit strange. I would parent the thigh bones to the pelvis .L and .R NOT the spine bone but it depends what you want.

Here is your edited file in case you need to compare.
https://www.dropbox.com/s/gzliftzf727jzpa/SpidSunSh_edit.blend?dl=0

I hope that helps.


Is there a better way to extend a Bezier Curve?

Create a bezeir curve.

In edit mode select a control point at the start or end of the curve.

You can press:

E to extrude (and move) a new connected point
Ctrl Left Mouse Click to create a new connected point.
To make new control points that are unconnected to the existing curve deselect any previously selected control points and press Ctrl Left Mouse Click
V to set handle type (vector straight, aligned, free, etc...)
New points are the same type of active (last selected) control point.
AltC to close a curve

For more info see the Manual


AN allows you to manipulate meshes with the Mesh Object OuputNode. It takes Mesh Data as input and in order to get mesh data from vectors (vector list), you have to call the Combine Mesh DataNode.
Take the vertex location list (vector list) that you need and connect it to the input of the combine mesh data. Then Choose an object to copy the data to or create a target by clicking the +button.

The thing is this node setup will only create the vertices in the mesh, and no faces. Why is that? Because you didn't give the AN enough information to create edges and faces. How should it know which vertex to connect with which one if you don't say it explicitly? This is why there are two more inputs to the Object Mesh Data Node. Edge Indices and Polygon Indices.

Unlike the vertex locations, these inputs are a little bit more difficult to understand. In order to know how to fill these intputs and get a whole mesh, let's see what the vertex location is. If you are familiar with any programmation language, you should be familiar with the concept of lists. If not, a list has got elements in there, (here 3D vectors). And to access these element in the list, each of the vector has an index. The first point will have the index 0, etc. You can figure this out by selecting the node which outputs the vector list and hit W and then debug. If your list has 5 elements, the first is going to be 0: V("x", "y", "z") and the last one 4: V("x", "y", "z").

Now let's go into the edge indices: as we have seen it's just a way to connect two vertices. Edge indices is a list, so it is also going to have elements and indices. Each element is a list (a tuple if you are familiar with python or programmation) saying which index of the vector list is connected to which one. For example if you want to have one edge connecting the second and third vertex, the element is going to be 0: (1, 2). The 0 is the index of the edge (there is only one), the one is the index AN uses to access the second vertex and to connect it to the vertex of index 2 (the third).

The same principe applies to the polygon index list. I think the polygon indices select the vertices to create the faces, and not the edges

So now how do you create these lists in order to say the AN how to create the mesh? You can use the create edge indices list and create edge indices nodes.
From there you can set each connexion between each point.

for the polygon indices, call the create polygon indices list, and create polygon indices.

If you don't want to become crazy with all these indices, you can take the edge and polygon indices of a basemesh (ex: base_cube). Just make sure your target has the same amount of vertices than the mesh you use to copy the indices.


What happened to the new 2.9 feature "Blueprint at the time"?

This feature has been partial implemented for Blender 2.91 as the new add object tool. It allows to control the parameters of a handful of primitives interactively. The design task for this is T57210, the commit that added the feature was rB122cb1aea823


The following code moves each point in the curve ahead one spot.
So the second point moves to where the first point is, the third to the second, and so on.

All you need to do is decide where the first point needs to be moved next.

import bpy

# Assumes your curve is the only one in the scene.
curve = bpy.data.curves[0]

items = curve.splines[0].points.items()
point_count = len(items)

for index in range(point_count - 1, 0, -1):
    current = items[index][1].co
    previous = items[index - 1][1].co
    current.x = previous.x
    current.y = previous.y
    current.z = previous.z

first = items[0][1].co
first.x -= 1

The final part moves the first point to the new position.
So you could do first.x -= 1 for left, first.x += 1 for right, and first.y -= 1 for forward.
This is making assumptions about the orientation of the scene, so you should adjust x, y, and z to suit your scene.

This code is very simple, but hopefully it is enough to get started.


Tips for making Mesh Rigid-body collision shapes more stable

Jittering objects are normally caused by the collision margin. See the documentation:

Collision Margin
The collision margin is used to improve performance and stability of rigid bodies. Depending on the shape, it behaves differently, some shapes embed it, while others have a visible gap around them:
The margin is embedded for these shapes:

Sphere
Box
Capsule
Cylinder
Convex Hull: Only allows for uniform scale when embedded.

The margin is not embedded for these shapes:

Cone
Active Triangle Mesh
Passive Triangle Mesh: Can be set to 0 most of the time.

And:

Simulation Stability
The simplest way of improving simulation stability is to increase the steps per second. However, care has to be taken since making too many steps can cause problems and make the simulation even less stable (if you need more than 1000 steps, you should look at other ways to improve stability).
Increasing the number of solver iterations helps making constraints stronger and also improves the object's stacking stability.
It's best to avoid small objects, as they're currently unstable. Ideally, objects should be at least 20 cm in diameter. If it's still necessary, setting the collision margin to 0, while generally not recommended, can help making small object behave more naturally.

Here's a quick example scene for you to inspect.


How can I make the width/height of particles randomly?

Yes, you can have the different height and width of each other. By using Random Size.


Why is sun lamp not projecting in parallel... and how to make faded shadows?

It's not a bug.  It's just the effect of the camera perspective.  Suppose the sun was directly overhead and you stood on one of the flags.  You wouldn't see any of the shadow of the flag you were standing on, but for the other flags, the further away they were, the more of their shadow you'd see, even though all of the shadows would be directly under their respective flags thanks to the parallel sun rays.

For the effect you're trying to achieve, it would normally be enough to switch the camera to orthographic mode.  Select the camera, go into the "Camera" panel, and change the setting under Lens from "Perspective" to "Orthographic". Unfortunately, it looks like shadows created by Blender Render don't work correctly for orthographic cameras, so they're not all the same size the way they should be.

I'd suggest doing it with another mesh instead.  Delete your plane, make a a copy of all your flags to serve as a shadow and move them down below the real flags.  You can Ctrl-J to join them into a single mesh and then change the material on the copy to be a semi-transparent black.  With an orthographic camera, this should give you the effect you want.  In the Render tab, you should be able to select "Alpha: Transparent" under "Shading" to get proper transparency in the output.

Here's a blend file by way of example:

and the resulting render:


Why my face is missing when I export fbx from Blender to Unity 3D?

You just have to select problematic faces and then flip the normals.

To flip normals, open Blender in Edit Mode select problematic faces and go to Mesh > Normals > Flip.


True relationship between bones/armature and rigginh

Vertex movements are referred to the head bone, tail position is important only in case of automatic weighting or bone heat weighting, and - of course - in case of IK chain or other connected bones.

After weighting is done, if your bone isn't parent connected with another bone, you can freely move the tail in edit mode (i.e. to align axes with world axes) without affecting the behaviour of the rig.


Modelling a full Windsor knot on a necktie

As Duarte said, the Curve Modifier is probably best suited for this.
You can easily edit both the knot and the shape of your tie.

Start with a flat tie. Heavily subdivide it along it's length
Create the Windsor knot using a Bezier curve
Add a Curve modifier to your tie and target the knot


Add a Torus go to edit mode. Select a loop and confirm that you're in face selection as shown in the GIF.

import bpy
bpy.ops.mesh.select_nth(nth=3, offset=0)
bpy.ops.transform.translate(value=(0, 0, 0.5), constraint_axis=(False, False, True), constraint_orientation='GLOBAL', mirror=False, proportional='DISABLED', proportional_edit_falloff='SMOOTH', proportional_size=1, release_confirm=True)


I fixed the problem by deleting the apparently corrupted points, re-extruding from the arm and then reconnecting the points. Dunno why or how the method I was using before was being troublesome. Thanks to all the help.


I accidentally removed the texture paint window on the left and now I can't continue,

You can press the plus button and select Texture Paint under general.


Assuming you mean the subsurface modifier,You can check Optimal Display .

Here is without (On the left) and with (In the Right)


The simple way is to use the "angular velocity" field of the simple motion brick. But that doesn't give you any angular-speed ramp-up the way things in the normal world work.

Another way is to use torques, and to set the rotational damping in the physics really really high. This gives you the required ramp up, but also affects how the object responds to impacts.

The normal solution I use is to code it. This can either be done by directly applying torques to the object (ie the KX_GameObject.applyTorque() function), or it can be done by creating a constraint and setting the various parameters. As you are making a game, I highly suggest learning python - it really will make things significantly easier.


How to color a perfect reflective material in cycles?

If I understand correctly, you want something like this:

This way the camera will see the object with the dark color, but other objects will "see" the object with a bright color, reflecting more light:


How to Import Python Blender Modules in PyCharm IDE

Try running these two lines in your terminal and see how your test works afterwards. I had the exact same problem when I built the module.

sudo mkdir "/Library/Application Support/Blender"
sudo ln -s /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/2.77 "/Library/Application Support/Blender/2.77"

Python isn't recognizing the bpy module because Blender's unique import protocol searches for /Library/Application Support/Blender/2.77 before the Python site packages. You can work around this by creating a symbolic link that leads to /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/2.77. Your test should work once you do that.


MBLab 1.7.4 add on refuses to install in Blender 2.8 Beta?

I had the same issue, and by looking carefully at the log I figured it out.

This is how I solved it:

Install the addon as usual.

In my case, I had it already installed but wasn't showing up in the addon list.

You have to do the "renaming thing" but instead of just renaming the installation ZIP, you have to rename the addon folder that is installed in:

/home/"user name"/.config/blender/2.8/scripts/addons

I renamed it to just MBlab, and that was it. I hope it works for you as well, have a nice day.


How to ask Blender to return an angle of a tangent in a driver?

The python function is atan() not arctan(), and generally its better to use atan2(y, x) instead of atan(y/x) because the former won't generate division by zero.
Also note you have the hypotense so you want asin(var_1-var_2)/6) to get $\alpha$ since you haven't actually found Y. See https://docs.blender.org/manual/en/latest/animation/drivers/drivers_panel.html#simple-expressions


Instead of scaling the loop in the properties menu, just press s to scale, z to scale it along z and then type zero. This will make the edge loop flat in xy axis.


Is there a way to automatically create new material in all meshes in the model?

I am not sure if I understood the question correctly, but If you want to assign the same material to all objects then select all objects, click on the Object you want the materials to copy from (it gets highlighted in yellow) then press "Ctrl L" and choose Materials. All objects should share the same Materialdata then.
If you just have one model with different textures on it, go into edit mode select all vertices choose the one material you want to copy in the material bar on the right and press "assign" under the material options.


you could just hide the node? (press H) Then it would look like this:

if you have multiple nodes, i suggest you make a node group, which will protect the nodes inside the group

I don't think there is a lock functionality


Make sure that the texture is packed into the file. You can do this by (in the Image or UV Editor) going to Image>Pack As PNG. A star* next to Image means that the image is not packed.


Baking Groove on mesh results in black color

Sorry but this a stupid question, cause I engraved the text on the the sphere, I need to re unwrap the mesh, otherwise there will be uv coordinates and will results in black


If you are using Dyntopo, then just click the "Symmetrize" button under the Dyntopo settings panel. Just make sure that the "Direction" menu is set correctly. The default is "-X to +X". If the side that you want to keep is in the "-X" direction (away from the red arrow on the manipulator) then leave it how it is. If not, change it so that the first direction is the side you want to keep, and the second direction is the side that got messed up. This way, you don't have to leave your workflow and you can stay in Sculpt Mode.


Is Vector Math set to Length close to what you need?
You can invert it (or not) with a Map Range node, and then the From Max parameter becomes a slider for you to control where the effect terminates.

Something I cooked up using this:


For the smoke domain material, I believe that a Principled Volume would work, feed it into the volume input of the output node.  Change the density to 0.  Delete the default diffuse shader.

Or you can make the smoke domain invisible like this: How can I make an object invisible when I render in Cycles?


Contain mesh within another mesh boundaries?

Consider scaling and translating your UV coordinates for a texture producing a displacement.


Use Control-R Loop to Loop Cut and Slide one or two more concentric rings for greater control.  More concentric rings reinforce the closed configuration of your eye.

Then select 3 edge rings on edge of eye and

Keyboard Shift E ...Edge Crease ... pull mouse to value 1.

The outside edge is smoothed by Subdivision Surface.

The eye edge is not smooth so vertices can be brought together.

Notice the pink edges of the edges with .... Edge Crease


How do I make my armature visible through my mesh

So some workarounds might be like previously mentioned, use wireframe. I found this really annoying and tedious. Then I found some help and told me to use x-ray, that is actually not the same thing in 2.8 and now will make your mesh see-through. You can do this by going to your header on the 3d viewport and it should be the last tab to your right. That should bring a drop-down menu out and there should be a checkbox that says "x-ray"

So the REAL solution is that they changed the name from, "x-ray" to "in-front". Now you can find this by going to your properties window and under the "object" tab there should be a header that reads "Viewport Display". This is where the "in-front" option is.


Generate Particles with Random colors (continuously or from a set)

I'm going to keep this short and simple. Do everything Duane Dibbley did but use an Object Info node instead of a Particle Info node. Connect the random output directly to the color ramp, no math node needed.

Pro Tip: Make sure that if you are using a color ramp set to constant that you don't put any colors at position 1 (all the way to the right). They won't end up being used.


Delete the faces on the beginning and the end (left and right seen from image 2) of the parts. It needs to be open at the ends for the parts to merge. Play with the merge distance, make it larger until it snaps. I can see from image 2 that the parts did not merge causing shadows in between. You need an equal amount of  vertices on begin and end to make it snap.


Connecting faces that are out of alignment

If I'm understanding your question:

Select the ear loop and detach it from the rest of the mesh pressing L;
Activate the proportional editing with O;
Select the end-face of the loop (the one you want to bring to the mask mesh);
Move it with G and setting the action radius with the mouse wheel (be careful not to reach the other end with a big radius, or you'll move it too).


How do I enable custom gizmo display when I move?

So this is a bit of a strange answer but having tested it there seems to be some other mechanism at play that I'm still looking into, but so you aren't chasing an answer in the wrong place, I'll share what I have found.

The gizmos don't appear to show themselves during the operation, they seem to be replaced by an operator specific gizmo until after the refresh is called.

For example, using the GIZMO_GT_arraw_3d against the transform.rotate operator replaces the arrow with a dial, as shown by this code:

def setup(self, context):
    # Run an operator using the dial gizmo
    ob = context.object
    mpr = self.gizmos.new("GIZMO_GT_arrow_3d")
    props = mpr.target_set_operator("transform.rotate")

So your gizmo is only your gizmo while nothing is happening.  This seems strange and is perhaps intended behaviour, but without some serious documentation to go by this is the most I could uncover.  I need to look into how gizmos and operators are linked.

Having played around some more, it appears that this behaviour only happens when you use target_set_operator, this doesn't happen with target_set_prop

There is another option here, which is to define a pair of callbacks for the gizmo by calling its target_set_handler method and telling it how to get and set the "offset" proerty of the GIZMO_GT_arrow_3d gizmo:

def setup(self, context):

    arrow = self.gizmos.new("GIZMO_GT_arrow_3d")

    def move_get_x():
        return context.object.location.x

    def move_set_x(value):
        context.object.location.x = value

    arrow.target_set_handler("offset", get=move_get_x, set=move_set_x)

    arrow.matrix_basis = context.object.matrix_world.normalized()

    self.x_gizmo = arrow

def refresh(self, context):
    self.x_gizmo.matrix_basis = context.object.matrix_world.normalized()

This example demonstrates how to use a vertical arrow to modify the x location, you obvious want to do something more sensible but this can be modified easily by changing the move_get_x and move_set_x callbacks.


If you want to keep your object low-poly, if you smooth it it will try to smooth the 90° angles and it will give what you see. A trick is to use Auto-Smooth, i.e. ask Blender to only smooth the lower angles: Select your object in Object mode, press W > Shading Smooth, then go in the Properties panel > Object Data > Normals, enable Auto-Smooth and keep a low angle like for example 30°.

Note that the general shape will stay angular, if you don't want that you'll need to give your object a Subdivision Surface modifier, and add some edge loops to sharp the angles.


Start with a simple cube, add Subdivision Surface to produce enough geometry for decent displacing (you can add another one after Displace modifier for more smoothing).

Add Displace modifier, press New button, go into texture tab and select Voronoi texture.

In Displace modifier settings there are some options for texture coordinates: UV, Local, Global, Object.
There is no usual coordinates offset as in materials, so you need to bind texture to some object. Thus location, rotation and scale of this object will affect texture.

"Wire sphere" around the rock is Empty, which is controlling texture: