The image below will be used as a reference. For clarity's sake, only the normal for face 12 is displayed. The normal is the arrow pointing away from the face, the other two arrows indicate the first edge/vertex (the starting point) and the "spin" (order) of the vertices and edges. For example, this is the vertex and edge ordering (from first to last) for the selected face (12) in the image below:

vert order: 17, 24, 25, 18
edge order: 58, 24, 59, 17

base_edge.link_loops[base_loop].etc

link loop = a loop representing all edges that are part of a face. these edges are sorted counter clockwise around the face normal
link_loops = every "link loop" an edge is part of (edge 24 has 2 loops, edge 67 has 1)
link_loop_next = the next edge in a loop (if face 12's loop was the base, the next edge after 24 would be 59)
link_loop_radial_next = another "link loop" an edge is part of. (if the base loop was for face 12, calling radial next on edge 24 would return the loop for face 19). this returns the same value that is stored in the next loop of an edge's link_loops property (if link_loops[0] was for face 12, link_loops[1] would be for 19).


What are the advantages of turning on "cache BVH"?

From the 2.62 release notes -

  For renders where only the camera or materials are changing, while meshes stay fixed, it is now possible to skip the sometimes slow BVH step, by enabling BVH Cache in the Performance panel. This will store the BVH on disk for subsequent (animation) renders of the same scene. Note that if the scene does change in the animation, enabling this option will make rendering somewhat slower.

Times when it will help -

Test rendering one frame while you adjust materials.
A camera flying through a static scene

Times when it will not help -

Any mesh changes during an animation (shapekeys or armature)
Any object movement during an animation


How do I make Python in Blender move 100 bones simutaniously?

In Blender if you want to make use of multiple CPU cores for your scripts - look into multi-processing.

Since Python's threading does not take advantage of multiple CPU's and is mainly used so multiple tasks can run without one task blocking all the others.

Note that its questionable if you even need multi-processing for this task.

Also take a look at numba (jit accelerated Python which is compatible with Blender), it can give real speedups for numeric tasks and easier to integrate then alternatives.


Camera follow object and then stop in place

Yes, you can't animate that, stop using the constraint and keep its transforms. You can do it by hand, using the apply menu, but that is not animatable, imho.

You could do this differently: create two empties, and animate them in a way that they have the same movement until a point, where one stops and the other goes on until the end.

Then parent the target object to the last empty, and the camera to the first.

This is how it works:

If needed you could add a tracking constraint on the camera to keep focus on the target object, even after it stops.


To avoid particles to intersect with the ground, check Size Deflect checkbox in particle system Physics settings. This is not a perfect solution either, cause the particles will hover over the ground plane a little, so what you can do is to use this plane as collision box, which won't be rendered and it's duplicate without collision added, which you move closer/furhter away to the particles and which will be rendered. If you need even more physically accurate interactions between leaves and a plane, you would need to use separate objects (which can be created from particles by Shift+CTRL+A) and make them rigid bodies.


if you have some image editor like Gimp or Photoshop you can create the composition with the diferent textures.

1.- Unwarp the rectangle
2.- export the Uv Layout

  Than create your composition in Gimp or Photoshop, with the exported UV-Layout
  3.- In Cycles, create a Material
  4.- and add the Image Texture Nodes with your composition image.


So I was able to get the video edited without any problems this time. Turns out my original issue was indeed the Sync Mode setting, which needed to be in AV Sync for the audio playback timing to work. The later issue was also causes by the Rendering options being set to the wrong FPS. It was set to 30 fps when the files I was importing were recorded in 15 fps. Once I got those sorted out everything worked and I was able to create and upload the video with no further problems. Thanks for your help @bertmoog.


No ruler/protractor/interactive ruler hotkey?

Maybe not, but you could create one easily enough.  In the Toolbar, in the Grease Pencil tab, right-click on the "Ruler/Protractor" button.  From the menu that pops up, choose "Add Shortcut".  Then make it whatever you want, e.g. Ctrl-Alt-R (I don't think that's mapped to anything?).


Array modifier changing second array modifier

It would be helpful if you included your modifier-settings in the screenshot. It is difficult to locate the error without that information.

Anyway I created a setup like you want with two array modifiers.
You can see the settings in this screenshot.


Random Distortion-Like in Final Image | Rendering Problem in Blender

I've read some comments above and try their suggestion, and the problem is that i have a very low sample count. The solution is of course to increase the sample count. Thanks to them.


Select all your meshes, Ctrl+A to open the Apply menu, select Visual Transform. This will apply the constraints, but you still need to remove them (they're applied AND active) with Ctrl+Alt+C.
Then you can join them with Ctrl+J.


What you have:

Internal faces (pointed by Duarte Farrajota Ramos), loose edges, unconnected vertices, unnecessary faces...

You can try to clean it up by Recalculate Normals (suggested by CGEffex), Remove Doubles, cutting faces and connecting vertices to have mostly quad topology.

You should avoid creating ngons and tris (these could be useful sometimes).

But...

What you need:

In this particular case you can recreate this mesh fairly easy just by using Extrude and Snapping (to existing mesh).

I will not explain it step by step as this is kind a Blender 101 and you can find large number of tutorials about extruding basic shapes.

Final thoughts:

You have mentioned that you are using .OBJ files. I understand that you are importing them. If yes then it will not be easy to clean them up. I have fairly good experience with them (exported from various CAD-like software) and always it was nightmare to work with. I can't give you any more tips besides those from above. In my case I've recreated from scratch 70-80% of meshes just to save some time.

Blend file:


Accessing Vector Pass Data in python in background mode

In the end the solution was to use multilayer EXR output by constructing a simple node graph automatically in python (Blender 2.78).

bpy.context.scene.use_nodes = True
bpy.context.scene.render.layers[0].use_pass_combined = True
bpy.context.scene.render.layers[0].use_pass_vector = True

tree = bpy.context.scene.node_tree
rl = tree.nodes.new('CompositorNodeRLayers')
rl.location = 0, 200

output = tree.nodes.new('CompositorNodeOutputFile')
output.location = 200, 200
output.format.file_format = 'OPEN_EXR_MULTILAYER'
output.base_path = output_folder

links = tree.links
links.new(rl.outputs['Speed'], output.inputs[0])


Adding thickness to 3D Scan of face in Blender

The 3D print plugin is nice for fixing up a mesh but otherwise I used to just use the decimate modifier and create a new mesh from a scan mesh. Also make sure you've tried selecting all vertices in edit mode and using the 'remove double vertices' function (or remove doubles in 2.79). Then using Crtl + Shift + N to set the normals (untick that box in the bottom left corner though) (in 2.79 it's just Crtl + N and there's no tickbox).

What it looks like is that for whatever reason the scan mesh isn't whole, like there's separate islands of vertices which would give the effect of the cracks


err..I deleted the faces I didn't need and closed off the resulting holes and seperated them into different objects (L to select and P - selection) and then I could set the desired width (length and height) for each object in the properties window...


How to unwrap previously textured .obj in Blender?

The answer actually turned out to be that I had a previously rendered image open that was displaying over the uv editor. Whenever I closed that image everything showed up as expected.


Children of parent maintain current position after parent removed?

Select the children and then press Alt+P, where 3 options will be presented in a popup menu. The option to Clear and Keep Transform will clear the parent of the children and allow them to keep their current scale, position, and rotation.


You can get close with proportional editing.

Add a UV sphere and rotate it 45° in edit mode
Grab the top point and align it to the top right corner
Check ✓ Proportional Editing > Sharp, adjust Falloff so it fits


Optimise triagular mesh on model for a given triangle size

You can reduce face amount by using Decimate modifier. It provides severl methods and options to simplify the mesh.

However, it works more like collapsing. It is not aimed to accurately reduce by a given size or number. I don't think Blender currently support this specifically.


Why can I not put an edge loop around this model?

I don't know why it happens but I know how to resolve:
Every part of the mesh where there are 2 faces loops between two spokes, delete the 4 vertices inbetween (they also are not selectable as edge loop), then recreate them, extruding or bridging edge loops and then loop cutting and grabbing in the right position.

Edit: deleting and recreating just one vertex is enough.


How to select linked without delimiting?

In 2.79b at least, you can select multiple delimiters or deselect delimiters by shift LMB on the appropriate button.  With no delimiters enabled, it will only limit select linked by mesh connections.


When to texture paint to paint on Mesh and when to use Photoshop to paint on 2D Texture

The concept behind UV unwrapping is to assign to every 3D vertex a 2D coordinate.

If you are working with a flat plane, the two approaches are nearly the same (generally a 2D software is more powerful).

If you're working with a 3D object, direct painting on the 3D mesh is gratifying but generally it's difficult to get a really powerful control of what you're actually doing.

Working on 2D UV unwrapped textures is more controlled but more complex, at first.

Like many tasks, you can reach your goal in many different ways: the complete path for texturing a cylinder is:

1) create seams on the mesh, unwrap it, assign an  image texture (the seam will be visible)

2) delete seams, create new different seams and create a new UV map

3) bake the texture on a new image

4) doctor the new image in a 2D editor (seams to be doctored will be visible, don't touch image's boundries, as it would create new visible seams)

5) use the new image with the 2nd UV map

This complex procedure will assure a seamless texture in any situation, generally it can be avoided by hiding the seams in hidden places.

As you can understand there is no "better" or "old" way. It depends on your needs.

Personally, i stopped studying 3D paintings because even a simple open source software as GIMP let's me reach better results than Blender Paint capabilities.


The use of shapekeys sounds like it might be a more likely possibility than the armature, if you made the changes to a shapekey instead of the base mesh, the basis shape will still be available to return the mesh to it's old shape. Note that in this case just deleting the shape key will remove the altered shape that you have done. This question may help in that case.

If you created shape keys and setup drivers (the purple values have drivers) to allow the armature to control them they can also deform the mesh. The drivers can be removed by right clicking on one of the purple values and selecting delete driver.

The armature modifier is the link that allows the armature to deform the mesh. By deleting the armature modifier you remove any effect it can have. You can also try disabling it first by disabling the eye icon.

The armature modifier uses the objects vertex groups to know what vertices each bone moves, by removing all the vertex groups you will remove any trace of the previous armature and will need to redo any weight painting.


