How do I deform one object using another object as a guide?

A shrinkwrap modifier can be used to deform one object to the surface of another.

Retopology is a more manual approach that uses automatic transform snapping of vertices to another surface to make a clean duplicate of an object.


Restore Graph Editor F-Curve Filter Location

The filter entry is also always available at the top of the channel list in any of the animation editors.

This is the same filter property that is shown in the popup menu.


Rendering issue: light artifacts [EEVEE Blender 2.81A]

The issue was solved by changing the value of Light Treshold from 0.1 to 1.0 (under render -> shadows)


How to select all faces between selected edges

2.7x Spacebar > Select loop inner-region.

2.8 F3 > Select loop inner-region.


Node setup for combining baked Diffuse Indirect, Direct, and Color passes

There is problem with you nodes. You have a color mix node after the BSDF Shader nodes. That does not work.
Using the same type of setup with three images for Indirect, Direct, and Color this is how the nodes should look. Notice the indirect and direct are added together. Then the color is mixed in with another color mix node set to value with the Fac set to .5.

All color operations happen before the Shader nodes. After the first shader node only other shader nodes can be used.


Make sure that the texture is in your material graph.

Select the texture slot in the active tool settings.

Start paint.


How to draw a thin line regularly across a cylinder

The Simple Deform modifier is what you need!

Create your profile, extrude it, don't keep the faces on the sides.

Give it an Array modifier, enable Merge and First Last options.

Give it a Simple Deform modifier, choose Bend mode and an Angle of 360°.

Continue to build your section the way you want it to be, it will be replicated all around.

Give it a Subdivision Surface modifier, add edge loops to sharpen the edges, etc...


Counting amount of lines in a text object

TextCurve.body

Split the text curve body by a newline. Count the result.

>>> D.objects['Text'].data
bpy.data.curves['Text']

>>> D.curves['Text'].body

'Line 1\nLine 2'

>>> len(D.curves['Text'].body.split("\n"))
2

for overflowing text,

one method to guestimate this would be to set overflowing textbox X size to desired width and Y size to 0. A copy of the object with only one character will have the height of one line.

import bpy
context = bpy.context

text = context.object
copy = text.copy()
font = copy.data = text.data.copy()
font.body = "0"
context.collection.objects.link(copy)
context.scene.update()
print(round(text.dimensions.y / copy.dimensions.y))
bpy.data.objects.remove(copy)

If there is line spacing then two lines will be 2 x line height + line space.  I vaguely recall a more accurate way to calculate font dimension, but have not fount the link.

Related Any idea how to fit text width to screen

Text.lines

Python console code.

>>> D.texts['Text']
bpy.data.texts['Text']

>>> len(D.texts['Text'].lines)
2

>>> for line in D.texts['Text'].lines:
...     line.body
...
'line 1'
'line 2'


Bone layers  are different from object layers.
As i can see from your screenshot, Rigfy has correctly put the bones in different bone layers, to help selection groups when animating, but the "problem" you point at is the fact that all object layers appear "occupied".
You can go to the outliner window (or create one), change the pop-up menu from "All scenes" to "visible layers", select one object layer at time and read in the outliner what's inside, to understand the thing, that - I don't think - is produced by Rigify.

Also, before pushing the "generate" button, apply the scale (Ctrl A) to both your model and the meta-rig.


Way to print the keyboard shortcut to the screen if I use the manual way to perform an action instead of the keyboard shortcut.?

I don't think, such an add on can be done in python.

Most menu shortcuts are written on the right side of the menu item.

To ascertain other shortcuts, do the following.

Hover over the menu item. You will see the python command. Make a note of the command after bpy.ops. In this case object.edit_mode.
Open the User Preferences CtrlAltU and go to the Input tab. Type the command in the searchbar and hotkey entries will be shown.


Reconstructing camera panning movement in 3D view using track data for Loc only

What happens, when you press the Link Empty to Track buttons is, that an empty gets added with a Follow Track constraint. We can just add this constraint manually to another camera.

Move the active camera to the position of your object.
Duplicate the camera and rename it to Moving Camera.
 RMB select the Moving Camera and ⇧ Shift RMB select the original Camera and direct parent the Moving Camera to the Camera by pressing ⎈ Ctrl⇧ ShiftP > Make Parent without Inverse. The G grab the Moving Camera and move it to the approximate where the object would be in the original Cameras view.
Add the Follow Track constraint to the Moving Camera and set the Camera as the Object and Camera of the constraint. Choose the correct movieclip and track as well.

Then press Constraint To Fcurve on the constraint. This will bake the constraints movement to fcurves, which we can examine in the graph editor.
In the graph editor flip the keys vertically by pressing ⇧ ShiftM > By Values over Value=0.


Cycles GPU rendering is super slow with bigger image size

You have enough capacity on your tech specs to accelerate the render.
I wouldn´t trust the speed of 2.8 just yet. Instead let´s focus on blender 2.79. Since you don´t make any mention what is exactly what you´re rendering I´d assume it´s a lot of hair/grass or either transparency with lots of bounces.

Bounces on the WORLD are one of those things that can hog up your memory pretty quick. Reduce the bounces on the world to 12 (first). Also on Render settings: Samples render: 24. Lightpath: Bounces: 4. Transmission: 1 if you´re not using any crystal surface you don´t need this). Uncheck reflective caustics and refractive caustics.

Make your 4k image render size: 3840x2160 pixels.
Performance tab (render): uncheck use Hair BVH and set tiles to HILBERT SPIRAL and set the tile size 32x32 (I know, crazy -right?)

AND THIS IS WHERE THE MAGIC HAPPENS:

Create a unique material on the scene assign it to a sphere.

Select SCENE TAB on the properties, and use the material as a global override on the scene (we do this so you don´t have to switch on and off every material on your scene). And hit render.

With a simple diffuse material and your tech specs, your 4K render should be ready in about 2 or 3 minutes (maybe less).

If this is your case, you now know that the slugness is coming from a material rather than the scene setup (of course you can up raise your sample settings all of that) but now you know where to debug.

On the contrary, if your render delayed more than 10 minutes (with material override) it means the polycount on your scene is too large and the render is using disc space as temporal storage data when calculating, hence "fill" and "deploy" until next tile is calculated.

If you make these test and still do not get any variant results, please edit your questions and write more details about what exactly are you doing with the materials and the models.


How to apply the UV map of a scan to a retopologized model?

You won't be able to tranfer the uv map since there is a difference in face count between the two meshes.
what i would do is unwrap the low poly mesh and bake the diffuse from the high poly.
use selected to active option when baking and enough samples, the result is an approximation but can be a good start for re-texturing.


Trying to make a shape, never used curves

Alrighty, to model this shape, let's start with the large curved section since it is super easy.

Add a Bezier curve by pressing ⇧ ShiftA and selecting Curve → Bezier.

Adjust the curve's Depth to add some thickness.

Set the Resolution to a manageable amount. I'll use a Resolution of 2 which yields 8 sides.

Adjust the shape to your liking.

Set Resolution Preview U to a suitable amount for modeling. I used 20.

Modeling

For this part, the curve must be converted into a mesh. Press W and select Convert to Mesh.

In edit mode, find the place that the connecting segment should be. Select the top vertex and the one directly below it and snap the cursor to them using ⇧ ShiftS.

Duplicate either one and move it to either side (just so that it can be seen more easily).

Use the Spin tool to spin the vertex around the x axis. Use the same number of steps as the curve has (in my case 8).

Select the entire circle with ⎈ CtrlL and make it a separate object by pressing P and selecting Selection.

In face select mode (3), select the outside faces of the tube shape and hide them (hold ⇧ Shift⎇ Alt to select multiple loops of faces and press H to hide them).

In side view, go to the Mesh menu and click Knife Project. Press f9 and click Cut Through.

Delete the faces on the inside of the cut on each side and merge any problem vertices to ensure that the perimeter of the cut has 8 sides.

In edge select mode, select both loops, press W, and select Bridge Edge Loops.

If you need extra high quality, you can add support loops and a Subdivision Surface modifier to smooth out the transition. If you want it to be extra perfect you can get rid of the triangle as well, but I'm too lazy for that.

Tada!


Create a sail with cloth and curves acting as softbodies

I'd suggest ditching the curves all together. They make the simulation hard to achieve, don't add anything to the scene realism and only add complexity to the simulation.

Just subdivide your sail enough for the desired level of detail. Add a new Vertex Group and assign it only to the 3 corner vertex (or any other undeformable parts that may be attached to cables).

Add a Cloth physics type to the sail, and pick the group for the Pinning option.

Then add a new Force Fied type object of the Wind kind, point it towards the sail and adjust its speed and turbulence.


Object1 in the local coordinate system of Object2

To get the matrix of ob1 in the local space of ob2

mwi = ob2.matrix_world.inverted()
m_local2ob2 = mwi * ob1.matrix_world

loc = m_local2ob2.to_translation() # local loc
loc, rot, scale = m_local2ob2.decompose()


Here's my latest render.  I'm not fully satisfied with it yet, but it's close.

Here is the node setup:

Click to enlarge.

It's basically an Anisotropic shader with a little bit of straight gloss, then a very light Fresnel component.  I then used a stretched noise texture to mix in a very small amount of diffuse (to make some cracks more pronounced) and apply a bump.  I've also created the below node group for a very fine grain, which is also used for bump mapping.

Note: the Translate and Scale group nodes are homemade equivalents of the corresponding parts of the mapping node.  They are explained here.

Like I said, I'm not quite happy with it yet.  In particular the flat end needs better texture coordinates for a circular bump (I'm having trouble creating a procedural radial blur) and the inside needs less anisotropy.


Apply Transforms on object copies not working

It's because the copies are not on the scene so you can't make them active. To do so the command is bpy.context.scene.objects.link(ob)

import bpy

obj1c=bpy.data.objects['Obj1']
obj2c=bpy.data.objects['Obj2']

obj1c = obj1c.copy()
obj2c = obj2c.copy()

obj1c.data = obj1c.data.copy()
obj2c.data = obj2c.data.copy()

bpy.context.scene.objects.link(obj1c)
bpy.context.scene.objects.link(obj2c)

bpy.ops.object.select_all(action='DESELECT')

obj1c.select = True
bpy.context.scene.objects.active = obj1c
bpy.ops.object.transform_apply(location = True, scale = True, rotation = True)
obj1c.select = False
bpy.ops.object.select_all(action='DESELECT')

