text:
Wrinkle Surface

I made this mesh extruding a svg curve from Ilustrator. The idea, as you can see on the modifiers panel is to bend it. I understand that for this I need to divide the face with edges so that I can bend the face. I did it but still get wrinkles so I took them of and tried to clean every vertice on the mesh.

What I'm asking is if there's a way to fill the face with quads (and if thats the solution) so that I can bend the mesh and correct all the wrinkles in the shading.
Here is the project file.
Thanks.

https://blender.stackexchange.com/questions/70656/how-to-reduce-artifacts-on-curved-text-vector https://blender.stackexchange.com/questions/42571/better-curve-text-to-mesh-generation https://blender.stackexchange.com/questions/56083/text-render-has-weird-shadows/56091#56091

Thank you Duarte!


text:
Can't bevel an intricate mesh
I'm trying to make a world map around a sphere like the one on the left. The problem is that I can't bevel the edge as the more intricate curves overlap.

I've tried every way I could find on the internet to make the map (Displace Modifier as in here, Bolean Modifier, using the svg only as a curve, transforming the curve into a mesh, etc.)
The one on the left is using the Bolean Modifier but even using Bevel After Bolean (returns an error) or Bolean Bevel I can't seem to bevel the map edge. Maybe the back part being only one face could be one of the problems.
The one on the right is made from a Bolean of a plane with 50x100 loopcuts and the map curve transformed into a mesh and then with the bollean applied. After that I tried to bevel the edge but as expected the faces, edges whatever overlap.
I also tried loopcut arround (have to join hundreds of vertexes 2 by 2) so I could scale the part of the sides and then bevel it "by hand" but I can't scale it uniformly.

Can anyone please help me?
I can add the project file if needed, I just don't know how :/
Thank you!

have you tried to bevel with less segments? Also, do you need the bevel to be so large? Yes maybe share just one continent/island so that we can try: https://blend-exchange.giantcowfilms.com/

Hi!
Yes I have but to no good result :/
Here is the blender file

I'm afraid there's no easy way to do it without overlapping, I guess you'll have to rework manually, maybe you should first simplify the shapes with some Select Boundary Loops, then Checker Deselect, then Dissolve Vertices?

Ok, thanks for your help. I'll have to google all of that as I'm pretty noob on blender ;)

I'll try an answer with screeshots

If you're using mesh (and not other methods like Displacement modifier or Bump or Normal Maps), I'm not sure there's any easy way to fix bevels, maybe somebody will tell. Anyway, let say you have this shape:

To simplify it, use the Checker Deselect tool, play with the parameters to delete as many vertices as you want.

Once you're glad extrude the mesh, then bevel.

Now you need to bring some manual corrections where the edges are overlapping.

If you need to fatten the bottom, select it and use altS.

As I suppose your mesh is supposed to bend at the end, add some additional edge loops on the surface.

Thank you for the time your spending on this! I don't think I can actually simplify my shape but hey at least I learned something new ;) I'll just skip to the fix the bevels part!

why don't you want?

I need it to have some degree of definition. is there a way to then smooth just the sides? like a selective smooth?

you can use Shading > Smooth (left panel in 2.7), add a Subdivision Surface modifier, you can also add fake 3D with Bump or Normal maps, etc... it will save you a lot of memory (and headache)

I tried that already without great results but I'll try it again. Again, thank you so much for your help! I'll let you know if everything worked!

After a lot of work using your suggestions I finally got it to a nice result. As no one got any other suggestions I believe there's actually no other way to do this so I'll just mark your answer as the correct one! Thank you again for your help!

source: Stack Exchange

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/

sort: votes


text:
How to setup a shortcut for UV Editor's selection modes?
I would imagine it would be something like this, but this, and similar, does not work.

Your in the wrong area. 2DView is general navigation for flat area types.
The UV/Image editor shortcuts are under Image -> UV Editor

Also for the value you will need to make it a string by using quotes.

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/


text:
Is there a way to move multiple rigged characters simultaneously?
Is it possible to select multiple root bones, in multiple armatures, and then translate them simultaneously?

Not without some custom script (custom modal operator etc.).
The workaround is to child_of the root bones with constraints to Empty and move the empty. Then Pose > Apply > Visual Transform to Pose and delete the constraints.
There is an addon that lets you setup child_ofs easily or to keyframe them even: Dynamic parent

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/


text:
"Inside & Outside" volumes IE glass within glass (cycles)
How can we manage "glass" interfaces which have a different volume (absorption) on each side of the interface. For example colored liquid within a colored glass.
I understand that to manage correct IOR we must configure the interface to have IOR= (IOR of medium normals away from)/(IOR of medium normals face towards)
However this does not solve the issue of needing to define a different volume for each side of the interface.
I tried mixing absorption shaders with backfacing as a factor but it does not appear to function. I'm guessing blender assumes when looking "out" of object there is only AIR so does not render volume when looking "out"(ie looking in the direction the normals face)

@cegaton these links advise handling of IOR at the interface but this question is about the volume. The interface mesh needs to have an inside and "outside" volume assigned. I cannot see a way to define the "outside" volume. Usually the outside volume is AIR (aka empty) but in the case of the glass/liquid interface the outside is actually the glass (or liquid).

Can you post some of your test renders and/or node setups?


text:
bmesh/python - list directly or indirectly connected verts
For a single vertex, how can I create a list of all the vertices connected directly or indirectly to it?
Similar to Select Linked but without actually selecting anything.

If there's no better way, you could Select linked, get a list of selected vertices and deselect all. Check http://blender.stackexchange.com/questions/5781/how-to-list-all-selected-elements-in-python

You can get the edges the vertex is part of, then get their vertices (but exclude the verts you already visited). But Select linked is still better, because it uses native code and superior bmesh walkers.

Assuming the following definitions are a correct interpretation of what you are asking...

directly: connected by a single edge
indirectly: connected through a continuous path of N edges

...then the following code will find all directly or indirectly connected vertices of a given vertex. findConnectedVerts() takes the vertex of interest plus a maximum depth as arguments. It will then recursively find the connected vertices. I've tested this on a cube to verify that depth 1 yields the directly connected vertices, depth 2 yields all but a single vertex (which is 3 away) and depth 3 yields all the vertices in the cube (well, not the vertex passed in).
Note: I wasn't considering performance only functionality
import bpy

def getEdgesForVertex(v_index, mesh, marked_edges):
    all_edges = [e for e in mesh.edges if v_index in e.vertices]
    unmarked_edges = [e for e in all_edges if e.index not in marked_edges]
    return unmarked_edges

def findConnectedVerts(v_index, mesh, connected_verts, marked_edges, maxdepth=1, level=0):
    if level >= maxdepth:
        return

    edges = getEdgesForVertex(v_index, mesh, marked_edges)

    for e in edges:
        othr_v_index = [idx for idx in mesh.edges[e.index].vertices if idx != v_index][0]
        connected_verts[othr_v_index] = True
        marked_edges.append(e.index)
        findConnectedVerts(othr_v_index, mesh, connected_verts, marked_edges, maxdepth=maxdepth, level=level+1)

def main():
    mesh = bpy.context.object.data

    connected_verts = {}
    marked_edges = []

    findConnectedVerts(0, mesh, connected_verts, marked_edges, maxdepth=1)
    print(",".join([str(v) for v in connected_verts.keys()]))

    connected_verts = {}
    marked_edges = []

    findConnectedVerts(0, mesh, connected_verts, marked_edges, maxdepth=2)
    print(",".join([str(v) for v in connected_verts.keys()]))

    connected_verts = {}
    marked_edges = []

    findConnectedVerts(0, mesh, connected_verts, marked_edges, maxdepth=3)
    print(",".join([str(v) for v in connected_verts.keys()]))

main()

I must say the use of the global variables makes me uncomfortable.  I would turn them into explicit function parameters.

Fair enough, updated to remove globals and avoid your discomfort. :)


text:
Pixel Coordinates of Rendered Image with Python
I need to get Pixel coordinates of a rendered image.
Here is explanation:

In the Image Editor, I can see the coordinates in the bottom left corner by right clicking in the image. Is it possible to get the coordinates with Python? I need them to setup many crop nodes.

I want to the almost same thing: get the image pixel coordinate in image editor, is there a simple way to do this?

You want to get the pixel coordinates of the image at the mouse cursor's location?

This question should state what the input is exactly that you need to  convert into coordinates.

It seems I found the way how to get pixel coordinates through Rendering Crop. Select a Crop Node and use the script.

import bpy

scene = bpy.context.scene
nodes = scene.node_tree.nodes
cropNode = nodes.active

if cropNode.type == 'CROP':
    nodes.active.min_x = scene.render.border_min_x * scene.render.resolution_x
    nodes.active.max_x = scene.render.border_max_x * scene.render.resolution_x
    nodes.active.min_y = scene.render.border_min_y * scene.render.resolution_y
    nodes.active.max_y = scene.render.border_max_y * scene.render.resolution_y


text:
Lens distortion algorithm in Movie Clip Editor
Which lens undistortion algorithm is used in Blender?
I want to know more about these K1, K2, K3 parameters. How do they work? How they relate to each other. Why I need K2 and K3 if K1 does the job?
Any info will be usefull.

they are just the factors of parabolic and quadratic distortion, as well as a distortion of power 6. lens distortion has to be symmetric/isotrtopic, hence it can be written as function of a pixels distance to the center. this distance changes with an towards the center (=distortion).
The new distorted distance to the center is
D_r(r) = r+ k1*(r)^2 + k2*(r)^4 + k3*(r)^6
with r being the distance in pixels. So its rather just mathematical parameters, that approximate real lens distortion, than any parameters of real lenses present in your camera.

Thanks, Richard. Where did you find the equation? It looks similar to OpenCV distortion model. So Blender uses OpenCV's equation or not? Do you have more info about the topic?

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
Python: Rotate object according to vectors
I have my custom axis XYZ vectors (Yellow color in the screenshot below). They are normalized. I need to rotate an object according to these vectors. Is it possible to do this with the python API?

If these are direction vectors, you can find the rotation_difference between them via the Vector function of the same name: https://www.blender.org/api/blender_python_api_current/mathutils.html?highlight=rotation_difference#mathutils.Vector.rotation_difference

I tried it but had no luck. If you could make an example?