How to write drivers to be copied and pasted between objects' modifiers?

The id_data property of any object returns an ID object

Simple example adding a driver to the count of an array modifier  The modifier is on the default cube.

The driver script, prints out self,  self.id_data the path from self.id_data to self and returns 2.

import bpy

def test(self):
    print(self)
    print(self.id_data)
    print(self.path_from_id())
    return 2

bpy.app.driver_namespace["test"] = test

Here is the output to console

<bpy_struct, ArrayModifier("Array")>
<bpy_struct, Object("Cube")>
modifiers["Array"]

Hence other properties of the modifier can be accessed using self.other_modifier_property and properties of the object it is on via self.id_data.some_object_property

The driver UI deals in ID objects, as does the datapath used by fcurves etc.  You select the (ID) bpy.types.Object instance the modifier is on, and add the datapath from ID object to modifier. In this case self = self.id_data.modifiers["Array"]


Apply scale with CTRL+A before the insect face


The closest thing I can think of is doubling the entire shader of the object you want to be more illuminated.  This is done by adding the shader to itself.  To do this plug plug your shader nodes into both sockets of an add shader at the very end of the node tree.

It produces the following result.  The center ball uses the above technique while the other two use just the node group.

The disadvantage of this is that it doubles all rays hitting the object, not just ones from a specific emitter.

See this post and this post for more on the add shader node.


Snapping points of a roughly spherical mesh exactly onto a sphere

To sphere:

You could try AltShiftS>To Sphere:

From the wiki:

  The To Sphere transformation will give the selection spherical qualities.

Example:

Shrinkwrap:

Or using the Shrinkwrap modifier to shrink your mesh to a sphere object.

From the wiki:

  The Shrinkwrap modifier allows an object to “shrink” to the surface of another object. It moves each vertex of the object being modified to the closest position on the surface of the given mesh (using one of the three methods available).

You could add a shrinkwrap modifier to your mesh and set the Target to a sphere:


Particle System name is different from Particle Settings name because you can have Multiple setting for each Particle System. By creating multiple settings you can quickly switch between them to see the difference instead of replacing the Particle System.


My final render with cycles look blurry after denoise

What sample count did you use? If the sample count is low, of course it will look blurry after denouse. This is not related to light bounces at all. If you wan't a sharper image after denoising, you will have to increase your sample count.
At sample counts as low as 128 for the final render, your render will look blurry after denoising. Nice interior by the way.


when you add emission shader you have to do like this....

i hope this help you.


How can a Normal Map affect the look of a model?

Normal maps simply trick the render engine into thinking that the face is at a differnt angle at that place. It cannot control height (It can still appear to create hight difference, but the are not accurate*) only angle.

Limitations

- Changing the silhouette: normal maps won't change the outline

Another angle

- Accurate depiction of height

Working With Limitations:

Design your mesh to work with these limitations

make sure the silhouettes match
make sure all height differences are clearly define.

Adding enough supporting geometry to complete the illusion


You can untriangulate the selected portion of a mesh by hitting AltJ. This will only create quads so some manual cleanup may be necessary if you need n-gons. You can do this by selecting the leftover edges and hitting X and clicking Dissolve Edges.


Blender Graph editor Continuos animation

To create a continuous line (rather than between two points) you can add an F-curve Modifier - see https://docs.blender.org/manual/en/dev/editors/graph_editor/fcurves/modifiers.html

The Generator modifier allows you define the relationship between X and Y to generate the required graph. In your case you want polynomial order of 1 so it is of the form y = mx + c - ie, a straight line with the gradient m and cutting through the y-axis at c.


FreeStyle won't appear in Blender Render, pictures below?

Another issue is the render buffering. Try deactivating Performance/Save Buffers to force Blender to redraw the Freestyle overlay.

Make sure to turn this function off.


problem with array modifier while trying to create a plant

Your object have a non-uniform size, specifically along the z axis and thus the slight displacement of the leaf is amplified along the z axis. So just apply the scale of the object using Ctrl+A >> Scale.

The same problem may appear when the offset object have a non uniform size as well.


This called the Quad View.
You can go back to default View by Pressing Ctrl+Alt+Q


Found the answer here:
https://blenderartists.org/t/blender-add-on-to-import-shape-keys-from-youtube/1124990
Here's the add-on that does this:
https://youtu.be/XMimQfQR_ss
As per the suggestion in the comment, here's the brief description:
The add-on descried in the video above imports svg paths directly as shape keys. So if I have a rectangle and circle in the svg file and if I group them with rectangle at the top in the xml group, circle will be imported as shape key and rectangle as the target. Apparently, there are no limitations about the number of nodes, as texts can also be imported as a shape key. There can be many shape keys for one target.
Download link: https://github.com/Shriinivas/shapekeyimport


Do failed tracking markers still contribute to the solution?

All available markers are used when creating a camera tracking solution. Markers that have moved off screen can be cleared of bad tracking data to help improve the solution.

By going to the last good frame and selecting the marker you can use Clean After or go to the first good frame and press Clear Before, you remove the tracking data that is contributing to a bad solution.

This short demo by Sebastion Konig shows how to use the tracking curves to find bad markers.


I have an issue where the vertices on my project glitch and create spikes any time I move another vertice

This can happen when you use Mirror Editing with non-uniform rotation.

Disable Mirror Editing (up in the toolbar) and make sure you have rotation applied before you use it.
Object > Apply > Rotation


Why is my donut not smooth and sculpting it causes distortion?

I think i figured it out. I made a copy of everything and did not hide it from the view which caused the distortion


The RGB values in Blender use a linear color model while the Hex values use gamma corrected non-linear color model.

To convert between these two, you would have to manually do the gamma calculations using the transfer function of your color profile, wich is set in the Color Management section of your Scene – set to sRGB by default.

The excact conversion is listed in the sRGB Wikipedia article.

def linear_to_srgb(r, g, b):
    def linear(c):
        a = .055
        if c <= .0031308:
            return 12.92 * c
        else:
            return (1+a) * c**(1/2.4) - a
    return tuple(linear(c) for c in (r, g, b))

def srgb_to_linear(r, g, b):
    def srgb(c):
        a = .055
        if c <= .04045:
            return c / 12.92
        else:
            return ((c+a) / (1+a)) ** 2.4
    return tuple(srgb(c) for c in (r, g, b))

import colorsys
col = colorsys.hsv_to_rgb(.4, .8, 1)
# (0.19999999999999996, 1, 0.5200000000000002)

srgb_to_linear(*col)
# Values to be set in the RGB tab of the color picker:
# (0.03310476657088504, 1.0, 0.23302199930143835)

While the HSV tab of the color picker doesn't give any indication as to whether the values are gamma corrected, this ticket does indicate that the displayed HSV values actually are gamma corrected as well. This would explain why the Hex representation does match the Hex value shown by various color converters.

So, to apply a non-linear HSV color to your object, would have to call

col = srgb_to_linear(*colorsys.hsv_to_rgb(0.4, 0.8, 1))
bpy.data.materials["name"].diffuse_color = col


Convert objects with the clamp constrain to a single mesh

Joining mesh objects

Yes, you can use the Join command by selecting all the mesh objects you want to join together, then pressing CTRLJ. They should now all be one object. However, the different leaves will not be able to move separately once the character starts moving unless you convert them into cloth objects or perhaps use soft body physics.


You can use Ctrl-C,Ctrl-V to copy and paste objects from one scene to the next. They will be placed into the new scene at there original global coordinates. If you want the objects modified in one scene to update in the other,Spacebar>Link Objects to Scene(Ctrl-L - Thanks gandalf3).


Blender Python revert view pan and rotate for vertex

Found it, the view_matrix contains the translation as well, have to get the 3x3 matrix only:
rot_mat = self._view_context._view_mat.to_3x3()


[Option 1]
is to do it via displacement:
Here via shader displacement and a Musgave texture. This way it stays parametric. Works only with cycles in render view/render.

If you want it to be a solid mesh to further work on here is a tutorial how to do that: https://www.youtube.com/watch?v=McALCOr39rY

[Option 2]
The other way would be from curves, but is not parametric.
Convert your pattern from an image to curve for expl. in illustrator,
then use these curves to build your mesh.
curve menue>extrude
then: convert to mesh from curves


How to rotate a gradient in the node editor?

You use the Mapping Node, add it with Shift-A>Vector>Mapping. Don't forget to add the texture cordinate into the mapping node, it will not work otherwise.

You will then need to tweak the Y and Z values. To get 90o You will need to set the Y one to 90o

Here is it at work:


You can use the mirror transform to 'revert' your object.
And if you don't like negative scale, just apply the scale.

Mirror object: Object > Mirror
Apply Scale: Object > Apply > Scale

How to mirror an object and apply scale.

Note:
Applying negative scale can flip your normals orientation.
Check your normals after that, so they're not inverted.


Rotate an object and move up local z axis at the same time

So what you can do is:

Create your 2 objects. Create an empty where the rotation is supposed to happen. Parent object 1 to the empty, parent object 2 to object 1.

Give object 2 a Copy Transforms constraint with object 1 as Target.


Create a polyline. (btw, imposing pure bmesh requirements on this is probably arbitrary, and using from_pydata is just as good)

import bpy
import bmesh
from mathutils import Vector

scene = bpy.context.scene
meshes = bpy.data.meshes
objects = bpy.data.objects

# generate polyline

bm = bmesh.new()
verts = [bm.verts.new((0, 0, z)) for z in range(5)]

for i in range(len(verts)-1):
    bm.edges.new([verts[i], verts[i+1]])

me = meshes.new('placeholder_mesh')
mesh_obj = objects.new('polyline', me)

scene.objects.link(mesh_obj)

bm.to_mesh(me)
bm.free()

Run this on a polyline:

import bpy
import bmesh
from mathutils import Vector

# Get the active mesh
obj = bpy.context.edit_object
me = obj.data

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

bmesh.ops.extrude_edge_only(bm, edges=bm.edges[:])
bmesh.ops.translate(bm, vec=Vector((0,1.2,0)), verts=[v for v in bm.verts if v.select])

bmesh.update_edit_mesh(me, True)