obj2c.select = True
bpy.context.scene.objects.active = obj2c
bpy.ops.object.transform_apply(location = True, scale = True, rotation = True)
obj2c.select = False


At the bottom of the image node you will see, "Single Image", change this to "Image Sequence" and fill in the number of frames. While the render preview in the viewport doesn't usually update as you change frames it does update when you do a proper render.

The catch with this is that the each image is expected to be named with its numerical sequence, eg. "display001.png" "display002.png" "display003.png". If a number is missing then you get no texture. You can make one image last for several frames by creating symbolic links for the missing files, that is if you make a link to "display002.png" and name it "display003.png" then the same image will be shown for two frames.

Here is a python script that can create symlinks for the missing images in a sequence. So you can name your images "display0001.png" and "display0005.png" and the script will make links so that the first image is also used for frames two to four.


Why is my rendered textured mesh showing up as black?

It appears that packing the image into the blend file was enough to get it to render correctly. Its strange because it was clearly able to read the image file, given that it was showing up in my UV/Image editor. I'm not entirely sure what the root cause of the issue was


Textures not showing up in rendered mode

The problem existed because of multiple materials assigned to object. Which most of them was Cycles materials.

First step is go to Object Mode and in Material tab delete any unnecessary materials and leave only the one you will use ("character" at the bottom of the list).

Next switch to the Texture tab and check preview to Texture (not needed but helpful), select image "checkered" and check View as Render.

Everything should now work just fine.


You either need to have the backdrop enabled or in the UV/Image Editor set to 'Viewer Node'

Form the manual:

The Viewer node is a temporary, in-process viewer. It could be plug in anywhere to inspect an image or value map in your node tree.

Select a view node with LMB to switch between multiple view nodes. It is possible to automatically plug a Viewer node to any other node by pressing Shift-Ctrl-LMB on it.

Using the UV/Image Editor

The viewer node allows results to be displayed in the UV/Image Editor. The image is facilitated in the header by selecting Viewer Node in the linked Image data-block menu. The UV/Image Editor will display the image from the currently selected viewer node.

To save the image being viewed, use Image ‣ Save As Image, F3 to save the image in a file.

The UV/Image Editor also has three additional options in its header to view Images with or without Alpha, or to view the Alpha or Z itself. Holding LMB in the Image display allows you to sample the values.


OSL shader issue, could not find include file: node_texture.h"

The change happened before 2.72 was released and I still haven't got around to looking into whether the change came from blender or OSL 1.5. It is a matter of search paths and I think they need to be changed in code.

The file you are looking for is included with blender, it is installed in 2.72/scripts/addons/cycles/shader/ You can also find it in blender's source tree at intern/cycles/kernel/shaders/node_texture.h

The solution for now is to place a copy of it in the same folder as the osl script that wants to include it.


Freestyle line color from underlying material not working as expected

The material object has a property diffuse_color which is the viewport color. The color you want to link is the Base Color of the Principled BSDF node inside the node tree of that material. Sadly I don't know of a way to access it from the modifier, but you could use a script like this to automatically update the diffusion colors of all objects based on that node:
import bpy

for material in bpy.data.materials:
    if material.node_tree is None:
        continue
    principled = material.node_tree.nodes.get('Principled BSDF')
    if principled:
        material.diffuse_color = principled.inputs['Base Color'].default_value

It will consider the value inserted manually to the Base Color field, not one connected from some texture etc. And it makes sense to replace diffuse_color to line_color both in the code above and in the freestyle color modifier.


Can I use the OptiX AI-Accelerated Denoiser for rendering animations?

Yep. Click on the layers tab and its down at the bottom


How can I apply IK rigging with a different kind of rig

The idea is to consider your actual rig as the "deforming bones rig" and build another rig (which can have IK, constraints, drivers) and use it as "machinary rig": The MACH rig will have the joints in the exact same place of the DEF rig, but different bones orientation. Then you will put a rotation constraint (with local space-local space settings) in every joint of the DEF rig, pointing to the corrispondent bone of the MECH rig.

Set all MECH bones as "non deforming" and put them in a different layer of the armature.

You will use the MECH rig to program the animation and the DEF rig will follow exactly.

Then you can select the DEF bones layer, select all bones and - in pose mode - go to "pose - animation - bake action", checking "only selected" and "visual keys".

In this way you can export your animation that will act on you original rig, without any IK or constraint (expecially useful if you want to export to another software).

In this example I'm building a simple IK control for a leg;

This is the original rig:

Then I add 3 MACH bones with an IK chain of 2 bones, pointing to IK control bone as target:

The Upper Leg bone will copy the rot of the IK Upper, the lower Leg copies Rot of IK Lower.

In this example I've left the original foot bone without constraints and unchecking its "inherit rotation" option.

Consider that - using this tecnique - it's easy to control your original rig with a Rigify rig, with all its great features of IK-FK switching and tip toe foot controllers, just use the snap tools to build the metarig in the exact locations of your original DEF rig.

It's more complicated to explain than to build, once you get the idea everything works fine!


Can a volume be set to let through index pass values?

The most not intrusive method (that will allow You achieve the effect without many changes) would be to duplicate the object, that material pass You're using, put it to another layer, create Render layer for it (only that layer would be rendered, (if it's in Cycles also with other layers selected as Excluded) Check only Material Pass for this layer and uncheck all others, and Use the material index rendered this way in the compositor.


See that pretty record button by the keys at the bottom of the screen? Click that button. That's the Automatic Keyframe Button.

You also want to open up the action editor to actually see the keyframes.

So open up that editor, select all of the blades. Press, I, which iirc is insert keyframe. It should insert a keyframe for all of the blades, if not, you will just need to do it individually. This will make blender store the pose for those different blades at that frame in time. Now all you need to do to animate is go to a different point in time, and just rotate all of the blades. You can do them all at the same time if you've shift selected them before rotating, and you have 'individual center' selected for the transform origin, which is what you seem to have set, judging by the two circles between your shading and widget option.

You can extrapolate on the animation, which will make Blender continue the animation that you already started, further down the timeline. You can also just duplicate the keyframes of the final position of the blade, drag it to say, +60 frames, then at +30 frames, insert another keyframe where it's 50% of the animation to cause it to loop. You can also edit the curve of the animation in the IPO editor.

If you have any more questions, feel free to comment on this answer.


Result with Particle System

Preparation

Create an Object (Cube) and bring it in the desired shape.
Create a Plane, subdivide it in Edit Mode (F6 for adjusting the number of cuts easily).
Add a Particle System to the Plane.

Setting up the Particle System

In the Physics Dropdown choose No.
In Render Dropdown choose Object and pick your "brick" you have created.

In the Emission Dropdown choose:

Emit from Faces
Grid
Enable Hexagonal Grid

Play around with the Resolution value in the Emission Dropdown and scale S your Plane along one Axis until you have a nice Pattern.

Randomize:

In the Emission Dropdown you can add a random Offset to the Grid locations
Enable the Rotation Dropdown and randomize softly the Particle Orientation


ReferenceError: StructRNA of type Object has been removed between modal and execute

Solution was provided on blenderartist by tricotou:
https://blenderartists.org/t/referenceerror-structrna-of-type-object-has-been-removed-between-modal-and-execute/1186026

import bpy
from bpy.props import IntProperty, FloatProperty

def get_locator():
    bpy.ops.object.empty_add(type='ARROWS')
    bpy.context.active_object.name = "locator_start"
    locator = bpy.context.active_object
    return locator

class ModalOperator(bpy.types.Operator):
    """Move an object with the mouse, example"""
    bl_idname = "object.modal_operator"
    bl_label = "Simple Modal Operator"
    bl_options = {"REGISTER","UNDO"}

    x_translation = FloatProperty()
    loc = {}
    def execute(self, context):
        locator = get_locator()
        locator.location.x += self.first_value + self.x_translation
        return {'FINISHED'}

    def modal(self, context, event):
        if event.type == 'MOUSEMOVE':
            self.x_translation = (self.first_mouse_x - event.mouse_x) * 0.01
            context.object.location.x = self.first_value + self.x_translation

        elif event.type == 'LEFTMOUSE':
            return {'FINISHED'}

        elif event.type in {'RIGHTMOUSE', 'ESC'}:
            context.object.location.x = self.first_value
            return {'CANCELLED'}

        return {'RUNNING_MODAL'}

    def invoke(self, context, event):
        self.locator = get_locator()
        self.first_mouse_x = event.mouse_x
        self.first_value = context.object.location.x
        context.window_manager.modal_handler_add(self)
        return {'RUNNING_MODAL'}

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

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

if __name__ == "__main__":
    register()

The class ModalOperator runs a 1st time with invoke and modal, creates the locator, then finished. When we modify properties in panel, an undo is performed on what modal did (no more locator here), then execute is launched. So we have to recreate it in execute. (thanks to rjg for the precision)


How do I pan in Blender using a Wacom 3D Pen?

You just have to emulate a 3 button mouse. Here's how to do it:

Go to the User Preferences.
Go to the Input tab.
Check Emulate 3 button mouse.
Hit Save User Settings.

From here on out you can rotate the view using Alt + click and dragging, zoom using Alt+Ctrl + click and finally navigate using Ctrl+Shift + click.


Random stacked pellets for a scientific study

I think I might have a solution. I am not sure if it will meet all the requirements, but maybe it will help.

You can achieve the render above by using an awesome add-on called Animation Nodes.

Here are the instructions:

1.Go to https://github.com/JacquesLucke/animation_nodes, download and install the add-on as you would with any other.

2.Make sure the add-on is enabled and then add the object that we will be instancing into the 3d view. In your case the pellet, I used a cylinder.

3.Switch the screen layout from default to compositing.

4.In the node editor, on the bottom,  click on the animation nodes tree type. It should be on the right of View Select Add Node. Then, click new.

5.Now we are ready to create the node tree. Each node can be added by pressing Shift A and choose it from there or Ctr A and type the name of the necessary node. I will be using the latter.

6.Press Ctr A , type object instancer and select it. Here you can select how many pellets you want and underneath you can select the pellet model itself(where the little cube is).

Click on the object instancer node and press w. You will get a pie menu. Click on Loop through Objects.Now you will get two more nodes: Invoke subprogram(which will be connected to object instancer) and the Loop input.