If you want to  change the basis you need to set up a transformation matrix.  For standard Cartesian coordinates the x (1, 0, 0) , y (0, 1, 0) and z (0, 0, 1) axis vectors make up the columns of the 3 x 3 Indentity matrix.
To make up your basis matrix use the three orthogonal vectors that make up your axis vectors to build a transform matrix.
m = [vx, vy, vz]

which for all extents and purposes is a 3 x 3 rotation matrix.
To rotate your monkey simply multiply its matrix_world by this matrix.
To have translation in your change of coordinates would need a 4 x 4 matrix.
Is all this starting to sound familiar?, it should do as it's pretty much making the cube in image below a child of the empty, and using the empties local space as our new coordinate space.

Using the empty as an example to show the 3 orthogonal vectors that make up its local space.
>>> for v in C.object.matrix_world.to_3x3():
...     print(v)
...
<Vector (0.8496, -0.4064, -0.3362)>
<Vector (0.1958, 0.8349, -0.5144)>
<Vector (0.4897, 0.3712, 0.7889)>
# orthogonal ?
>>> degrees(Vector((0.8496, -0.4064, -0.3362)).angle(Vector((0.1958, 0.8349, -0.5144))))
90.00059673093595 # close enough

You can use the rotation_difference method of the mathutils.Vector object to calculate the 3 axis angle difference between two vectors.
This function is used as follows:
# Calculate the angle between two vectors. Returns a Quaternion object.
vector1.rotation_difference( vector2 )

Here's some sample code that uses this function:
import bpy
from mathutils import Vector
from math import degrees

v0 = Vector(( 0,0,0 ))
v1 = Vector((-0.792312741279602, 0.6056182980537415, -0.0739390179514885))

rot = v1.rotation_difference( v0 ).to_euler()
print( [ degrees( a ) for a in rot ] )

Output is (angle rotation in each axis):
[ -77.31130736634618, -146.788879528308, -40.89379056097038 ]

Now if you want to rotate an object according to this rotation difference, all you need to do is to assign the value of rot to the object's rotation_euler property:
obj.rotation_euler = rot

Note: the image can be a bit misleading since the cube and corresponding empty's location is not the value of V1 at all. V1 represents the rotation / direction values only, with respect to the zero vector (V0).

What would happen if you exchange v0 and v1 above?

@batFINGER that would give you the inverse transformation form v1 to v0


text:
Output Node with Python
Is it possible to create an Output Node with python?
I tried to do it, but I'm in stuck.
Here is what I want to create:

This is the code I started but I'm sure it's wrong:
import bpy

bpy.context.area.type = 'NODE_EDITOR'
bpy.ops.node.add_node(use_transform=False, type="CompositorNodeOutputFile")

It's better to not use operators, there is a sophisticated "low-level" API for the node interface:
import bpy

scene = bpy.context.scene
nodes = scene.node_tree.nodes

render_layers = nodes['Render Layers']
output_file = nodes.new("CompositorNodeOutputFile")
output_file.base_path = "//maFolder/"

scene.node_tree.links.new(
    render_layers.outputs['Image'],
    output_file.inputs['Image']
)

You basically need to create a node and a link, and specify the input and output for the latter on creation to establish the connection.

This is great! Thank you!
And how to create "set_01_", "set_02_", "set_03_".. outputs?

I asked a developer in charge and he replied: "the output file node is a horrible hack, everything is special there". So there's apparently no working low-level API. You can still use the operator from the panel (with an override if necessary).

Here is my result. Thank you a lot @Codemax.

import bpy

scene = bpy.context.scene
nodes = scene.node_tree.nodes

output_file = nodes.new("CompositorNodeOutputFile")
# output_file.base_path = "//maFolder/"

output_file.file_slots.remove(output_file.inputs[0])
for i in range(0, 20):
    idx = str(i + 1)
    if i < 9:
        idx = "0" + idx
    output_file.file_slots.new("set_" + idx)


text:
Python rotation does not produce the same than manual rotation
I have 3 plank forming an equilateral triangle, I want to rotate them according to the triangle gravity center (where all the height intersect).
By hand I select them all, Shift+D, Enter, R, Shift+Z, turn the mouse, press Enter and voila, perfectly rotated.
I then wrote a script that does the exact same thing, however they are not rotated the same, the center of the second triangle is off.
def select_all():
    scn = bpy.context.scene
    print("deselecting all")
    bpy.ops.object.select_all(action='DESELECT')
    objs = [obj for obj in scn.objects if obj.name.startswith("plank")]
    for obj in objs:
        print("selecting object " + obj.name)
        obj.select = True

select_all()
bpy.ops.object.duplicate()
bpy.ops.transform.rotate(value=radians(180.0), axis=(0, 0, 1))

and here is an image of the results :

Why isn't the rotation being the same?


text:
Blender command doesn't get executed when it receives message from ROS
To control my blender animation, I am using WebUi that sends a message to Ros through Rosbridge.
Before doing so, I create a Ros Subscriber in blender that listens for a signal from WebUi and creates a simple Cube in a Scene. It is not working.
Here is my complete subscriber code that I wrote in blender's text editor:
import rospy
import bpy
from std_msgs.msg import String

def callback(data):
    if data.data == "create":
        bpy.ops.mesh.primitive_cube_add()
    if data.data == "shutdown":
        rospy.signal_shutdown("server stops")

def listener():
    rospy.init_node('listener', anonymous=True)
    rospy.Subscriber("chatter",String,callback)
    rospy.spin()
listener()

When bpy.ops.mesh.primitive_cube_add() is replaced by printing some messages it works, but not any command that acts upon the blender scene.