See TextEditor -> Templates -> Python -> Simple Bmesh (edit mode) for the templates.

It might just be simpler to construct the polygon loop from scratch using from_pydata. It really depends on the final use-case


What you want to do is switch the Outer Miter from Sharp to Arc. This will solve your problem without having to bevel any additional edges that might break curvature.

If you want to end up with geometry that's still all quads, you need manually triangulate the pre-bevel quads that buttress the bevel-weighted corners, as follows:


How do I add thickness and add a material to hair particle mesh

select particles and go to materials properties. You can hide the surface with particles and use a duplicate for see the bald.


Try this: press spacebar and then type "Pack." Select "Pack all into .blend". See if that works. That will copy all the source files blender uses (in this instance: texture images) into the .blend file. I don't entirely know if it will work, but I hope it will.


How to rearrange the angle of existing polygons

There's a little trick, which also helps to make diagonal grids for modeling knurls, nettings, trellises, gratings, etc.

WS Subdivide your mesh
CtrlE edge menu, Un-subivide  it.

Done.

It's odd that the operations aren't inverses of one another ... Un-subdivide it again, and you're back to where you started. As Mr. Zak point out in his comment, the iterations should be set to 1. Odd numbers of iterations yield diagonal divisons.


Avoid Texture Symmetry on complex Uv maps

Eventhough the Mirror modifier was applied ,it was applied after the Uv's were unwrapped causing Symmetry (even if the Texture paint symmetry options were off).Applying the mirror modifier and unwrapping Uv's after, solved the issue.

Thanks to @Craig D Jones for pointing it out.


How to render with transparent background in Eevee?

When using 2.79 you can find it on the right side in the properties section, go to render settings, scroll down to the film area and open it. In it, there is a dropdown box called alpha, and currently selected will be sky. Select transparent, and there you go!

In 2.80 the option has been changed to a checkbox and renamed to Transparent as shown in the image below.


Mirror Modifier isn't working correctly its offset?

Your mesh has been rotated in object mode:

To apply its rotation (i.e. making it retain its orientation while havin the angles all set to zero) use Ctrl+A.

Read:Why is it important to apply transformation to an objects data?

