You could just consider the box to be a vector space in which you can sculpt your flame, by making its [ density | emission strength | color ] a function of the box's X,Y and Z.
Keeping it simple, here .. This box measures 2x2x4 Blender Units with its origin in the center of its base, and X,Y, and Z are measured in Object space.

(Left) By setting the density to 1 - the XYZ length, you get a hemisphere:

(Center) You could scale the Z to get an ellipsoid:

(Right) You could split the Z off as a multiplier, and sculpt it with a curve:

Of course you could extend this principle to vary colors, get flames-within-flames, etc. etc.


a vertex is not inside of gizumo's circle

This is intended functionality. You are using a subdivision modifier and viewing the geometry generated by it while controlling the actual geometry. Since the modifier smooths the surface, the locations of the vertices change.

You can toggle the preview of the effects of the modifier in the Properties Editor, Modifier Properties tab:


my baked texture doent match the real time texture

I got it myself , i plugged the baked texture into the emission of the principled shader to solve the problem instead of emission node


Correct mistakenly changing mouse select to left button

Head over to the Keymap tab and you'll find the select options under Preferences


This can be done via vertex group. As you choose your selection open "object data properties" create new vertex group and click "assign" now whenever you click on that group and choose select, your verteces will be selected again.


How Can I Merge a Separate Edge Loop into a Face?

Knife Project

If the vertices and box are two separate objects, great! If not, select one vertex of the edge loop, key Ctrl + L to Select Linked, key P to open the Separate menu, and select By Selection.

Move the loop away from the object on the Y-Axis a bit. Key Numpad 5 to enter Orthographic View. Key most likely either Numpad 3 or Ctrl + Numpad 3 (whatever view shows the loop in front of the box).

Select the edge loop, then the box, then key Tab to enter Edit Mode for the box. Select the one face you wanted to add the vertices to, key Ctrl + I to Select Inverse, and key H to hide the other faces. Key Space, type Knife Project, and key Enter. Key Alt + H to reveal the other faces.


Nevermind. I solve it :D

On the right panel in TransformOrientation you must click on global. :))


How to change a force field's strength by triggers when animating?

How about moving the object that represents the force field?

When you cant't animate the force field strength, you could move the complete force field.


Creating dynamic animation in blender using python scripts

If your function is just an infinite loop, you won't be able to do anything in Blender while this script is executing. It doesn't work this way.

For this purpose you can create a new modal operator instead. If you want it to run in the background checking for keyboard input events, you can add a timer event and use it with modal() function in {'PASS_THROUGH'} mode like here.

For some particular tasks it may be easier to use bpy.app.handlers instead. They take your function as argument and execute it on some specific event, e.g. current frame change. This code will execute my_very_complex_function() printing 'Executing algorithm...' in console every time the frame is changed:

import bpy

def my_very_complex_function(context, dummy): # must take 2 arguments
    print('Executing algorithm...')

bpy.app.handlers.frame_change_pre.append(my_very_complex_function)

This is just an example, you can put in way more complex functions


One render layer with background image and one with transparent background

Enable Transparent on the Film section and enable environment on your render passes. The background environment will be avalible by connecting the environment socket.


You can do the texture using a brick texture node.

Then use a displacement modifier a highly subdivided plane.
For the displacement use a texture that as a height map for your landscape.

For more detail read:
Landscape topography from grayscale image
For the glow use a glare node.


How to select with python code only vertical edges from cube?