Blender should print some errors which would help us (and you) figure out the problem. It is most likely a context issue, so rather than use bpy.ops... create the mesh from scratch yourself. (look at the templates in blender's Text Editor, or http://wiki.blender.org/index.php/Dev:2.5/Py/Scripts/Cookbook/Code_snippets/Meshes )

my intention is not to create a mesh only to mention as example. you can try any blender command in place of bpy.ops... thanks.

My point is that it might be the use of an operator (bpy.ops.*) which is causing the error - does it still fail with bpy.data.meshes.new(name+'Mesh') ?

the problem has nothing to do with bpy.ops.mesh....


text:
Bisect Tool Not Working
First time using Blender in years and trying to learn all of the new 2.8 goodness, but my Bisect tool seems to not be working. I select it and all it lets me do is select and move vertices. It doesn't even show the option to bisect in the shortcuts bar.

When it should look like this (Taken from a youtube tutorial)
If anyone else has ran into this issue and can offer help that would be greatly appreciated!

I opened up Blender the next day and now the bisect tool seems to work fine. I guess I just needed to close and open Blender for the tool to fix itself. Kind of frustrating that a bug like this exists, but it was an easy solution and I can't expect a huge update like this to work perfectly. Hope this helps anyone else with similar issues!

In that case, this sounds reportable? (Having checked everywhere for duplicates, and made best efforts to consistently reproduce, in a minimal example)

It works when I select the bisect from the menu>mesh>bisect. ( I'm having the same issue with the bisect tool from the toolbar in 2.83)

Restore default worked for me... some time after.

I had to select a face, edge, or some vertices first, in Edit mode, with the Bisect tool selected.

I tried that, but all it did was move whatever I had selected.

Are you able to click "off" the object to clear the selection, then click back on it while the "Select" tool is active, then switch to the "Bisect" tool?


text:
Bones Deforming Mesh that it's attached to
I'm very new to modeling, and have no backround on it either! I am having some trouble with bones and meshes. Basically, I have the bones to be the parent of the mesh, however when I attempt to move them in Pose mode, they deform and scale in weird ways. I'm just trying to make some robot legs.

How is the mesh parented to the armature? Is it parented to the object, or the bone? Is it using an armature modifier? Can you upload a .blend?

Probably a bone scale problem (at least), see: https://blender.stackexchange.com/questions/73782/deforming-when-no-deform-is-wanted/73786#73786

For some reason you've scaled your bone on its Y axis (Z global axis when the bone stands up) when you were in Pose mode. You need to select it in Pose mode and press altS to reset the scale. The parented mesh will come back to its normal proportion by the way...

If you want your bone to be longer than it is, you need to scale it in Edit mode, not Pose mode, which is made for animation. If you think that the Octahedral display mode is not convenient, you can switch to B-Bone mode for example, then you can change the bone thickness with
ctrlaltS and drag.

I've rested the scale, however I can't seem to actually scale the bone on only one axis. It seems to scale the entirety of it, to make all the axis equal.

if you use the scale in the N panel, as I show, you scale on the axis you want, but anyway, I don't understand why you don't want to scale it entirely, scale in Pose mode as only a sense if you want to scale during an animation, don't use it to deform or correct your shape in any other case, why did you actually use it?

The bone keeps poking out of the mesh if not scaled correctly, as the mesh on the bottom is just a pyramid, so it goes inward


text:
Importing blend file to obj
Why I'm getting this error?
enter image description here

I think this is a bug in the .obj exporter. If I'm not mistaken it should be me.to_mesh_clear() instead of bpy.data.meshes.remove(me) in line 389. Would it be possible for you to create a minimized project file (likely only needs the object 'Cube.004' in it) and upload it here: https://blend-exchange.giantcowfilms.com/

This has been fixed https://developer.blender.org/D5479


text:
2.83 Make Normals Consistent?
Hey Blender Community,
I am working on a Low-Poly tree model in Blender 2.83 and have the following problem:
Because my tree is for a mobile game I want to have as few faces as possible. So I deleted the bottom of the object. To avoid invisible areas I want to make normals consistent.
I remeber that in older versions I just used Shift + N and I had consistent insides. But now, when I try to do that I am only able to recalculate the normals. That doesn't solve my problem. Also I don't want to solidify the model, because that adds too much faces to my model.
I've already tried to search the "Make Normals Consistent" funktion without success:

I hope you have a good advice for me.
Many thanks in advance
Sebbe

I don't get it, in the picture, the faces seem to have the normals set right? Or do you need both sides of a face to be an "outside"? I'm not sure that's possible…

Yes exactly, I want both sides to be "outsides" without making them solid.

Normals can only "point away" from one side of a face at a time, however, the material should still display fine on the backside. if you really need the normals to be facing in AND out, I would suggest solidifying your geometry.

I'm not sure whether there is a functional difference between inside and outside, once something is finished. The few times this mattered for me, it was during editing (applying modifiers and so on).


text:
Array circular patern
So ive looked for answers but this is odd, my Rotation scale and location is all applied and fine but when i array my mesh around the axis it becomes smaller and rotates in an unpredictable way. Any ideas why ?

The scale of the arrayed object may be applied, but how about the scale of the Empty? An object-offset array modifier incrementally and cumulatively  applies the transform of the  target object to the arrayed instances..

So i found the problem. make sure your delta transforms are normal


text:
How can I anti aliase the measureit lines for the render result

Ive set up this render template for some profiles and each gets a measureit dimension to render out with the result to save time putting it in afterwards, but I realized it is a bit jagged, how can i fix this with nodes so i can get a clean image out without re editing it ?


text:
Hair particles flicker in and out on length influence animation
I made a grassy patch with hair particles, I then made a cloud texture to control the length of the hair. I thought it would look cool keyframing the texture brightness to make the grass grow. But then i ran into this problem where the particles flicker in and out as the texture changes. i assume its to do with how it randomly paces particles on a gradient. I have no idea how to fix this, ive tried a couple of things like contrast up the map to make more of a sharp gradient but to no luck. Any idea how i can work on this ? Im Just including the files here instead of a bunch of screengrabs Zip file with vid and blend file But here are 2 adjacent frames just to check it out

Just as i post i figure it out. It was one particle instance texture that was still influencing density, If All of them influence only scale it works a treat.


text:
How to scale two UV islands of different sizes to be an identical size?
How to scale two UV islands of different sizes to be an identical size?
I have UV unwrapped my model but want islands to be the same size as each other.

what's the problem if you scale them manually?

Select the geometry in Edit Mode, then in UV Editor select the islands (you can do it by hovering the mouse over the 1st island and pressing L then repeating for the 2nd island). Now in UV menu choose Average Islands Scale:

Neither island will rotate, however, they can move and, of course, scale. You may want to keep one of these islands in place (let's say because you already painted this area in Texture Paint mode). In this case I would just write down X distance between two arbitrary points A and B of the island I want to keep in place, as well as X and Y coordinates of point A, then average, then divide the new X distance between points A and B by the previous distance to get the ratio, by which I would scale the islands back so the "locked island" is again at its original scale. Finally, I would read the new X and Y coordinates of point A, so I know by how much to move the islands so it is back at its original coordinates:

Transcript of the GIF:
I chose points A and B in corners so it's easy to remember which they were after averaging the scale, then I copy-pasted the Y coordinate of A point to the Notepad, then I did that with X as well as pasted it to the Calculator. Then I copied the X coordinate of B point, pressed - in the Calculator, pasted the value, pressed Enter and then copy-pasted the result to the Notepad. Then selected both islands with L, UV->Average Islands Scale, Repeated x-distance calculation, copied the result and in Blender pressed S, Ctrl+V, then / for inverse (1/x). Selected A point, copy-pasted its coordinates to the Notepad. Moved the island a little bit in random direction to get the Move dialog, then pasted the coordinates in the form Ax - new Ax and Ay - new Ay, so this time Blender had to crunch the numbers instead of the Calculator. Done.
Of course if that's a recurring problem it would be sane to automate it in a Python script.

If you just have 2 islands and you don't care how they are oriented, just choose the Normalize option in the UV's menu. That is what it's for.
But let's say you took your time manually unwrapping and arranging several islands and need to match the scale of both groups but don't want to ruin the work you already did.

select only the relevant faces in the model (faces you need to
normalize). Make sure the option in the upper-left to link the model
select to the UV layout is OFF.
You will see in the UV editor that only the selected faces are
visible. This also means that operations in the UV editor will not affect hidden UVs.
Choose from the menu in the UV editor to Normalize the UVs. Now all of those UVs are the same size. This WILL reposition and CAN (unless you uncheck the option) rotate the islands though, so if that is a problem you will need to rotate them back into position now.
Drag those faces over someplace where they will be together, but not intersect other UVs. Select all the faces on your model. You will see that all UVs are visible in the UV editor now. Manually scale the islands you just normalized to make sure all islands are perceptually the same size.

This way, you don't have to touch islands that are already the right size and in the right position.


text:
How to assign a key to "Select All by Trait"? It is not in list
I'm trying to assign a key to "Select All by Trait" (mesh edit mode, "select" menu) but it is not listed in Keymap. Is it possible?
I want to popup this menu on some key, same as Shift+G popups "Select Similar" menu.
Currently I added it to "Q" (Quick Favorites). It's OK generally, but I wonder if it is possible to assign separate key for such unlisted key.
I'm using blender 2.83 and 2.9

so your question is how to assign another shortcut than Q to a function that has no default shortcut at all?

In the preferences, keymaps, navigate to "3D view/Mesh/Mesh (global)".
Use the "Add New" button and set the keymap like so:

Enter "wm.call_menu", set the key you want and assign the menu name "VIEW3D_MT_edit_mesh_select_by_trait".

Thanks for posting this. I think it could be improved by showing how you find the name for a menu or command so it can be applied to other things as well. Where did VIEW3D_MT_edit_mesh_select_by_trait come from? I'd like to make a hotkey for mesh -> cleanup as well. Also, is it possible to fire an action directly without the menu? So a hotkey just always does the "select non-manifold" action without showing the "select by trait" menu?


text:
Why does my Ambient Occlusion bake and Exported UV Layout have color from my materials?
I have created an object and I have assigned a bunch of materials, each with different diffuse colors (for use in dDo) to different parts of the model. What I can't figure out is why when I bake my Ambient Occlusion map I am getting color information in my AO Map. Clear is the only item that I have checked in the Bake Settings. I am also getting the same behavior when I export my UV layout. I don't think I have ever seen this before and I am totally stumped. I don't have any vertex colors on the model. I have no textures in the scene either as I removed them by holding down Shift and unlinking the datablock for my texture bakes. I have cleared all those out and restarted Blender. All I have is my model and a whole bunch of materials with different diffuse colors, that I have assigned to different parts of the mesh. What would be causing such a thing to happen?

In BI the diffuse color is used to color AO output.
One way to avoid this is to enable Normalized in the bake settings:

Thank you! That definitely solved the AO map problem having color information. I am still continuing to look for a solution to eliminate color information for the UV Layout map since I know of no way to alter settings there.

@BrysonJack Hm.. I can't think of anything besides I quick python script to set all the diffuse colors to white (either running on a backup .blend or storing the values in an array for setting them back later). If that's not acceptable, does desaturating the UV map work well enough?

Well, if Blender isn't misbehaving, or I didn't accidentally change a setting somewhere and that is the normal behavior then I will have to come up with some kind of workaround. I really appreciate your help gandalf3.


text:
Why is my Render Image output correct but my Render Animation output is incorrect?
I made a test scene to develop a workflow for dividing up a Cycles animation into separate render layers, rendering them out and recombining them.
I noticed as I was putting everything back together that the frames from the render layers with masking, that were rendered with Render Animation (Ctrl+F12) have all kinds of inaccuracies where the masking is wrong, but when I re-render the messed up frame with Render Image (F12) the bad frame is suddenly rendered correctly. What is even more perplexing is that the mistakes are not consistent. When I re-render with Render Animation (Ctrl+F12), the errors can appear on different frames and other previously inaccurate frames can get fixed.
I am getting these errors when I Load Factory Settings and then open the scene.
Hopefully someone has some idea why this is occurring and how to fix it.
Below is an example of the Torus in the scene that is on its own render layer. The Torus render layer is configured so that the Cone render layer is enabled in the Render Layers>Mask section. You can clearly see that the Torus render layer output, when rendered from Render Animation, is not correct like the output from Render Image.
https://dl.dropboxusercontent.com/u/6647893/Forum_Help/Render_Layer_Animation_Test2.zip

Open GL Render of Frame 06

Frame 06 rendered incorrectly with Render Animation

Frame 06 rendered correctly with Render Image

What version of blender are you using? I just tried it with 2.75 and could not replicate the error you're describing.

Also, why are you excluding all other layers for each render layer? You won't get any lighting/shading interaction between the objects at all that way.

Third question, can you launch Blender from the terminal and see if any errors are shown in the terminal for any of the incorrect frames?

I am using Blender 2.76. According to this: http://www.blenderguru.com/articles/how-to-render-a-complex-scene-without-crashing/ Exclude boxes are for "specifically telling Blender what to exclude from the memory calculation". Before I read that I wasn't using them at all. I don't know how to launch Blender from a terminal but I can research that.

Keep in mind, like I reported, the problem could be on other frames and Frame 06 could be fine when you render it.

I tried it on a completely different PC and got the same errors. Torus Frame 0030 for example, is totally wrong when using Render Animation, but fine with Render Image.

Hmm, I've tested twice with 2.75 and 2.76 and enabled all 4 render layers, and set up alpha over nodes in the compositor to combine everything. I've done 30 frame animation renders 4 times now and they all look error free.

gpu or cpu render?

Yep, I am seeing the same thing as cegaton. I am rendering on GPU since that is what I will be doing on my actual render. Also, I was rendering out each render layer into a separate directory to simulate multiple computers doing the job.


text:
Is there a way to setup Brush Strength with the Wacom Touch Ring?
I know that Shift+F will bring up a dynamic brush strength adjuster when I am sculpting, and I could assign that to one of my Wacom tablet's ExpressKeys, but there are only eight ExpressKeys and I would like to keep them for other functions.
I was wondering if there was a way to get the Brush Strength to increment up and down with hotkeys so that I could configure a custom Touch Ring Brush Strength command.


text:
Would it be possible to get list of index of components BY SELECTION ORDER in Edit Mode?

Not sure if Blender has a built in mechanism that "knows" the order the user selects Objects in 3D view or Components by Index.
I wanted to achieve this using Python for later usage incorporated into node in Sverchok or Animation Nodes.

bmesh records (or provides access to) the selection history of a mesh.
import bpy
import bmesh

obj = bpy.context.object

if obj.mode == 'EDIT':
    bm = bmesh.from_edit_mesh(obj.data)
elif obj.mode == 'OBJECT':
    bm = bmesh.new()
    bm.from_mesh(obj.data)

for i in bm.select_history:
    print(type(i),i.index)

Notice the use of type() as the history list can contain verts, edges and faces at the same time and in any order.

Thanks for this answer. Works really well when I select the component one by one using RMB click. But when I use C and draw select, it does not quite work. Is there a work around?

Seems it only works with manual selection, any other selection method fails to add to the history, though deselecting always removes items. I would consider that a bug.

Based on Python from @sambler above I tested and use Sverchok nodes to re-order the index of Polygon Face.

Answers are for answers to the original question only, not to post updates on how well another answer worked.


text:
How exactly you use Extra Objects like N-Pipe?

Is this a type of Extra Objects meshes that are there just for convenience? I imagine the pipe screensaver in old school windows, but then again that is very much algorithmic. Not something one would create manually (I might be wrong).
I guess I probably can use this to create some kind of typography pipes manually.
What would be interesting is to see pipe works made in Blender.

Like most tools in Blender they are there for convenience, I am guessing this would be quite useful for someone working in any sort of sci-fi scene with lots cables and ducts, or some factory or industrial setting with lots of pipes, steampunk stuff, a maze or pipe-system, tunnels, for games or interactive applications. Who knows


text:
Cycles Data Output for meshing
I often wanted to visualize shader data in cycles differently, turning it into 3D mesh for printing.
So far, I think the idea of baking out cycles procedural texture is as a 2D image. Ideally there must be a way to see the data as is, maybe some kind of 3D voxel data output.
Is there a way to sample 2d or 3d data of whatever values generated in cycles as numbers? Can we do this using OSL or Python?


text:
edges with thickness and color
Is there a way to vary the thickness and color of lines created by just edges and vertices?
I realize that a face can be defined and then color and material applied, but is there any way to apply a color to the edges?

What? It is very difficult to understand what you are asking. Please rephrase it.

I only have edges and vertices in an object.  Can I apply a color to the edges?

No, apart from setting theme color and default line widths there is no way to color lines.
If this was necessary, it's possible to write a python script that draws an overlay on the mesh using custom-data to store colors on edges, but this is quite an involved solution and not really ideal, because higher detail meshes will draw more slowly(since Python is not very fast for these kinds of tasks).

Thanks.  The great Ideasman answered my question!  I guess I will make a face out of closely spaced edges and and color from there.

Isn't there a way to abuse a modal operator combined with glLineWidth(n) to force Blender to draw everything with extra edges? It's hacky and not very controllable though.


text:
How to bake normal map for discontinuous mesh
I'm building models for an independent game and would like to use normal maps. I started by building the low detail meshes first, which are about 4000 tris each, give or take a thousand. I built the low detail meshes in pieces to save on polycount, so when I bake a normal map onto the low poly mesh I get all kinds of errors where the high poly mesh is being projected onto the overlapping faces, no matter what bias I use.
How can I bake normal maps for these meshes? If I have to redo these to get there, what should I look out for in the future? Should I have started with a continuous mesh with all the detail and then deconstructed it to make a low detail mesh?

Just to fully understand this: "where the high poly mesh is being projected onto the overlapping faces" < Why are there overlapping faces in the lowpoly mesh?

Instead of extruding some of the details from the surface of the mesh, I've simply created a new mesh and modeled the detail separately and joined them together. So when the detail is on the surface of the mesh (say, a gem or molding), the faces would overlap w/r to the surface being baked onto it.

Here is a workflow you could use:

Build the high poly mesh first.
Add details as you like by adding separate meshes.
Build the low poly mesh over high poly mesh, using Shrinkwrap and Surface Snapping to help.
Separate your low poly meshes according to requirements (textures, extrusion etc).
Bake your maps.

This ensures correct normal and AO map bakes.

For future models, I second what Ali Raj said in his answer, it's usually better to build the lowpoly model from the final highpoly because this gives you the ability to follow the highpoly as closely as possible. The retopology tools of blender are quite usable and becoming better (see CGCookie: Retopology with the BSurfaces Add-on).
For your current model, I would suggest that you P-separate the main part/overlapping parts of both your highpoly and your lowpoly and put them in two different layers (each layer containing the highpoly with the corresponding lowpoly and no overlaps).
Then you can bake each of them separately, with "Clear" in the bake-settings disabled (to make sure the second bake doesn't overwrite the first one), onto the same texture and should avoid any strange artifacts.


text:
BGE GLSL materials in embedded player
I am on the very beginning of creating a game. As a GE BGE was chosen. At the moment a problem popped out: I want to use real-time shadows and when I set Shading to GLSL in the Render options I get just absolutely white objects. No changes to materials take effect, no shadows are visible. What am I doing wrong?
EDIT: I found out that it works properly in the standalone player. Can I make it work in embedded player as well?

Make sure the viewport is set to textured shading in 3D view > Header before starting the game engine:

The viewport shading will affect the shading used in the game engine to some degree.
Wireframe:

Solid:

Texture:

Yeah, that's exactly what you need to do.


text:
How to re-encode video without losing quality
I finished rendering an animation with audio into the default H.264 lossy settings. I then realized the audio was 1 frame off and I also altered the song that I used in the video. So my two questions are:

Is it possible to re encode the video with lossy compression after shifting the frames back, but have blender automatically use the same keyframes and what not, so that more quality is not lost?
If one is not possible, if I don't shift the frames and leave the video portion the exact same, but change the audio, is it possible to not lose quality by using the same lossy H.264 settings?

Some clarifications:
–I know I could render it with "Lossless" Checked, but I still want compression for the small file size
–Often I render it into an image sequence first since it is a good practice. I still would like to know this information in the case that I delete the raw images like in this case

Related: http://blender.stackexchange.com/a/44209/2843

The first option isn't a possibility. The second one, however, is. You should be able to de-multiplex the audio and video track and then re-package new audio with the video. FFMPEG is the program that I tend to use for this kind of task, but you'll need to be comfortable working from the command line. Depending on the OS you use, there may be easier tools for this.

This would be done with the -c:v copy flag nowadays, which copies the video across containers verbatim.


text:
What are the differences between the available rendering engines?
I'm new to understanding render engines, is there any chance someone could explain a few things about them?
Specifically for Cycles vs Vray:

Are there any major differences between Blender Cycles and Vray for    function of rendering various things?
Is there anything the one struggles to do or is completely unable to do while the other can?
Are the two render engines compatible with one another at all for transferring various assets and setting up scenes? Like object    materials for example, would they have to be recreated in each?
Are there any advantages to using a purchased third party render engine like Vray over the free Cycles? (Especially if you are a    single user not a studio.)

In General:

Why are render additional render engines available? Do they offer different functions or unique traits? Why would you want to use a different one?

I don't think that rewriting it could do something good, so... https://www.blenderguru.com/articles/render-engine-comparison-cycles-vs-giants/ Have in mind that this test is year old, and Cycles is getting better and better.

I see the one who asked the original question agreed that the new question is an exact duplicate of an older one, but I would note that the older one asks for a comparison of a different pair of render engines (Blender internal contrasted with Cycles), while the new one asks about a different pair (Cycles contrasted with Vray.

I think native color management config is the big reason why Vray looks so good, Vray kind of brackets or blends multiple exposures, has almost perfect black and white levels, luminance curve and color intensity,  but I'm not 100% sure. Vray is one of the best rendering engines. In my experience if you want Cycles to look more like Vray you'll need to tweak a lot of things,  in compositor and then use an EXR image manipulation software like DarkTable, that way you'll have pretty close results, but even with all of that the results are not the same as good compared to using Vray.


text:
Keyframing start and end of smoke simulation
Can anyone help me with quick smoke?
I am still very new to blender and I am confused on how I can key frame quick smoke to start at a certain frame with the explosion I have set up.

As far as i know, smoke simulations do not require keyframes. Watch this video for explosions. http://video.search.yahoo.com/video/play;_ylt=A2KLqIHFlUJUfTMAUAP7w8QF;_ylu=X3oDMTB2ZjRyaHJ1BHNlYwNzcgRzbGsDdmlkBHZ0aWQDVjE4MARncG9zAzI-?p=youtube+explosion+blender&vid=fe7633565ff6e91b9b5fa551f7056e8f&l=38%3A32&turl=http%3A%2F%2Fts2.mm.bing.net%2Fth%3Fid%3DVN.608030798067600613%26pid%3D15.1&rurl=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DmtSbZtPO_2w&tit=How+to+Create+an+%3Cb%3EExplosion+%3C%2Fb%3Ein+%3Cb%3EBlender%3C%2Fb%3E&c=1&sigr=11a1ecb2a&sigt=11jjiag8a&age=0&vm=r&tt=b

Related: http://blender.stackexchange.com/q/7409/599

If you are using the mesh as the flow source,  then animate the Density of the Flow object.

Hover over the field and press I to add a keyframe. Or RMB  on the field and choose Insert Keyframe.
If you are using a emitter particle system, then use the start and end time of the particle system.

When keyframing the Density, will the simulation appear as if it started at the frame you keyframed it? Will you need to bake the frames before it?


text:
Nothing happens when script is run
Several questions similar to mine...with no answers.
Enter a line in the text editor, Run Script...nothing or "see console"
Code example:
print(2+2) or bpy.data.objects['Cylinder.002'].location=(50,0,0)
Enter same line in the console, OK.
Can paste several lines into text editor, but no paste option to console.
The manual and the tutorials suggests what I'm doing should work, but I see a few others seem to be having problems too.

Please give an example of what code you are trying to run.

The "see console" is about the system console, not the python console. You can make it appear with the "Window / Toggle system console" menu. Be aware that if you close the system console window directly, it will also close Blender.

Use ctrl-C and ctrl-V to cut and paste in blenders python console.

Thanks for you help.  Difficult to understand how I read the into and watched the tutorial and didn't spot the distinction between the Python console and the system console.


text:
How can I unlink all images from a project?
I had a big project that I separated into smaller parts, but in every single file I now have all the images that I had in that one huge project earlier.
Unity has some problems with images linked to a project, so I want to keep it clean.
How can I delete all images from a project?
I had a script that can delete unlinked images, but how do I unlink them all?

please stop shouting

Combining this and this answers, one may get code like this:
    import bpy

    for img in bpy.data.images:
        img.user_clear()

It will unlink all images in the .blend (one currently selected in the UV Image Editor will remain selected, but also will become unlinked, you can unlink one image by yourself or make improvement to the code).
Then you will only need to delete unlinked images.
The final code might look like this (thanks for evilferber's comment):
import bpy
for img in bpy.data.images:
  img.user_clear()
for img in bpy.data.images:
  if not img.users:
    bpy.data.images.remove(img)

`import bpy
for img in bpy.data.images:
img.user_clear()
for img in bpy.data.images:
if not img.users:
bpy.data.images.remove(img)`
That's the script i needed ; )

@Mr Zak Could you include evilferbers extension of the code in your answer please?

The following code will also work:
for img in bpy.data.images:
   bpy.data.images.remove(img, do_unlink=True)

Select the image in Image Editor and Shift + click the X Button. This will set the amount of users of that image to 0. When the file is saved the image will be discarded.

I don't want to delete one image at the time. I have a lots of projects with many many images. I'm not asking for a way to delete single image.

@evilferber time to get some coffee, I totally ignored the bold text in your question and didn't read the python tag :D


text:
Proportional editing doesn't work
I enabled the Proportional Editing option and tried to scale the part of the mesh. Although I can see the proportional editing ring it does not work. What may cause this problem?

your pivot point is set to Individual Origin, you need to change it to Median Point.

To make Proportional Editing work on the mesh you need to change pivot point from Individual Origin to Median Point.


text:
Any shortcut for proportional editing mode and the falloff types?
I know the O button is the shortcut for enabling the Proportional Editing mode. What if I want to change its type to Connected type using a shortcut?

Are there any shortcuts for enabling the proportional editing modes (such as Connected and Projected (2D)) and falloff types (such as Sphere, Linear, Random etc.)?

You can turn on Connected Proportional Editing by pressing Alt+O.

Note that if pressing that shortcut again it will turn off Proportional Editing at all. If you'd like just to turn off Connected but leave Proportional Editing you should press O again.
You can loop through all the falloff types by pressing Shift + O.

Thanks @Mr Zak. Very intuitive shortcuts. Why I haven't found it out by myself? Wonder why there is no shortcut for a 'Projected (2D) mode' though?

@Gonzou I guess that was never finished? There's also no separate icon for projected 2D mode, which can be confusing. I tried designing an icon for it, but it wasn't very good :P

@gandalf3 I think you proposed a very simple, consistent and compact (with other icons) graphical solution for a 'Projected (2D) mode'. I like it :). Any chances it'll appear in a future Blender version releases?

@Gonzou Doesn't seem like it.. There is another proposal to entirely change the way picking proportional editing modes works.


text:
How to completely remove influence of bone to mesh
.blend file
I created a rig for my mesh. I created control bones, but they have influence on the mesh. How can I completly remove the influence from a bone to the mesh?
I selected every single control bone and set the weight to 0 and painted over the whole mesh, but there is still a influence as you can see in the picture.

Looking at the image you attached (and the file) it looks like the control bones aren't the only issue here. Some of the stretching looks like vertices that have no weights for any of the bones, which is why they are staying in place.

The easiest and most straight forward way is to uncheck Deform in bone properties (marked red on the image below). Second way is to delete from the mesh vertex groups named like the bones.

The best way would be to do both things as it will guarantee no deformation issues or other weird bugs down the road.

You can remove (ie:clean, or reset to zero) a single bone's influence, you can use weight tools, like this:

edit: follow-up after a comment.
...imho it works 100%, but since moving that bone moves other connected bones (eg: thigh.L), which have weights are still infuencing the mesh... you see some influence, but from other bones.

This happen salso deactivating "deform" checkbox, as suggested by the other answer.

Deactivating "deform" checkbox keeps weight and thus, influence but it deactivates its evaluation (for that bone). Using clean you reset to zero the influence (useful maybe if you wish to start over painting it)

Does not work 100%, try it on shin.L and you will see.

I added some content to explain why I feel it's working 100%.

Thank you very much for your effort! I had to set Limit (see first gif) to value 1 instead of 0.990


text:
How can I create a parabolic trajectory between two 3d points
The idea is to make some sort of node arrangement that creates a parabolic trajectory between two points. Just like when missiles are launched from the ground.
As Jacques pointed to be more specific I want to achieve something like this:

The animation that I'm trying to achieve is the typical world globe with points and lines simulating that trajectories of airplanes in order to show connections between different places of the world.

Do you have a drawing or an image that shows what you are looking for in more detail? So which two points are the input and how should the output look like?

Just edited the question to make it clearier.

Basics
You can use splines for that. Bezier splines to be more exact.
As input you need to have the start and end points with normals. Where you get these points from is the part where you have to be creative. I will show you here how to create splines from the mentioned input data as well as two methods how you can use this concept in practice.
Here is a basic setup that creates a spline from the 4 input values (note that I hid one socket in each Append Point to Spline node):

Next step is to create a subprogram (a group in this case) to simplify the following steps:

When you put this in a loop you can already do a lot of stuff. The main question is how much control you want to have over the result.
First Use Case
The goal is to connect the vertices of a given mesh.
I start with such a problem by breaking it down into smaller pieces.

How to select 2 random vertices from a list of vertices?

How should the basic loop look like?

Bringing it all together:

More control over the 'height' of the splines by multiplying the normal with something:

You may also want to implement a filter that eg only points will be used that have a specific distance to each other:

This method works quite well, but you don't have very much control over the individual splines.
Second Use Case
My second idea is to use two planes to control each spline. If this method is suitable for you highly depends on the amount of splines you want to have in the end.
Preparation:
Create multiple objects which consist of two planes and put them into a group.

Now I want to take each spline individually and create a spline between their centers (with the normal as direction). I again hid some sockets in the Polygon Info and Object Mesh Data node in the right toolbar.

Based on that you can easily create more splines and control them with the planes. Maybe you also want to control the length of the normal with the area of the polygon by using it as scale factor. Another idea is to use the shrinkwrap modifier to position the planes directly on a target object.

Well you can have a lot of control with the first solution if you insert also a Objects List input to the last loop and you fill with empty objects. Then you set each spline on one of each objects of the list instead of an object full of splines.  Then you could use that new list to animate each spline individually within a loop.

For those interested in how this would be assembled using Sverchok (also a Nodes system):

Description.

The implementation picks 19 pairs of random points (Vectors on the Unit Sphere).
Takes the average of each pair, normalizes it then scales it by a magnitude to give us the arc's upper bound.
Zips and Flattens the resulting Vector lists to generate Arcs
Outputs to the Draw node.
These can be baked and converted to Paths for animation or used for further processing.


text:
how can i connect two armature bones at the root?
I can extrude a bone from the root of another - however in pose mode they come apart. How and can I connect two armature bones at the root?

I believe you are asking how to have 2 Armature bones with the SAME root---
OBJECT MODE>SHIFT+A - Add Armature
EDIT MODE> RMB Desired Root> E (to Extrude)

RESELECT THAT ROOT and Extrude Again.

You can "connect" the root (B) of the second chain to the root (A) of the first chain setting the "parent" of B root bone to A root bone.
Select B root bone, in armature edit mode, then goto the "bone" panel, under "relations" and click in the textbox just under the label "parent", with a small bone icon: a list of all the armature bones will expand: select the A root bone.
From now on, in pose mode, if you move the A root bone, the other chain will follow, but you can pose both chains.


text:
Keep texture centered while scaling
Ok. In Blender Cycles, I have an Image Texture node connected with a Mapping node and the scale and offset is set so that the image is centered to the object's face(s). However, when I change the scale later in an animation it scales the image from the corner, thus I have to change the offset with the scaling to keep it center on the face(s). Is there some way of scaling the image from the center, so that I don't have to change the offset as well?

The problem you're experiencing is that the Texture space coordinates are in the range 0 to 1 on the X and Y axes and the scaling takes place from the origin - ie, 0,0. To address this you need to shift the coordinates so that the origin is in the centre of the image (0.5,0.5) before scaling. You can achieve this by splitting the Vector into its separate elements using a Separate XYZ node, manipulating the coordinates using Math nodes and re-combining as shown :

The Subtract node re-maps the range from 0 to 1 into -0.5 to 0.5 so the origin (0) is in the centre of the image. The Multiply can be adjusted to get the desired scaling (highlighted in the image). The Add re-maps the range back to 0 to 1.
Setting the Multiply nodes to '2' will give you a half-sized image. Swapping the Multiply for a Divide or using '0.5' will give the opposite effect.
EDIT : My expectation was that the above method would be quite efficient - since the nodes are performing mathematically simple calculations.
However, in my particular test case this was adding 10% onto render times.
There are other methods to create the same effect. The most efficient method I have found so far is to use Mapping nodes in place of the Subtract, Multiply and Add - this also removes the need for the Separate and Combine operations :

The Mapping nodes perform the same operations as before - offset by 0.5, scale, offset back by 0.5. This does improve efficiency.
Additionally, since the Mapping node performs the Offset, Rotation, Scale as separate operations in turn, the first two Mapping nodes can actually be combined into the following :

ie, Offset by 0.5 and Scale, offset back by 0.5.
In my test case this was only 2-3% less efficient than no scaling - a significant improvement over using separate Math nodes.

That sure is quite the Stack. ;) Thanks, though a little slow, but works quite nicely.

Nice! Also, I found that if using the Point scaling method (when we want larger scale values to result in a smaller texture), it can be achieved by simply switching the order of the two Mapping nodes. Here is a screenshot of both methods for comparison, inside a Group node.

You can use Vector Math node like this:


text:
Yellow artifacts when baking normals
I've been searching and trying a few things for the last couple of hours and I can't figure out why there are yellow spots showing up on the normals when I bake them. Originally the wings had the same issue and the normals had to be flipped, but that doesn't seem to be working for the rest. Any ideas would be appreciated.

Please upvote if I answered your question :-)

Baking normals can be tricky. If the normal of the lowpoly object is roughly the same as the highpoly object, the bake will be that bluish-cyan-pink that we like. However, if the normals points in opposite direction, the bake will be the inversion of those colors, as the yellow-brown-red.
Then why does the normals point in opposite direction? That could happen if the highpoly object intersects itself. The baking process have difficulty to find the correct face, with the correct normal.
Here are some images with a good and bad case:

In the second case the highpoly mesh intersects with itself. The lowpoly object can't be projected on the highpoly with a good result.

Based off what you said and the images, I realized that the objects were overlapping and blocking off the baking process. So I created 5 normals with all the objects baked separately and combined them in photoshop. Worked like a charm, thanks! It did feel like a outdated work around though. Is this common practice or is there a technique out there I'm missing for baking character with overlapping meshes, which is very common.

You can get better control with a cage. I only know the theory behind it though.


text:
Blender finger weighting problem
I'm trying to rig a character but one of the gloves won't rig properly: instead of following the finer the bone is on it follows the finger that is next to it how do I fix this?

I have the rig here

I didn't exactly understand what bone part is not following what instead of what, but I checked your file and R and L gloves are weighted completely different... if one glove behaves well, you should apply the same weights (eg see How can I mirror weight painting? or Is there any way to copy the weight of one bone over to another(forgot to use x-mirror)?)
Here is the comparison I did (I had to open twice your file in two different blender instances aside)


text:
Importing SVG sequence, joining all separate curves
I am trying to write a quick Python script that loads .SVG sequences placed in one folder, and cleanly joins all the curves that come with it. I managed to load the .SVGs fine, but I am currently still working on joining the curves.
Here's the code I have:
##################
import bpy
import glob
import os

# path to your folder

importDir = "C:/tmp/silhouette_svg"
print("Importing all SVG from this directory", importDir)

os.chdir(importDir)

for files in glob.glob("*.svg"):
    print( files, "... imported!" )
    bpy.ops.import_curve.svg(filepath=files)

Blender's Import Curve should come with the joined option, I think.

A quick hack script (not elegant at all) is something like below.
I manage to do these steps:
1) import svg
2) select and join them as one
3) rename it somewhat (not perfect)
4) turn each one into mesh (for remove doubles?)
############# IMPORTING ALL SVG WITH SEGMENTED
import bpy
import glob
import os