8.Press Ctr A again and type Object Transforms Output. Check the XYZ checkboxes on Location and Rotation.

9.Now, on the Loop Input node, grab the black socket that has the word Object next to it, click it and drag to the black socket of the Object Transforms Output.

10.Next, press Ctr A and type random vector . Go back to the Loop input node and drag the blue socket from Index to the Seed of Random vector, then from the Vector of Random Vector to Location of Object Transforms Output.

Play around with the scale and node seed of Random Vector to get the positions that you want.

Finally, let's randomize the rotation: Ctr A , type Random Euler, drag the Index of Loop Input to Seed of Random Euler and from the Euler of Random Euler to Rotation of Object Transforms Output.

And that's it, change the values of scale and seeds of both Random Vector and Random Euler until you get the number of pellets you want. If you want to add more pellets, go to the Object Instancer Node and add as many instances as you need.

Hope this was helpful! If you have any other questions about this method please go ahead!


Animation Not Rendering all the Way Through

OP's answer to the question that was originally an edit.

I solved the problem! I'll leave it here if anyone needs the help.

The problem was that in the VSE, the scene I used initially lasted only 700 frames. Later, I added more animation to the scene, but did not lengthen the VSE Scene strip.


How does Blender deal with partially textured .obj object?

My solution to this would be to move all the uv coordinates of the non uv-mapped faces to the very same point.

Having a few pixels set to the color that you want your mesh to be and putting your uvs there instead can be a way to get rid of unwanted colors.


how to link a 2.4 blender file to the 2.7 blender version?

Have you tried to Save the old blender files into a new blender file?

Try and open a new file in your newest version of blender. Then, just append every file from the Old blender file( of which you have problems linking) to the new blender file. Save that new file, and that should do it! It should work...


The Shrink/Fatten tool seems like a good fit.
Just select the faces you want to move, and shrink them.


Ok I figured it out, the first clue was that I wasn't seeing a shadow on the plane even in eevee.  Turns out I was in 'solid mode' and not in 'render preview mode'.
Leaving this up in case it helps another beginner.


I don't know about LMMS, but in blender you can open an User Preferences editor and increase the DPI setting in the system tab, and this will make all the fonts andbuttons bigger across the program. You might need to then drag on the boundaries to give enough room for the new scaled up interface, but you'll get a clearer view.


How do I get a colored object to glow on white?

Switch the render engine to Cycles and Emission will cast light onto other objects as expected.

In Eevee, shift+A Add 'Light Probe' >'Irradiance Volume'

Scale it up so the inner bounding box surrounds the scene.
In Render Settings under 'Indirect Lighting' you'll have to 'Bake Indirect Lighting'

In this image I've already baked it so you can see the result. Hope that's what you're looking for.


It is pretty much unknown at this point, development hasn't really started on 2.8 version

They are not even finished with the design phase yet, so we don't even know how things are going to be, let alone if they will be compatible or if there will be any sort of "automatic conversion" compatibility layer.

Blender always strives to be as much backwards compatible as possible, though so your files are always guarantied to open, even if parts of it will be outdated or useless.

If any of the proposed changes are actually developed I am guessing cycles materials will mostly be compatible with the current version, mesh modeling and modifiers will probably be mostly compatible too, or at least modifiers will be converted to the hypothetical new "node system".
I am guessing any Blender internal or game engine materials, will be incompatible and need refactoring, probably the same with any game engine logic bricks.

This is at this point pretty much my opinion, based on a more-or-less-educated guess. I read development mailing lists discussions and commits daily, but I am no developer nor do I have any saying in the mater.

Anyway Blender 2.8 is at this point very blurry, undefined, and far away in time, it will probably be another year or more before we even see any working nightlies or alpha builds. If you want to do something you probably better use whatever available tools you have right now and worry about conversion later if you still need it then. In all likelihood you will be done with your project anyway by the time Blender 2.8 is out.


uniformly repeated image on objects with different dimensions

Your problem isn't the material, it's the UV texture coordinates.
You may be better off with a different coordinate system, such as using Object coordinates and then changing the image mapping from Flat to Cube. You may have to further use a Vector Mapping node to scale the coordinates to make the tiles the right size overall. I recommend also creating an empty to use as the Object coordinates reference: If the material links to an object such as an empty (a single object to reference no matter what instanced the material), they will probably stay the same size relative to eachother. Just don't move the empty relative to those objects or the textures will move. If the objects will be moving in different directions, it's a no-go.
UVs may seem tedious, but are a hands-on concrete way to manage textures since they are attached directly to the mesh. To fix the UV: Scale the UV by the ratio of the surface over the image dimensions (i.e. if the image is square and the surface is a 1X2 rectangle, make the UV a 1X2 rectangle over the image). This may require extending the UV past the image bounds, or doing yet more math so that the tiles not only have the same aspect but also the same size.
Hope this helps :)


Blender scene being ruined for no reason?

You probably need to set up a proper location for the baked cache, within your project folder, preferably with a relative path, so that the fluid data is correctly saved in a safe place, and available next time you open your project file.

It may be getting deleted in the temp folder or unintentionally lost.

Use the path box visible in your screenshot under the Properties Window > Physics > Fluid > Cache path and point it to a safe location, possibly within your current project folder, or next to the blend file.

After that optionally you may manually move the cache files from the previous temp location if you do not want to rebake, or simply  just bake again to the new folder.


Controlling polygons by index value, from list of vertices (sverchok addon)

the only thing - join list node for 0,1 duality.
Also you can use wrap option of float2int output socket instead list join
if you have more that two options there should be other approach


Convex or concave hull, depending on quad or non quad, why this behavior?

I showed a similar example to your first before. The quad is always cut from vert 0 to vert 3, while n-gons are triangulated using a better algorithm, possibly because the possibility of concave faces is more likely.

You will also find that an n-gon is triangulated dynamically as you alter it.

I expect the tri/quad drawing code was left alone when n-gon support was added. Maybe it could be suggested that the work being done for 2.80 could include the use of same drawing algorithm for all faces.


Automating Camera and Deformable Object for Image Data Collection

Okay I have a way to do this without Animation Nodes, which still might be a good solution for you.

I've created a scene with a two-bone armature and a cylindrical mesh parented to it.  That's your "arm".  It is animated to bend back and forth.

I have also added to this example a bezier curve that will follow the deformations of the armature, via a couple of "hook" modifiers.  The control points of the bezier are hooked to the bones of the armature.

The camera is animated to jump around to random positions in the x, y, and z dimensions via a "Noise" modifier added separately to each of the x, y, and z directions.  A different seed for each ensures that they're moving separately.

You will have to tweak the parameters of the Noise modifier to ensure it is jumping around as quickly as you like and as far as you like in the various dimensions.

Back to the curve object, I have also created an empty with a "follow path" modifier, associated with the curve.  I have animated the offset value of that modifier with another "noise" modifier.  Essentially this means that the empty jumps around to various positions along the curve.  The curve, remember, deforms along with the animation of the armature, so basically the empty is always somewhere in the middle of the "elbow."

Finally a "damped track" constraint is added to the camera, which is set to target the empty.

So basically, for every frame, the camera is jumping to some random location, an empty is moving to some random location within the deforming armature, and the camera is set to turn towards the empty.

Here are the first ten frames of the animation output from this setup.  As you can see, there is quite a bit of variation in terms of camera angle.  Hopefully this is sufficient for your purposes.


How to make a shiny panel on a matt texture

Your node organization will depend on the result you want. For example where exactly do you want to see shininess?

Anyway, as your mask has a big rectangle, let's imagine that you simply want to display a silver rectangle. As this rectangle is transparent and your mask image seems to play with transparency, and not black & white, it is made to use the Alpha output of the Image Texture node.

By the way, there are also grey areas on your mask, grey areas won't be useful if you play with the alpha channel, it will only be useful if you play with black & white, and therefore if you use the Color output of the Image Texture, and not the Alpha. In that case, if you want to use a B&W mask, your rectangle needs to be white.

So let's come back to our case: Just plug the Alpha output of your Image Texture node to the Factor of a Mix Shader. This node will mix your previous nodes organization and a new one, a Glossy, and a glossy rectangle will appear.


(Brand new to Blender) Background image wont render with model

Background images do not show up in the render. They are typically used as a reference for modeling. There are a few ways to handle this, but the easiest, by far is to use the import images as planes add-on. Press ( ctrl + alt + U ). Select add-ons, and then type image into the search bar. enable import-export: import images as planes.

At the bottom of the mesh menu (shift + a -> mesh) should be the option to add image as plane. After you successfully perform this part, the rest should be self explanatory.

I noticed in your picture that you had your rendering set to Blender Render. Blender had 3 different render engines. Blender Render is the default engine, but it considered outdated, and is only kept as legacy software. It is best to set the render engine to cycles. The results are more realistic and more modern.


Switching camera view on multiple cameras form python

The problem appears clearly when moving from any view to camera_view but it is also present when moving from camera_view to another (you can see that the view change from camera than hold still and then change at last) and it is caused by the ED_view3d_smooth_view_ex() ( source code ) function  and as you can see in the source code it is skipped if you are in render view , so for checking you can switch to render view and the code will run as expected

here some code to make the transition clear (watch the view and console ) :

def main(context):
    print('******************************************************')
    bpy.ops.view3d.viewnumpad(type='CAMERA')
    bpy.ops.wm.redraw_timer(type='DRAW_WIN_SWAP', iterations = 1)
    print('sleep')
    time.sleep(8)
    print('wake')

( it may have something to do with timers )


Using Blender & Python for Batch Image Conversion, getting unexplained Runtime Errors

Don't use operators unless there is no other way. In this case you're making your life overly complicated with them. This is my proposed approach:

for i in bpy.data.images:
    new_path = i.filepath.replace(".dds", ".png")
    if new_path == i.filepath:
        print('Refusing to overwrite %s (name=%r)' % (i.filepath, i.name))
        continue
    i.save_render(bpy.path.abspath(new_path))

I've also taken the liberty to change a bit more:

Replacing .dds instead of just dds. You don't want to change adds-liquid.dds into apng-liquid.png. For more reliable manipulating of file paths I would recommend pathlib rather than string manipulation.
Using bpy.path.abspath() to convert any blendfile-relative file path to an absolute path. Without this, saving the file won't work reliably.
Added a check to prevent overwriting a non-DDS file.
Applied PEP 8 -- Style Guide for Python Code to your variable names.