The dot product
If two vectors are parallel then the dot product of their normalized direction will be 1 if in same direction (angle between 0) or -1 in opposite direction -1 (angle between 180 degrees)
Checking that the absolute value of dot product is around 1 will find edges defined by the vertex coordinate difference regardless of order.
Have used this method in example here Subdividing cubes at different intervals
So similarly
    def aligned(e, axis, TOL=1e-5):
        axis = Vector(axis).normalized()
        dir = (e.verts[1].co - e.verts[0].co).normalized()
        return (1 - abs(dir.dot(axis))) < TOL

    # select if aligned with local z axis.
    for e in bm.edges:
        e.select_set(aligned(e, (0, 0, 1))

    # select if aligned with global z axis
    axis = ob.matrix_world.inverted() @ Vector((0, 0, 1)) # local space
    for e in bm.edges:
        e.select_set(aligned(e, axis))

(if doubles in mesh will need to deal with zero length edges.)
Hardcode for default cube.
if this is a freshly added  default cube can rely on the edges having the same index each time, and could select based on index.
geom=[e.index for e in bm.edges if aligned(e, (0, 0, 1))]
print(geom)

Outputs [1, 3, 6, 9]
so the  bmesh edges of the default cube in $Z$ dir are
bm.edges.ensure_lookup_table()
vertical_edges = [bm.edges[i] for i in (1, 3, 6, 9)]


Sample Color tool. Eyedropper reverts to a pointer

I've worked it out, it's not an error after all. Once you select the Eyedropper, when you move the mouse the cursor will revert to a pointer, however the next click will change the color wherever you click in the Blender window. Just not immediately intuitive because the cursor doesn't remain as a pipette.


"Copy from active" doesn't work as expected

The command Copy from Active belongs to the Rigid Body Tools panel, which is a subcategory of the Physics Tab:

As stated by the Hint, Copy from active is just referring to the

  Rigid Body settings

and not to the whole physics settings. Rigid body physics is treated in a different way.

You can copy the other physics settings from the active object of the selection by Making Links (Ctrl+L) and choosing the Modifiers option.


How to make vertices level with a diagonal edge?

Method 1: Math

Align the 3D cursor with the center of your column. Set your pivot point to 3D cursor. Turn on Snap to Vertex using Active Element. Select the vertices on one half of your column.

Rotate the vertices (in your case about the Y-axis, in my case about the X-axis) to align with the top edge of the square. Be sure to note the amount your vertices rotate by in the bottom left corner. Calculate 1/cos(angle of rotation)

Scale the selected vertices with the axis about which you rotated locked (again Y in your case, X in mine. For you, S to scale, Shift+Y to lock Y axis) by the amount calculated. You can copy paste this amount.

Repeat for the other side, and you should be done.

Method 2: Shrinkwrap Modifier

Select the top edges of the square in the front. Duplicate these edges and separate them from the object.

Enter edit mode on the new object, which I have named 'Target' in my pictures. Extrude these edges along the Y-Axis (in my examples it is the X-Axis) so that they create the shape of your desired panels.

In your original object, create a new vertex group and add the vertices you wish move to this group.

Add a Shrinkwrap modifier to your original object. Set the target to your new object (in my case Target), and select your vertex group. Change the Mode to Project, and check the Z axis and both directions. Apply the modifier, and you should have what you want.


How to use mathutils.noise.hetero_terrain?

mathutils.noise.hetero_terrain(...)

  Returns the heterogeneous terrain value from the noise basis at the
  specified position.

Out of interest made a little script to apply each of the noise types as a shapekey on z height of a 100x100 mesh grid. Script below, result above.

import bpy
from mathutils.noise import hetero_terrain as ht
context = bpy.context

H = 0.4
lacunarity = 1
octaves = 1
offset = 0.3
noise_basii =  (
    'BLENDER',
    'PERLIN_ORIGINAL',
    'PERLIN_NEW',
    'VORONOI_F1',
    'VORONOI_F2',
    'VORONOI_F3',
    'VORONOI_F4',
    'VORONOI_F2F1',
    'VORONOI_CRACKLE',
    'CELLNOISE')

bpy.ops.mesh.primitive_grid_add(
        size=10,
        x_subdivisions=100,
        y_subdivisions=100
        )
ob = context.object
me = ob.data
sk = ob.shape_key_add(name="Basis")
for nb in noise_basii:
    sk = ob.shape_key_add(name=nb)

    for v in me.vertices:
        sk.data[v.index].co.z = ht(v.co,
                H,
                lacunarity,
                octaves,
                offset,
                noise_basis=nb
                )


Why is texture painted model different from rendered version?

Add more lights to the scene.  More light will enable a fairer comparison and give you more control.

Switch to camera view to have a fairer comparison of position.

Pressing Numpad-0 repeatedly will show Camera View and User View.

Use smooth shading.

In the User Preferences Window > System Tab .. there are 3 Solid OpenGL Lights which can affect your viewing.  I am not suggesting you change these settings.  Just know they exist.


You can have Blender attempt to locate the missing files under the external data section of the File menu. See image below:

If, on the other hand, you need to reconnect the textures manually, you can do so by selecting the material and going to the SHADING tab. From there, if there is no image texture, add one, and connect it as in the image below. This example is a very basic setup for a single image. If your material is PBR and there are other texture maps, add them and connect them to their respective inputs on the Principled BSDF. NOTE - make sure to select a non-color space for Normal, Displacement, Metallic and Roughness maps.


What causes odd deformations when using Subsurf?

You have some issues with the topology:

Extra edges on the large inner-top face, creating n-gons (also see this question):

To fix them, select them and press Delete > Edges.
Extra vertices on the edges, also creating n-gons:

To fix them, select them and press Delete > Dissolve vertices.
Internal edges on each corner:

To fix them, select them and press Delete > Edges.
Double vertices one of the corners:

To fix them, either merge them manually, or select everything (or just the area you want to check for doubles, but in this case it doesn't really matter) and press W > Remove Doubles.
No face on the top loop, creating non-manifold topology:

It's a bit hard to see, but if you select it with AltRMB and translate it, it's a bit more obvious:

You can select non-manifold geometry with CtrlAltShiftM.

Example .blend


Rendered object Blender 2.74 can't be moved

Rendering (in Cycles) is the process of taking the 3-dimentional scene and calculating the light paths (called rays) bouncing through the scene to the camera.  The end result is a 2-dimentional picture of your scene, so you can't really rotate it and look around.  Just like you can't rotate and look around a photograph you took in real life.

See my answer here for more on how Cycles works.

In order to be able to move and look around your model in perfect real time Cycles would have to perform a separate render from every possible position and angle of the camera, which is impossible.  Here a few ways to view your rendered object from multiple angles.

1. Viewport rendering

As gladys pointed out you can enable viewport rendering.  This basically re-renders the entire viewport every time you move the view.  Viewport rendering is mainly just for viewing material tweaks and the like in real time.

You can change the amount of samples used for viewport rendering in the properties panel under the render tab > sampling rollout > samples > preview.

2. Animating the object/camera

For a final output to showcase your object you may want to create an animation of either the camera moving around the object or the object itself moving.

Animation is done by setting keyframes.  A keyframe tells Blender the state you want an object to be in at a particular frame, Blender will then interpolate the object smoothly between keyframes.  To set a keyframe go to the frame you want to keyframe and hit I and choose the property you want to animate (i.e. location, rotation, scale, etc.).

Try checking out this tutorial.

3. Baking

Baking is a way of saving what the surface of a rendered object looks like to an image texture which you can then apply to the object as a shadeless shader to make the object look like it is rendered.

Unfortunately I don't have the space here to even dip into the world of texture baking but you can check out this tutorial for starters.

One thing to consider about baking is that things like gloss and transparency/refraction do not bake well as they are dependent on the viewing angle.


I for insert frame is disabled or changed

Try going to scene settings (icon with the light, cylinder and sphere) and make sure the "keying sets" tab is empty.


riggify face rig makes the eyes so error

In edit mode you can select a vertex, in the "N" properties panel you will be able to read its weight values in the "vertex weights" tab. If more than one vertex is selected you can copy the values of the active (last selected) vertex to the others.
When I use Rigify face rig, I generally add a correction shape key in order to flatten the eyelids and the lips, using drivers to automate the shape keys effects.


The rig you uploaded has been drawn on frame 3, while if you append it on a new scene it's set on frame one. Even if you go to frame 1 in the rig file some strokes disappear.
To solve, you can open a grease pencil dope sheet editor and grab all strokes to frame one, or simply start animating from frame 3 and above.


The specifics entirely depend on the platform you're planning to print to, but the general idea will be the same for all of them: they'll tell you... but you still have to guess and check.

Blender can be a little confusing regarding units. Underneath it all, Blender uses its own units for everything. When you choose "inches," Blender is just pretending that its own units are inches... but they're not really. When you export that mesh, it's still in arbitrary Blender units. No one will ever be able to know (with some exceptions) that you were using those units as inches.

Consequently, any consuming application has to make some kind of assumption about how big those units are. Shapeways is good about letting you tell it how big your units are... but it's still not 100%. I still had to guess and check. Shapeways is also good about letting you see a preview of your model and giving you its final dimensions so that you can say "10 feet wide? that's not right."

In summary use the same proportions that you want it to be (15x8x13) and then scale that by whole numbers (and probably by 10s) to get it the right size. For example, if your consuming system (printer, software, whatever) says "we assume one unit is one meter," then you'll want to scale your whole object by a factor of 0.01 so that your blender units imitate meters. If your consuming system does something weird like assuming units are in inches, then your scale factor will be weird (2.54 or 0.3937 some such), but it'll be simple conversion math.

...and then check.


Q: Is there a way to copy the metastrip from one file and move to another?
Yes. You can Append a Scene from one blend file to another and copy&paste its (meta)strips you want, between scenes of current blend file.

Blender 2.8x and newer - if I open a blend and go to File > Append I can navigate to saved blend and choose existing Scene.A and Scene.B (from attached blend file here). From thouse appended scenes I can Copy ⎈ Ctrl+C any strip (image, text, color ... or metastrip) and Paste ⎈ Ctrl+V into another scene of the same blend file.

Note: Just to prevent confusion. When you are in VSE editor and press Add ⇧ Shift+A > Scene this operator adds a strip with Camera view from 3Dview editor includede Compositor result as well (when used).
Like here I created Scene.C in a new blend, appended Scene.B, then copy-paste text strip to Scene.C and added "Scene" strip (that's 3Dview scene - default cube with Normal Matcap, plus Blur node in Node Compositor).


Apply the rotation to your object Ctrl+A > Rotation.


Voronoi Texture Node with differing options

Voronoi textures work by scattering points and connecting their edges to form a kind of mesh, then generating patterns based on distances within that mesh. The crackle pattern is created by measuring how close a shading point is from one of the edges. This results is a pattern of cracks following the random layout of the "edges" of the point mesh.

So to get the crackle pattern, you should first set the node to "distance to edge"

If you need an actual hard-edged crack pattern rather than just the distance to the edge, you can use the math node set to "greater than" to find areas that are more than a specified distance from an edge:

Finally, since this example uses a plane with UVs, you can change the texture from 3D to 2D. This will prevent the pattern from getting thicker where it intersects corners of the pattern in 3D space.


Weird deformation after exporting Rigify from Blender 2.8 to Unity

I had a similiar Problem with a Quadruped, where Parts of the Animation were completely broken: the Head had a wrong position while the ears were in the right position.
Apparently the Parent Child structure of the Deformation Bones is not suited for baking and does not always work correctly outside of Blender.

I solved this with the ORG Bones (Bottom Last Layer) as Deformation Bones instead of the actual Deformation Bones (Bottom Third Last Layer).
Step by Step:
In Edit mode:
- Select all Deformation bones in the Bottom Third Last Layer, go to Armature->Bone Settings->Deform (Hold Alt while clicking the checkbox, so it will untick the deform option for all of these bones)
-Select all Deformation bones in the Bottom Last Layer, go to Armature->Bone Settings->Deform (Hold Alt while clicking the checkbox, so it will tick the deform option for all of these bones)
-Rename the vertex groups so they have the Prefix ORG instead of DEF.


How to create a raw white rice material?

To make this realistic you'll have to mix a couple of different methods.  A key concept is that rice is a bunch of little individual grains and no two grains are exactly alike, even in terms of physical properties.
I started with this as a model for a grain of rice.  It's an icosphere because I like to live dangerously.

I looked up the length of a grain of rice and scaled it down to around that size.  I've measured the length here because we're going to use it as a reference for some scale values.
Shade smooth, subdiv 3.  It's on a plane with a simple light blue texture, I turned the default point light into an area lamp with a strength of 1000w and scaled it up a bit to soften it.
I picked a slightly yellow base color, and a roughness value of .415.

Then I introduced some Subsurface Scattering.  For the overall value I went with .0025 (half the model's length), and for radius I went heavily into red, a lot into green, and cut the blue out completely, in an attempt to bring out some orange.  The reference I was using was a bit on the orange side, tweak to your preference.  I think this worked -

but it's not really doing it for me because I don't think I'm capturing that slightly see-through quality of rice.  So I decided to just start transmitting a large portion of the rays.  I did a number of tests, my suspicion was that a Transmission Roughness of 1 would be necessary to avoid strange lighting and that turns out to be the case.

I think that .25 transmission is not an unreasonable look for a single grain of rice (rouse?).  .35 is maybe getting a little rough looking but not outside the realm of possibility, where something like .1 is not that noticeable.  So we've built kind of a default grain, and we can vary some of these values around their current levels to create variants.
To do this procedurally, we can introduce some microdisplacement, so we need to go to the material settings for the rice and enable Displacement and Bump under Settings.

And then we can run a Noise Texture into a Displacement node at a Scale comparable to part of the length of the model.  I actually disabled the subdivision surface modifier for this, as I started thinking it was a bit too smooth.  I scale the texture on the X axis here with a Mapping node, but basically I elongated the bumps along the length of the grain.  Pick whatever axis is relevant for you.

And we've displaced the model just a bit.  We can now do some math to randomize this displacement for every grain we generate.  We can use several methods.  If you are going to do this with Objects, Object Info > Random is your friend, if you are using particles there's a Particle Info node, and arrays can be randomized using Geometry > Random per island.  I've set up a particle system here.

I just multiply the random value by some amount (don't go crazy) and throw it straight into the Location on the Mapping node.  Sometimes you want to limit this to one or two axes, and you can do that with a Combine XYZ node.
We can use this Random value along with Color Ramps to further randomize the Base Color, Roughness, and the amount of Transmission.  I used the values I already landed on as a guide for a new minimum and maximum value for the Color Ramps.

I cranked up the samples and did a render.

It's close, I went back and made the model a little skinnier, adjusted some of the values, and of course this was quite a close-up for rice.  Here's a render after some time with it.


My tablet won't work correctly in Blender, I am unsure if it is a problem with Blender or the tablet

It has to do the monoprice tablet not being compatible with the windows drivers. You can find the most up to date tablet drivers at UC-Logic. Forcing windows to use these drivers kept my monoprice going though windows 8. After updating to Windows 10 it would constantly auto update back to the windows tablet drivers. I I got tired of fighting with it so I retired my monoprice and got a Huoin.


Object reverts back to non-modified state after joining

The object(s) that you select before the last object with the modifier will discard their modifier stack and inherit that (the last) object's modifier stack.

Easiest way to avoid any loss of modifiers is to apply them before doing any joins.


I think the best solution is to go in edit mode of the path. select the part that you only want to show, and separate it into its own object by pressing [P]

Alternatively you can try to use a Boolean modifier with intersect to non destructively cut down an object.

you might also try using culling with objects during render time: Culling Objects Using a Culling Object


After baking indirect light, inside solid meshes is not dark in EEVEE

I found the answer myself.
In the properties panel there is a tab where you can find settings for the Irradiance Volume.

Under Visibility Collection you can exclude a collection.  So In this case we add the cube to a collection (called test here) and when you bake indirect light now, everything will look the same from outside the cube, but inside the cube its now pretty dark.


I don't think you need an add-on for what you want to do, there are a lot of tools for viewing efficiency.

Hide the selection, H key, undo Alt+H
View only the selected objects, / key, undo / (toggle)
Crop the view to a border, Alt+B and define a border left click + drag, undo Alt+B

Perhaps the third is what is suitable in your case.


I think the closest thing to this in blender is checker deselect. If that does not do what you want, yes, you can request such a feature. I do not know where to request features for blender, though.


How to apply transforms without changing the origin?

Using Ctrl+A Apply > Location to Deltas.
will alter the delta locations such that the origin remains unchanged whilst the objects location is zeroed.
Note Unable to test if this works as expected when exported to Unity


How do I get anisotropy to work in 2.72?

You need some roughness for the anisotropy to be visible.

As I understand it, anisotropic shading simulates the way light reflects off objects with fine grooves like on CD/DVDs or machined cylindrical objects. Without any roughness, the surface is considered smooth (no grooves).


The simplest way to do it is using a python script.

First thing to do is to changing your node group name to have a '.' at the start, i.e: myXptoNodeGroup >> .myXptoNodeGroup. This way, the nodegroup will no longer appear in the "Group" menu.
The second thing to do is editing the following script by adding your nodegroup(s) to the items list of the ShaderNodeCategory instead of '.myXptoNodeGroup', and run the script:
import bpy
from nodeitems_utils import register_node_categories, unregister_node_categories, NodeItem
from nodeitems_builtins import ShaderNodeCategory

node_categories = [
    ShaderNodeCategory('SOMENODES', "Some Nodes", items=[
        NodeItem('ShaderNodeGroup', "myXptoNodeGroup", {"node_tree": "bpy.data.node_groups['.myXptoNodeGroup']"} ),
    ]),
]

def register():
    register_node_categories('MYGROUPNODES', node_categories)

def unregister():
    unregister_node_categories('MYGROUPNODES')

if __name__ == "__main__":
    register()

Of course, this is not exclusive to ShaderNodeGroups, it's just a matter to change the corresponding NodeCategory, and the NodeGroup type for the NodeItem.


How do I move a vertex along the normal axis via scripting?

if you only change v.co.z all will follow the z axis...

Try :

for v in bm.verts:
    r = random.uniform(-0.05,0.05)
    v.co.x += v.normal.x * r
    v.co.y += v.normal.y * r
    v.co.z += v.normal.z * r

As batFINGER says in the comment, that can be written as :

for v in bm.verts:
    r = random.uniform(-0.05,0.05)
    v.co += r * v.normal


Is it possible to hide the instancer and only show instanced objects in render?

Select the plane, switch to the object tab (as already shown in your screenshot) and disable Render Instancer. This will hide the plane object in your render. If you also want to hide it in the viewport, you can disable Display Instancer.


I think the answer is: yes you can.

Select the connecting edge and snap the 3D cursor to it
Set the pivot point to 3D Cursor
The connecting edge still selected, add a custom transformation orientation and keep it as orientation

Now

Select the first triangle (the target)
Use ShiftNumpad 1 or ShiftNumpad 3 to be in orthographic view aligned with this triangle and so that the connecting edge is aligned to the view. This is useful in order to snap as we want later.

To snap:

Enable snapping, set it to vertex, snap with closest, project onto self and enable it for rotation

To rotate:

Select the opposite vertex (the one of the other triangle)
Rotate R, hit Y to rotate around the connecting edge
Set the mouse cursor onto the opposite vertex of the target triangle

To rotate to the opposite:

Rotate R, hit Y, then hit 180 on the numpad


Apart from flat shading (instead of smoothing, as pointed out by @atek) your mesh has a few other issues: apart some ngons, which are considered bad topology, but it could work for your needs, there are a few nonplanar faces (mostly ngons), and those are causing artifacts, as visible below.

The good news is that you can find solutions to them all using the bundled 3d print addon (you just need to activate it in user preferences), as shown below:

First, I forgot to say that before using the 3d print toolbox "check all" tool, I already recalculated normals (Ctrl+N).

Then,

What you should have done is: try to not use ngons (ie: faces with more than 4 vertices) and if possible also avoid triangles. Why? Because this easily create problems, gives artifacts in 3d viewport and rendering, and behaves horribly if you need to animate deforming objects. The additional lines that have appeared in the render are the ngons being split into triangles as ngons themselves are not renderable.

It doesn't seem to be the case with this model but, since you're learning, it would immensely help you if you try to model everything with "quads" or, if really needed, "tris". Note that even "quads" could be made (by mistake) non planar, but while it is less likely, they will be much more easy to fix.

What can you do now, to improve this model? This is a difficult answer. In a few words, you need to convert those "ngons" into "quads". This goes under the name of "retolopogy", ie: create a new (better, simpler) mesh structure for a shape that already exists.

I'm not a retopology genius, and without reference images it's even harder, but I tried to "fix" a small portion of the mask, by deleting faces (only faces) and subdividing remaining edges to make them nearly match their "quad" counterparts, sometimes "sliding" vertices along an edge, and rebuilding faces based only on 4 vertices.

Now, shown below, you see that after pressing "check all" again it doesn't identify those areas as issues anymore:


Is there a blender UI addon that highlights the active menu the mouse cursor is hovering over?

You can just customize the theme in User Preferences and choose the colors to your requirement and then save the theme as well as make it the default.

Press Ctrl+Alt+U to open the User Preferences and then goto Theme tab.

Customizing Blender Theme


How to remove all only rotation keyframes from current action with Python?

Using FCurve.remove

The curve, as shown in graph editor,  with keyframe points for each keyframe value pair is an fcurve.  Removing an fcurve Will remove all keyframes for that FCurve.data_path, Fcurve.array_index pair

Similarly to this related (possible duplicate) question.  Example script removes all Location, Rotation and Scale fcurves from an action.  It tests the FCurve.data_path against the keyframe type list ["location", "rotation", "scale"].  Note "rotation" will match "rotation_euler" or "rotation_quaternion" etc, which will be the actual datapath (as there is no Object.rotation).

Avoided using the FCurves.find method with a list comprehension, and used pop to avoid possibly referencing a removed fcurve later.

import bpy

context = bpy.context
ob = context.object
ad = ob.animation_data

if ad:
    action = ad.action
    if action:
        remove_types = ["location", "scale", "rotation"]
        # select all that have datapath above
        fcurves = [fc for fc in action.fcurves
                for type in remove_types
                if fc.data_path.startswith(type)
                ]
        # remove fcurves
        while(fcurves):
            fc = fcurves.pop()
            action.fcurves.remove(fc)

To remove only y axis Loc, Rot and Scale also test for the Fcurve.array_index property which is 0, 1, 2 for x, y, z respectively.

        fcurves = [fc for fc in action.fcurves
                for type in remove_types
                if fc.data_path.startswith(type)
                and fc.array_index == 1
                ]


What language are the shaders in Blender written in?

Most of them are written in OSL, OpenShadingLanguage, a language specifically designed for shaders. It's similar to C and can be compiled, so that it's fast.

You can find it in the Blender sources at

intern\cycles\kernel\shaders\node_principled_bsdf.osl

OSL is comparable to RSL, Renderman Shading Language and GLSL, OpenGL Shader Language.


How do I change my model to work properly with UV Unwrap?

Try to add the mark seam on your sunglasses, Please select the boundary edges one by one and than

Follow the menu as shown in image

Or hit Ctrl + E and select the Mark Seam from the menu.

After adding Mark seams, Please Unwrap again, Good luck :)


Rigi body physics - box inside another box is pushed out of it

I found the answer, because the primitive collision shapes are solid.
A mesh shape must be used...


Where i can find this properties panel in blender 2.79

In 2.7 the background images don't work the same way as in 2.8. If you want to load a background image you need to open the N panel, enable Background Images and load your image. Then you can only change the settings you see in the N panel, you can't manually move the image in the 3D view and you don't have access to any settings in the Properties panel:

That said, you can create an Empty > Image, then you have some settings in the Properties panel > Object Data. It doesn't work as a Background or Reference image, but you can use it as such:


Cannot execute boolean operation with imported SVG

You could try and deal with this in another way.

I selected an upwards facing face and used shift+g->normals to select all the other faces that are facing upwards and deleted them.

Now if you select edges and press f, the faces can be filled in quickly enough.

By doing this, you can build up the large box without having to use the boolean modifier.


Blender 2.8 DECALmachine PIL not installing on Windows

Blender doesn't use your system's Python interpreter by default. That would require the use of --python-use-system-env in Blender 2.82 and later (see this answer for more information). Additionally your system's Python interpreter and modules would need to be compatible with the version Blender expects. Blender 2.82 use Python 3.7.4.

While it's unclear why DECALmachine fails to install Pillow, it shouldn't be necessary to use your system's Python interpreter. The script below will try to install the package and import the module.

Start Blender and open the Scripting workspace
Create a new text block (Text > New)
Copy and paste the script into the text editor
Open the console (Window > Toggle System Console)
Run the script and check the output of the console for errors.

import bpy
import os
import ensurepip
import subprocess

try:
    import PIL
except ImportError:
    # The import failed, therefore we check that pip is available and attempt to install the package.

    # ensurepip.bootstrap() also calls pip, which adds the environment variable PIP_REQ_TRACKER. After
    # ensurepip.bootstrap() finishes execution, the directory doesn't exist anymore. However, when subprocess
    # is used to call pip, in order to install a package, the environment variables still contain
    # PIP_REQ_TRACKER with the now nonexistent path. This is a problem since pip checks if PIP_REQ_TRACKER is
    # set and if it is, attempts to use it as temp directory. This would result in an error because the
    # directory couldn't be found. Therefore, PIP_REQ_TRACKER needs to be removed from os.environ.
    ensurepip.bootstrap()
    os.environ.pop("PIP_REQ_TRACKER", None)

    # Try to install the package. This may fail with subprocess.CalledProcessError
    subprocess.run([bpy.app.binary_path_python, "-m", "pip", "install", "Pillow"], check=True)
    import PIL

print(PIL.__version__)

A more generic version that allows install packages in a simple way:

import bpy

def ensure_and_import_module(module_name, package_name=None, global_name=None):
    """
    Ensures that the required package is installed and imports the module. It will attempt to install the package
    through pip if the import of the module fails.
    :param module_name: Module to import.
    :param package_name: (Optional) Name of the package that needs to be installed. If None it is assumed to be equal
       to the module_name.
    :param global_name: (Optional) Name under which the module is imported. If None the module_name will be used.
       This allows to import under a different name with the same effect as e.g. "import numpy as np" where "np" is
       the global_name under which the module can be accessed.
    :raises: subprocess.CalledProcessError and ImportError
    """
    import os
    import sys
    import importlib
    import ensurepip
    import subprocess

    if package_name is None:
        package_name = module_name

    if global_name is None:
        global_name = module_name

    try:
        # Attempt to import the module and assign it to globals dictionary. This allow to access the module under
        # the given name, just like the regular import would.
        globals()[global_name] = importlib.import_module(module_name)
    except ImportError:
        # The import failed, therefore we check that pip is available and attempt to install the package.

        # ensurepip.bootstrap() also calls pip, which adds the environment variable PIP_REQ_TRACKER. After
        # ensurepip.bootstrap() finishes execution, the directory doesn't exist anymore. However, when subprocess
        # is used to call pip, in order to install a package, the environment variables still contain
        # PIP_REQ_TRACKER with the now nonexistent path. This is a problem since pip checks if PIP_REQ_TRACKER is
        # set and if it is, attempts to use it as temp directory. This would result in an error because the
        # directory couldn't be found. Therefore, PIP_REQ_TRACKER needs to be removed from os.environ.

        ensurepip.bootstrap()
        os.environ.pop("PIP_REQ_TRACKER", None)

        # Try to install the package. This may fail with subprocess.CalledProcessError
        subprocess.run([bpy.app.binary_path_python, "-m", "pip", "install", package_name], check=True)

        # The installation succeeded, attempt to import the module again
        globals()[global_name] = importlib.import_module(module_name)

# Make sure that Pillow is installed and PIL can be imported
ensure_and_import_module("PIL", "Pillow")
print(PIL.__version__)


Getting this weird halo in my reflection

Activate the Clamp Checkbox in your Mix node. This should solve the problem.


Well, with some tries I've come to understanding, that problem is not in the surface, but in chains. In Blender's physics engine mass is corresponding to durability (sic!). So, realsize chains with a calculated mass near 1g each is too weak and they "break" during collisions. The only working workaround was to scale everything up several times and increase the mass of everything...


Cycles nodes: is it possible to get distance to nearest edge?

It's not the exact distance as you would say it, but it can be approximated using Bevel node in combination with Normal output of Texture Coordinate node.

The Bevel shader node can be used for rendering rounded corners. Like bump mapping, this does not modify the actual geometry, only the shading is affected. Slight rounding on edges helps to capture specular highlights that you would also see in the real world.

Bevel essentially gives blurred version of normal vectors depending on geometry, so you just have to measure the difference between them.
Shader node example

Samples controls smoothness
Radius means how farther from the edges will the samples taken
Alternatively use Color Ramp or Map Range node to control the falloff

Example results

As I said it is not precise and can be lead to unexpected results such as:

Edges marked smooth won't affect this
Edge between two faces with little normal change will have a little effect on this
You can't get exact value of a distance as it's done by random sampling, thus you can't do proper math with it(everything is either 0 or some fixed values)
Faces with multiple edges converging will report higher values, due to the nature of the method mentioned above
Render time will increase by 20% on average, as explained in the official doc.


I took a look at your file.
You can see your objects in wireframe only because there are no faces in the object's data, they are only vertices and edges.

Quick solution to solve it would be to

select the object
TAB into edit mode
be in vertex select mode or edge select mode
select everything and fill with "F"

This works in most of the cases, sometimes you remain with some unfilled faces that you have to fill manually selecting usually two opposite edges and fill with "F".

I have tried this with a few objects and exported as .obj, opened it with a cad software and the filled objects are exported.


Go to edit mode on the object. Select which face you want to align with the world origin. Shift+s, 2 to set curser to center of face. exit edit mode to object mode. set curser to world origin. snap object to curser. then rotate object along which ever axis you need. see pictures.


My AMD GPU is not available in Cycle Render Preferences on version 2.8

Your graphics card doesn't meet the requirements for GPU rendering with Cycles as @DuaneDibbley already linked. The minimum requirements for the GPU are only for being able to run Blender at all.

For Blender 2.8 you will need GCN first generation or newer to run Blender. GCN second generation or newer is required for OpenCL GPU rendering.


Problem with mirroring and animation rigging

The main issue here is that you have several armatures, each with only 1 bone. But what you want is only 1 armature with several bones.
You can join the armatures with Ctrl+J. But you need to do some clean-up first. Most of your objects have a Mirror modifier. I would apply them and make a full rig with mirrored bones. If you want to keep the Mirror modifiers for some reason you need to move the Armature modifier below the Mirror modifier on the stack.
Clean-up

select all object and rotate them by -90° around the Z-axis (R, Z, -90). This places the dragon correctly. The front is in the front view and the side is the side view. This way you can mirror bones along the X-axis if you name them with ".L", "_L", ".left" or "_left", and ".R", etc, respectively.
select the head's aramature (szyja), go to Pose mode, select all bones(well, it's only 1) with (A), and clear all transformations (menu: Pose > Clear Transformation > All)

If you go to front view (Numpad 1 or menu: View > Viewpoint > Front) the dragon should now look at you

remove all Armature () modifiers from every object. Apply the mirror modifiers if you want, do it top-down from the stack.
join all Armature objects (grzywa...*, Oko, szczęka, dzialo szczekowe. kosci, szyja) with Ctrl+J. The last one you select will be the remaining main armature. If a mesh moves then check the modifiers for an Armature modifier and remove it.
apply Location, Scale, Rotation for the armature (Ctrl+A, All Transformations)
optional: this should be done for the mesh objects, too, but the Mirror modifier settings must be adjusted (mirror X-axis for the head, ...)
optional: if you have applied the mirrors, rename all the bones on the dragon's left side (=right side from your point of view) to Kosc- mocowanie mk1.L. Then use the menu: Armature > Symmetrize in Edit mode to let create the bones on the right side.
select all the mesh objects and the armature, then parent them (Ctrl+P, With Empty Groups in Object mode). Empty Groups will use the still existing weights. Adjust the modifier stack if you have Mirror modifiers.
check the weight paint for the eyes and the jaw. There seem to be some "rogue" vertices that have a different weight.
for better control make a bone hierarchy. Parent the bones (with offset). Something like root -> neck -> head -> mane, jaw, eyes, "ears". This way everything will rotate with the head. This doesn't work with a flat hierarchy as shown in the screenshot.


how to extrude a curve to create a hollow torus

I think you are talking about Bevel for Curve:

Create two curves, one for section (tori), one for path;
Select the path curve, find Bevel Object in its Object Data panel, choose the other one as the bevel object. Then you can scale either of them to change both ratios for it.


I got it to work. It appears you have to select Object > Set Origin > Origin to 3D Cursor AFTER adding the Mirror Modifier.
Seems rather bizarre to me.
I would have thought you would set the origin first and THEN set the Mirror Modifier.


Is it possible to set the vertex color alpha component?

There is no alpha component in vertex colors in Blender. The property is array with size 3, not 4.

You can have any amount of Vertex color layers though.


Is there an official "roughness quantity" for each material?

IoR can be categorized for transparent substances because it can be measured on the pure a state of the substance, letting the light through in an homogeneous, consistent measurable way.

Roughness - "the quality or state of having an uneven or irregular surface" - is hardly a scientific measure! Though in rendering terms it probably means something like "the probability of an incoming  light ray to get randomly dispersed" (I'll let the experts correct or debate that one).

In reality (as opposed to computer generated virtuality), it is the result of the topology and complexity of the surface of a material at the macro and micro levels, most times also the result of presence of dust or other materials present on the surface. That mean the same substance can be rough or not based on how polished, clean, pure or unpure it is. Basically it is not really measurable or categorizable for  specific type of substances like glass, ice, quartz etc...

If you find any "web page" doing this, I'd highly scrutinize the methodology before trusting it!


Blocking the camera without blocking lights

You can do the same as you would if you wanted to make the object invisible to the camera yet still cast shadows etc, only in reverse:

This is equivalent to disabling Shadow ray visibility as NoviceInDisguise answered, but with nodes instead. Note that disabling the ray visibility in the object panel helps rendertimes a little more than using nodes, but if you want to use it inside a larger setup it may be necessary to use nodes.


Can't paint or select bones in weight paint mode

You have the Face Mask activated. It's a mode that allows you to only paint on whatever faces have already been selected when you were last in Edit Mode. It's activated by the button near the red arrow shown here. Click it again to return to the more deeply colored standard weight paint mode.


BLAM add-on does not work with Blender 2.79

Thanks everyone for the help. Apparently it was not BLAM which had the problem. The problem was with the version of Blender 2.79 that I was using. Apparently it had a lot of bugs that I would keep run into which the previous versions did not have. I downloaded the recent Blender 2.79a (release candidate) which worked for me.


I am not able to use texture paint (2.8)

Make sure you have an image open in the Image Editor.

Pressing the small picture icon will allow you to select existing images in your project. New will create a new blank image, and Open will allow you to append an image from your computer into the Blend project.

If there are missing textures from your project (those show up as pink), you can tell Blender which folders to look for those textures in by going to File > External Data > Find Missing Files


If you care about the real time performance of your model, then forget topology and focus on removing every single unwanted face(poly). You may, when modeling keep good topology in order to expedite and simplify the process. At the end you can go back and remove the remaining extraneous faces before moving onto UV unwrapping and texturing. That is purely a matter of preference. If you don't care about the real time performance, then by all means focus on good topology.


Way to temporarily draw a uv grid over blender meshes?

Select your object, in a shader editor window create an image texture node, create a new UV grid image, mantaine the node unconnected and selected.
In the 3d window you can now select the solid viewport shading, in texture mode, to show your UV Grid.
By selecting the material texture nodes you can display the UV grid or the material images.


How to scale dimensions of a model while keeping the other dimensions proportional ??

Here are the steps you could follow:

Select your model in Object mode, Hit CtrlA
Hit S and start scaling.
Scale close to the value you want, and then hold the Shift to fine tune the scaling as you move your mouse.
LMB to complete the scaling operation.


"Object cube is not on s scene layer" error message when baking

First of, as you can see in the top left corner of your viewport, it says "Local", which means you're in an isolated mode. You probably enabled it accidentally by pressing numpad / or it was on purpose but you didn't though about getting out of it when not necessary anymore.

Anyway, start by pressing numpad / again, that may already be the solution. If not enough, you may now see your 3D view layers :

And most importantly: which one you're in, which one you have the active selection in and which ones contain objects. From that, you will quickly determine if you need to move some object around. To move some objects to another layer, simply select the objects and press M.


My viewport rotation is inconsistent. Is this a bug or an option I misclicked?

The viewport is behaving as it should.
The behavior of viewport rotating is dependent on which axes are active (see the axis gizmos on the top right hand side of the viewport). The active Y axis is changing here and there (between -Y and +Y) because each time you rotate, you're not returning to the same spot and sometimes you cross over the XZ plane and the view angle is interpreted as upside-down. I assume that it rotates the opposite direction when the viewport camera is upside-down as a visual indicator of that fact.


How to set cursor location, pivot_point in script?

See Adhi's answer here as to why this won't work the way you are doing it.

Using Context
It's easier to read 3D View space's settings through bpy.context,
e.g.:

Use bpy.context.space_data, if the 3D View area is active (i.e. accessed through an operator executed from the 3D View itself).
Use bpy.context.area.spaces[1], if accessed through a Console whose display type is directly switched from a 3D View.
Use bpy.context.screen.areas[X].spaces[0] if accessed through a Console in another area, index X must be searched beforehand.

What you want to use is
bpy.context.area.spaces[1].pivot_point='CURSOR'
bpy.context.area.spaces[1].cursor_location = (0.0, 0.0, 0.0)

For the cursor location, there is a shorter alternative. All 3D View's cursor location is linked to the scene's, so it can also be accessed from bpy.context.scene:
bpy.context.scene.cursor_location = (0.0, 0.0, 0.0)

V2.8+ :
bpy.context.scene.cursor.location = (0.0, 0.0, 0.0)


Facial Animation for Fuse/Mixamo Character

When you export your character to mixamo a rig is created. When it is finished you can choose if you want your character with facial shapes.
In Blender choose the body of the imported character, in object data you will find a lot of shape-keys. klick one  and change it's values. See what happens.
Guenther


Script to Toggle Fullscreen Area (Blender 2.8)

Solved. What I was looking for was indeed really close to the issue discussed in this post.
Here's the code snippet that does the work:
import bpy

context = bpy.context.copy()

for area in bpy.context.screen.areas:
    if area.type == 'VIEW_3D':
        context['area'] = area
        bpy.ops.screen.screen_full_area(context, use_hide_panels=True)
        bpy.context.space_data.show_gizmo = False
        bpy.context.space_data.overlay.show_overlays = False

Hope it can be of some help to others!


Beginner Question: How to close/split panels?

You can use the mouse pointer too, as you probably saw in those videos. Move the cursor around the corner of one of two equally sized adjacent panels, when it becomes a cross.

Then click and keep the mouse button pressed, then drag up/down (to join panels vertically) or left/right (to join panels horizontally), see the animation below for some examples:

As you see, you can also split panels in this way: just start the dragging from a panel and move inward, that panel will split in two.


It looks like you are passing a whole function call to the getattr() function as a string.

getattr() takes an object as first argument and a string a second argument.

What you should do is isolate the object, the function and the params

Once you isolated your object string (ie. str="bpy.ops.object") you can isolate the object with a quick but unsafe myObj = eval(str) or use a safer

import sys

def str_to_class(str):
    return getattr(sys.modules[__name__], str)

myObj = str_to_class("bpy.ops.object") #line added from original code

(Code from https://stackoverflow.com/questions/1176136/convert-string-to-python-class-object)

After that you should call getattr in this fashion:
getattr(myObj, 'myFunction')(params)

In the specific case you presented it would look something like this in explicit form
getattr(bpy.ops.object, "modifier_add")(type='SUBSURF')

Note:
eval() is a very unsafe to use if there's some kind of user input, since the user could inject malicious code in eval()'s parameter string.

Edit: if security is not a concern, for any reason, you could also just eval() the whole string. Just make sure not to share your code without a proper warning.
If security is a concern, in both of the cases described above, you might want to apply a filter on the strings you pass to the converting function. Something like if str[:3]=="bpy": str_to_class(str) #or eval(). It makes things a little safer.


How to add a working navigation mesh and path finding to a maze in blender game engine?

Your mesh is not recognized by blender.It pops an error.
It seems like it was corrupted.

I tried changing it by deleting all the top vertices(there are also 4 vertices I think a bit missplaced) but even with the basic scaled plane, the same error pops.

I created a new plane in your file and it worked just fine. I don't know if it is fixable without remaking it from scratch though.

This guy here disagrees: same error


Finally I did the following:

Applied shrinkWrap modifier.
Applied mirror modifier
Used ShirkFlatten and was able to scale the tshirt

But still few vertices were sticking to body object.

Then finally ended up clearing things. Selected faces from body object that will form tshirt and duplicated it. Then P to separate then Shrink Flatten. Used this as tshirt, it was easier this way.


Wrong bone placement on object and pose mode during the eyes rigging

This is likely due to a scaled Parent bone.

Like objects, each bone may have a parent bone that it follows by default. This parent is indicated in the Relations panel of the Bone Properties:

As noted in the properties, the default behavior for Child bones is to inherit the Rotation and Scale of the parent. The effect of this, as you've seen, is for some bones to seemingly move in Pose Mode from their original location in Edit Mode.

To fix this simply select all bones in Pose Mode and press ALT+R and ALT+S to reset their scale and rotation.

You can easily find the parent of any bone, if there is one, by selecting a bone in Edit Mode and then Select > Parent:

Anytime you extrude a bone the newly extruded bone is automatically parented, and connected to the bone it was extruded from.


Is there a tool for scientific visualization using Blender?

Blender is the tool and bpy is the API.
If you want to render geometry you can use bpy to deal with any meaningful input. Blender has been used effectively to display data for scientific publications for many years. I'll add a non-exhaustive list below. But if you are expecting ready made functions to plot a 3D scatter plot with scales and cube grid, with evenly spaced intelligent sub-ticks, I'm not aware of any. However, once written you can pump similar data through that routine in the future. This might be a lot of work the first time, but then you learn how to do it and can customize your visualizations meticulously.
The more you can prime your data in those packages like matlab, octave, numpy, and scipy prior to bringing it into Blender the better. (ie. find the min / max / scale / appropriate dimensioning values, tag your data set ..etc). If you are using matplotlib, it is possible to retrieve generated plot data (like autoscaling margins..etc) and use that to build your custom scene.
In recent official builds (and from builder.blender.org/download/) the numeric Python library numpy is included by default. Allowing you to speed up a lot of heavy computations which don't rely directly on bpy.
Useful plotting addons:
Add Mesh / Add 3d Function Surface: Takes formulae for x, y and z axis and generates the surface mesh.
Sverchok: This node based geometry generation add-on is developed primarily with Architecture and Design in mind, but it can generate meshes from any kind of data, or a combination of its 150+ nodes. If the data type isn't supported by default you can easily write an importer or ask on our Github issue tracker for advice.
Examples of scientific usage of Blender
Mathieu Gibert
This researcher at the Max Planck Institute for Dynamics and Self-Organization used it here: http://www.gibert.biz/downloads/3dscatterplotswithblender
(with an example script, and data)
There's a thread over at BlenderArtists about his forays into visualizing that data.
BioBlender
http://bioblender.eu/ with some fantastic renderings of molecular structures. From version 1.0 onwards this has become an addon, and has its own Github repository
excerpt from the site:

BioBlender is the result of a collaboration, driven by the SciVis
group at the CNR in Pisa (Italy), between scientists of different
disciplines (biology, chemistry, physics,  computer sciences) and
artists, using Blender in a rigorous but at the same time  creative
way.

Visualize Color Spaces
Interesting visualization from Mark Meyer to show color spaces.
http://www.photo-mark.com/notes/2013/mar/13/color-theory-blender/
CellBlender
http://mcell.org/ (combines matplotlib and Blender 2.6x)

MCell and CellBlender development is an ongoing collaboration between
researchers at the Pittsburgh Supercomputing Center, the Department of
Computational and Systems Biology of the University of Pittsburgh, and
the Computational Neurobiology Laboratory at the Salk Institute, with
support from the National Institutes of Health, the Howard Hughes
Medical Institute, and the National Science Foundation.

AstroBlend:
An Astrophysical Visualization Package for Blender. http://www.astroblend.com/
From the abstract to this paper, which is  introductory to AstroBlend

an open-source Python library for use within (...) Blender. (...) AstroBlend combines the three dimensional capabilities of Blender with the analysis tools of the widely used astrophysical toolset, yt, to afford both computational and observational astrophysicists the ability to simultaneously analyze their data and create informative and appealing visualizations

Elsewhere
A swift google search for blender for scientific visualization returns many examples of people using Blender with their data.
I started a github repo with scripts that may be of use for understanding how to create 3d meshes from functions, called BlenderSciViz. It is still rather minimal but I welcome any reasonable feature requests if you can provide me with representative data sets so I can test and fine tune the resulting geometry algorithms.


How to get correct results when baking a fluid simulation

There are several issues:

The scene is upside down. The Z axis (blue) always points up in world space. In the file provided, the view is upside down and the blue arrow appears to be pointing down. When righted, it looks like this:

So in your scene the the fluid emitter is actually below the domain and collision objects.
The fluid domain is always a box shape, as it uses the object's bounding box. When assigned to a non-box shape, this means that it will be a cuboid with the same dimensions as the shape.

If you replace the icosphere with a cube, the reasons for the odd behavior become clearer:

Note that I duplicated the domain object in this screenshot so that the domain bounds would be visible at the same time as the fluid
The collision planes are non-manifold. The fluid simulator has no way of determining where the insides and outsides of the 2D planes are, so it will guess, usually resulting in strange behavior.

Related: Fluid not filling container completely

If the fluid emitter object is moved above the collision objects and the collision objects are given volume and correctly oriented normals, then it appears to work:


If you use an image texture alone for your object, plugged into a diffuse or emission shader - that is as simple as it can be already. Baking is done to get complex information from a shader tree and multiple textures summed up in a few textures that can then be plugged into a Principled Shader.

If you are only needing the color information from the image texture you already have, baking isn't necessary.


Adding given number of objects to an area using Python

The devil might be in the detail.. but here's a base case of using a Particle System to scatter objects on a given area.

Create / Duplicate a face representing the area you want scattered with the objects
Create the object you want to be scattered.
In its Particle Settings tab, set the face to be a particle emitter.

There are lots of settings for particle emission, but most of them are self-explanatory, maybe after a bit of trial and error. Here are my settings for this example, trying to keep everything simple to begin with, everything else at default:

All the particles are emitted on frame 1, and have a lifetime of 1, so you have to be there on the timeline to see them.

This is the rotation setting that works for me, with my scattered object ('Cylinder') created with its local Z along its length.

Depending on what you want, at any stage, the particles can be made into real instances of the scattered object by hitting Convert in the emitter's Particle Settings modifier (in its modifier stack)

Be aware that if you copy the emitter, it will share the particle system with the original. As with other kinds of shared Data-Blocks in Blender, you can make it unique to the user by clicking the digit indicating the number of users under the list of Particle Settings at the top of its Particle Settings tab


How do I find words in Blender online manual?

The bad news: The Blender manual does not have an effective search function - also in parts it has gaps and in parts information can be improved.

The good news: If you can find your way through the menu's it is actually packed with tons of useful information. [or use google as has been suggested]

I still use the manual for refence, but mostly rely on the internet and sites like this. There are some good books out there - for example Packt Blender Books, but the problem for most books is that a new version of Blender has come out by the time they are published.


Animating a dynamic amount of objects from CSV data using Animation Nodes

I finally gave up on Animation Nodes and just wrote a simple Python script instead. I changed the format of the CSV so 1 line = 1 keyframe. This is simpler but it could probably be more efficient by not forcing you to place keyframes constantly.

The objects are still separated by '$' characters to simplify parsing.

An Example CSV file can be found here

Script below:

import bpy
import csv

# File to open
csvFile = open('example-data.csv')

# Separate by lines
csvFileLines = csvFile.readlines()
csvFileLines = [line.rstrip('\n') for line in csvFileLines]
#Remove first row
csvFileLines.pop(0)

#How many objects should we instantiate?
objectCount = len(csvFileLines[0].split("$"))
print("Objects found: " + objectCount)

objs = []
objs.append(bpy.context.active_object) # First obj added is the current active object
# Get scene
scn = bpy.context.scene

# Instantiate all objects needed
for x in range(1, objectCount):
    objs.append(objs[0].copy()) # Copy first object
    objs[x].name += str(x) # Give unique name
    bpy.context.collection.objects.link(objs[x]) # Link to scene

keyInterp = bpy.context.preferences.edit.keyframe_new_interpolation_type # Remember user selected interpolation type
bpy.context.preferences.edit.keyframe_new_interpolation_type ='LINEAR' # Set interpolation type to linear

for i, line in enumerate(csvFileLines):
    # Find objects
    csvObjectPosRot = line.split("$")
    for r, values in enumerate(csvObjectPosRot):
        # Find values from object string
        csvObjectValues = values.split(",")
        # Set object position
        objs[r].location = (float(csvObjectValues[0]), float(csvObjectValues[1]), float(csvObjectValues[2]))
        # Set object rotation
        objs[r].rotation_euler = (float(csvObjectValues[3]),float(csvObjectValues[4]),float(csvObjectValues[5]))  # Note that you need to use radians rather than angles here
        # Add keyframe for object
        objs[r].keyframe_insert(data_path='location', frame=(i))
        objs[r].keyframe_insert(data_path='rotation_euler', frame=(i))

bpy.context.preferences.edit.keyframe_new_interpolation_type = keyInterp # Revert interpolation type to the users last selection


How to recalculate the automatic weights for single bones in blender 2.8

You will find it in the Weights menu. Upper left corner of the 3D view.


Switch rendering engine depending on render layer?

You should use different scenes for each renderer. On the top toolbar next to where you select your render engine you can find to the left the scenes. Add a new scene and switch to the appropriate render engine.

1.

Rename the current scene to the render engine's name

2.

Create a Link Object Data copy of the current scene

3.

Rename it the other render engine and selected the render engine from the drop down to the right.


Custom Rotation for a tilted aircraft flap

If you do it this way it seems to work:

Create a bone, in the Properties panel > Data > Display, enable X-Ray (called In Front in 2.8).
Put the bone along the aileron's axis. Use the shiftS > Cursor To Selected and the shiftS > Selection To Cursor to make sure the head and tail of the bone are on the exact positions.
If you want the bone to be displayed as B-Bone, go in the Properties panel > Data > Display (altctrlS to change its thickness).
Parent the aileron to the bone With Automatic Weight.
Select the bone, switch to Pose mode, create a first keyframe with i > RotLocScale.
In the Dopesheet go to frame 20, rotate the bone on its Y axis with RYY. Create a second keyframe.
The bone should make the aileron rotate correctly. You'll have to parent the bone to the wing bone (or whatever bone that will make the aileron stick to the plane).


Animation - Using a Different Axis to Rotate the Entire Object Than the Normal Object Axis

One simple way to take care of this is to rotate by the 3D cursor. If you know the exact global space coordinates where you would like this point of rotation to be, you can enter them in the View tab from the Properties Shelf, to the right of the 3D View (press n to bring up the Shelf if not exposed currently), and under the 3D Cursor section, there are a set of transform fields. By entering the desired transform values in these fields, the 3D cursor will move to the appropriate worldspace coordinates. Alternatively, you can snap the 3D cursor to another object, provided you have a selected object whose origin is currently where you want the 3D cursor to be. You would do this by accessing the Snap menu (Shift + s) and choosing Snap Cursor to Selected. Once you have the 3D Cursor where you want the new point of rotation to happen from, press the Transform Pivot Point button at the top of the 3D View, and from the pulldown, choose 3D Cursor. Now, when you rotate the selected object (or indeed any other thing), it will use the 3D Cursor's current position as the point of rotation.


Copy rotation on limbs curl when character is rotated

Okay! So as it turns out, I was being awfully clumsy. I had a limit rotation on the feet, and was all upset when it didn't rotate all the way LOL! Also, I found out that I was using local space with parent for all the other limbs, such as the ears and fingers. The moral of this story is, always double-check your work. Thank you all for reading!


Set the shoulder bone copy rotation from the upper arm bone, both to local space, with influence not complete (1.0, in my example is set to .411).

In the armature tab of the properties panel activate the axis visualization, to see which is the only axis to copy (i.e. Z axis).


Does Blender support importing/exporting REDlog color format?

Not as video, given that Blender will only import video at a down bitted 8 bits per channel, and potentially dubiously at that.

If you export to a proper still format such as a TIFF, not DPX as Blender's DPX code has been horribly broken for years, you can. This would require an OCIO stanza to properly convert it to the reference space.

Other option is to output a scene referred linear EXR with REC.709 primaries, or in the native RED gamut and write a simple OCIO stanza to handle the conversion.

  can REDlog video/color be preserved when imported into Blender (as the
  effect background) and exported with the effect applied as an image
  sequence?

It is impossible to preserve a wider gamut in a smaller gamut if you intend to conduct any manipulations on the pixels. This is a bit of a tricky area so I'll leave it at that to avoid boring you into submission. By default, Blender uses a REC.709 based reference space, and almost every single camera sensor on the market can record a wider gamut than the REC.709 / sRGB reference lights can represent. The only way around this is to use a wider reference space, and that is another topic altogether.


When setting the 3D Viewport's Context to Texture Paint the previous Texture gets loaded

Seems like the solution was choosing the image from the 3D View's Properties Panel > Slots > Canvas Image


Where to get these nodes that don't appear in the search menu?

IOR is just a regular numeric value, there is no specific node for it.

What you see in that image is just a renamed node title, the actual node type is a simple Value. You can change the label of any node from the sidebar.

Just select a node, expand it with the N key and change the Label field.


Disable the 'see though mode' in edit mode

Enable limit selection to visible in the bottom tool bar.


My understanding of armatures (I'm far from an expert) is when you set the Viewport Display mode (in the Armature tab of the properties) to Envelope this shows each bone as a visual representation of its influence when used for Automatic Weights. In the Properties panel (N) you can set the Head Radius, Tail Radius, Envelope to control the extent of the influence of the bone and this updates the visual representation.
When you then apply the armature with Automatic Weights, it is those bone influences which are used to assign the weights to the surrounding vertices.
So, for example, you can adjust a leg bone to cover just the surrounding leg mesh and the weights are then automatically assigned as appropriate, automatically including that leg and excluding everything outside that bone's influence.


Why do all pieces of a model suddenly turn during Animation?

Maybe deactivate the Proportional Editing option? Shortcut O to activate or deactivate.


You need to open the AVCHD file as if it were a folder (it is). In Mac: Right click, then "Show contents". You will see another folder, do the same with it. Then you'll find the *.MTS files. Those you can open and work with in Blender.

You can even change the extension "mts" to "mpg", but that's not necessary in Blender.


weird, white, glossy looking rendered view mode

My first guess is that you have a light source (point, sun or something else) that is way too bright.
Try and lower your light sources while in rendering mode and see if anything happens. Normally, lights only affect rendering mode, so my guess is maybe you tweaked the lights in another mode, went too far, and now everything is too bright.


Animating cylinder mesh distortion with bezier curve

You'll be able to do that, adding and tuning "shape keys": https://www.blender.org/manual/animation/shape_keys/index.html
You might find plenty tutorials on shape keys by modifiers, and shape keys by other shapes. After you have your shape keys set up, you just need to keyframe the "evaluation time", and Blender will interpolate the transition between the cilinder, to the "curved cilinder".
By the documentation, a shape key procedure is:

1.In Object Mode, add a new shape keys via the Shape Key panel with the + button. 2. “Basis” is the rest shape. “Key 1”, “Key 2”, etc.
will be the new shapes.
3. Switch to Edit Mode, select “Key 1” in the Shape Key panel.
4. Deform mesh as you want (do not remove or add vertices).
5. Select “Key 2”, the mesh will be changed to the rest shape. Transform “Key 2” and keep going for other shape keys. Switch back
to Object Mode. Set the Value for “Key 1”, “Key 2”, etc. to see the
transformation between the shape keys.


Crease the edges you want to stay sharp. A value of 1 will be perfectly sharp. If you have any smoothing or subdivision surface modifier applied, as you reduce the value the edge shading will become increasingly smoothed. So if you want just a bit of smooth shading on certain edges you might try a value of .9 or something.

This is where the 'Crease' value adjustment is located.


Subdivide will put a division between all handles you currently have selected, so if you don't have more than one handle selected it won't do anything.  You can press A to highlight all handles and then run the command to subdivide the whole thing.


Do I need to recompile blender when changing C++ Shaders for Cycles?

This is correct, C++ shaders in Cycles require rebuilding Blender.

Note that OpenShadingLanguage is compiled using LLVM, so it should yield fairly good performance and doesn't require rebuilding Blender,


Is there a way to get insert face to be larger than the selected face?

You can also outset faces using the inset tool properties panel, just tick "outset".

You can specify the thickness of the outset in units.


How do I get this rainbow to fade and disappear?

Me too a beginner and me also don't know much about 2d animation but I think I figured out how to do it.
After drawing the rainbow chose the frame you want the rainbow to see, then go to object data properties and make sure that opacity is at 1.000 (1). Then move your mouse pointer to the opacity and click 'I' you can see that the opacity tab is now yellow. Then chose the frame that it want to be completely disappear. Make the opacity to 0 and click 'I'. Press space bar and see it fades away.


I'm using a high number of samples. Why is my render coming out in low quality?

If you have any number other than 0 on the render layers, then your rendering will be limited to that value.

.

Solutions (choose one):

Make the number of samples on the render layer, the number of samples you need.
Turn that number back to 0 so that the sampling is controlled by the overall render settings for the scene.
Turn the layer sampling settings to "ignore"

See this post: Cycles render, noisy even when using a high number of samples


I don't know if it's still relevant to you, but I've discovered a way to do this without having to weight paint again.

In the Outliner Window, drag the mesh for your AK to the other armature and set the Object as the parent. You'll see that the AK mesh is still weight-painted to the old armature, but you won't be able to move it in pose mode (yet)
Make sure there aren't any constraints added to the armature from the AK that you're trying to join to the new armature.
In Object Mode, highlight the AK armature followed by the armature you want to join it with and hit CTRL+J to join them.
In Object Mode select the AK and Shift-select the new armature and type CTRL+P and parent the AK mesh to the new armature with empty groups.

That's it. You should now see your AK has the same weight painting it once had but in a new armature! However, you may have to go into edit mode and translate it a bit to get it to line up properly with the bones.

Let me know if you have any issues!


Particle System Settings:

Check "Advanced"
Check "Rotation"

Orientation Axis: Normal-Tangent

Children

Simple -> Interpolated

Render

Under "Object" check "Object Rotation"

Hair strand object:

Viewport Header Tool Settings

Options
Under "Affect Only" check "Origins"

Move the origin to the root of the hair strand object
Unset "Affect Only Origins"
Rotate the hair strand object with pressing : R Y 90


What is the difference between "Generated" and "Normal" texture coordinates?

It may help to visualize it this way:
When we render a scene, for each pixel on the camera we project a ray, and if we make contact with the surface of an object, we ask "What is the color that should be reported for this pixel given material properties, lighting, occlusion etc?"

This is fairly simple when the material is a solid color, but what about materials that vary?
A procedural material can be thought of as a "field" in the physics sense, it exists and has a value in every position in your scene.  When you map this texture to an object and look at it in the viewport you are displaying the cross section of this field that coincides with the surface of your object.

The Texture Coordinate node merely defines the X,Y,Z coordinate space used to map the texture.  Object coordinates, for example, use Blender's scale setting and set the object's origin as 0,0,0.  Generated coordinates use the object's bounding box as the coordinate space over a range of 0,0,0 to 1,1,1.

Normal coordinates are a little strange.  My current understanding is that they are less based on position, and more on the rotation of each individual face (more specifically the normal direction).  Maybe someone will expand on how this may be useful for you, my knowledge is limited on this one.


Can a circle be filled with a triangle fan?

Create and poke face

You can do this with 2 operations.

F, ⎇ AltP

F (creates a face)
⎇ AltP (poke face, creating a triangle fan)

See: Mesh -> Face menu for both.

Note for Blender 2.80 users: Shortcut for Poke Faces was removed and the menu entry relocated to Face -> Poke Faces.

Extrude and merge edges

E, Escape, ⎇ AltM, A

E (Extrude)
⎇ AltM (Merge)

A (Menu accelerator for the  A̲t Center option)

Note:

Create face & Poke will assign UV's & vertex colors from surrounding faces (the extrude method will simply extend UV's/colors, which may not be what you want).
Poke uses a more advanced method to calculate the face center point(noticeable when edges aren't evenly spaced).


Create good edge flow for subsurf on a plane

This method will need a lot of Proximity Loops and Supporting Loops but they are necessary to keep mesh clean without glitches on sharp corners (inside K).

You can try to add to the Base Topology three modifiers.

Solidify > Bevel (3 segments) > Subdivision surface. But this method has flaws like before mentioned glitches.


How can I quickly make two normals opposites?

If you know the 3D coordinates of both unit-length normals $\hat n_1$ and $\hat n_2$ -- both expressed in the same coordinate system (e.g. global), and you want to rotate the object owner of $\hat n_2$, you have to rotate around axis:

$$
\hat u = \hat n_1 \times \hat n_2
$$

by an angle

$$
\alpha = \pi - (\hat n_1 \cdot \hat n_2)
$$

In Python:

def rotateObjectSoNormalsOppose(obj, n1, n2):
    '''
    Rotate object so n2 is parallel and opposite to n1

    @param obj (bpy.type.Object) Object to rotate
    @param n1  (mathutils.Vector) Unit-left normal used as reference (in global coordinates)
    @param n2  (mathutils.Vector) Unit-left normal to rotate (in global coordinates)
    @return The rotated object
    '''
    # Compute axis of rotation
    u = n1.cross(n2)
    # Angle of rotation
    alpha = pi - acos(n1.dot(n2))
    # 3x3 rotation matrix
    rot = Matrix.Rotation(alpha, 3, u)

    # Get current orientation of object
    curr_orientation = obj.matrix_world
    # apply delta rotation to obtain the new orientation
    obj.matrix_world = curr_orientation @ rot.to_4x4()

    return obj

where rot is a 3x3 rotation matrix that will rotate the owner of $\hat n_2$ so that $\hat n'_2$ will be parallel but opposite to $\hat n_1$.


Is it possible to group several objects and then manipulate them (scale, rotate, translate) as one?

Groups in itself are not that useful. You cannot directly manipulate a group of objects as one object. Although groups make it easier to select objects with Shift + G.

The real power of a group comes from instancing and dynamic linking. Which I will explain:

Instancing:

Once you've created a group, you can instantiate this group elsewhere in the scene by Add>Group Instance. This saves you the trouble of creating literal duplicates of your objects. Consider a city scene, I might have a number of objects that makes up a car model. By grouping these objects into a group, I can place a car group instance anywhere in the scene with very little overhead.

Dynamic Linking:

In many ways, dynamic linking is an extension of instancing. The only difference is that we are using a group from another blend file(often called a library). Dynamic linking is a very useful feature in a large production, because it allows larger scenes to be broken up in smaller chunks. (managed by different people)


How to set Default Shader to Principled BSDF

This script adds an app handler triggered on scene update. That runs my watch_materials function.
First the watch_materials function checks to be sure you are using cycles. Then if there is another material it goes to the active object's active material and changes the node.

import bpy
from bpy.app.handlers import persistent

mat_count = len(bpy.data.materials)

@persistent
def watch_materials(something):
    global mat_count
    if bpy.context.scene.render.engine == 'CYCLES':
        if len(bpy.data.materials) > mat_count:
            mat_count = len(bpy.data.materials)

            #get active object's active material
            node_tree = bpy.context.active_object.active_material.node_tree
            #save the location of the diffuse node
            location = node_tree.nodes['Diffuse BSDF'].location.copy()
            #delete that node
            node_tree.nodes.remove(node_tree.nodes['Diffuse BSDF'])
            #add new Principled node
            principled = node_tree.nodes.new('ShaderNodeBsdfPrincipled')
            # move it to where the diffuse node used to be
            principled.location = location
            #make the connection
            node_tree.links.new(principled.outputs['BSDF'], node_tree.nodes['Material Output'].inputs['Surface'])

bpy.app.handlers.scene_update_post.append(watch_materials)

Just copy that script into blender's text editor and press the "Run Script" button. After that any new materials you add will look like this.

Granted, there are still things that could be done to this script. For example if you added a new material without the default nodes (can only be done through python) my script will break.

I have to mention Jerryno, his comment pointed me towards the app handler. I had made a version of this using a timer driven modal, it was nice, but far more complex (it works too).


Is it possible to import a Maya file into blender?

Not directly (since the ma .. mb formats are closed or licensed I think? don't quote me), but you can export your model from Maya to a universal format that Blender supports such as .abc, .fbx, .dae or .obj and then import into Blender using the File > Import menu. Use either of the first two if you have an armature and .fbx preferably if you have animation data.


Why am I getting artifacts in my baked normal map?

It seems as though, as of Blender 2.92, baking a tangent space normal map without using Selected to Active does not work correctly in the presence of modifiers. I have opened issue T87449 on the Blender bug tracker about this.
In the meantime, there are a few workarounds:

Apply modifiers before baking. This is probably the best workaround, since it’s easy to undo afterwards (or just temporarily duplicate the object for baking).

Bake an object space normal map instead of a tangent space one. This does not appear to be affected by the bug, though it incurs all the disadvantages of using an object space normal map.

Duplicate the object and use Selected to Active. This seems like strictly more work than just duplicating the object and applying all the modifiers, but it does seem to avoid the problem as well.

I decided to take the first approach, which, happily, produced a correct normal map.


Move your pole-target bone in front of the knee, when you've done the setup as in the tutorial at 19:30 this should work. The IK solver tries to maintain the orientation of the knee to the pole target. That is the reason why the leg is winding .


I was using the wrong texture, the script works fine.

I was loading the wrong texture in the script and looking at another texture in the background of my UV editor.


Blender Fracture Modifier locking to another mesh

You can add a fracture modifier to the handle too, setting shard count to 1 if you dont want it shattered. But it is important it is an FM object in order to use "Automation" -> "Combine" -> "Connect" in the fracture helper addon which is shipped with the fracture modifier build. (Needs FM 2.79a or newer.)

This will connect FM objects with external constraints where the objects "touch" basically. You can control the properties of the external constraints on the newly generated helper object (which has also an FM, but only maintains the constraints).

Alternatively you can setup the connection manually. In order to do so you can put the desired FM objects into a group, then create another helper object manually. Put an FM onto it, disable all sources. Specify the Group in "Sub object group" and check "Constraints only"... also enable "Use constraints in the helper object. But note, its easier to let the addon do the boring automation work.

Here I quickly built an example file with a simple door :)


How can a blender driver python script access scene properties like FPS?

Inside script editor define your own function and register it for driver use:

import bpy

def driver_fce():
    scn = bpy.context.scene
    # You can use here:
    scn.frame_current
    scn.frame_start
    scn.frame_end
    scn.render.fps
    # etc..

    return 0    # some value

# Register it to driver namespace under name 'driver_fce':
bpy.app.driver_namespace['driver_fce'] = driver_fce

Use it like this:

Note that such drivers on node properties do not update correctly and its better to use frame change callback handler instead in that case.


finding the pivot of the camera using python

You're looking in the wrong place basically. What you need to do is get the RegionView3D of whatever 3d window you want to get the pivot point (view_location) of.
API docs
Something like this should work:
import bpy

def get_rv3d():
    for area in bpy.context.screen.areas:
        if area.type == 'VIEW_3D':
            rv3d = area.spaces[0].region_3d
            if rv3d is not None:
                return rv3d
    return None

rv3d = get_rv3d()
if rv3d:
    print(rv3d.view_location)


Is there any way to link together 2 time frame nodes in with animation nodes?

In the Time submenu you also have some Animate ... nodes for vector, euler etc.
You should use them for animating between a frame and another.

Note that:

they also have a Time output so that you can use several in a series
they have an interpolation method. There is a whole interpolation submenu for having a lot of control over that, if the default set of options is not enough.

ps:
For complex situations or for many objects or instances of an object, if more than several animate nodes would be used, use subprograms, loops especially for lists of objects, having animate nodes triggered by various rules.


Earlier, there was a question like this. You should try to rearrange the modifier stack, I'm pretty sure that's the problem. (or give us a screenshot of the stack if you are not sure how it should go)


First you have can convert your "curve object" to "mesh object" (select your object, Alt+C, convert mesh from curve/meta/surf/text). Then you can do triangles in many ways. By hand, go to edit mode (press Tab) > press Ctrl+Tab > mesh select vertices > then shift click on 3 vertices you want to do a triangle and press F. An automatic way, can be, with the object converted to mesh and en edit mode, press A until you select all object > press F to fill > press Ctrl+T to triangulate.


It depends.
When it is not going to view in detail and the geometry of vertices isn't important.
As you said, there is no extra vertices created, which mean, if there isn't a geometry, rendering engine can't render on that pixel. Commonly seen in early game when we can't afford high vertices computing.

As a same result, AO, shadow, light bounces cannot be accurately calculate due to the rasterized geometry (Although there is some trick that can compute them in additional process).
So how do we decide which one to use:

Is our scene need to be realistic as possible as we can?
Can the rendering engine/hardware afford such high vertices? Or high resolution normal map?
Can we obtain the normal map?
Do we have time to bake normal map? (especially you don't want to waste time on tweaking your map and vertices. eg. making animation)
Is the rendering time important? (Realtime Game, VR, AR, news animation)

There is much more thing that we should consider about, including what pipeline are the artist using, which might be the most important factor in current decision. And I don't think an short Q&A post can cover all the issue in this problem.


Brush Texture, Texture Panel preview blank?

I was stuck with this issue for a while. For me it was because I had my render engine set as Workbench, instead of Cycles or Eevee. Setting the render engine to something other than Workbench fixed the issue and the texture preview started showing again.
Hope this helps some people.


No, Blender's VSE can only output a single linear video file. Any stop points, or looped sections would need to be provided during playback with the whatever player or app is consuming the video file.


Most exporters will have an option in the file dialogue that says “selection only,“ which I believe is what you want.


how to set x position to selected vertices

After selecting the loop that you want to position, you can drag your mouse over the X value in the properties menu (it shows up when you press the N key)

If you have vertices that are offset from the center but their average X value is zero (as shown):

You can use the following keystrokes to set the x position of each vertex to zero :

S+X+0


How to get rid of random, uneditable stretches?

Switch to Edge Select mode (Ctrl+Tab > 2)
Select the protruding edge.
X to delete

Then you can re-add the faces in the chest where the protrusion was.


Forcing randomized quads to stay coplanar?

As @batFINGER said, you can use dupli-face.

Create a plane and parent it to your displaced mesh (the one you shown in picture).

In the object properties of your displaced mesh, go to the duplication panel and select "Faces" (the blue button on the bottom part of the picture).

And.... that's all...

On the left, the "tri deformed original mesh", on the right "only planar quads"

(again, thanks to @batFINGER comment)


CUDA error: Out of memory in cuMemAlloc(&device_pointer, size)

There are two options.

First:

Your scene render is bigger then your GTX 960 memory.

Solution:

Change render to CPU.

Second:

You have active 'render preview mode' and 'final render' at once.

Solution:

Turn off 'preview mode' or change it to 'solid/wireframe'.


molding an object in the shape of another object

If I understand your question correctly,you are looking for the Shrinkwrap-Modifier. Add the modifier to the model you want to change and choose your "desired face" as the target. For further reading consult the manual.

However there is no way to get more detail than your polycount allows. That means the Shrinkwrap-Modifier might produce artifacts if the polygon-density of your model is far less than that of your target.


Exporting to DirectX for Vehicle Simulator with correct axis for each object, Blender equivalent of Xform reset?

I seem to have solved this myself, somehow by tweaking the pivot points of the objects in the scene of Blender.


you may have pressed CTRL+B instead of B when tryed to select. this clips the wiew to the rectangle area you draw after the keystroke. Try CTRL+B again to remove it.


Particle System in Pose Mode not working

The armature modifier needs to be higher on the modifier stack than the particle system.
Like this:

Not this:

You can use the arrows next to the X to move the modifiers around.


Splitting an objects data_path into hierachal list

Problems with parsing data_path can occur when the user gives entities names containing apostrophes(names containing quotes will not work in driver data_paths). Such will still work in drivers, i.e:

"""pose.bones["Bone'bla'"].location.x"""

So we can assume every name has to be enclosed with [""] in such datastring that drivers will accept:

def split_path(data_path):
    '''
    Split a data_path into parts
    '''
    if not data_path:
        return []

    # extract names from data_path
    names = data_path.split('"')[1::2]
    data_path_no_names = ''.join(data_path.split('"')[0::2])

    # segment into chunks
    # ID props will be segmented by replacing ][ with ].[
    data_chunks = data_path_no_names.replace('][', '].[').split('.')
    # probably regex should be used here and things put into dictionary
    # so it's clear what chunk is what
    # depends of use case, the main idea is to extract names, segment, then put back

    # put names back into chunks where [] are
    for id, chunk in enumerate(data_chunks):
        if chunk.find('[]') > 0:
            data_chunks[id] = chunk.replace('[]', '["' + names.pop(0) + '"]')

    return data_chunks

The part # segment into chunks is just basic, some more advanced segmenting can be implemented (for example one that will understand location.x is one thing or that will extract correct target.id and target.data_path)


I need to setup a camera to follow a character in blend4web

In b4w where is 3 predefined camera setups:

https://www.blend4web.com/doc/en/camera.html#hover-type-camera

You need to change camera type to hover


Take Smooth Shading into account with Normals Bake

You can use the bake selected to active feature.

Duplicate your object.
Set one copy to smooth, and the other to sharp.
Add a UV map and image to the sharp one.
Select the smooth one first, then the sharp one (so the sharp one is active).
Enable Selected to active in the bake settings.
Set Bake Mode to Normals.
Press Bake!

You can also use this trick to add bevelled edges for low-poly models. Just add a bevel modifier to the "smooth" object.


How do I animate a shoelace that is being pulled out of a shoe?

While @Carlo shows the very precise version with a string following a path, i have a different suggestion that could be interesting.

Depending on how tight the tendon is supposed to follow the bone and how natural it is supposed to behave while and after, i think the cloth simulation could give you some interesting visual appeal.

Create the collision objects along the path, a tube or rings, whatever suits the situation best.
Make sure the collision objects have their Normals face the right way, as it will make or break the simulation.
Create a curve for the tendon, convert it to a mesh and give it a width, like a band worm.
Select the first vertices and make a vertex group to assign it to.
With the vertices selected, press Ctrl+H and select "Hook to new Object", which will create an empty that you can later use to pull the tendon.
Select the tendon object and add a "Cloth" Modifier, assign the vertex group to the shape.
Adjust the length for the cloth simulation! Very important. (You may need to test a lot, using the "Update all to Frame" can help clear the simulation in that case)
Press Space to start the simulation and grab the "Empty", press G and start having fun pulling tendons.

Here a little visual demonstration how it looks pulling a red string through some loops and how the cloth simulates it:

I have to admit that it's a lot less precise, but depending on the right usage of collision objects to lead the cloth it could very well be an option aside of the version @Carlo brought up.

It may just look a lot more realistic if worked out right.

To make it easier to figure out, here the file i used to show it.


How can I get the smoke in the render to look like it does in the viewport?

Increase the smoke resolution (divisions) and increse render samples,also set clamp indirect to something around 3. Check smoke high-res and experiment with divisions and strenght!


Rendered image different than render preview

Viewport shading is only preview, that means the HDRI when you uncheck the world lighting will not be used in real render. So if you want to use HDRI, the correct way is to use real HDRI from World properties, change the color to Environment, select HDRI that you have (you can download from HDRIhaven.com  or use the one included in Blender (I think they are lower resolution) from Blender folder \2.82\2.82\Datafiles\Studiolights\World (change the path according to version).

but actually you can just render from the viewport in View > Viewport Render Image/Animation, it's just you may want to disable Gizmos, change viewport samples per pixel, etc
but I recommend you go the usual path of rendering until you know what you're doing


Transfer Weights does not affect one edge loop

It may be not an exact 100% answer, but i've managed to find a workaround:
I've recreated Head nr 2 by duplicating Head nr 1 and deleting all polys besides these near edge loop. Then, from Head nr 2 i took all polygons besides these around edge loop and connected it to duplicate of Head nr 1. This way, the edgeloop remained from Head nr 1, and the rest is from Head nr 2 - which gave me a Head nr 2 without problematic edgeloop.
Problem solved, but i still don't know why it could not transfer weights properly.


Try subdividing your mesh. The sculpt tool only can interact with vertices you already have. Alternatively, you can try enabling Dyntopo in the viewport tool shelf.