# path to your folder

importDir = "C:/tmp/silhouette_svg"
print("Importing all SVG from this directory", importDir)

os.chdir(importDir)

for files in glob.glob("*.svg"):
  print( files, "... imported!" )
  bpy.ops.import_curve.svg(filepath=files)

  # deselect nothing, select all curves, join
  bpy.ops.object.select_all(action='DESELECT')
  bpy.ops.object.select_by_type(type='CURVE')
  bpy.context.scene.objects.active = bpy.data.objects["Curve"]
  for obj in bpy.context.scene.objects:
    if obj.select:obj.name = "snail.000"
  bpy.ops.object.join()
  bpy.ops.object.convert(target='MESH')
  bpy.ops.object.select_all(action='DESELECT')

Any suggestions to make the code more elegant?

instead of changing directory:  https://gist.github.com/zeffii/16a7106fd55650cfe5436de1bbd851c7


text:
How do I create a new object using Python in Blender 2.80?
As part of an existing add-on, I'm trying to create an object and add it to the scene using Python. I followed a Blender Cookbook tutorial found here: Three ways to create objects. I use the following code to do so:
emptyMesh = bpy.data.meshes.new('emptyMesh')
theObj = bpy.data.objects.new("object_name", emptyMesh)
bpy.context.scene.objects.link(theObj)