What is the best way to make the B shape in this gif?

In the end, I decided to use Destroying any object into cubes and breaking the model into a more simple geometry for my computer to handle.


How do I produce an uneven offset /solidify modify on a cube?

If you are solidifying through the Solidify modifier you can use a vertex group to control thickness.

Create a vertex group and add all desired vertex to it, set solidify thickness to a known value so multiplying by a factor is easy, like say $1.0$ units, or $0.1$ Units.

This value will be multiplied by the Vertex Weight set for that vertex. Now adjust thickness on a per vertex basis adjusting vertex weight.

With with weight paint, Vertex Weight Proximity modifier, or manually.


Using cycles you can use a mixRGB node to combine two images into one, each image can use a different uvmap. The Fac of the mixRGB defines how much of each image is visible.

You can then use a third greyscale image to define the amount that the two images mix together, white showing one texture and black the other and 50% grey being an even mix of both, texture painting can be useful to position the transition where you want it.


If all else fails, you should be able to do it this way - produce an identical texture in the VSE but with the desired frame frozen and use that for your texture instead.
As far as I'm aware vers 2.8+ would still allow this.
Here is an original image sequence - 600 x 400.

...and after when paused midway through and re-rendered -  identical but with the freeze inserted.

.
Details for those who may not know how -
The original sequence can be laid into a VSE strip and 'Split' with SH-K at the frame after the one to be frozen.
Select the sequence at the right of the split section and drag it out of the way.
Go back to the remaining left hand strip and select it's handle at it's right hand end.
Pull that to the right as far as needed.  This will freeze that frame.
Play it to get the frozen interval right, and once ok -
Select the frames you moved earlier and drag them back to join up with the stretched right hand end of the left strip.

Set the render output to the same pixel dimensions as the original but to a DIFFERENT folder.
Render this to the same format and dimension as the original and use that for your texture.
HINT - the VSE has a habit of acting up when making changes to it's strips, so each time a change is made, save the Blend file as something different, (increment?) exit Blender, then reload to try it out.


Compositor altering images anti aliasing

The worthless format known as PNG.

Render using half float 16 bit EXR.

The issue is crappy unassociated alpha that is enforced with that abysmal format known as PNG. You could also use the "Convert Premul" option to properly associate the alpha channel.


SOLVED! The hint was an error warning - "autorun disabled!" Blender wasn't running a script. Press Ctrl + Alt + U, then head over to File and enable Auto Run Python Scripts. Now all works well. The automatic running of python scripts has been disabled since version 2.6.


Editing particles to remove troublesome boid instances

I don't think you can actually delete the boid or its path but you can move it out of the way so that it isn't visible as part of the simulation.

This can be achieved using the Particle Edit mode after you have Baked your simulation. Note that this must be baked into memory rather than a disk file - since the Particle Edit can only operate on particle systems held in memory.

In Particle select mode, choose the 'Point' select mode to allow you to manipulate all points in the particle system.

You might also find it useful to increase the Draw Path Steps in the Toolshelf (T) to make the visible paths more detail (makes it more smoothed). Also, disable the Keep Root setting so that you can move the whole path without it being joined to the emitter (used below).

Select one of the points on the path you want to 'move'

Then hit L to select 'Linked' - ie, select the whole path.

You can now 'grab' (G) the path and, since it's disconnected from its 'root' (the toolshelf checkbox you unchecked earlier) you can move it away from the emitter.

To make the selected boid even easier to 'hide' you can scale the path to zero to make it occupy a single point with S0Enter.


I found using cycles and freestyle so slow (like minutes) that its easier to clone the project file, then replace all the cycle materials for a simple diffuse transparent BI material and run it with BI.  Then composite the frames with the other rendered frames. Of course, I have thousands of polys so it may not help if the model is low poly.


How do you rig a character made out of linked parts?

You should be able to use the mirror modifier here.

It has an option for mirroring vertex weights.

It uses the standard mirroring name convention (like bones, so it works fine with rigging). Basically if a vertex has weight 0.6 in group.L, its mirrored copy will instead have a weight of 0.6 in group.R. By creating empty groups for the mirrored side it is quite easy to rig one side and have it cleanly mirrored.


How do I keep in development add-ons under source control and easily reload changes in Blender?

This is my workflow for developing add-ons outside of the Blender add-on directory:

Save script files in text editor
Run a script to copy script files into Blender add-on directory
Reload script files in Blender

Run a script to copy script files into Blender add-on directory

When you install a .zip add-on installation file inside of Blender, the application simply unzips the file and places the contents into your Blender add-on directory. You can also install the add-on by placing the script files manually or using a script to copy the files.

The add-on directory location depends on your operating system. A quick way to find the location of a specific add-on is to select the add-on in the Preferences > Addons menu and look at the File attribute:

There are many ways to create a script that will copy files from one location to another. Some examples are:

A Windows batch script (.bat) using the xcopy command
A MacOS/Linux shell script (.sh) using the cp command
A Python script (.py) using the shutil module

Reload script files in Blender

Once you have your scripts copied over, you can reload your scripts in Blender using the Reload Scripts operator:

in Blender 2.79: F8 hotkey
in Blender 2.8x: F3 > Reload Scripts

An important thing to note is that the reload scripts operator will only reload your __init__.py script and will not reload other add-on script files. See this answer for how to structure your __init__.py script to reload other scripts and modules: https://blender.stackexchange.com/a/28505/81365

You can also restart Blender to update all script files.


How to use a Red/Green color map in Blender?

Try inverting the image before connecting to the Normal Map Node to get back the purple (tangent space) colors (and map) you're used to seeing (color not shown).

However, looking more closely, I'm assuming the eyelids and nostrils are supposed to be protruding from the "outwards" face (hard to tell using the low res sample). If this is how you need it to be, you may also need to do a DirectX to OpenGL conversion:


SVG path extrude seems to leave open objects

Sert the curves to be 2D shape and Fill to Both:


Why does my object dissapear when i press 'only render'?

You also need to create NEW particle names at SCENE LEVEL (patticle modifier +) and at OBJECT level (name of the particle system to identify parameters). Go to those duplicated planes which are not rendering. Hit the "+" sign so they will be named with a new name. Use that same name and number to name the object properties in particle name as well (+).


How to fix physics engine's clipping issues when modifying a mesh's shape

I believe there is a design fault in the Mesh Source area.

As we switch source to deform, the checkbox deforming appears.

  Deforming
  Mesh shapes can deform during simulation.

That's what we need, because right now, the simulation only utilizes the cube's shape of the starting frame. Enable the deforming checkbox.

Now your rigid body simulation will respect the change in deformation caused by the Displace Modifier and update the movement accordingly. (The cube bounces.)

Even when you switch the Source property back to Final the change in geometry is respected. I'm guessing someone forgot to display the Deforming checkbox as well when the Source is set to final. Even though it is not shown, is value is still used.

The difference with the two option can be researched in the manual:
Deform
Includes any deformations added to the mesh (shape keys, deform modifiers).

  Deform
  Includes any deformations added to the mesh (shape keys, deform modifiers).

  Final
  Includes all deformations and modifiers.

Since the displacement modifier is a Deform modifier, you don't have to switch the source property to Final. Leaving it on Deform makes no difference, but has the advantage of being aware of the Deforming checkbox.

Displacement is a Deform modifier.


Stopping Blender seeing all system/network folders in campus/school install

@pluke - These are no vanilla MS product settings, your tech team set those settings via group policies which are part of MS active directory services.

Blender does not use the operation system's file selection system (or any other default file selection system on other operating systems), thus it doesn't read any of the group policies.

There is no easy way to do that and more important you'll need administrator rights.


You can animate [render visibility] with Keyframes. The graph window can show render visibility of multiple objects at once. This may address part of your issue. Other people can address other concerns or you can submit a different question.
Of course in Blender there are always 33 ways to do something.  You can use layers as well or simply move an object out of view of the camera.  You can also consider other visual cues such as viewing only edges .. and or keyframed scale factors.

The yellow arrows shows the effects of putting a keyframe on render visibility of an object. Please Click on the image to see a larger version.  By having two or more objects you can instruct Blender to render one of them and to not render the other ones, saving compute time.  Please do not confuse this with 3D View Visibility.  This is not a tutorial.


Convert Materials from Cycles to Blender Internal Render

Try running this in the text editor:

import bpy

for mat in bpy.data.materials:
    mat.use_nodes = False

It will disable use nodes for every material.


My object becomes darker during animation

So, when you generate objects, you made them without normals. I don't want to say, that they have no normals completely, because mesh can't be without normals. What I see, that all normals are rotated in the same vector, so your objects look completely flat:

But what causes the jittering in colors? This vector is different from one object to another. This mean that your object is shaded completely flat as a single plane can be, but each time the plane is rotated in a different angle.
So, how to fix that, depends on your code. I guess you should use update function (update(calc_edges=True)) to update normals, but maybe I'm wrong. I noted, that clearing custom normal data (in "Geometry data" section) force normals to be recalculated:

You might be wondered why if your object shaded flat, you still see some shading in the render? It is because ambient occlusion still have effect even without proper normals


How to add a new stop to the color ramp?

import bpy
from bpy import data as D

# Get a reference to the colorRamp node
cr=D.materials['Material'].node_tree.nodes['ColorRamp'].color_ramp

# enumarate the elements to the console
for e in cr.elements:
    print(e.position)

# set the left most color to green
cr.elements[0].color=(0,1,0,1)

# add a new ramp in the middle, position = 0.5
cr.elements.new(position = 0.5)

# set the middle color to red
cr.elements[1].color=(1,0,0,1)

# set the right color to blue
cr.elements[2].color=(0,0,1,1)


How to make a wind force field, does not affect all objects in front of it (cloth simulation)?

A cloth enabled object has a "cloth field weights" panel where you can set the influence for several dynamic effects, separately: one is wind, try set it to zero for "wind".


Welcome to Blender Stack exchange. As wikipedia says

  A polytunnel (also known as a polyhouse, hoop greenhouse or hoophouse, grow tunnel or high tunnel) is a tunnel typically made from steel and covered in polythene, usually semi-circular, square or elongated in shape.

I tried making a low-poly tunnel with least efforts quickly, it looks like this :

The way I achieved this is by

Modelling the polytunnel in the way I wanted.
Adding a transparent shader/glass shader as the material to make that plastic covering.