When you do that, the viewport's axes will match the object internal coordinates and the Mirror modifier will work as you'd expect (you may need to change the axis you're currently using for mirroring)


I'm not an expert and have never used Unity but from my experience the golden rule of optimization is to reduce the amount of draw calls in the CPU. Each mesh in the scene induces a draw call. You should therefore avoid large number of meshes by merging geometries, doing instancing (https://en.wikipedia.org/wiki/Geometry_instancing) = fancy technique of cloning things and in general learning how to calculate stuff with the GPU (shaders). Other things are reusing materials whenever possible and making sure anything not visible on the player's screen is being drawn. All of these are not related to blender though... the only thing you can do in blender is to go low-poly. AFAIK when it comes to textures they are more of a burden on memory than fps.


How do I set multiple settings with one button?

Make an operator

For the most part a button in blender calls an operator.

Using the simple operator template, here is a quick edit to hardcode in some settings.

I have made the operator poll only in the 3d view area.
Haven't sanitized name.

Since your addon panel also resides in this area, it is simply a matter of adding

self.layout.operator("object.simple_operator")

into your panel's draw method.

import bpy

def main(context):
    space = context.space_data
    space.shading.light = 'MATCAP'
    space.shading.color_type = 'SINGLE'
    space.shading.show_xray = False
    space.shading.show_cavity = True
    space.shading.show_object_outline = False

class SimpleOperator(bpy.types.Operator):
    """Tooltip"""
    bl_idname = "object.simple_operator"
    bl_label = "Simple Object Operator"

    @classmethod
    def poll(cls, context):
        return context.area.type == 'VIEW_3D'

    def execute(self, context):
        main(context)
        return {'FINISHED'}

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

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

if __name__ == "__main__":
    register()

Further to this, for saving multiple settings

there is the preset system for saving an operators, or some tools settings to a text file. How to use presets for operator properties?
A collection of settings can be defined as a property group. Multiple can be saved as a CollectionPropery the "current" as a PointerProperty


How can i get shape keys from a animation with keyframes?

What you can do is to apply an armature modifier as a shape key. Be aware that you will end up with an undeformed starting point and a deformed end point: the mid locations of every single vertex will be in the center of the straight line connecting start point and end point, this often leads to unpleasant results.


It looks like the mesh in the .blend file is already mostly symmetrical, so it shouldn't need a mirror modifier.
Anyways, if you want to fix this, simply select all of the vertices left of the center (facing the mesh, it's the character's right) and delete faces (x > f). Then you'll have what you want.


Why is the preview animation on my cloth simulation slow?

It's all about complexity, the more data in a scene the more work there is to do scan through it during physics simulations as well as drawing it all to screen and the lower the frame rate during playback.

Your biggest culprit is the helmet, with the mirror and subsurf modifier it ends up with 1.4 million vertices. Also a subsurf level of 4 is rather high, unless your right up close you will not tell the difference between level 4 and 2 in the final render, even up close the difference is small.

If I remove the subsurf modifier from the helmet I see the frame rate jump to about 15 fps. With the subsurf level at 3 I see 5 fps and at 2 I see 9 fps.

By removing the collision from the helmet I also see 15fps with the subsurf at level 3.

If you are planning an animation then you might want to create a low poly mesh that sits close to the surface of the shoulders, parent it to the helmet so they move together, disable render visibility and use that for the cloth collision. For a still image just wait for the simulation to play through and do a render.


How to rotate object axis, leaving the object intact?

I propose another approach, trying to simplify your issue.

It uses curves and hook:

How to set it up:

Create a segment (starting from a plane)
Place each extremity to the center of spheres
Turn it to curve AltC
Hook CtrlH each to the corresponding sphere

The hook works like this:

Select the object to hook to
Shift select the object to hook
Enter edit mode
Select the vertex to hook
Hook CtrlH
And choose "to selected object"

After that, depending on your needs, you can turn the curves back to meshes or keep them and animate using "start" or "end" bevel options in the curve properties panel (that can replace the shape key animation you talked about).


Can Blender's bundled "bfont" be used for commercially?

The bfont is actually a modified DejaVu (which in turn is a modified Bitstream Vera).

You are free to use it commercially but:

If you modify it, it has to be under a new name (it can't be called "bfont")
You can't sell it by itself
You have to include the copyright notice (found in release/datafiles/LICENSE-bfont-ttf.txt)

Check the license notice for more info.


Snap or project bezier curve to mesh surface

I won't mark it as answered because maybe there are some other ways to achieve this which are more accurate.
My solution finally has been to try different modes on the Shrinkwrap modifier (mostly Project and Closest points, with Outside surface option selected), and moving the curve until I get something close to what I need.
Once got that, I would Convert to Mesh (it will apply the modifier, to avoid final shape to be distorted because there are not enough points). Here I had sometimes to use another Shrinkwrap modifier again just to solve some missalignments, and Convert to Curve.
Finally, for the latest adjustments, just turn on the Snap feature with Snap to faces and isolate the objects so the only visible objects are the curve and the mesh you want to snap it to. Enter edit mode with the curve selected and move the unaligned points so that they stick in the surface of the mesh.
They seem a lot of steps, but they're pretty straightforward and quick to do once you get it.
To sum up:

Shrinkwrap modifier until you get close to what you'd like
Convert to Mesh
Apply another Shrinkwrap modifier if needed
Convert to Curve
Hide everything except mesh and curve
Activate Snap feature, with Snap to face
Select the curve and enter edit mode, and move the unaligned points

Don't forget to Apply all transforms when you're done!


You can find all this functions in the Object/Snap menu (or Mesh/Snap if you're in Edit mode).

In Edit/Preferences/Keymap, you can set the very first parameter to "Blender" if you want the same keymap used in most tutorials.

If you want to change this particular shortcut, or know the shortcut defined in your keymap for that pie menu : in Edit/Preferences/Keymap, type "snap" into the search field. Under "3D view", locate "wm.call_menu_pie". You can change the assigned shortcut by clicking on it.


Your question is very obscure, but what I think you are looking for is the Add menu?
You can get to this menu by pressing Shift+A. The resulting menu looks like this:

This menu is used to add objects to the scene, from lighting, to meshes, to curves, to armatures, to add-on generated objects.


How to make a "Force feedback" effect with physics?

Go to the physics panel and have a similar setup for every shard like i did here with this sphere

dynamic
The setup for the floor is the same exept one thing disable dynamic in the physics tab.
So basically what you were missing (if im correct) its that you didnt setup a bounciness for your objects ;)
Also you may need adjust the solver iterations (in the scene tab in rigid body world section)(this will make physics more accurate)


Add a sphere and scale it in a single axis.


How do I group all my groups into one 'master' group?

Objects can belong to more than one Group. You can simply select all objects you need and group them into a MASTER_Cannon group that can be used for appending/linking.


Focused Gaussian beam going through a plane

You can create such a beam using a Volumetric Emission shader and some maths nodes.

The Gaussian distribution is as follows :

Create a mesh (eg, a cube) to act as the domain for the volumetrics. The Object coordinates will be used, passed through a Mapping node to allow it to be easily manipulated and scaled.

To to create a vertical beam you can calculate the square of the distance as 'x^2 + y ^ 2'. This can be used directly as the 'x^2' in the above equation.

All that remains is to scale the beam based on the square of the Z-coordinate.

This produces the following material :

You can adjust the Mapping node to vary the scaling along each of the X, Y, Z axis, adjust the 'Add' node to affect how tightly the beam is focused and adjust the Multiply node to affect the overall brightness of the beam.

Blend file attached

EDIT : Just noticed the edit to add variation in intensity towards the focus. This can be easily achieved by driving the final Multiply for the intensity from the Z coordinate. eg, something like the following to focus the beam to a bright spot on the plane :


I'm trying to recreate the camera as a mesh in python

this script work pefectly

import bpy, bmesh, math
deleted = [ob for ob in bpy.context.scene.objects if ob.name =='SCATTER:[Active Cam Boolean]'];bpy.ops.object.delete({"selected_objects": deleted})

if bpy.context.scene.camera == None:
    bpy.ops.object.camera_add(align='VIEW',location=(0,0,0),rotation=(1.5708,0,0))
    bpy.context.scene.camera = bpy.context.view_layer.objects.active

CAM = bpy.context.scene.camera
bpy.context.view_layer.objects.active = CAM
FOV = bpy.context.object.data.angle
bpy.context.scene.cursor.location = CAM.location #

bpy.ops.mesh.primitive_cube_add(size=2)
BOOL = bpy.context.object
BOOL.rotation_euler=CAM.rotation_euler
BOOL.name = BOOL.data.name = "SCATTER:[Active Cam Boolean]"
BOOL.display_type = 'WIRE'
BOOL.hide_render = True
cy=BOOL.cycles_visibility ;cy.camera=cy.transmission=cy.diffuse=cy.scatter=cy.glossy=cy.shadow= False

bpy.ops.object.editmode_toggle()
bpy.ops.mesh.select_all(action='DESELECT')
mesh = bmesh.from_edit_mesh(BOOL.data)
for f in mesh.faces:
    if f.index ==5:
        f.select = True
bpy.ops.mesh.select_mode(type='EDGE') ; bpy.ops.mesh.select_mode(type='FACE')
bpy.ops.mesh.merge(type='CURSOR')
bpy.ops.object.editmode_toggle()

bpy.ops.object.transform_apply(location=0,rotation=0,scale=1)#=FFT
bpy.context.object.scale[2] = 1/math.tan(FOV/2)

CAM.select_set(state=True)
bpy.context.view_layer.objects.active = CAM
bpy.ops.object.parent_set(type='OBJECT', keep_transform=True)
for i in range(0,3): BOOL.lock_rotation[i] = BOOL.lock_location[i] = True

dimension_x = bpy.context.scene.render.resolution_x /1000
dimension_y = bpy.context.scene.render.resolution_y /1000
BOOL.dimensions.xy = (dimension_x,dimension_y) #to get correct ratio

if dimension_x>dimension_y:
    divider = 2/dimension_x
else:
    divider = 2/dimension_y
BOOL.scale.xy = (BOOL.scale.x*divider,BOOL.scale.y*divider)


How do I add a secondary layer to a concave model

Duplicate the external surface of the model (that will be the internal surface of your transparent layer) add a Solidify modifier to it, set the solidify "offset" property properly (should be 1 or -1) and the proper thickness you want it to have.


Render textured mesh of multiple materials without light

There are various ways of getting control over your shadow.  Shadows, ambient occlusion, and contrast can be controlled by nodes in the compositing window to to get the look you want.
I think that turning off the shadows cast by lights falling on the objects in your room, and turning on the ambient occlusion on these materials may help.
I am not sure exactly what nodes in the compositing editor you should add in order to control the shadows in the way you want, typical choices are mix nodes, or color ramps.


Generated texture coordinates vs Unwrapped texture coordinates

Each situation really determines what you should do.

In general

Using generated coordinates gives you less control, but is easier.
Using UV's is more precise, but harder, especially on complex meshes.

Now, I will use an example scene, to show some of the differences.

In this example, we will use:

Sphere one uses generated texture coordinates
Sphere two uses sphere projection, to create a UV map.

In this circumstance, I like the results of sphere 1 better than that of sphere 2.

When using generated texture coordinates, keep in mind what mode of texture projection you are using. I have a sphere, so I am using sphere projection. For other objects with complex meshes that you do not want to unwrap, box projection is usually a good option.

When looking at the UV map that was created through sphere projection on sphere two, you may notice that the unwrap is not perfect, and that is one of the advantages of using generated texture coordinates.

Also, remember that using UV or generated texture coordinates are not the only options. Using object coordinates can come in useful when you want the texture's projection to change based on the position of the object, such as when creating roof tiles. You may use a cracked texture, and want the cracks to be in a different place per tile.

So when deciding, just think about what your goals are, and what the easiest way to get there is. In the earth model case, I would use generated coordinates with sphere texture projection.


BLENDER & FBX Mocap Import not translating to Rig

In Motion Builder, when you add or change a reference object for a bone its rest pose is altered. This behaviour leads to a new rest position from which the animation is calculated.
A solution could be to set a keyframe on every bone in motion builder in its new rest pose, save it as FBX, import in Blender, apply this static animation, go to pose mode, select all bones and press ctrl A "Apply pose as rest pose", then use this rig to perform the real animation.


What does this do: fps = scene.render.fps / scene.render.fps_base?

In command
fps = scene.render.fps / scene.render.fps_base
fps is a variable that is given the value of the actual framerate of the scene.
scene.render.fps is the framerate but can only hold integer values. If you want non-integer framerates this value has to be divided by some value. Default is 24.
scene.render.fps_base is a way to get non-integer framerates. The type is a Float and the default is 1.0.
scene.render.fps_blender doesn't exist and will give you an error.
Examples:

60.0 = 60/1.0

20.5 = 41/2.0

29.75 = 30/1.008


The fastest way I can think of which works for the cube case is:

Select part of the outer cube (a single vert will do)
Press CtrlL to select connected vertices
Press CtrlI to invert the selection
Delete.

To delete geometry not visible from the camera:

Enter camera view (Numpad 0)
Ensure you are in solid shading and that Limit selection to visible is enabled
Use border select (B) to select all visible vertices (you may also want to do this with face select enabled to select visible faces too)
Grow the selection (Numpad +)
Delete.

From the camera, there isn't much indication that there are missing faces. Note however that shadows and reflections will be affected.


How to mix destructive and non-destructive modifiers to maintain vertex order for mesh-cache?

Duplicating mesh data won't change its vertex order, so to answer your first question - yes this is supported.

As for destructive modifiers (boolean, decimate, build... etc). These will change vertex count and order, not for the mesh-datablock, only within the modifier stack.
So destructive modifiers must be applied after Mesh-Cache modifier, for this to work as expected.


I want to get the names of all models in blender in order

because it's a dictionary
keys = bpy_collection[844]
values = SceneObjects

so you can easily get keys by this command line:
 print(bpy.context.scene.objects.keys())

python script:
import bpy
objs = bpy.context.scene.objects.keys()
for key in objs:
    print(key)


How to turn off texture painting mode where your brush cursor lags behind your mouse position?

I turned Smooth Stroke on.  Once I unchecked that, I went back to the regular painting mode.
The smooth stroke option is found in the Tool Shelf > Tools tab > Stroke section.


Scripted expressions editor gives unexpected results

I answered my self when I posted this question :D
The scripted expression is working in radians by default and is auto converted to degrees in the spotlight object. So what I did was: var - 5 and got my range just in the sweetspot.
Now it goes approximately from 1 to 172 deg.
I'm not sure for the precise math behind it, but it is working for me. If you need in depth how the math is functioning, check degrees to radians conversion.
Cheers!


Problem Bake Normal Maps from hight poly mesh to low poly mesh

in 3D View: you may have made a mistake in the scale, always keep in mind to apply scale CTRL + A select SCALE and ROTATION
play a little configuring the maximum distance and the minimum distance, until you get an optimal result or that you like
in edit mode, remember to apply the normal orientation of the faces towards the exterior, to check this you can turn on the normal indicator in  mesh display , select all and press CTRL + N
with respect to the Subdivision surface modifier, you can also play with the levels to see a result that you like, my example is done with this configuration

Blender Tutorial : Part 17 - Normal Mapping (Blender)


Is there a way to enter a precise amount of length or width for the measuring tool in Blender?

By displaying edge length in edit mode, you can view the edge length as you move a vertex. In 2.79 edge length can be enabled in the properties region N under Mesh Display, while in 2.80 it is in the viewport overlay menu in the header.

When you are moving a vertex, hold ⇧ Shift to slow down movement so that you can get the exact measurement you are after.

When you are trying to get the sum of multiple edges to equal a certain length, you can create a temporary edge and use snapping to align your vertex to the "measuring" vertex. Constraining movement to a single axis can also make this easier.


Is it possible to assign an active camera through command line rendering?

You can set your camera in a textblock in your blend file text editor using

import bpy
bpy.context.scene.camera = bpy.data.objects["Camera"]

then call run your .blend file from the command line and run this textblock as shown below:

blender --background myfile.blend --python-text Text

where myfile.blend is your blend file and Text
 is your textblock name and --background is an argument to run your .blend file in the background without opening blender GUI

If you want to set a specific camera without having to go back and forth then you can pass the camera name you want in your command line as shown here


Duplicating collections in 2.81 not copying everything

The parented text object is actually missing even from the .001 collection (it's grayed out).
So it won't get duplicated.

How it happens
When you move parented (child) object into another collection, the parent relationship gets broken.
The child object icon will be grayed out, so you know it's broken.

And broken relationship doesn't get duplicated.

Solution
Find your parented text object, and move it back into the .001 Collection.
Then it will reconnect and will be duplicated with the parent.

Moving a parented object into a different collection breaks the relationship.
Moving it back reconnects it.


Can a Cycles/Blender Internal materials be shared on their own?

While its possible to invent some file-format to store Blender materials, this is currently not a common way to share materials.

Typically for this would be done by appending materials into a new Blend file, saving it, and sending this to a 3rd party.

In rare cases a material may depend on objects (using empties for mapping), in those cases you could create a group of objects in your Blend file and append that instead of the materials (the materials will load in too).


Blender Freestyle - how to make line crossings glow more than lines themselves?

You can use a blur node to get this effect.
The blurred lines will overlap a bit at the intersections, making them brighter.

For example:

Create a renderlayer which only renders freestyle lines by disabling everything else in Render layers > Layer > Include:

Set the freestyle line color to white in Render layers > Freestyle Line Style:

Composite (click for larger image):

Result (click for html5 version):


The "Object Properties -> Instancing" facility is pretty limited in terms of varying how the children are displayed.  If you want control over random variation, you probably want to create a particle system.  There are two particle system types, Emitter and Hair.  Generally speaking, emitter is used for animated particles (e.g., bubbles, smoke, etc.) while hair is used for static parts growing off of the structure (e.g., hair, leaves, stones, etc.).

It might be worth searching YouTube for "blender leaf particle system", which should give you lots of tutorials/examples.

Briefly, if you:

Create a thin, cylindrical "Branch" with applied scale, subdivided vertically to give it plenty of small faces.
Create a simple planar "Leaf" that's on a roughly one-unit (1m) scale
Add a new Hair particle system to the branch.
Set up the system:

Check "Advanced" to make "Rotation" panel available
Emission: Number=200
Rotation: Checked, Orentation Axis=Normal, Randomize=0.25
Render: Render As=Object, Scale Randomness=0.5, Instance Object="Leaf"

then that'll give you a start:

You can use vertex groups and weight painting to control the density on a mesh to make the distribution a little more realistic (or, in this case "low-poly-realistic"):

Here's a blend file:


How to keep relaxed water at start of simulation

Set Flow object to XY dimension of Domain at a bottom so there are not a gaps between Domain boundary and Flow. Like the liquid (Flow) is in a rest shape.

Note: Previously I thought, liquid explosion can be caused by objects intersecting, but it doesn't matter, even with Effector inside - no movement on a surface before Effector starts to "raise", as you can see in frames 0-30.


Vertex Weight Proximity Not Controlling Hair Particle Density

Solved!
When applying said modifier, enable "Use Modifier Stack" (found under the Emission section in the Particle tab)


Why is my texture a lot darker in one part of my mesh?

It looks like your normal map 'color space' is set to 'sRGB'.
Normal maps (and other maps like roughness) need to have their color space set to 'Non-color'.


Insert fcurve keyframe point whilst keeping curve shape

Subdividing Bezier curves is normally done using De Casteljau's algorithm.  However, fcurves aren't pure Bezier curves.  It is not hard to make a bezier curve "run backwards" along the time axis.  Since this would create ambiguities in the animation system, blender prevents that by using modified handle coordinates whenever the handles could make the curve backtrack in the time axis.  Once we understand that math, we have what is needed to properly subdivide the fcurve.

The solution is already covered at https://blender.stackexchange.com/a/57453/660 .  It includes an excerpt from http://web.purplefrog.com/~thoth/blender/python-cookbook/subdivide-fcurve.html .  I got bored and added the logic needed to map from frame->t so it should now be a fairly complete solution.  I'm not copying the code over here, because keeping it up-to-date in both articles on stackexchange is tedious.


bpy python: is it possible to get the selected collection?

Take a look at this repository, it has a function that could help you, get_active_collection ()
https://github.com/curtisjamesholt/EasyBPY/blob/master/easybpy.py


Average normals at vertices before exporting

The smooth button does it for you.
(Left side) Object Tools -> Smooth (under Shading),
Then when you go File -> Export -> Wavefront (.obj),
 make sure you click on the Include Normals checkbox.


For now Intel's OpenImageDenoise is superior to all the other ones. From the release notes:

Compared to the existing denoiser, it works better with more complex materials like glass, and suffers less from splotchy artifacts. It also gives better results with very low numbers of samples, which can be used for quick previews.

It's just a post process so it's easy to set up and thus not exclusive to cycles, means that the node also allows to denoise eevee renders as well as images synthesized by other render engines.

Also see: Type of Denoiser built into Blender


Change number of frames allowed for each animation?

The frame range set on Timeline is for global output range by default. However, if you want to have a alternative preview for certain duration, you may consider to click the Use Preview Range button on the Timeline header.

When enabling it, you can set an alternative preview range by setting Start / End value on the header, instead of changing the global output range.


When i texture paint in 2.8 how do i add shadows to see what im painting

When in Texture Paint mode and Rendered View go to Overlays on the top right.

At the bottom of the drop-down window for Overlays there will be a section Texture Paint and below it will say Opacity. If this is set to zero you will have full shadows on your model.

I find this makes it easier to paint directly onto the model and see where your paint is going.


Lens specs of smartphones for camera tracking in Blender

For proper tracking you don't necessarily have to know the sensor dimensions or lens size. What matters is to determine the field of view or angle of coverage for your particular camera.

That value can then be applied to any combination of sensor size and lens sizes.

One way to get a good estimate of your camera's field of view it is to shoot video of an object of known dimensions, for example: a wall that you know is 4 meters wide. Using your camera, walk to the point where the wall fits perfectly in the frame. Then measure the distance from the wall to the camera (2 meters in this particular example).

In blender create a solid that reproduces your wall and place camera at the measured distance from the wall.

On the camera lens settings move the Focal Length numbers until you can see the wall filling the frame.

You can then use those values (lens and sensor size) for your track. The perspective of your real camera and Blender's should match very closely for tracking purposes.

(for even more accuracy don't forget to calculate the distortion for your lens. See: https://blender.stackexchange.com/a/15622/1853)


How to make part of the model not be subdivided？

Same example:

Becomes:

The solution is:
1. Select the edges you don't want to be subdivided

In the right bar (Press N to show it) set the "Mean Crease" value to 1 (it sets how much the selected edges don't react to subdivision smoothness Edit: note that the face is still subdivided but the subfaces created by subdivision mantain the original position. No smoothness.). They'll become violet.

Turn back to Edit Mode and enjoy


Cycles render speed: how to optimise GPU rendering?

Samples:
2000 is far to many samples for a "(not to complex)" render. I would use 100 for previews, and 200-400 for final renders (depending on the complexity of your scene). Images involving lots of glass, complex shadows, indoor scenes, or depth of field may need more samples.
Tile Size:
Do some tests with your specific hardware, but, generally smaller tile size is faster for CPU, bigger tile size is faster for GPU.
An alternative to increasing samples for less noisy renders is to try some of the techniques mentioned here: How to reduce fireflies in Cycles?


Adding Edge Loops Around Airplane Window

Avoid NGons, and avoid Boolean operations, you topology is not quad-dominant and you wont be able to easily add edgeloops anywhere with ngons like those around the windows. in fact you will likely have a hard time doing anything at all with your current model.

Ideally your mesh should be made primarily of faces with four sides, use Ctrl+R to add edge loops, use Ctrl+B to bevel, use E to extrude, and abuse of modifiers.

In your case I am guessing a Mirror modifier would help with symmetry, a Subdivision Surface would help with smoothing/curving, and an array might help with multiple windows.


Why does Quaternion.rotation_difference() always return 12.666471 for x-rotation?

The issue is the test data, the vector v = Vector(( 1.0 , 0.0 , 0.0 )) lies exactly on the x-axis and a rotation around x has absolutely no effect, therefore the information is lost.

In order to get the rotation from v to vrot it is requiresd to invoke rotation_difference() on v insteadof vrot.


can't find image texture node in node editor

Based on the node I see, you are in Blender Internal Render. If you switch to Cycles and add a new material, you will find the Add > Texture > Image Texture.


How to blend(gradient effect) two different 3D materials, in cycles blender

Final result:

Overview:

You can use Gradient Texture as a mask for your textures.

Prepare you textures as usual with needed normals/bumps and mix them trough Gradient Texture or which ever you need.

Edit:

If you are using Image Textures don't forget you need proper Texture Coordinates no matter if they are form UV mapping or using Generated/Object texture space.

Blend file:


My Objects, Planes, Meshes aren't rendering correctly

I've found my problem and solved it, at least for my specific graphics card (AMD radeon hd 7950) I had updated my drivers for the latest version (Adrenalin 2020 Edition 20.11.2, which is optional) for some reason Blender has some problems with that version, so I decided to downgrade my version to Adrenalin 2020 Edition 20.9.1 which solved every problem.
Now I can render in every Render Engine.


Is it necessary to join the mesh before adding bones?

It is not necessary to have all meshes in one object to control it with a single armature. I’ve done multiple objects with one armature many times, Usually because I wanted to preserve two UV maps and did not know yet how to merge them.
Thus, I guess your rigging system and weight painting needs adjustment. There are answered questions to this elsewhere, or you can ask your own new question. As always, I recommend the Blender Manual at docs.blender.org
PS: basically, you create vertex groups that have the same names as bones, and the bones will drag around vertices in those groups. If the vertex is part of multiple vertex groups, it will be controlled by two bones, ending up somewhere between them. This is where weights come in: we can have the vertex have less weight in one group so it will follow the other bone more but not entirely.


How to properly bake action for armature

This is the correct layer for selecting deforming bones in Rigify, they all have the "DEF" suffix on their name.


Can I color a curve in Cycles by the direction it's running?

This is totally possible with the Tangent node (Input > Tangent):

Change the type from Radial to UV Map and also enable Use UV for mapping in Curve's data tab:

The problem is we get black instead of Z-axis direction. That's easily fixable - add both green and red channels together and invert them into a blue channel. To also not care about the direction of axis we make the tangent vector values absolute:


How do you lock the rotation of a bone in an IK chain?

You need to use the IK Limit rotation found as shown below:


"Broken" mesh and particles extremely big - Mantaflow fluid simulation

Particle Properties -> Click on Liquid -> Viewport Display -> Size 1mm or something smaller

As seen on: https://blenderartists.org/t/is-there-such-a-thing-as-too-small-of-a-scale-for-mantaflow-flip-fluids-particles-too-big/1208348


Sorry - I've overlooked which version of Blender you're using. I'll leave the answer here in case any of it still applies.

You haven't accidentally clicked on those camera icons in the Outliner, and made the objects unrenderable?  If so, click again on the camera icon.
Or made the lights unrenderable? If so, click again on the camera icon. Another possibility with lighting is the lamps could be too far away. Or they could be in another layer to the objects and you might have accidentally clicked "this layer only" on the lights.
Or put materials on the objects while in Blender Render, and then tried to render in Cycles?  If so, stick to Blender Render, or assign materials in Cycles if you want to render in that.


How to make the Displacement Map Texture and Material Texture Match?

You need to keep the same scale and use the same coordinates for both textures.
Alternatively you can use a mapping node to fix the scale and rotation problem.


Is a camera required for animation in blender 2.83?

As long as you don't need to render (image or animation) you don't need any camera. If you need to render, of course you need a camera, Blender can't guess what point of view it is supposed to render.


Where can I find a proper API reference?

Look for class members, (properties, methods et al), in the classes doc page.

bpy.data is  a reference to an instance of the bpy.types.BlendData class. All the members of that class will be found in the documentation page for the  class (or type),

Most python documentation, I am familiar with, is organized this way, and has often, as is the case here generated from the source.

There may be many references , in this example scrolling down to reference section see that context.blend_data is also  an instance of bpy.types.BlendData.  Note Even though context.blend_data and bpy.data are both of the same type and for this case mostly the same object, but it is not necessarily so. Might start using me = context.blend_data.meshes.new(...) for methods where context is passed.

A type with numerous references is the  blender object. bpy.types.Object for instance the context object of any blender object type. The target of a driver, modifier, constraint on an object. A member of a collection: blend data objects; collection objects or scene objects  etc etc etc etc.

Blender uses the convention: names of properties and methods are in lower case, classes in title case. eg bpy.types.WindowManager is a class (being in bpy.types is a bit of a give away too), bpy.context.window_manager an instance of it.

Turn on developer extras to get an API link by right clicking on a property.


Since you want to create this procedurally you can use modifiers. For this method you will need a curve.

Add a curve, I will use a circle, Shift A -> Curve -> Circle
Modify the curve to your liking

Select the leaf object and add an array modifier

Fit Type: Curve
Curve: the curve we just created

Add Curve modifier to the same leaf object

Object: the curve we just created
Deformation Axis: sometime based on the orientation of the curve and leaf object you need to chose another one

Note that if for some reason steps 3 or 4 do not work you might have to apply the scale for the leaf and curve object. Ctrl L

example file


you can edit in properties(in edit mode)
weight 1 (stay) 0.01 (move)
strength(goal) set to 1


Use the controller object's geometry to influence hook

If I understand correctly, what you could do is:
Create cube 1 and 2. In cube 1 select the vertex that is supposed to be the parent, assign it to a vertex group. Back to Object mode, put the 3D cursor on this point, create an empty, give it a Copy Location constraint with cube 1 as Target and the vertex as Vertex Group.
Now select the empty, shift select cube 2, go in Edit mode, select the vertex that is supposed to be the child, press CtrlH > Hook to Selected Object. It should work.


Particle system is not using density vertex group

This is because you have a 'Multires' modifier above the 'Particle System' modifier, which is altering the geometry. Blender applies the modifiers to the object in the order they are in in the stack (see more here).

Because the vertex group gives specific vertices weights and the multires modifier changes those specific vertices, ie more are added, positions are changed etc., the vertex group has changed by the time the particle system 'sees' it.

To fix this you can either move the particle system modifier above the multires modifier (so the particle system is calculated before the multires modifier changes the geometry and sees the original vertices of the mesh) or you can check the 'Use Modifier Stack' checkbox in the 'Emission' section of the particle settings:

Note: Those two different methods will give slightly different results. The 'User Modifier Stack' option will act as though the multires modifier has been applied to the mesh, so the mesh will be higher resolution, potentially giving a smoother result to the particle emission. If you instead change the modifier order, the particle system will completely ignore the multires modifier and only use the original, untouched geometry to emit particles from.


You may do it using a curve as a Taper Object's target to change the thickness along the spiral's axis. You can then change its width using the curve's specials menu.

After creating a curve add a Bezier Circle and set it as a target in the Bevel Object window (Curve Data header).

Add a Bezier Curve and edit it in Edit Mode so it's straight and placed vertical.

Select the spiral in Object Mode and set the newly added Bezier Curve as a Taper Object target.

Modify the newly added curve to change the thickness along the spiral's axis. Experiment with it for different results.

Finally select the spiral in Object Mode, press W-->Width Size and drag the cursor away to change its width.


I've managed to fix those artifacts. Here's something what might help:
https://www.youtube.com/watch?v=0T3QdLJOBF8


The simplest solution is to slide your vertices along their edges with G G so that you unsharp all these edges:


You can do it with a voronoi node with a randomness of 0 and a mapping node to stretch along one axis:

Result:


Select the mesh part you want to unwrap, press U button to get unwrap menu and select Reset
Press U button again and select Follow Active Quads


Images with Alpha look different when layered in compositor compared to Photoshop

Photoshop has a non-linear reference space typically, and as such, all blends are wrong.

Blender's compositor on the other hand, uses a strictly linearized reference space, and alpha overs, assuming you are using associated alpha and the Alpha over node, are correct.

Nonlinear Over:

Linearized Over:


This is entirely normal.
You can turn up the resolution of the curve in the Properties editor.
Explanation: In CG, all surfaces are secretly made up of flat pieces. The trick is to get enough of them that you don’t notice. Shade Smooth fakes the way light interacts with the surface into looking more smoothed, but does not alter the geometry. If you 3D printed a model in two versions, one shaded smooth and the other shaded flat, they would come out the exact same way.


Is it possible to group/join meshes by material?

Join all the mesh objects with Ctrl +  J (or type in Join after pressing  F3)

Then separate them by material with  P while in Edit Mode.

That should give you the result you seek.


So the way to do this is as follows:
1: Make a new UV Map in Object Data Properties < UV Maps (make sure to select it).

2: Make a new image in the UV editor.

3: Arrange the new UV in the new image how you want it to be.

4: Add a UV Map node to the Shader Editor; connect it to the image texture node (mine is called 'Bake'); select the new UV Map (mine is called 'model-bake'). Select the new image in the image texture node (also called 'Bake').

5: Bake!


Key R, then the axis (X, Y, or Z), then the angle.


What you are missing is solving the scene if you want motion reconstruction in 3d.
In the solve tab press Solve Camera Motion

Once the scene is solved, open the scene setup and press Setup Tracking Scene.

That will add a camera tracking constraint to the camera that is linked to the track information and camera solution.
To view the video through the camera view, press Set as Background
Additionally you could also add empties to the scene to match the trackers. Press Link Empty to Track


Is it possible to change the model for an armature with animations present?

Primary

Yes it is possible.

Assuming you have done [no] custom weight painting.  You can simply achieve the initial starting base pose state, delete the old armature modifier, and parent the new armature with automatic weights.

Deleting the armature modifier of the mesh wont delete the animations of the armature.  Armature modifier is different than the armature itself.  The armature is referenced in the armature modifier.  You can even parent the armature to 2 or more meshes.

To achieve a base position you can clear all the rotations and positions temporarily.  There are menu options such as [clear rotation] for bones of an armature. Consider having  frame 0 for that case.  You can render frames 1 to N which does not include frame 0.

If you are planning to replace one mesh entirely with the new mesh simply achieve your base position and parent the armature to the new mesh. Test.  Then delete your old mesh.  You may want to save multiple copies of your Blender file.  Blender allows you do make any mesh invisible to view or render which may be convenient in your case.

If you have done custom weight painting.  Just go into weight paint mode and paint the weight for the new bones and test.

Secondary

You picture appears to introduce a new question.  If you have two meshes you can join them with a menu selection [Join Meshes].  Makes sure you select the dominant mesh last.

If the meshes are two different objects you do not even need to join them.  The single armature can be the target of more than one armature modifier on two different meshes as stated above.


Make duo-tone illustrations by seperating colors

In order to calculate scene lighting, try shader to RGB node.


Unfortunately, the shortcut Shift-Ctr-Alt-C has been deprecated in the latest version(s) of Blender: Blender 2.8. The only way to access the Set Origin command as of now is to either through Object > Set Origin,

or via the right-click/W key menu (depending on your keymap; refer below).

Of course, you could just switch to the old Blender 2.7x keymap via the Keymap section in the Blender Preferences, which would allow you to use the Shift-Ctr-Alt-C shortcut,

although I highly doubt that the devs would consider updating it with every new release of Blender, so it would be recommended to just use the first two methods.

EDIT:

I understand your query to its full extent now. The behaviour that Blender does not offer the menu for the keyframing action along with the suggestion in the search-bar menu is not a bug; it is supposed to happen (it will pop-up once you click on the "suggestion"). However, if you still feel that it is indeed a bug, feel free to report it to the Blender Open Report Bug Tracker.


Red indicates high weight.  Blue indicates low weight.  So what you're asking is, how to reduce the weight?

Simple answer:  Change your brush to subtract.  See the pic:

Information you may not want want, but should want:

You can select another bone, paint it more red, and then normalize your weights.  Increasing the weight of one bone decreases the weights of other bones.

Another way to do it is by changing the weight of a brush.  You can use mix, darken, or multiply with a low brush weight.


Move camera to existing camera (with keyframes)

You can use Constraints for this.
Consider you have three 'Target' cameras : Target1, Target2, Target3 - and one 'MoveableCamera'. On the MoveableCamera, add a Copy Location constraint for each of the targets (1,2,3) and also a Copy Rotation constraint for each of the targets. In each case set the 'Target' object to the respective target camera.
All that's then required is to adjust the Influence of each constraint to move the MoveableCamera towards each of the locations and rotations that you desire. The Influence can be keyframed as for other properties.
For example, to move the camera to Target1, simply set the Target1 influence to 1.0 and the others to 0.0. To move between two targets simply set the first (in the constraint list) to 1.0 and then vary the second towards 1.0, depending on how close to that target you want.
For example, to move the MoveableCamera to 1/3rd of the way between Target2 and Target3, set Target2's Influence to 1.0 and Target3's Influence 0.333.


Unwrap UV map proportionally to object size

UV-mapping defines a vertex on the model to a corresponding point on an image. When you have an image fit to a single face, then you make the model bigger the same vertex still maps to the same point on the image.

Using the same material for two objects with uv coordinates you get the size variation, unless you unwrap each object and adjust the uv's to match the texture size to it.

If we change that to object coordinates the image size remains constant between models, you may also want to set the projection from flat to box.

In Blender Internal you have the same settings under mapping -

In cycles you can add a mapping node after the texture coordinates to adjust the size and position of the texture, while BI has the scale and offset right next to the coordinate mapping setting.


Glass BSDF shows weird black lines after sculpting

Simply add a Solidify Modifier and add thickness to the cube. Do bear in mind, this does essentially double the geometry calculated at render, so this might increase render time some.

This is the result from your file:


You can do this with "Select Similar".
Select one of your edges with a seam, then go Select > Select Similar > Seam, to quickly select all the edges with seams.


Use part of an image sequence as specular map

Within Blender you can create a mask in the Image Editor, and then go into the compositor To Get This less saturated and rendered out with the Mask applied, then saved out as a Specular Map for this reason. I will play around with it, and append this answer with some screenshots/blend files/step-by-step instructions/etc...

Before I go much further, is this what you are asking for?:


You need to delete the .py file. To do this on windows, go to C:\Program Files\Blender Foundation\Blender\[version]\scripts, and find the scripts location. Then delete the files.

Here in the screenshot of the user preferences (Which can be accessed via Ctrl-Alt-U>Scripts) you can see the location of the script files that need to be removed.


How can I make a dropdown box of materials and run code when one is selected?

Use pointers.
EDIT, having a property to keep the name, and use in a property search has IMO been superseded by assigning a pointer property with a poll in later (circa late 2.79 and beyond).
Example, select from and assign a property to a material of all non grease pencil materials in blend :
Custom search data to UILayout.prop_search

Finding only the materials in the scene would be doable (make a set of all materials of all objects in scene)  but is probably not necessary, instead suggest using bpy.data.materials the list of all materials in the file.
EDIT: However have done this here
How to populate UIList with all material slot in scene? 2.8
A UILayout.prop_search can be used as a UI to assign a material's name to a string property.
import bpy
from bpy.props import StringProperty

class LayoutDemoPanel(bpy.types.Panel):
    bl_label = "Set Active Material"
    bl_idname = "OBJECT_PT_example"
    bl_space_type = 'VIEW_3D'
    bl_region_type = "TOOLS"
    bl_category = 'Materials'

    @classmethod
    def poll(cls, context):
        return len(bpy.data.materials) > 0

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

        scene = context.scene

        layout.prop_search(scene,
                           "selected_mat",
                           bpy.data,
                           "materials")

def register():
    bpy.types.Scene.selected_mat = StringProperty(default="None")
    bpy.utils.register_class(LayoutDemoPanel)

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

if __name__ == "__main__":
    register()

In an operator can use the property like so.
scene = context.scene
material = bpy.data.materials.get(scene.selected_mat)
if material is None:
    # no material has it been renamed?
    return {'CANCELLED'}
# do something with material


Found.. Had to do file->external data->Automatically pack into blend,
and then save as .blend unfortunately lost the edited sequence


How to bake all sides of a model on a cuboid?

1: When this object is not shown closely in the game, then it is good enough to use a cubeoid. Performace issue might be only noticable when there are multiple disks on the scene, but this is not certain. Pushing a mesh with 50 polygons to the GPU istead 6 polygons will only cost minimal time, and rendering it out might be the same speed.

2: When the disk is shown more closely, the retopo might add realism to it. This looks like a mesh easy to retopo. You should whach some modeling tutorials. Starting from a cube, loop-cuting here and there, deforming the sucface, experiment with it.

3: More deeply below.

You can bake simply the way you baked the plane. In the examples,
the low-poly object is set to be displayed as wireframe. You set
up a UV mapping, texture to bake on, and then bake. :)

Note: You should use the shown unshaded material only in case, the entity and lighting will be static. In this case you could bake textures and shadows and save them as separate images and put them in the proper slot for the material, but Full Render might be also good in this case.

When the object is dinamic, or the lighting, then you should not use unshaded. Mix (multiply) two images, an abient occlusion, and the textures, and use that with a vertex-lit shader. This would be still pretty good performing. I also add the image with the normals to be complete, although you said that you do not need it.


How to get rid of shadow from transparent area when background lighting only in Cycles

After asking around in IRC it turns out this is actually a bug with background light + transparent BSDF.

Reported https://developer.blender.org/T44599


Image texture not showing on object that has UV Map?

I think what the tutorial left out was, that before painting on your target, you have to assign the resulting (at first probably blank) texture to a material and then switch into a view that supports textured display.
Either solid with textures enabled, Material Preview or Render Preview.

The Texture Properties are supposed to set the image properties before it is used as a brush. It does not effect the resulting texture directly.

Back in Blender 2.7x and before you could assign textures to UVs without using materials. That only worked with BI and could be pretty confusing, so they removed the functionality.
If you have the node wrangler addon enabled, you can have your material nodes open somewhere and CTRL SHIFT click on a texture node to preview it in the viewport.


how to order the objects in the dope sheet

As a workaround for more oversight, you could click the little arrow in the dopesheet footer (little arrow | ghost | rescue ring), to only display the currently selected objects. select different objects in the viewport or the outliner.


Why is transparency not working on this transparent image texture

Try this setup.  Under User Preferences, under the Add-Ons tab, one option is Import Images as Planes.  This is based on the default setup, but with a metallic shader.  This should work, but only if you use Cycles Render.

Also, I see what you're trying to do with the image, and I know a way you can make the images look 3D from any angle through microdisplacement.  To do this, link the image to the displacement input of the Material Output node.  It is best to use a bump map for the purpose.  If you got the image online, there may be one already made.  Otherwise, use this tutorial at https://www.youtube.com/watch?v=c9Q6E59hVpU to create your own off of the original image using your own image editing software.  Tell us how it worked.

Anonymous


When rendering hair, it doesn't follow the particle edit path

The Size settings on the material are set too large, try setting the Root and Tip sizes in Material Settings > Strand > Size to smaller values:

Result:


Zackarus, there are at least 3 methods to create mist: 1 - Cube with Volume Scatter material, 2 - Mist in Compositing, 3 - Fake 3D mist with a plane.

The first method, Volume Scatter, is the most basic, but it's a little bit heavy if you have a slow computer :

Create a cube that contains your scene + camera.
In the Properties panel > Data > Display > Maximum Draw Type > choose Wire so that your cube is transparent in Solid display.
Give your cube a material with a Volume Scatter node plugged into the Volume socket of the Material Output node. Keep the Density value low so that the mist is not too heavy (here: 0.04).

Second method, with the Compositing, tuto here: https://www.youtube.com/watch?v=CxNeMMZs_sM

Third method, fake 3D mist with a plane, answer here: How to get mist only at horizon line?


What is this hierarchy of an empty and a collection, and how do I get to the mesh inside?

The orange box icon is a Collection Instance.

It can't be edited, it's just a link to some other collection, that needs to be edited.
To import assets from other files, make sure to use  File > Append the collection.
Then it's imported with all objects as separate items.

Importing all objects as separate items using File > Append


Why does it open my old project every time I create new file after reinstalling Blender?

I would guess you've had that project open, deliberately, since installing the new Blender? If so, you've probably pressed Ctrl+U, which saves the opened file as your start-up scene. You'll need to delete all objects and set it up as much as you can remember like the normal start-up scene, then press Ctrl+U, and say "yes" when it asks you if you want to "Save Start-up Scene."


Landscape material with ridges and erosion

You can create erosion with the Landscape tool.
Here's a good tutorial for this:

https://www.youtube.com/watch?v=l3k0rXQTyvg


Create ghost character from a certain point in cloth simulation

When I run the cloth simulation, I eventually get the ghost shape that I want.

...

How do I "pause" it at the ghost shape that I want

Part 1.
 Go to the frame you want and make sure the cloth settings are perfect. This change will be permanent.  Go to your modifiers panel and click Apply.
 This will convert it from a dynamic modifier into an editable mesh.

Now, I want to add some actions for it.

...

I want and start making animations for it, like Idle (I want the cloth to swing around a bit, like the ghost is swinging its hips) and Walk (I want the cloth to flow back like it's walking).

Part 2.
Next you'll want to rig the ghost. An armature system is a complex topic but I'll give you the basics.
 Start by adding a bone to your ghost.
 Enable X-ray so you can see what you're doing
 Making sure your bone is positioned at the top of the ghost hit TAB to go into edit mode and E to extrude it down once.
 Back in object mode select your ghost, hold down SHIFT and then select your armature you just created. Press CTRL and P to bring up the menu in the illustration.
 Finally animate the ghost how you like it to look.
Here's a GIF of what I came up with:
 Not bad for simple it was to create. More bones gives you more control obviously.


They removed it for 2.83. Users were complaining that it didn't scale well, and I don't think it worked on mac at all (the checkbox was there, but the cursors did not obey).
What they opted to do was remove, and relegate control of all the cursors back to the OS.
In windows 10 you adjust it like this (for some reason the cursor does not appear on screenshots - you'll just have to take my word for it):


General Answer: You can use a Mapping Node with a constant ColorRamp to do some shading via global height or via other texture coordinate inputs

(I think that the problem comes from bent polygons, because you moved single vertices from the subdivided plane. Therefore maybe a triangulate modifier could also help.)
turned out it wasnt that, but the height-displacement is done via shader-displacent from a noise map witch also was wrongfully pluged in as color

Specific Answer for uploaded file:
there you used a standard noise map for colorisation, I replaced it with the setup from this answer:

because of the huge scale of your mesh you have to scale up the object coordinate input in the mapping node, then it works


Deleting voxel artifacts (averaging small geometry)

Not an answer ...

v01_Vertex Group
I wanted to isolate mess on edge by curvature with Pointiness node (only for Cycles), Bake ...

... and use this texture for VertexWeightProximity modifier to convert into vertex group to be used as mask for Smooth modifier.

v02_Sculpt Mask
Similar technique can be achieve by Sculpt mode. Expand by Curvature didn't work for this, but in the same menu is Dirty Mask that worked. So probably easier way to isolate ...

Smoothing
... but even separation was successful, using Smooth modifier (for vertex group) or Smooth Filter (for sculpt mask), it failed at the end for the same reason ... topology is too bad to get rid of those things.
Even I tried Remesh > Blocks to get even distribution without small artefacts and than Smooth modifier (or any of a smooth modifier).
Sorry
So, probably only one advice I how - try Meshlab app that is announcing nice optimisation features specifically for thouse issues. But I don't have an experience to navigate you more.


How to follow dynamic paint brush direction with object in Blender V2.80 beta and 2.79b?

Well, looks like nobody could help me with this one. I managed to come up with a solution for this but with a bit different method. It works in both Blender V2.79b and V2.80 Beta. I added a path to make nicer turns but finally the turns are happening.
The following was setup, additionally, to get an object to follow the waveform of the ocean while it moves around the surface:

A path was added - in this case a BezierCircle in the Outliner called 'BezierCircle - Path to follow' and animated.
Added a Plane and subdivided it 2 times in Edit mode. 'Called Plane on water surface' on the image below. Added a Shrinkwrap modifier to it and set the target to be the 'Ocean', that mowed the plane to the ocean surface. Added an Object Constraint and the target was the 'BezierCircle - Path to follow' object. Ticked the Follow Curve
The 'Boat -constrained to Plane on water surface' object added a Copy Location and a Copy Rotation constrains. Both have the target set to 'Plane on water surface' object and it Vertex Group selected to 'Group' that was defined for that plane.

The purple plane on the bellow image is the 'Plane on water surface' object that follows the waves with the Shrinkwrap modifier and the boat is constrained to it with Location and Rotation. The orange path is the one the 'Plane on water surface' object follows.

This is a tight turn but demonstrates that the turning direction is followed.

The same section of the path but with material applied. This is not baked or animated yet, only played.


I want to model guns, but how do I model stuff like THIS?

You can do it with Bevel and Array modifiers:

Or, as suggested by Lukasz-40sth, you can do it with an arrayed cube, and at the end, same, use tris to finish the topology:


I would use a rigid body constraint:
https://docs.blender.org/manual/en/latest/physics/rigid_body/constraints
https://docs.blender.org/manual/en/latest/physics/rigid_body/constraints/types/fixed.html


If you want to bake normals with "Selected to active" checked, you have to select an object that contains the details that should be baked and select another object where the details should be baked onto. This object has to be the active object.


How do I move an object with a curve modifier applied to it?

If you select both the claw and the deforming curve and press Alt+D to do a linked duplicate of both of them, wouldn't that fix it?

You can then move the claw to a new position by selecting the duplicate claw and the duplicate curve, doing any transformation you want to both of them.

Because you did a 'linked duplicate' you can then still edit any of the curve objects and they will all update.

Here I have duplicated the curve and claw several times (using 'linked duplicate'), scaled them, moved them and by going into edit mode of a single curve I can edit them all at once:


Disable Anti Aliasing in Preferences > Viewport > Quality > Viewport Anti-Aliasing and choose No Anti Aliasing


Amature slowing down after separating and recombining in a single Armature multiple times

Just figured it out.

It really was a Rigify issue. What happens is that it left out some junk Drivers and during the process of separating and recombining, it duplicated until there was too many and it slowed down the Armature.

The fix was to look at the drivers and well… delete them. It kinda took some time for me because simply clicking and showing the driver graph slowed Blender also.


For simple topology you may be able to dissolve edges.  Then use loop cuts again.
Loop Tools, which is an addon,  can also evenly space adjacent loops

Remesh Modifier does this well.  This is often useful for Text to Mesh.
Slightly off topic, but how do you work well with such a jarring UI theme? – NᴏᴠɪᴄᴇIɴDɪsɢᴜɪsᴇ 9 mins ago


You need to click your object to active select (Yellow outline not orange) the object you want to sculpt in object mode. Any other selections(orange outline) will not be sculpted in sculpt mode.

See here for more on selecting: https://docs.blender.org/manual/en/latest/scene_layout/object/selecting.html

You can change your shading mode in the upper right corner.


try to add some lights from the right shining to the left, so that you could see the tree trunk better, then it will look more like 3d – Chris


How to switch strokes of the grease pencil in 2D Animation mode?

In Draw mode or Edit mode you can click since Version 2.91 (See patch note) in the outliner on the left column of the row of your object to switch to editing this object.
See :


Controlling Different Rotational Speed Of Two Interacting Objects

You can use drivers to achieve this. Here is a demonstration: https://www.youtube.com/watch?v=ajMAvKRCTBg

Have fun!


Why are particles only covering half of a face?

Thanks to @no-can-do's comment:
Switching the positions of the modifiers fixes the problem. Just place the Particle modifier above the Subdivision modifier.


I think your problem is the following one:

Unlink in the Outliner will unlink the object from its Collection, not from its duplications.

A linked duplication is a complete other thing than an object linked to a collection. To link-duplicate an object (make a copy that will follow all the modifications on the original), you need to press altD instead of shiftD.

To unlink a duplication, i.e. make it single user that won't depend on its linked duplications, select your object, go to the header menu > Object > Relations > Make Single User > Object & Data, then select Selected Object.

The problem is that it will also unlink from the objects of the same scene (maybe there's a way not to but I don't know it).


When I save something as an OBJ file the texture does not save with it, why?

.OBJ (Wavefront) file itself only stores geometry data, it does not keep anything regarding materials or textures.

Materials (including references [paths] to textures) are stored in companion .MTL file/format. But it does not embed textures themselves either.

So you have to give .obj, .mtl and all your texture files (you can use 'Copy' option of the exporter to copy all needed textures in a subdir next to exported .obj).

But there is yet another issue with OBJ - filenames must absolutely not contain any space. This is simply not supported by the format, and if your mtl and/or texture files have some, they won't get loaded.


Mesh partly shows wireframe upon texturing

You probably have enabled Backface Culling, either in the material's settings if you are in the game engine or in the viewport's shading settings:

Game engine material settings:

Viewport shading settings:

Disable it and you should see the texture of your object on both sides.

This is not a bug in Blender but an optimization technique which is used in games to reduce the GPU load. If you have a closed mesh you can not see the backsides anyway. Only if your mesh is not closed you need to draw both sides.


Why does the "Map Range" node fail for values above 10,000?

By viewing the source of this node in:

source/blender/compositor/operations/COM_MapRangeOperation.cpp

We see in line 46 this comment:

/* The code below assumes all data is inside range +- this, and that input buffer is single channel */
#define BLENDER_ZMAX 10000.0f

So it is not a bug, this range is defined by the developers for some reason. If the input value is larger than BLENDER_ZMAX then the To Max input is returned, if the input value is less than negative BLENDER_ZMAX then To Min is returned.


Here is the logic setup for this system :

if ( hit_penetrable and Xray_hit_player ) : send(XY)
if ( hit_player ) : send(X)

a Demo file


Rigging Non-spherical eyes in 2.79 or 2.8 that will work in Unity

Duplicate eye rotate and rename it to TrackToBone. Parent it to the parent of eye scale. (For this test setup, it won't need a parent.) Leave the track to constraint on TrackToBone as it was.

Add a Copy Rotation Constraint to the eye rotate with the TrackToBone the target. Choose Local Space for both inputs.

The TrackToBone will do the tracking and the eye rotate bone will copy it's rotation in the local (deformed) space.


These commands should help:
"Set Origin"
  here you have several options in Objekt mode to place your origin
"Snap Cursor to Active" + "Median Point Menue": 3D Cursor
  here you can change your origin while beeing in Edit-Mode for
  scaling from percise points

Also you should look into the realation between Edit and Objekt mode:
Editmode transformation dont change the Objekt-Mode origin.


Objects are not retaining original location in animation?

A lot of times, animators would make the first keyframe and that position, but when they make the next position and keyframe it, they are still on the same frame. This causes the old keyframes to be overwritten by the new ones. This could be the problem here.


It's possible, but as Duarte said in his comment it may be painful and requires some experimenting.

3 important things that you have to do:

subdivide your plane several times (being in Edit Mode press W-->Subdivide)
make sure the plane and both curves have the origin points placed in the same position
apply the transformations for all the objects (being in Object Mode press Ctrl+A-->Apply Rot&Scale)

Now select the plane and give it two Curve modifiers (each one should have a different curve set as a target). Dissable the second modifier (eye icon). Check which deformation axis fits the first one. Fit the plane to the curve. Now enable the second one and do the same step as with the first one.


Donut Tutorial Coffee Cup has holes in it

The first thing I noticed is that you just have some extra geometry in there that you definitely don't need. You can select contiguous bits of mesh by hovering over them with the cursor and hitting L. Delete the excess:

Next you need to delete the interior faces of the handle. I've temporarily disabled the subdivision modifier here so I can better see what I'm doing:

In face select mode, I first hold down ALT (to select loop) and click to select one face loop, then SHIFT + ALT (to select loop and keep previous selection) to select the other, and delete these faces.

I used L to select the now disconnected geometry that comprised the inside of the handle, and deleted that too.

In Edge select mode, I hold SHIFT + ALT to select the edge loops surrounding the now open holes in the mesh, and press F to fill them. The last step is removing the creases and reenabling the subdivision surface.


I think I found the answer, at least for this specific situation.  It was in "How can I modify the mesh of a linked character?", but it took me a while to figure out how to make it work.  Using scene_linked-rig-skin.blend above:

The rig (char.blend) is already linked in as a group and proxied, according to instructions found elsewhere.  The group contains the rig and the mesh (and should contain any other necessary objects).  Note that the "group instance" Skin is visible but outlined in dark red (as is the rig, which is in the same group).

I linked the Skin object from the same file (appending, as mentioned in the link above, seemed to do the same thing).  The Skin is outlined in blue.  The Physics tab options are all grayed out.

With the Skin still selected, I did "Object... -> Make Local -> Selected Objects".  The Skin outline changed to green and the Physics options became active.  I clicked on "Collision".

Now the cloth simulation works!  The Skin also follows the rig (you can't see it very well since it's under the cloth).

A few interesting notes:

The skin stays with the rig, even though it's not a child of the rig (at least not according to the Outliner).  [Update] As mentioned by Jerryno below, this is due to the armature constraint.  Parenting the skin to the rig isn't necessary (I had no idea!).
This still doesn't work in my "real" scene (i.e., the one that prompted me to ask this question).  But it does if I link my "real" rig into a new file.  I suspect some data-block is stuck somewhere.
The mesh data-block is still linked (and hence not editable).  This will make the file size smaller.  It can also be made local, if desired, by choosing "Selected Objects and Data" in step 3.
It only appears to work correctly if the 3D cursor is at the origin when the rig is linked.  The rig appears where the 3D cursor is, but the skin only appears at the origin, and the offset is fixed from then on.  If you move the (localized) skin to the rig, the deformations get all wonky.  Maybe someone else has a workaround for this.
If you want to tie the cloth to the armature (e.g., for clothing), CTRL-P will parent it to the proxy of the armature, and things won't work correctly.  Since you can't select the original armature directly, you have to then edit the armature modifier and choose the original armature.