But I get the following error when I try to link theObj to the scene objects:
AttributeError: 'bpy_prop_collection' object has no attribute 'link'

This works just fine in Blender 2.76-2.79, but doesn't work in the 2.80 test build I downloaded. Was there a change to the Python API? Or is this maybe a bug in the test build?

I'm voting to close this question as off-topic because it is about an incomplete development version

@Amir I really don't think it's necessary to change "Python in Blender" to  "Blender's Python API". Either it's a general Python question in which case it's off-topic or it will be using Blender's API.

In 2.8 Blender API, this is still not documented yet. After dir() inspection I've found a temporary solution, where you can replace the scene with the collection, as below:
bpy.context.collection.objects.link(theObj)

@justi What is dir() inspection?

@batFINGER yes, you are right - the suggested change is bpy.context.scene_collection.objects.link() but it doesn't work now. Why? Because it causes the AttributeError: 'Context' object has no attribute 'scene_collection'

@Justin I did the dir() command on the bpy.context object: dir(bpy.context) and got attributes

Yes I realize that, hence the suggestion of context.scene.collection and the query as to whether context.scene.collection and context.collection will necessarily be the same.


text:
Using mask as a garbage matte to hide an object
I'm trying to use a mask to hide a part of a render layer, so that when the render layer is shown over a movie, some parts in the movie will appear to be in front of the render layer.
For example, assume I want to add a box to this image, so that it would look like it's behind the person:

I created the following simple object:

If I render the object, it looks great - the object is solid, everything else is transparent (I didn't use any 'sky'):

Now I create a mask to describe the standing person (or at least the part that would otherwise be covered by the box):

What I want now is to create a "hole" in the rendered box, so that when I use Alpha-over, the box look as if it's behind the person, but I can't find an easy way to do that. My first guess was to use 'Set alpha' to apply the mask (inverted) as an alpha for the rendered layer, but this doesn't look good:

The mask did create a "hole" where it should, but now all the other pixels are not transparent. How can I "retain" the transparent pixels while setting more pixels to be transparent based on the mask (use it as a matte)?
Note: I can do this with (I'm ashamed to say) some math work on the alpha channel, but it just doesn't seem right:

Thanks, and sorry for the [oh so] long question.

What doesn't look right about it?

It just looks like a lot of nodes for a very basic operation. Note that I used split RGBA just because I simplified an existing node graph, which included a blur node after the rendered layer node.

In your first attempt you are replacing the original alpha with the mask, you need to combine the original alpha (the render) with the new alpha (the mask):

Which would result in:

Based on this render and mask:

That's essentially what you're doing in your solution that doesn't 'seem right'. This is just a slightly simpler way of doing that.

Is Subtract the right operation? What's the most correct math operation? Maybe it's multiply? I'm assuming alpha is in the range 0..1.

@user1145012 Subtract is the correct operation, we are subtracting white (mask) from white (alpha) to produce black (transparent) or 1 - 1 = 0.

It's definitely right for full white and black pixels, but what if I had some fuzziness at the edges, how would 50% transparent and 50% transparent combine?

If you had a feathered mask (semi-transparent edges) then in this case the cube would also have fuzzy, semi-transparent, edges.

@Barak If this answer helped, you can mark it as accepted by clicking the tick icon next to the answer.

Here are a couple more ways of doing this:

And:

How about something like this:

Mix the footage and the CGI using the (inverted) mask as a factor.
This is the result (I didn't have any live footage on my computer... so here's a red cube added to SSBB):

Here's an example of a mask cutting out the sphere behind me, but what if I want it to be removed?

You can reverse the the mask opacity by simply clicking the little black/white icon in the mask tool properties.


text:
Normal Map splits surface into squares
I did not find this problem / question so far. I've got one mesh with multiple materials on it (Blender 2.8). One of them is a Chrome PBR material with a normal map. I set the material up as shown in the screenshot. The material and the reflections look right in the look dev mode. But when I switch to rendered view I get this squared reflections on my surface depending on the resolution of my mesh (subsurf modifier shrinks the squares but they will not disappear). Smooth shading did not help, all normals are in the right direction and the mesh is free of doubles. The problem has to do with the normal map. When I disconnect the normal map node the material's reflection is shown properly. But I don't know how to fix the problem with using the normal map. (Material: https://www.poliigon.com/texture/metal-chrome-001) enter image description here

What are you UV's like?

please check if in the outliner a duplicate of your object is present. It looks like the Viewport visibility for that object is turned off, but the render visibility is turned on. Could also be the collection that such object is a child of.

Set you colorspace for the normalmap to non-color.


text:
exporting eyes with gltf to unity
I was trying to make eyes watching this tutorial
https://www.youtube.com/watch?v=gfEyhPXsOCM
but but when I exported the eyes to Unity as glTF
the eyes didn't have any textures to it it was just plain white
how do you export all the nodes to Unity at once?

glTF 2.0 has a specific PBR material model, for transfer to realtime rendering engines.  It cannot support arbitrary arrangements of Blender nodes, as for example a mobile phone wouldn't be able to handle realtime rendering of complex Blender nodes.  Instead, the glTF material definition has a strict number of fields, corresponding to a particular interpretation of physically-based materials.
The Blender Manual documents how to export materials to glTF.

thank you very much!


text:
Animating rocking horse with a spring base

hello, I want to animate this rocking horse swinging back and forth (not up down)
I tried proportional editing and inserting keyframes
is there any modifier that i can use for more smooth transition?

Can be done with one spiral curve and a few modifiers, order is important

add Extra curve (addon) > Spiral
search Convert to Mesh
deform by Simple Deform modifier > Bend
add Skin modifier (after deform so spring is not squized/stretched)
add Subdivision Surface modifier is needed to smooth shape

Animate Deform Angle in Simple Deform modifier properties. For nicer result you can use Elastic keyframe interpolation T on animation curve in Curve Editor.

For a bit more advanced spring shaping you can try also this similar technique here.
Or for easy animating things like spiral cabel I highly suggest Armature, generated by aawesome addon Armature from Edge Loops, that generates armature inside of spring (the link at first post to addon is working for me at Blender 3.x (located under 3D View > Properties > View > Bones from Mesh)
Tutorial with blend can be found here
https://blenderartists.org/t/phone-cable-with-armature-in-3-min/520741

tyvm! you gave me so much useful information it's ganna take me many more hours to get the hang of it!


text:
For skinning is it better to make parent or to add modifier?
Hello the community,
I'm learning alone in selftaught mode.
My purpose is not to do animation but to have stable printable figurine.
I want to change the legs positions of my damselfly.
I did some test to catch how to rig a cylinder. And my conclusion is that if I use as in the tutorial the parenting function Crtl-P, then I get a complex relationship hard to remove or apply. And I get fuzzy when having to manage vertex groups. This is why I believe the result is easyer to manage if I just add the armature as a modifier of the mesh.
Would it be an expert in this place to understand and provide advice?

When you use ctrl-P with armature deform, it's just like a macro: it parents the object, and it adds the modifier.  It's exactly the same as ctrl-p make parent and creating the modifier yourself.  Parenting the mesh to the armature isn't necessary unless you're going to do something weird, so feel free to just use the modifier if that makes you more comfortable.

Thx for this answer. Clear.


text:
Blue edge type for border of the mesh
When I extrude a border, it still stays indicated as a border in blue, even if two faces are on the same edge. Is it normal ? How to remove this blue?

color explained in:
Rendering » Freestyle » Parameter Editor » Line Set > edge type

it looks like sharp edges, to clear sharp select all in Edit mode and press ctrl E > Clear Sharp

Many thx Moonboot, for this answer, ! I didn't knew it was called "sharp"

I think it's made to sharp the edge when you use the Edge Split modifier


text:
joining two objects distorts the shapes
basically I have two questions. both related to same problem.
I have a speeker product modeled in blender it has 4 different parts.
question 1: when I join the 4 parts shape get distorted like they have never been subdivided and allinged before join but infact they was alligened and subdivided.
question 2: If I select all the parts and give rotation for animation. shapes get deformed again while playing rotation. please clear the problem thanks community in advance. file is attached.

I don't see any file attached but it seems that you are joining objects with different modifiers unapplied which get modifiers from active object (if any) while their own ones get removed. I can't tell about second question since it's too few details and probably you should ask it as a new question with explanation, screenshot and file

I have checked it again you sort out the right problem. thanks a lot man. modifiers was not applied after applying modifiers problem solved.


text:
What is wrong with my bone rig and what settings have I messed up?

I've created movement before with a simpler bone rig and since then have weight painted the entire model to red.
Whenever I go into pose mode and try to move anything, nothing happens, I simply can't get any movement.
Is there an armature setting I could be missing?
Here is my blender file.
http://pasteall.org/blend/index.php?id=49231

The link provided does not allow to download the file here...

it's a little slow but it worked fine for me

oh it was mostly painted black.. but still won't move

Nothing moves because the "manipulate center points" is checked:

can you move one of his extremities?

okay I figured it out I had to select my armature that was made as a parent file, as an armature of the orginal object

well now I can't do it again, but I think I check bone envelope, can't find the setting now

yep that was it in create copy check bone envelope

main model, maintenance tab, armature, add created bone structure, check bone envelope.

actually it's painted all black except his head probably why there's so much distortion

facebook.com/gettingnifty


text:
Array Along a Curve Without Deforming Mesh

How to set array modifier along a curve without deforming the cubes?


text:
I can't rotate or pan but I can zoom
I have been having problems with blender recently where I will open a new project and all of a sudden I can rotate or pan.
I can still zoom and the issue usually just stops after I change views a couple of times, however today I opened a new file and the problem won't go away.
I am using a 3 button mouse, and these are my user preferences:

I tried Load factory settings and it still doesn't work

Ok so I did Load factory settings a couple times again and on the 5th or so try it worked, but its really sluggish and unresponsive.

I think it's a bug. I have had the same problem countless times and my only solution is relaunching, restarting or reinstalling.

After exploring other options with view locking and having no results, I finally found a setting in my User Preferences under the Interface tab called Auto Depth.
Checking this seemed to allow me to pan and rotate again. I am not sure how it got unchecked, but if all else fails, might as well try before performing a reset.
(v2.78a)

this was also my problem in 2.83


text:
Fill area behind animated line
I'm animating lines.
Similar to this:  (Let text follow animated beziercurve)
Now I would like to fill in the area behind the curve.
Similar to this:

so that if I move my line than the filled area also moves.
(It would be ideal if there is a gradient that the color is stronger near the line and fades out to transparent when further away.).
any suggestions on how to start this?

"fill the area behind the link" ? I'm not sure to get it...

sorry, typo.:-)

So you'd like to animate transition between that change - filled and unfilled areas? Or just changing amount of area curve can fill?  You could increase area filled with curve by adjusting Offset value of the Curve object in its properties > Geometry scroll. But it will "fill" everywhere around, not just some areas.

see this: https://www.youtube.com/watch?v=4oabxoP_jVM
I want to move a line and also fill the "red" area behind that line. So that if I move my line that the area also moves. I don't know if it is possible but maybe I can create an outline of curves and fill the shape? And for the fill add a linear color?

if I got what you mean, you could toggle cyclic (ALT-C) on the 2D curve in edit mode, to get a fill. In Blender there's no concept of "object border" but you could use freestyle to obtain something usable maybe.
Here is the overall setup from which you could start...

for the fill, you should be able to use a "Blend" texture type using also transparency, see second image example


text:
Can frames with no animation be automatically skipped?
I have an animation with lots of text objects flying about.
I'd like to render it with motion blur and stuff, but there are quite a few long sections where nothing is moving so that the text can be read. In these sections the render output (should) remain exactly the same.
Since it's pretty pointless to render the same image over and over, is there some way to automatically detect and skip those sections, only rendering one frame until there are more keyframes?

Related https://blender.stackexchange.com/questions/32127/is-there-a-way-to-have-cycles-skip-rendering-alpha/

I had the same problem, solved it with a bit of code. This script renders your animation frame for frame, skipping frames with no animation and adding them to render destination as copies of their equivalents.
This gives you the same result as a normal animation render, and saves you a lot of processing time.
The script does the following:

Take each animated object and store its F-Curve values at each frame in the animation.

Create list of still frames, by comparing differences in neighbouring F-Curve values for each frame in each animated object.

Render frames in desired range, skipping each still frame.

Fill in skipped frames with copies of their equivalents.
  import bpy
  import subprocess

  def render_with_skips(start, stop):
      """
      Take start and stop, and render animation only for animated
      frames. Still frames, are substituted into the output folder
      as copies of their equivalents.
      """

      render_range = list(range(start, stop))

      # create JSON like dictionary to store each
      # animated object's fcurve data at each frame.
      all_obj_fcurves = {}
      for obj in bpy.data.objects:
          obj_fcurves = {}

          try:
              obj.animation_data.action.fcurves
          except AttributeError:
              print("--|'%s' is not animated" % obj.name)
              continue

          print("\n--> '%s' is animated at frames:" % obj.name)

          for fr in list(range(start,stop+1)):
              fc_evals = [c.evaluate(fr) for c in obj.animation_data.action.fcurves]
              obj_fcurves.update({int(fr): fc_evals})
              print(fr, end=", ")
          print()

          all_obj_fcurves.update({obj.name: obj_fcurves})

      # loop through each animated object and find its
      # animated frames. then remove those frames from
      # a set containing all frames, to get still frames.
      still_frames = set(render_range)
      for obj in all_obj_fcurves.keys():
          obj_animated_frames = []
          for i, fr in enumerate(sorted(all_obj_fcurves[obj].keys())):
              if i != 0:
                  if all_obj_fcurves[obj][fr] != all_obj_fcurves[obj][fr_prev]:
                      obj_animated_frames.append(fr)
              fr_prev = fr

          still_frames = still_frames - set(obj_animated_frames)

      print("\nFound %d still frames" % len(still_frames))
      print(sorted(still_frames), end="\n\n")

      # render animation, skipping the still frames and
      # filling them in as copies of their equivalents
      filepath = bpy.context.scene.render.filepath

      for fr in render_range:
          if fr not in still_frames or fr == render_range[0]:
              bpy.context.scene.frame_set(fr)
              bpy.context.scene.render.filepath = filepath + '%04d' % fr
              bpy.ops.render.render(write_still=True)
          else:
              scene = bpy.context.scene
              abs_filepath = scene.render.frame_path(scene.frame_current)
              abs_path = '/'.join(abs_filepath.split('/')[:-1]) + '/'
              print("Frame %d is still, copying from equivalent" % fr)
              subprocess.call(['cp', abs_path + '%04d.png' % (fr-1), abs_path + '%04d.png' % fr])

      bpy.context.scene.render.filepath = filepath

  start = bpy.data.scenes['Scene'].frame_start
  end = bpy.data.scenes['Scene'].frame_end
  render_with_skips(start,end)

I should stress that this will only work if you do not have anything else moving around at the times when everything else in your camera view is still.
NOTE
At this moment the code is only Linux/OSX compatible because it uses a subprocess to copy frames which is not Windows compatible. MarcHorstmanns's answer below implements my code so it works with Windows.

related: http://blender.stackexchange.com/questions/1718/is-it-possible-to-render-only-keyframes-from-dope-sheet/23196#23196

First thanks for sharing this. Maybe it's a good idea to mention that this is linux only, because of subprocess.call(["cp" .. ]). Might be better to replace this with shutil module to be os independent like in the linked script above.

Oh shoot, I did not think about this AT ALL. You are very welcome to edit the post in order to make the code os independent.

Can you provide a test scene as starting point? I'll try test it and implement shutil in the next days.

Rather than copy the frames, another possibility would be to use the VSE and create strips for the bits with motion and stills for the bits without motion.  Another option would be a speed control strip effect strip to stretch out the still parts.

@poor I'll get to it once I can.

@MutantBob That sounds like it beats the purpose of outputting the exact same files as a normal render would, or am I missing your point?

The tactic I suggested would allow you to save some disk space and avoid spawning a subprocess, although the extra code to create VSE strips is somewhat burdensome.   For a scene where there was motion from 1-100, still from 101-150 and motion from 151-200 you would create 1 strip with frames 1-100, then a still image spanning 101-150, and another strip for frames 151-200.  You would still have to perform the logic that figures out where the stills are.

The answer mentions "iOS". Do you mean OS X / macOS?

For Windows:
import bpy
import subprocess
import os
import shutil

def render_with_skips(start, stop):
    """
    Take start and stop, and render animation only for animated
    frames. Still frames, are substituted into the output folder
    as copies of their equivalents.
    """

    render_range = list(range(start, stop))

    # create JSON like dictionary to store each
    # animated object's fcurve data at each frame.
    all_obj_fcurves = {}
    for obj in bpy.data.objects:
        obj_fcurves = {}

        try:
            obj.animation_data.action.fcurves
        except AttributeError:
            print("--|'%s' is not animated" % obj.name)
            continue

        print("\n--> '%s' is animated at frames:" % obj.name)

        for fr in list(range(start,stop+1)):
            fc_evals = [c.evaluate(fr) for c in obj.animation_data.action.fcurves]
            obj_fcurves.update({int(fr): fc_evals})
            print(fr, end=", ")
        print()

        all_obj_fcurves.update({obj.name: obj_fcurves})

    # loop through each animated object and find its
    # animated frames. then remove those frames from
    # a set containing all frames, to get still frames.
    still_frames = set(render_range)
    for obj in all_obj_fcurves.keys():
        obj_animated_frames = []
        for i, fr in enumerate(sorted(all_obj_fcurves[obj].keys())):
            if i != 0:
                if all_obj_fcurves[obj][fr] != all_obj_fcurves[obj][fr_prev]:
                    obj_animated_frames.append(fr)
            fr_prev = fr

        still_frames = still_frames - set(obj_animated_frames)

    print("\nFound %d still frames" % len(still_frames))
    print(sorted(still_frames), end="\n\n")

    # render animation, skipping the still frames and
    # filling them in as copies of their equivalents
    filepath = bpy.context.scene.render.filepath

    for fr in render_range:
        if fr not in still_frames or fr == render_range[0]:
            bpy.context.scene.frame_set(fr)
            bpy.context.scene.render.filepath = filepath + '%04d' % fr
            bpy.ops.render.render(write_still=True)
        else:
            scene = bpy.context.scene
            abs_filepath = scene.render.frame_path(scene.frame_current)
            #abs_path = '/'.join(abs_filepath.split('/')[:-1]) + '/'
            print("Frame %d is still, copying from equivalent" % fr)
            scn = bpy.context.scene
            shutil.copyfile(filepath + '%04d.png' % (fr-1), filepath + '%04d.png' % fr)

    bpy.context.scene.render.filepath = filepath

start = bpy.data.scenes['Scene'].frame_start
end = bpy.data.scenes['Scene'].frame_end
render_with_skips(start,end)

Thanks for this! This is exactly what I've been looking for for so long! I edited the post because adding the + 'png' actually causes the script to fail in Blender, but the original poster's script without the edits by hazzey works perfectly.

I know comments that mainly say thanks are frowned upon, but I just tested this, and it works perfectly for me. It's going to save me so much time. No more tradeoff between saving render time and saving video editing time.

I found a script on this thread: https://blender.stackexchange.com/questions/15649/can-frames-with-no-animation-be-automatically-skipped/63241#63241?newreg=c98392162b80427cb3cd4c674af6790a It should help skip identical frames in Blender. But Blender crashes when i load the original script for Windows, and it fails to load the script in the two edited version.... someone to my rescue?

Thanks for making this work with Windows! It would have been nice of you to briefly state that this is a Windows compatible version of my code but neverthness I appreciate you taking the effort to make this update.

Automatically, no.  You might want to duplicate the scene with Linked objects.  Then have each scene render a different frame range which you determine manually.  You can then stitch the rendered frames together using yet another scene that uses the VSE (with no 3D objects) and Image Strips.

authors: Вениамин Коновалов


text:
Is it possible to use more than 20 layers?
Is it possible to use more than 20 Scene layers or Render layers in Blender?

No. A Scene object only contains exactly  20 layers, no more, no less. But if you mean render layers, the upper limit is 32768.

While the 3DView is fixed at 20 layers, you can get similar functionality using groups. By having the outliner list groups you can show/hide all objects in a group at the one time. This method hides objects, so is basically a shortcut to hide/unhide multiple objects without having to manually select each one.
The catch with groups is that while an object on a visible layer is always visible even if a second layer it is on is hidden, using groups means all objects in a group get hidden even if they are in another group that you want to stay visible. You also don't get easy keyboard shortcuts to hide a group.

As mentioned above, Blender is limited to 20 layers (this may change with version 2.8). There are two useful addons that try to bypass this limit: Super Grouper and Objects Layer Manager
Objects Layer Manager is very similar to using groups, as described by @sambler above. The issue is that if you would like to temporarily hide some objects, when you unhide them, it resets the visibility of the layers within the addon.

Super Grouper, on the other hand does not simply hide and unhide objects, but temporarily moves hidden objects to a different scene, meaning that the layer system provided by the addon does not interfere with any hidden or visible objects within the current scene.


text:
Where is the color setting for disabled menu items?
I somehow changed to color of disabled menu items, so that they are not grayed out unless you hover over them.
As you can see, the Search and submenu entries should be grayed out, but are only grayed out when hovering over them.
Changed color theme on the left and, the default color theme on the right.

What did I change that did this?

What do you mean? I have the default theme and those menus don't get grayed out..

@someonewithpc It's a bit tricky to do.. 1. Add a material in BI 2. switch to cycles 3. Open the BI material in the node editor and press Shift+A. It affects all disabled menu items though, so if you can find some others those will work too.

Some of the colors here re-use generic names (and it isn't always very logical)
See: Menu Item -> Color -> Inner


text:
how to unwrap a mesh made in front of the texture
I used an image texture as a background image and created a mesh in front of it. Now I want to use the background image as a texture with the same size as the background image.
The unwrapping does not work the way I want it to. I only unwrapped the front of my mesh which is based on the background image, but the mesh and the image apparently do not have the same scale and so it does not fit the texture.
Moving the unwrapped vertices around distorts the texture.
So how can I make the UV map perfectly fit and have the same proportions as the front of the mesh?

Try unwrapping with U>Project from view while in the view with the background image.
Then use S (scale), R (rotate), and G (grab/translate) to manipulate the entire UV layout (you can toggle selecting it with A).
If you want to unwrap it exactly how it appears in the viewport:

Set the render resolution to the resolution of the image/texture
Wit the camera selected, set it to be Orthographic in Properties > Object data > Lens (you can add another camera with ShiftA and make it active with CtrlNumpad 0 if you don't want to disturb the existing one)
Position the camera and tweak the Orthographic scale, again in Properties > Object Data > Lens. With the background image allowed to display in camera view, you can line it up based on how you want the image to project on your mesh.
Select your object and enter edit mode (Tab), then press U>Project from view (still in camera view).


text:
Layers section is not in the render settings panel?
I'm very new to Blender and I have been watching some tutorials on how to make models within it. In every one of these, their render settings (In the properties tab) have a Layers section below the Performance section.
My version of blender does not seem to have that, at least by default. I've looked around the user preferences and haven't found anything. Thanks for helping.

Could you link to a tutorial which has this? Is it possible you could you be thinking of the Layers section in the Renderlayers panel? (screenshot)

I assume that you are mixing two different tabs of the Properties editor into one.
The Performance section is in Render tab of the Properties editor (camera icon), see image below:

The Layers and Passes sections (which are needed for compositing) are in the Render Layers tab (small pictures icon, second from left), see image:

Check out this BlendFile. Note that there are two render Layers (A and B).
Both have scene layers 1, 2 and 10 enabled in Scene layer selection.
In Render Selection, "RenderLayer-A" has layers 1 and 10 enabled, and
"RenderLayerB" has layers 2 and 10 enabled.

The render layers where moved into their own section within properties starting with 2.67 - there are many older tutorials available that still show the render layers within the render settings panel.
Current Render Layers

Previous Render Layers (2.66)


text:
Problem with object made from joining objects that both had mirror modifiers

I have joined a mirrored object to another mirrored object (head and body, creating neck to join them) (Ctrl+J) and I am trying to connect them by creating vertices (tried extruding/merging or pressing f to just fill). I have selected one vertices from each object to create edge then with four of those I can create a face. But when I try the face or edge is created on the other side of the mirror not on the same side any solutions without removing the mirror. (shown below)

I would like to move parts of the mesh around from where I selected, but when I try to move it it is controlled from the left side and only the left side (the original mesh). I was able to do this before (move parts of the mesh from both sides) I don't know why I can't any more maybe from the update, any solutions? An example for more detail if I try to drag the right side out it inwards becuase I am moving it from the left side not the right side that I selected

disable clipping and move them where you want then enable it again

Don't know which problem this one was for but both still occur.

it would be easier if you can upload the .blend file it's hard to get the full idea from a picture

and i meant the top vertices or flip the top object on the X_axis and it's better to work with the mirror disabled in the edit mode to see the real vertices

it's ok, did you try the last comment ?

Sorry I tried flipping it but the outside of the head goes in the middle and looks wrong. I went to mesh mirror and x-axis. Update I just had to move it back in place sorry. First problem is fixed but is there a way I could move the mesh from the mirrored side as well (problem 2).

You merged objects mirrored but not moddeled on the same side. You can see that by deactivating the visibility of the modified topo.

to fix that, apply the mirror (in object mode, not edit)

In front ortho view (NumPad1 front view, NumPad5 to switch perspective/ortho view) Box select B one side.

Delete selected vertices with X

add the mirror modifier that should work correctly

Is there a way when I select the mirrored side the manipulator will go there as well instead of going to the original side.

nope, the manipulator appears where the real selected vertices/edges/faces are, even if you select the mirrored ones.

disable the Mirror in edit mode to see the original verticies :

the two part are not on the same side and that wat cosed the crossed faces

select the top part
press Ctrl + M and mirror along X-axis
move the mesh to the right position
now you can bridge them


text:
Cannot change curve modifier after pressing 'Apply'
Sorry for my trivial question.
I'm a newbie and I'm walking through a cave tutorial. I can deform a mesh with a NURBS curve but I can't further edit the deformation through manipulating the curve after applying the modifier. Pressing Apply on the modifier 'freezes' the effect and the modifier icon in the object tree disappears (is that a standard behaviour?). Moreover, when the mouse pointer is over the Apply or Apply as Shape buttons, I read the same tip: 'Apply modifier and remove from the stack'. Is that a bug? My configuration is Blender 2.72b on Ubuntu 12.04 LTS (64 bit).
EDIT: I can edit the deformation before the modifier is applied. I expected a further deformation editing through the curve manipulating because I am too influenced by CATIA :)

The purpose of 'Applying' a modifier is to make the changes that the modifier has made, permanent. Any deformation or change to the geometry a modifier may have caused will overwrite the original geometry.
As long as the modifiers are present in the modifier 'stack' (where the modifiers get listed), they will be able to be edited.
I have not followed every step of the tutorial you linked to, but unless the tutorial says to apply the modifier there is no need to. It is perfectly fine to have many modifiers on an object and never apply them, allowing non-destructive editing.
See more information about modifiers and the modifier stack in the Blender Manual.

Thanks for your explanation, now the modifier purpose and applying is clear to me.

@vaina If you feel this answers your question you can 'accept' the answer, see: http://stackoverflow.com/help/someone-answers

authors: Андрей Семёнов