Here's the node setup for the material:

You can also use the glass shader, here's the usage: I can't make my material transparent in Blender 2.80


make an object the exact copy of another

If the two objects have the same number of vertices then you can use the Data Transfer modifier shown below:


The displacement modifier works like I want it to when I make sure that the co-planar faces are not divided, i.e. by doing a limited dissolve first, to turn the quads of the enter key into ngons.


With a complex, i.e. demanding, fluid sim as it is in your case (the hardware needs to calculate the wave hitting the rocks, turbulences etc as well!) it's best to use both CPU and GPU. Especially if the sim has several hundred frames, which means their number should be reduced. And, apart from the above, try the ca. 200 resolution. It's the max res I used and water didn't look awful.


Is there a way to select all the objects inside a collection?

When you are in the 3D View, select one of the collection objects and press shiftG > Collection. In the Outliner, right click on the collection name > Select Objects.


Unless I've severely misunderstood what you're trying to achieve, I still think a torus with Minor Segments set to 4 is the easiest and quickest way.

ShiftA followed by M followed by T or Add -> Mesh -> Torus to add the torus.

After adding it and changing Minor Segments to 4, just scale along Z, S followed by Z, then type in the scale or drag the mouse, and finish with Enter or LMB.


my model doesn't move from the origin, or moves or rotates ONCE and then returns to the origin

Problem solved!! I linked model and armature from 2.66a, applied proxy (Ctrl+Alt+P) and rigged and animated again the mesh. All worked fine!!


Why is the preview render slower than the final render?

Use rendering CPU to GPU, it can be faster then GPU

Change Render Setting
Use thisenter link description here


How to change a primitive's properties after creating it?

You can edit the polycount of cylinder by playing with the "Vertices"-setting in this interface:

Press T if you don't see this after Adding a new Cylinder.


Which matrix to use to transform children local coordinates to global?

Parent with Identity inverse.
The relationship between the matrices.
Does a child object inherit the matrix from the parent?
and if you have used the parenting operator (yick) how to reset parent inverse to identity, to avoid the hassle.  (The location can be garnered from the vert location anyway_)
how to clear parent inverse without actually moving the object
Here is an alternative way to parent your spheres to the verts of the plane, code from https://blender.stackexchange.com/a/200719/15543  Each object has an identity parent inverse.  (It uses empties, for 6 could use add mesh operator, location=(0, 0, 0), directly after each run the new object is context.object)
Run with plane as context object
import bpy
from bpy import context

ob = context.object
coll = context.collection

for v in ob.data.vertices:
    mt = bpy.data.objects.new(
        f"Vert{v.index}",
        None,
        )
    mt.empty_display_type = 'CIRCLE'
    mt.empty_display_size = 0.2
    mt.parent = ob
    mt.parent_type = 'VERTEX'
    mt.parent_vertices = [v.index] * 3
    coll.objects.link(mt)

Testing.
Am going to use these vert parented empties  as a test case for above, for simple numbers have simply moved the plane to (0, 0, 2).  Still the context object.

>>> C.object
bpy.data.objects['Plane']

Local and global vert locations.
>>> for v in C.object.data.vertices:
...     v.index, v.co[:], (mw @ v.co)[:]
...
(0, (-1.0, -1.0, 0.0), (-1.0, -1.0, 2.0))
(1, (1.0, -1.0, 0.0), (1.0, -1.0, 2.0))
(2, (-1.0, 1.0, 0.0), (-1.0, 1.0, 2.0))
(3, (1.0, 1.0, 0.0), (1.0, 1.0, 2.0))
(4, (0.00918059702962637, -1.0, 0.0), (0.00918059702962637, -1.0, 2.0))
(5, (0.00918059702962637, 1.0, 0.0), (0.00918059702962637, 1.0, 2.0))

Missed the middle with a loop cut, nevermind
Global, and local object locations
>>> mw = C.object.matrix_world
>>> mwi = mw.inverted()
>>> for o in C.scene.objects:
...     o.name, o.matrix_world.translation[:], (mwi @ o.matrix_world.translation)[:]
...
('Plane', (0.0, 0.0, 2.0), (0.0, 0.0, 0.0))
('Vert0', (-1.0, -1.0, 2.0), (-1.0, -1.0, 0.0))
('Vert1', (1.0, -1.0, 2.0), (1.0, -1.0, 0.0))
('Vert2', (-1.0, 1.0, 2.0), (-1.0, 1.0, 0.0))
('Vert3', (1.0, 1.0, 2.0), (1.0, 1.0, 0.0))
('Vert4', (0.00918059702962637, -1.0, 2.0), (0.00918059702962637, -1.0, 0.0))
('Vert5', (0.00918059702962637, 1.0, 2.0), (0.00918059702962637, 1.0, 0.0))

or alternatively instead of multiplying by mwi use matrix_local eg
>>> C.object
bpy.data.objects['Vert1']

>>> C.object.matrix_local.translation
Vector((1.0, -1.0, 0.0))

So I contend, assuming the empties (spheres) do not move from their parented vert,  the local coordinates  can be taken from the vertex coordinates, and the global coordinates also by multiplying by the objects matrix world.
Or conversely the global coordinates of the verts from the empties global locations, and the locals by multiplying by the parent objects inverse matrix world.
Note if the plane is to be deformed, can get the mesh coordinates with Object.to_mesh or Bmesh.from_object.
Note: It is recommended to change frame with scene.frame_set(f) rather than setting scene.frame_current = f.


Using Dynamic Paint To Spawn Particles Through Vertex Groups

Unfortunately it's much more complicated than it should be. I can elaborate once you tell me if that's an option for you.
A possible workaround: Create a particle system sparks that is emitting continously. Place the PS where the laser hits the surface. If you want to randomize the bursts of the sparks some more, you can randomly turn on and off the visibility in render. Note that this might look weird if your spark lifetime is more than a couple of frames.
You could refine that a lot more using animation nodes, by grabbing the position of live particles and placing a custom object where they are relative to the point where the laser hits the surface. This way you have more control when turning them on and off.
Or you could try baking the sparks using physical objects and rigidbody physics. Bake 10 or so, parent them to an object that follows the laser, use animation nodes to only show 3 or 4 at a time and evaluate their f-curves, depending on the current frame and their "birth time".


What is the easiest way to have a default "Good" lighting setup for cycles?

I usually keep some generic lights on a hidden layer in my default .blend, so I can just enable that layer to get an instant light setup.

To do this:

Open a new file (⎈ CtrlN)
Create your light setup:

Here are some good tips on lighting.

There are also some nice light setups in the community if you don't want to make your own.
Move the lights to another layer (M), then save the startup .blend (⎈ CtrlU).

This will save the current file as how blender will start up by default, so make sure everything is how you want it (visible layers, selected objects, view orientation, etc.)

Another thing you can do is use HDR/environment lighting.

You could try this addon, or use HDR panoramas such as these as environment textures.

To do this, add a HDR environment texture to the world surface (1) and (2) (it doesn't matter whether you add it in the node editor or the properties editor). There are no lamps in the image below:

Also remember to enable Multiple importance sample (3) when using environment textures, otherwise you will probably get a lot of noise.


Place the pillar at the beginning of the curve, be sure to apply rotation and scale (or at least have an alignment relative to the world or the object itself, locally)  :

Parent the pillar to the curve, and set dupli as frames (uncheck the speed button) :

For the curve, set it to path animation tunes the frame count (it will be the amount of pillars) and check 'follow'.

Now add a constraint to the pillar to 'limit rotation', and check the wanted axis (here Y). So the pillar will follow the curve without rotating around this axis.


Is there a shortcut to repeat the last operation in Blender

Yes.

F3 will give you a list of recent actions. After selecting one action from the list, the next time you press F3 the list will be positioned with the same action under the cursor. This makes it very easy to call the same action over and over quickly by pressing F3 LMB (without having to move the mouse), or F3⏎ Enter.

In the 3D view you can call the previous action with ⇧ ShiftR, however this doesn't seem to work in the UV editor.

Another option is to add a custom shortcut for the align operators.

To do this add a new shortcut in ⎈ Ctrl⎇ AltU> User preferences > Input. You probably want to define it in some reasonable context like Image > UV editor, so expand the corresponding sections and click New shortcut at the bottom of the UV editor section.

Then put uv.align as the operator and assign a key combination:

Note that you also have the option to change the various parameter the operator is called with when the shortcut is pressed (though in this case there is only one parameter):

Even if the drop down appears grayed out, you can probably still change it. It will appeared grayed out if no parameter is specified, in which case the default it used.

Also see: How to add shortcut for 'Only Render'?


How can I make an object render with a wireframe in the game engine?

You want to create a wireframe material. A quick 'n' dirty way to do generate a wireframe texture is described below:

Unwrap your model. If you don't know how to do this simply select everything and press CtrlE > Mark Seam.

Press U > Unwrap.

Open up a UV/Image editor:

Click UVs > Export UV Layout. Remember where you save this image.

Press AltO to open a texture, then select the saved image.

Tada!

You may want to remove the transparency in an image editor if you want your model to be opaque.


Any methods to show wires in texture paint WHILE face selection masking is enabled?

I have used this technique for a long time now. Make a square texture with a colored border, I make mine with transparent center square and a blue outer rim. On the object to be painted, assign a new uv map and unwrap it, reset it so that it is all faces overlapped as a square. set the texture to use this second uv map, and set the main texture as the active painting slot. I set the square texture to 'Multiply' instead of Mix, and I use GLSL to make sure I see the effect of the texture over the main color texture. I am including a screen shot to show that the texture simulates the wireframe you want and works while you are using face selection masking.Here is the texture


How do I add a cylinder between two moving objects?

All you need to change in the previous answer so that it would generate cylinder connectors instead of boxes, is setting the Skin modifier to smooth shading, and adding a subdivision surface modifier on top of it.

import bpy, bmesh
C = bpy.context

# Reference two cylinder objects
c1 = bpy.data.objects['C1']
c2 = bpy.data.objects['C2']

# Create new connector mesh and mesh object and link to scene
m = bpy.data.meshes.new('connector')

bm = bmesh.new()
v1 = bm.verts.new( c1.location )
v2 = bm.verts.new( c2.location )
e  = bm.edges.new([v1,v2])

bm.to_mesh(m)

o = bpy.data.objects.new( 'connector', m )
C.scene.collection.objects.link( o )

# Hook connector vertices to respective cylinders
for i, cyl in enumerate([ c1, c2 ]):
    bpy.ops.object.select_all( action = 'DESELECT' )
    cyl.select_set(True)
    o.select_set(True)
    C.view_layer.objects.active = o # Set connector as active

    # Select vertex
    bpy.ops.object.mode_set(mode='OBJECT')
    o.data.vertices[i].select = True
    bpy.ops.object.mode_set(mode='EDIT')

    bpy.ops.object.hook_add_selob() # Hook to cylinder

    bpy.ops.object.mode_set(mode='OBJECT')
    o.data.vertices[i].select = False

m = o.modifiers.new('Skin', 'SKIN')

## New bit starts here
m.use_smooth_shade = True

m = o.modifiers.new('Subsurf', 'SUBSURF' )
m.levels = 2
m.render_levels = 2

## End of new bit
bpy.ops.object.select_all( action = 'DESELECT' )


You may stack 2 solidify modifiers with only rim enabled to get this kind of effect. You may also have to enable Flip normals and change the offset to get the fold in the right direction. Finally add a bevel to get rounded edges.
The modifier stack :

The base plane, and then with each consecutive modifier applied :


How to Straighten Curved UVs into Straight Belt

Select all wanted faces and Unwrap them.
Select one face on the mesh.
Align this face in UV Image Editor by selecting edges and W > Align Auto.
Select all faces on your mesh (keep aligned face as active face).
Unwrap it by Fallow Active Quads.

Edit:

Differences between this answer and answer from Duarte Farrajota Ramos.

As for number of steps it could tempting to believe that fewer is better, but not always. Here is object unwrapped with pure Follow Active Quad > Pack Islands and my method. Not additional steps was taken.

Duarte Farrajota Ramos answer:

This answer:


Blender crashes when manipulating a large number of vertices with proportional editing enabled

It would probably be better to use a lattice modifier but if you wish to deselect vertices the following method seems to work for this example. Select the area you wish to manipulate then go to the 3D viewport header choose: Select > Random, go to the bottom of the tool shelf: enter Percent> 99% (for example) and Action> Deselect.You may need to add a few vertices to fill in any gaps. You can now manipulate using the proportional editing tool set to a largeish fall off without unwelcome lag or crashes.


Using Scripted Expressions for Shape Key Drivers

I don't see a way of accessing the shape key value from within the game engine. A mesh object is copied to a KX_MeshProxy for use in the game engine, which only gives access to the mesh and materials. This would mean that we need to use either drivers or actions to animate shape keys within the game engine.

If you have a driver setup that uses the bone position to control the shape key then you need to move the bone to control the shape key. You can create an action that moves the bone and can easily be played in the game engine.

Without using a driver you can create an action that keyframes the shape key value and then play that action in the game engine. Use the Shape Key Editor instead of the Action Editor (both are subtypes of the Dope Sheet). Shape Key actions show up in the same list as normal actions.

If you don't want to play an action from start to finish then you will want to have a driver that simply sets the shape key value to an object's X location. You can add an empty just for this purpose and move it in small increments to set the shape key value to the value you want at the time you want it there.


How can you save Blender materials as image files?

One way to do this is if you are using the default internal render engine is to generate a UV Map from an object hosting the material and then bake the texture to an image.

Open the UV/Image Editor and create a new image (you can set the output resolution from here), next select the object, Tab into Edit mode and press U to generate a uv map, for very simple models you can use the default Unwrap or Project from View (for more complicated objects it's also best if you use a simple object with the material on it as opposed to unwrapping a detailed mesh) go to the Render tab and under Bake, you can set the Bake Mode to Textures (if you are using a custom texture) or just use Full Render.

In the image below, I created a simple green material and added a wood texture to it and the did a Full Render bake, the result is shown in the Image Editor on the left. After that, use the Image menu to save it.


re-exporting object with material gets more memory

If you export a previously blank (without material) obj, obviously it takes more memory, because you added material to it.
I don't know if this helps you... Maybe I misunderstood the question.


Blender sverchok lofting with array of boxes

I would approach this differently,

First create the curved surface by lofting,
Use modulo to make a masklist to discard the faces that represent the space in-between the planks
Then finally extrude the faces using the Solidify node (via the Normal to turn the faces into "plank" geometry.

use the SV Import / Export panel to import this gist:
https://gist.github.com/2bda764a9f6aa7e9a6aca69d7181bdaa

here the usage of Solidy Node and Delete Loose (the "rest" verts that aren't used)

as a gist: https://gist.github.com/0216592fedb22856d4f3778e4187cec0


holy smokes! I've realized my error! it is not enough just apply "all transformations" in objects mode, before that you need to select the object itself! that was a key... now all is working as needed!

p.s: why blender doesn't show an error if you haven't selected anything!?


This appears to be a basic change in behavior - now, when you want to extrude along a global axis you would need to press E for extrude, then Y twice.  Or open the on screen widget and change it from normal to global.

See the post on Blenderartists:
BA Thread


Animate a plane that transforms to a mesh?

I just found out this technique from a tutorial that uses another software.
But it applies on Blender:

create a plane and subdivise it so it has enough vertexes (eg. 10 times)
add an empty at the same place, and set the rotation to X:90°
add a SimpleDeform modifier on the plane

Switch mode to Bend
Set Axis, Origin to your empty
Set Deform Angle to 360° so it becomes a tube

duplicate your empty and sets its rotation to X:90° / Z:90°
add a second SimpleDeform modifier on the plane

Switch mode to Bend
Set Axis, Origin to your second empty
Set Deform Angle to 360° so it becomes a sphere !

Et voilà ! You can now animate both deform angle from the SimpleDeform Modifiers to animate it.


The modifier you are looking for Normal Edit is under the modify column in the modifiers list, but only in version 2.74 and higher.
As the release notes show that feature was added in 2.74.

This picture is showing version 2.75


Is there a name for a mesh has 4 vertices that is not flat

For animation you should avoid such mesh, but if the mesh wouldn't be animated you could over look it. I don't know the name of such mesh for now but i will research on that.


Why do all the faces in my mesh turn into circles when adding a Subsurf modifier?

All edges of the mesh are "split": every face has an  edge perfectly overlapping the edge of the adiacent face. If you select all in edit mode and remove doubles everything will turn fine.


This is one of the key reasons for the dependency graph rewrite, the old blender dependency graph treats an armature as a single node in the graph, dependent on everything any of the bones are dependent on.

The new depsgraph, which is still a bit of a work in progress, should fix this.
It can be enabled by passing --enable-new-depsgraph when launching blender, and may help.

For more info see:

https://code.blender.org/2015/02/blender-dependency-graph-branch-for-users/
https://code.blender.org/2015/03/more-dependency-graph-tricks/

A separate armature would fix this for now as well.


The object origin should be in the middle, not on the thread. Because the object origin is what the modifier uses as a reference for rotation.

If you look at the first screenshot, you can see how the object's origin is at the center line of the bulb, surrounded by the translation widget. Only the edges are left.

In object mode with only the object selected, set the cursor to the object using SHIFTS "Cursor to Selection". That will make sure the cursor is on the same plane as the object. Then place the cursor on the symmetry line of the bulb and use "Set Origin" >> Origin to 3D Cursor from the tools panel on the left.

You might need to adjust the axis that the modifier uses in its settings.


Find implementation of specific class in source code

It depends whether the operator is from an add-on or implemented in Blender itself. The former will be from a Python script, while the latter is implemented in C or C++ and is accessible through the Python API.

For operators from Python add-ons it's necessary to know the command for the operator, therefore enable the Developer Extras in Edit > Preferences > Interface > Display. Once enabled, you can right click on buttons and choose Copy Python Command from the context menu.

When the command is known, the inspect module can be used to find the source file and the source code. Replace bpy.ops.export_mesh.stl with the operator you would like to inspect.

import bpy
import inspect

cls = getattr(bpy.types, bpy.ops.export_mesh.stl.idname())
print(inspect.getfile(cls))
print(inspect.getsource(cls))

Alternatively, if the class name is already known, it can be used directly.

import bpy
import inspect

cls = getattr(bpy.types, 'EXPORT_MESH_OT_stl')
print(inspect.getfile(cls))
print(inspect.getsource(cls))

The source code of operators, that are implemented in C or C++, can be found by opening an IDE (e.g. Visual Studio Code) or advanced text editor of your choice (e.g. Notepad++) and searching the cloned repository of Blender for the definition of the class name. This approach works for any programming language, including Python scripts.

Alternatively you can use the:

Diffusion for Blender or Blender Add-ons and search the class name through the Pattern Search
GitHub mirror and search the repository using repo:blender/blender followed by the class name.

The SCREEN_OT_screenshot class can be found in  /source/blender/editors/screen/screendump.c. The EXPORT_MESH_OT_stl class, which is actually named ExportSTL, can be found in /release/scripts/addons/io_mesh_stl/__init__.py.


How do I join seamlessly two identical components?

Use right click (Context menu) > Bridge Faces. It will automatically delete the inner faces.


How to use one object to cut a hole into another one

Use the Knife Project tool.

  Blender Manual
  To use Knife Project, first while in Object Mode, select the “cutting object” then select the “object to be cut”. Now, enter Edit Mode and press Knife Project (found in the Mesh > Knife Project).

When you're done, just delete the "cutting object" and also any unwanted faces from the cut object.


Low quality textures being baked to high poly mesh in cycles

When you baking something, you have to create new Image in Blender. There is no way to change existing image resolution in Blender, so you should create new one, bigger, put it in appropriate Image Texture node and bake again into new image.


Animation: light is shining through plane: how to stop that

Assuming you are using a spot with Halo enabled.

Change the Spot Shape > Step value to 1.

This will block the Halo.

See the image below.


Rig your string with two bones at each end. Paint the Weight of how you want your spring to behave. For example: Heavy bending in the middle -> Red middle area to blue outter area.
then pin one bone to the hook.
Hope it helps. "weight paint" is the phrase you should look for


Set resting length for a generic spring constraint

The spring constraint is anchored by the Empty that it lives on.  You may be forced to start the objects in the pre-gravity position, and then animate them to move from that position to the stretched rest position in frame 2.  Then you can deactivate the Animated checkbox with another keyframe and let the simulation take over.

[editing to address questions in the comments:]

The Animated checkbox can be found in the Rigid Body subsection of the Physics section of the Properties view for the object.  The Animated checkbox can have keyframes (so you can give it a keyframe at frame=1 to start it out checked, and then give it another keyframe to uncheck it whenever you need it to switch over to physics simulation).

As for the multi-spring scenario, you may have an incontrovertible point.  I consider it possible to construct a set of spring linkages which could have no zero-tension rest position, and can only be expressed using a baseline tension parameter which blender appears to lack.

Although now that I think about it more, I am imagining a scenario where the spring tensions are set for empties that start out unattached, but then are bound to the target object later in the animation (using the Enabled checkbox in the rigid body constraint in the physics section).  My physics demo catalog contains several examples where constraints are temporarily disabled.  This would still require considerable ingenuity and a non-trivial amount of math to arrange.


How do I restore the pivot point to the original pivot location?

A characters origin in most cases should always be 0,0, rotate the character from different locations using the 3D cursor as the pivot point instead.


How to remove material and faces that are textured by it?

In EDIT MODE

Select one face having assigned the material to remove.
Select -> Similar (Shift-G) -> Material
X

Python:

bpy.ops.mesh.select_similar(type='MATERIAL', threshold=0.01)

Note: The operator has a few option you see in the left panel left:


The quick answer is whilst Blender has some excellent physics solutions. What you are trying to do could be a little past the scope of the current physics solvers.
There may be ways to do it using fluid particles or even the molecular add-on, although I'm not sure what the current skinning capabilities of these are.
I will however point you to a cool little tip from one of Nikolaus Gradwohl's blogs, showing denting using dynamic paint. This might help you towards your result.
http://www.local-guru.net/blog/2017/8/9/blender-dynamicpaint-displacement


Normals look different from Edit and Object modes

I checked "Flip Normals" under Solidify Monifier. Thanks for Robin Betts pointed out.


It's simple, really.
First, you create two cubes, one slightly smaller than the other.

The select the bigger one of them and in edit mode add loop cuts vertically.
Between 24-48 loops should be enough.

Then select one of the edge loops press 'O' to activate proportional editing and then select random falloff.

Switch to top view, click on the respective axis manipulator and drag forward.

Then add 2 horizontal edge loops and repeat the same process with each of the loops. (Adjust it forward and backward as you see fit)

NOTE : Switch between random falloff and smooth falloff if you feel the edges are too jagged.

Then exit edit mode and move the "rough-edged" cube such that it overlaps the smaller cube.

Next, select the smaller cube and and add the Boolean Modifier and set the operation to "Difference", also make sure the Solver is set to "Bmesh" else the poly-flow may not be even and then press "Apply".

You may delete the bigger cube if you have no further use of it. Now, in edit mode, select all the faces you want to make a ledge or road and press "E" to extrude. Extrude till where you want it.

Hope this is the answer you were looking for. :)


From your screenshot it appears that you have enabled edge length under mesh display.

To enable/ disable this option, open the properties panel with N and select/ deselect length under edge info.


How do I select vertices that are directly under the other?

In edit mode disable Limit Selection to Visible.

An alternative approach is to switch to Wireframe Mode with the Z key.

Blender 2.8

In 2.8, these tools have changed location:


Is there a way to only store keyframes of only selected bones in poseLib?

pose library won't save positions of bones with DEF in the beginning of their name. You could try that for a basic ignoring of specific bones.

Or to disable bones in a keyframes
From:
https://www.blender.org/forum/viewtopic.php?p=107151&sid=ad277a6cd901c3e716346e1bdd51c371#p107151
"Mute the Bone's animation channels in F-Curve Editor and change frame to update 3d view:"

The only other way I can think of is to use a script which grabs all of the keyframes and allows you to modify only parts of that script before being run again.

I suggest you look into scripting and start with some of the codes here: How to get keyframe data from python?


Animation doesn't affect root bone, althought I can move it around

Ok I dont really know what I did.. I started making every "in Body Action"  single user and tried to delete loose actions i didnt use and then it worked..


Where are the Settings for F-Curve Modifiers?

I am using Blender 2.82.

Select axis on the left side
press TAB or 'right-click' -> Toggle Channel Editability
press N

You'll see modifiers :)


I had to search better for the correct driver. there is a different between Descktop driver and Notebook driver. Thanks to everyone for your help
this looks the correct driver

https://www.nvidia.com/Download/index.aspx
for now it look that it is working properly
Thanks


Is it wise to use edge loops and subdivision modifiers on high poly meshes?

Lower polycount is better performance-wise.
But sometimes it makes sense to sacrifice performance for ease of use.

Bevel modifier
- easily adjustable edge width, great for hard surface modeling
- not suitable for complex corners and edges (creates overlaps)
- low-poly results

Subdivision Modifier
- easy to use, great for organic surfaces
- works almost anywhere
- hi-poly results  (4x more polygons with each level)

In reality they're often used together.

Let's compare
Same edge resolution, different face count.


How to keep edges around the square hole sharp?

You can try using Edge Crease by pressing Shift + E after selecting the edges around and inside the hole.

Make sure you select all of these edges for the desired result.

I added an Edge Split modifier at the end to get rid of the smooth shading artifacts.

Hope this helps!


Applying transformations and proper placement of the origin points'll do the job here.

Apply the transformations for all the objects with Ctrl+A and set all the objects' origin points in the same place as pictured below.

You may then change the position of the belt.


Kissing Spheres of Various Sizes (a plane of bubbles)

This kind of bubble effect can be generated using rigid bodies and force fields. A mix of different size spheres are dropped on a plane and the force field causes them to pull together and space fill.

Procedure (tested on Blender 2.79)

Create the baseline geometry. Add a contained to drop the spheres into, add sphere of different sizes above the container. Set the contained as a passive rigid body. Set the spheres as active rigid bodies.
Add a force field actuator to the center of the container, under the floor. Set the force to a negative value to attract the spheres.
Set the gravity to a high number to pull all of the spheres to the floor and keep them there as they are pulled to the center.
Animate until everything is pulled together.

At this point, the spheres are reasonably packed and approximate the 'kissing spheres' stuck to a plane. Add the shaders and render.

Example Blender file -


Cloth doesn't bend enough on sharp edges

Please move the Cloth modifier under the Subdivision surface modifier

as shown below :


How do I put a constraint on a bone affected by chain length?

Try using a Transformation constraint, this allows you to convert a location change into a rotation change.

In the following example I take the Z location of the arm bone with values between -0.3 and 0.3 and convert that to an rotation of the X axis of the shoulder bone from -5 to 5 degrees. Notice in the middle the Z source maps to the X destination.

For more control than that you can create a driver. You can define your own python functions to use in drivers to get as much control as you want.


Why does Blender have the Z-axis up but is the depth-pass actually called a Z-pass?

Because 3D space and image space are unrelated.

It makes sense that you have (X, Y) used for a 2D image, so then its logical that the depth be Z.
Which axis represents 'depth' in 3D space is undefined, there is no right answer and it's not consistent between applications, if you work with maps it may make sense that (X, Y) are for a 2D top-down view and Z is the land height. But you can rationalize this differently too, so what makes sense to you is probably based on the applications or use-cases you've previously been used to.


Weird "Shadow" from 100% Transparent object in Cycles on low bounces?

Disabling also the Diffuse ray visibility on the transparent object removes the shadow without increasing the bounces.

The effect is also reduced (without disabling Diffuse) when the World is completely dark, but not if the emissive object is larger than the transparent one.


Here is a script creating what you want:

import bpy
C = bpy.context
scene = C.scene
bpy.ops.object.lamp_add(type='SPOT')
C.selected_objects[0].name = 'Lamp'
lamp = bpy.data.lamps['Lamp']
lamp.energy = 20000
lamp.distance = 250000


Updating text object in Blender 2.81 using python

The function recalculate_text which you're having run every frame, is also setup to create a new object every time. Pull the object creation out of the def function. Check this out.

import bpy

scene = bpy.context.scene

font_curve = bpy.data.curves.new(type="FONT",name="Font Curve")
font_curve.body = 'Current Frame: ' + str(scene.frame_current)

font_obj = bpy.data.objects.new("Font Object", font_curve)

scene.collection.objects.link(font_obj)

def recalculate_text(scene):
    font_curve.body = 'Current Frame: ' + str(scene.frame_current)

def register():
    bpy.app.handlers.frame_change_post.append(recalculate_text)

def unregister():
    bpy.app.handlers.frame_change_post.remove(recalculate_text)

register()


You can reset curve tilt in Edit Mode by selecting the desired vertex and pressing AltT.


Baking a normal map on to two (seemingly) identical cubes is producing different results

The two lowres cubes are not the same. You may have rotated them or changed the vertices in Edit mode somehow... Here are the vertices IDs shown using the MeasureIt Addon (also possible by enabling developer mode in settings somehow).

Also the UV unwrap are not the same either for probably the same reason. If you split the seemingly same quad face into two triangles, they appear at different positions in the UV, meaning the quad faces are in different orientations to begin with.

Finally, simply duplicating the first lowres and baking the texture with the dup produces the same result as its source.

In essence, you have to add proper UV's to your low-res geometry to avoid artefacts and you have to make sure that the dimensions of both geometries are roughly the same, then it will bake fine:


How do I update textures in the viewport from the textures properties?

As you can see, when you change the parameters of the texture's colors, the texture doesn't change: it changes the way the texture is rendered: in the properties window you have the preview tab for monitoring the process. Another way is to choose the "Rendered" viewport shading in the header of the 3D Window.


Texture paint showing a random old render on my model

I think you need to look to see if you have your old render as a brush texture.


Hello from the future,
If we have us some properties on our operator, like so:
from bpy.types import Operator;
from bpy.props import IntProperty;

class MYADDON_OT_my_operator(Operator):

    bl_idname = "myaddon.myoperator";
    bl_label = "Pop!";
    bl_description = "Spawns a pop-up";

    # using annotations for 2.8+
    # change to equal signs on previous versions
    first_mouse_x : IntProperty(default = 0);
    first_mouse_y : IntProperty(default = 0);

    target_mouse_x : IntProperty(default = 0);
    target_mouse_y : IntProperty(default = 0);

    mouse_snap : BoolProperty(default = False);

Then we can save the original position of the mouse during invoke.
    def invoke(self, context, event):

        # assign position of the cursor at the time the operator is called
        self.first_mouse_x = event.mouse_x;
        self.first_mouse_y = event.mouse_y;

        # probably redundant but i can't recall if props actually reset to default
        self.mouse_snap = False;

        # now warp the mouse to some xy coords
        # here i center on the window and adjust y to approx. the height of my popup
        context.window.cursor_warp(context.window.width/2, (context.window.height/2) + 60);

        # now invoke
        wm = context.window_manager;
        return wm.invoke_props_dialog(self, width = 600);

Next thing on the list is resetting the cursor to the original coordinates. I do this on the first run of draw and haven't really noticed any jumpy motion on the cursor.
    def draw(self, context):

        if not self.mouse_snap:
            self.mouse_snap = True;
            context.window.cursor_warp(self.first_mouse_x, self.first_mouse_y);

That gets you back where you started.
But wait, there's more! As a bonus, you can also pass the xy coords to the operator from your panel's draw.
    def draw(self, context):

        layout = self.layout;
        row = layout.row();

        # this gets you a handle to the operator properties
        props = row.operator("myaddon.myoperator");

        # now just assign them values as you would
        props.target_mouse_x = some_x_coord;
        props.target_mouse_y = some_y_coord;

It's a barebones example, but hopefully a good starting point for anyone else that google-wanders in here like I did. ;)


Is there an Echo effect for animating in blender?

There is a function which creates a very close effect to the one you're describing.

In the Properties Panel, go to the object section and under Duplication, select Frames.

Duplicates of the object in its state from the specified Start and End frame are shown on all frames. To create the echo, set a keyframe on both properties.

Then, go to the graph editor and add a Generator modifier to both curves. By choosing a lower offset for the Start Frame property you will have a span of frames which are shown.

Start Frame = -10 + 1 * x
End   Frame =  10 + 1 * x


Copy rotation constraint adjusting influence doesn't work

Try on edit mode, go to the arms and reset the roll value for both bones Alt+R


There are multiple problems in the scene that could easily happen, but accumulate in this case.

the camera is not at location (0, 0, 0). The scene setup has a sphere at (0, 0, 0). The camera is suposed to be centered in this sphere. This can easily happen with "camera to view" on in the N-Panel > View and jumping in and out the camera with 0. Check out the transform in the N-Panel and reset it with hovering + backspace

facing the camera to your motive is preferable, because your moon  motive is very small and would be cut in half and be displayed at your image borders because of the 360 projection. sugestion rotation (90 ,0, -90) or rotate the texture in the material.

there is no lightsource inside the image sphere, so everything is black from the camera perspective. Dont put a lightsource inside, the bouncing will be very very expensive but instead use an emission shader instead of principled. This is getting even better: now you can render your 360 image with one sample and no noise because emission shaders are returning absolute values.

original problems:

solution:


Have Lamp/Light automatically rotate towards an object or the 3D cursor

You can't track to the 3D cursor but can easily track the lamp to an object via the Track To constraint.

Select the Hemi lamp and add the Track To constraint as follows :

Here I've set the Target to an Empty. Note that the To is set to '-Z' and Up is set to X (but could just as easily been Y - it must not be set to the same axis as To otherwise the constraint is invalid and will not work).

Moving the Empty will now automatically orient the lamp to point to the Empty. This will work equally well for Sun, Spot, and Area lamps but is obviously not generally relevant for Point lamps (since they don't have direction).

It is unfortunately not possible to automatically point the lamp to the 3D cursor (except, perhaps using a python handler) but this shouldn't be necessary as it's a simple case to move the Empty to the 3D cursor via the Snap-To menu (Shift-S, Selection to Cursor).


How to perform Mesh/Sort Elements for objects through Python?

The answer is in your picture. I modified the Simple Operator template:

import bpy

def main(context):
    for obj in bpy.context.selected_objects:
        if obj.type == 'MESH': #make sure its a mesh
            context.scene.objects.active = obj
            bpy.ops.object.mode_set(mode='EDIT')
            bpy.ops.mesh.sort_elements(type='VIEW_ZAXIS') #this is what you're looking for
            bpy.ops.object.mode_set(mode='OBJECT')

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

    @classmethod
    def poll(cls, context):
        return context.active_object is not None

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

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

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

if __name__ == "__main__":
    register()

Press spacebar in 3D viewport and type Simple Operator in the text field.


how to import a .3ds model in Blender 2.65 via console

This line of code worked for me:

 bpy.ops.import_scene.autodesk_3ds(filepath = 'C:/path/to/your/file.3ds')

The tricky place is that you have to prepend 'filepath = ' before the actual path. You will be getting an error otherwise.


Segmentation Fault when calling bpy.ops.render.render (script using Blender as a Python Module on Mac)

I experienced this same error with the bpy module on MacOS 10.15, python 3.7.7 and blender 2.83/2.82

I was able to fix it by changing to a different renderer.

you can add this line: bpy.context.scene.render.engine = 'CYCLES'

before: bpy.ops.render.render(write_still = 1)

And it will no longer seg fault


How to add floating particles to a fluid simulation?

I have come across this question myself and have not found an easy way to do it. I'm sure my answer isn't the best, but I hope it helps :D

Here we go:

Bake your fluid simulation
Create a plane and subdivide it a few times.
Shrinkwrap the object to your fluid simulation using the 'project' option.

Then use object constraints to bind the 'floating' object to the plane you just created on the z-axis. Remember to create a vertex group on the plane and assign it to the constraint.
Constrain the plane to the floating object on the x-axis and y-axis
Tweak the offset to get the correct depth

Best of luck with your project and I hope I helped,

BFB


I'm going to assume here that you have a high resolution image of the wall you want to replicate. I'm going to be using this texture from cgtextures.com.

The best way that I know of for this, is to import it into gimp, crop it to a 1:1 aspect ratio:

You then use the make seamless filter to get this result:

Then import it into Blender and use the bump node to generate a normal map.

Please note that this is how I like to setup a material, but the only important parts are the image texture and the bump nodes.


I had similar problem and I deleted each object and try to render again just to find which one causes the problem.
In my case it was the hair and when I turned hair in mesh object, it worked fine
Hope this will work for you also


Texture paint mode - the brush paints some weird purple thing instead of color

From looking at the OP picture, the OP was using the Normal Map image as a brush texture that is automatically set to Tiled when first used, and that is why it was 'fixed' by deleting the brush and starting over. Could have been easily fixed by disconnecting the Normal Map texture from the brush texture.


Texture Channel animated, doesn't appear in viewport

Short answer no, I don't think there currently is one unfortunately.

I think its a known limitation of the viewport system and a long time to-do list item as stated in the wiki, in this bug report and in this one too


why does loop-cut-and-slide ignore some faces but not others?

First you should fix the mesh. This might be part of the problem.

Remove the double geometry, W -> Remove Doubles
Select all geometry, A
Recalculate the normals, Ctrl N

Does the problem persist? If so you might have to do some manual cleanup. The problem might be that you have ngons in your mesh.

To see if you bad geometry go into vertices mode and Shift Ctrl Alt M to select all non-manifold geometry. If something was selected near at the place where the edge loop does not work that also indicates a problem, if not there still might be a problem
Also to select all n-gons you can do Select -> Select Faces by Sides. Set the number to 4 and the type to Greater Than If you have n-gons they will now be selected.
Go into vertices mode, in face mode it is harder to stop ngons
If you see that there are random vertices along the edges you should delete them, x -> dissolve vertices.

An example of a random vertex along an edge


I try to add a New Texture to one of the scuplt brush but it doesn't work

You can choose the file to use in your texture in the properties editor, Texture tab:


It has to do with your Bevel modifier and your Shade Smooth. If you apply the Bevel, you have this topology:

The small face I highlight is slightly tilted compared to the top flat face. As you have shade smoothed the object, Blender tries to smoothly transition from the big face to the slightly tilted small face. As each face is actually made of 2 triangles in a 3D object, and as the top face is rather big and elongated, the transition between these triangles is pretty noticeable, it creates some sort of artifacts.
You can easily fix the problem if you select the top faces:

Then press i to inset, and B to keep the borders stick to the mirror axis:

This time, as the next faces of the top face are flat as well, there is no more noticeable shading problem:


How does one extrude an edge relative to the vertex normals?

select the boundary edge loop using Alt+Right click (if it doesn't select the entire loop, select everything with A and click on Select > Select Boundary Loop) :

expand the selection using Ctrl++ :

while the Pivot Point is set to anything else than Individual origins, use the Extrude Region (Vertex Normals) operator :

add to the selection the extruded face loop you don't need (the lower one) using Shift+Alt+Right Click and delete the selection :

select the edge loops between which you have a gap and bridge them (Ctrl+E) :

select everything and recalculate the normals with Ctrl+N :

You get something like this :


How to change an action starting position?

Consider using the delta transform panel with ...
location to move all keyframes by the same amount for that timespan


Using boolean operations you can add the cement as one object. Then subtract it by setting a boolean modifier to difference and adding the objects in between as the subtractor.


How to delete all faces with distance to other object

This code does the trick, and uses some nice built in functions to make things simpler:

import bpy, bmesh

s = bpy.data.objects['Sphere']
o = bpy.context.object

bpy.ops.object.mode_set(  mode   = 'EDIT'     )
bpy.ops.mesh.select_all(  action = 'DESELECT' )
bpy.ops.mesh.select_mode( type   = 'FACE'     )

bm = bmesh.from_edit_mesh( o.data )

for f in bm.faces:
    # Calculate the global location of the current face's median point
    gCenterMedian = o.matrix_world * f.calc_center_median()

    # Find the closest point on the Sphere to the current face's median
    loc = s.closest_point_on_mesh( gCenterMedian )[0]

    # Find the distance by calculating the length of the vector between the two points
    distance = ( loc - gCenterMedian).length

    if distance < 0.5: f.select = True

bm.select_flush( True )

# Delete all selected faces
bpy.ops.mesh.delete( type = 'FACE' )

bpy.ops.object.mode_set( mode = 'OBJECT' )

As the gif shows, reverse the sign to delete far away faces


How can I scale an object incrementally with Animation Nodes?

Zippy means like this:

This is linear, though, and if you want pauses in between you have to adjust the input min-max in each node.


Problem with depth of field in specular reflection

As far as I know, this is coherent with reality. The reflected picture is practically at the same distance (or a bit more) of the real railing.