How do I comb hair in python? I am creating particle systems using python.  I'd like to be able to comb the hair using python (iterate through the control hairs and set their control points).  What are the APIs for doing this?

The python API for combing hair is not very complete.  You can adjust the control points for individual hairs using code like this:

def comb1(obj):
    ps = obj.particle_systems[0]
    dx =10
    dy = 10
    for i in range(dx):
        for j in range(dy):
            idx = i*10+j
            particle = ps.particles[idx]
            dz = len(particle.hair_keys)
            for k in range(dz):
                x =  k*0.1*i
                r = math.pi*dy/(1+j+1)
                theta = k /r
                y =  (1-math.cos(theta))*r
                z = math.sin(theta)*r
                particle.hair_keys[k].co_local = (x,y,z)

That is an intermediate result from my research.  It successfully sets the control points for the parent hairs.

It does not update the UI.  You have to toggle between Particle Edit and Object modes for the UI to refresh.
You can not really adjust the position of the root using python.  While there is a "location" property on the python particle object, it is just a computed value.  The real value is a barycentric coordinate "fuv" for the face indexed by "num", and both are only accessible from C (or a version of blender with hacked dna).  Using "displaced" values in co_local works for the parent hairs, but child hairs will not be interpolated correctly.

As of blender 2.71 the python API for editing particle systems has some shortcomings.  A chat with some folks in #blendercoders came up with a reference to some past work on editing the point cache, although the previous work was with the cloth sim and significant work would have to be done to adapt it for the particle cache (and it requires that you enable Hair Dynamics).


How can I scale up actions? I wanted to know if it's possible to scale up an action globally if that makes any sense. I have a rigged character which needed to be scaled up by 100 (so that the rig worked properly in a game engine) but that messed up the actions I had animated. Is there a way to add the same scale value to the action so that all the IKs match up?

My first guess is that you did not scale both the armature and the mesh together, but without the malfunctioning .blend file I could be way off-base.


import socket error in addon I was trying to install the Blender Cloud addon and got a python error. It looks like it is trying to load the socket library but is failing.
If I go to the Blender directory and run the python console from the command line, I can do an import with no error, but I cannot from the Blender python console. It is the same python installation since I have no installation external to Blender.
Here is the result of an import socket from the Blender python console:

Traceback (most recent call last):
  File "<blender_console>", line 1, in <module>
  File "C:\Program Files\Blender Foundation\Blender\2.78\python\lib\socket.py", line 49, in <module>
    import _socket
ImportError: DLL load failed: %1 n’est pas une application Win32 valide.

So it's an invalid win32 DLL, it says.
The entire call when installing the addon (it's mostly the same thing):

Traceback (most recent call last):
  File "C:\Program Files\Blender Foundation\Blender\2.78\scripts\modules\addon_utils.py", line 330, in enable
    mod = __import__(module_name)
  File "C:\Users\nicolas\AppData\Roaming\Blender Foundation\Blender\2.78\scripts\addons\blender_cloud\__init__.py", line 48, in <module>
    wheels.load_wheels()
  File "C:\Users\nicolas\AppData\Roaming\Blender Foundation\Blender\2.78\scripts\addons\blender_cloud\wheels\__init__.py", line 64, in load_wheels
    load_wheel('lockfile', 'lockfile')
  File "C:\Users\nicolas\AppData\Roaming\Blender Foundation\Blender\2.78\scripts\addons\blender_cloud\wheels\__init__.py", line 48, in load_wheel
    module = __import__(module_name)
  File "C:\Users\nicolas\AppData\Roaming\Blender Foundation\Blender\2.78\scripts\addons\blender_cloud\wheels\lockfile-0.12.2-py2.py3-none-any.whl\lockfile\__init__.py", line 58, in <module>
    import socket
  File "C:\Program Files\Blender Foundation\Blender\2.78\python\lib\socket.py", line 49, in <module>
    import _socket
ImportError: DLL load failed: %1 n’est pas une application Win32 valide.

I'm running a Windows 10 64bits and Blender 2.78. Any idea?

Try the following:

Close Blender
Rename C:\Users\YourNameHere\AppData\Roaming\Blender
Foundation\Blender\2.79 to
C:\Users\YourNameHere\AppData\Roaming\Blender
Foundation\Blender\2.79.bak
Use your login in Windows instead of YourNameHere and your version
of Blender instead of 2.79
Start Blender again


How to port a smoke simulation folder over to the render farm? I hope you can help me out with a question: How do you correctly setup your smoke simulation of 10 frames .blend scene to send it to the render farm services?
Let´s say the farm has started to simulate render frames from frame 1 (of 10) and it stops at frame 8 and it´s stopped: How can the farm continue on render 9 and finish on 10 without breaking the continuity on the render?
Thanks.

Render farms will take your .blend file and simulate it on their own site first, to generate the Cache folder. After that, the farm activates the distribute to render-per-machine (buckets assigned) from this file using path relative cache folder. This is how you get sequentially correct simulations on a render farm. It will involve human setup on the render farm.

Useful for hair, fractures, liquid.
Caching in Blender can take many hours or some seconds depending on the SIZE of your scene (yes, blender units to Meters..etc..) so make sure you are working with the right proportion and scale.


Bending an object into a circle I wanted to create a ring around my planet. Unfortunately the bend tool does not work. It does not work when I type in the bend value (360) and the menu option is greyed out.

I downloaded earlier versions of Blender (all the way back to 2.67 when it was still called Warp) and it turns my mesh into an hourglass shape rather than creating a ring. Any solutions?

Bend tool, which is a newer operator than Warp, and take Warp's shortcut Shift W, works a bit different from Warp. I think here you just need the old Warp tool. You can still find it in the menu.

Another way for bending objects is to use Simple Deform modifier. It will bend along the Local Z axis. You can also give it a try.


Normal map texture not working with cylindrical objects in Evee Blender 2.8 I've applied normal maps to two surfaces in the attached image. One is the red tentacle looking shape and the other is the blue tube that wraps around the disc. I can't see any texture in those objects. I used the exact same method to apply a normal map to the disc and you can see the texture applied there. I don't know why it works on the disc in this picture but not on the red tentacle or the tube. The only difference afaik between the disc and the two objects that aren't displaying textures is that they are both sort cylinder shaped.

What am I missing or doing wrong?

Thanks in advance!

Can't say anything without the .blend but, the problem most likely lies because you've used the same UV map for different objects and the normal map is not being adjusted to the different UV scales


How to solve my skin showing in my walk animation? How do I fix this in blender 2.8? I tried parenting it with empty group and automatic weights.

You could remove this part of your mesh, but you could also use the Mask modifier:

Select the part of the skin mesh you want to make invisible, create a vertex group.
Give your skin object a Mask modifier, select the group.
Invert the selection with the double arrows button.
Now this part of your mesh is invisible.

For more complexe meshes you should check out the Mesh Deform modifier method: create a cage around the clothes, give your clothes a Mesh Deform modifier with this cage as Target, and instead of parenting the clothes to the armature, parent the cage...


What is this mode and how do i get out of it? Was following blender guru's tutorial(Part 7 lvl 1) to split the screen,and when i joined the split i accidentally joined this view to my colored view.Now i can't get out of this view.When i render the image ,it stills show colour previously used.

I assume you're talking about Rendered View. Just click the button I marked in the screenshot.
Here is some more information on what these four buttons do.

I hope this helps.


How to setup a simple scene using Python in BGE? I am trying to set up a scene using Python in BGE, there may be a simple way to do it. It is easier for me to explain the problem I have with a very simple Blender session:

Start with a new Blender session, delete the default cube. Add a plane as a floor, and attach an Always sensor to it, and connect the sensor to a Python controller running the following script (3 lines only)

import bpy

bpy.ops.mesh.primitive_cube_add(location=(0, 0, 5))
bpy.context.selected_objects[0].game.physics_type = 'RIGID_BODY'

When I press P to run in the Blender Game mode, I can't see the cube created.
When I press Esc, I can see a new cube was created.
When I press P again, I can see the original cube fall down and rest on the floor.
When I press Esc again, I can see the original cube goes back to the original position, and another new cube was created at that same spot.

It is easy to modify the code so only one cube is created even if I run the script multiple times.  I can also solve the problem easily as follows:
Forget the sensor/controller, just run the script to setup the cube manually before BGE, and then play the game to see the cube falling onto the floor. But I don't like to have to run extra code to setup the scene.

What I have here is a very simple scene. My question is how to, in general, use Python to setup a scene at the start up of BGE?

Based on what I see, it seems that BGE execute the Python code at exit (when I press ESC to quit).  How can I make sure the code is executed at the beginning (when I press P).

ShungChing!

This problem is due to the fact that you are using the wrong library. When you use Blender Game Engine, you have to use bge library instead of bpy.
Try to do the next things:
1) Add an empty in the position you wan to add cube;

2) Add the cube to another layer;

3) To Empty object attach the always sensor --> python controller --> EditObject actuator(make the actuator's name is 'AddCube')

4) The script:

import bge
from bge import logic, types

cont = logic.getCurrentController()
act = cont.actuators["AddCube"]
act.instantAddObject()

Answer files


3ds max user want to find Refine and Connect tool in blender Hi I'm a fellow user of spline modeling and I cant find the "refine and connect" from 3ds max in blender
this option just create a line/segment between two points/vertices of a curve/spline
so their is an option like that in blender  ? or even an add on ?
edit example of 3ds max refine and connect
edit to @gorgious i add two  screenshot

As far as I know there is no such tool in Blender, mainly because curves in Blender can't branch.
One workaround is to select an vertex you wish to connect beforehand, duplicate them with ⇧ Shift +  D, Right-Click to cancel and leave them in place.
Then just press  F a bunch of times to connect them.

Beware that Blender doesn't really memorize selection sequence, the connection order will depend on the spline index the vertex was derived from, so it may not always yield expected results if the original splines were not created in the same order you want them connected.
Another potential caveat is that splines must be all of the same type (bezier, poly or NURBs), and belong to the same object, otherwise you will not be able to connect them.


To export as WebM in Blender 2.8 When trying to export an animation into webM i get this error

I can't find any information about it, what is CQ level?

Important: I am not interested into exporting into frames and using other programs to convert into video ,the programms never works,i lost already too much time and money trying " this one really, it works i swear ".Once again ,not interested.

CQ means constant quality, it has nothing to do with Blender, everything to do with FFmpeg which blender uses for encoding.

https://trac.ffmpeg.org/wiki/Encode/VP9

Try to use WEBM/VP9 as codec with the WEBM container. (output properties, video panel)

Depending on the platform you are working on, it should normally work right out the box.


How to copy and link collection to other scene? How to copy collection to other scene ? And how if i want this collection to be linked, so if i change the collection setting in one scene , it will update automatically in other scene.

Ensure that the scene to which you want your collection to be linked is selected.

In an "Outliner" editor window, ensure that the "Display Mode" in the toolbar is set to "Blender File" or "Scenes".

Find the collection you want to link under "Collections" or "Scene Collection", and activate "Link to Scene" under its alternate-click context menu.


Rotate object having animations is it possible on Blender to rotate an object with its animations ?

As a proof of concept, i bought an character with animations. Then i tried to rotate the whole object and the result was strange.
I assume that it's just a bug when modeling/skinning/rigging the character but not so sure. What may cause this bug ?

You could try parenting the character rig to something else, maybe an empty or a non-printing object, that is centered right at the base of the rig. Then rotate that parent object, and everything should be good.

Actually, rigs often have a base object included. Check to see if your character's rig already has a base or handle that everything else is parented to. Then instead or rotating the whole character, just rotate the base. You should get better result.


Highlighting of compositor nodes? How to use it? Checkbox in compositor's N-key panel is enabled, but I see no difference in behaviour.

My PC is Win7 64 bit, 4gb RAM, card ATI HD4670 500mb.

Anyway, assuming it is working, what information can I get from it? Collateral indication of nodes' memory consumption? For example, nodes which will be firstly highlighted are less memory consumption and so on.

From the Blender Bug Tracker:

  This feature was disabled in the code but not in the interface.


how to use displacement maps on Eevee Blender 2.8 how to use displacement maps on Eevee ? is it a coming feature. Because right now on 2.8 I can't seem to make it work.

It's working as usual, like this:

I have a subdivided plane here, then i went into the modifiers tab, added a displace modifier, then you click new texture, after this, go to the texture tab:

In here you can either choose an existing image to displace your mesh or a noise texture already available:

Then, when you leave edit mode, you should have your mesh with the displacement that you chose:

In this case, Voronoi. You should always download the latest version of blender 2.8 in the experimental tab on the blender.org website, maybe the version that you're using didn't have the displacement availabe :)


Displaying faces in edit mode Blender is not displaying faces with a dot as usual in Edit Mode, Face Select mode.

This is Mavericks OSX, Blender 2.72b

Face dots are not displayed if Textured Solid is enabled in 3D View > N-panel > Shading.

Odd theme colors could make it hard to see the face dots, but that's not the reason in your case. Unselected faces use the wire color for both, the edges and the face dot, which is light purple in your screenshot (so clearly distinguishable from the surroundings).

As last resort, submit a bug report to the tracker.


Controlling drivers with data received via TCP/UDP For a project I need to drive shape keys with data received via a network connection. In my setup I receive input form a TouchOSC app running on an iPad into PureData on a Mac. The input data then is processed and sent out over UDP to 127.0.0.1:13001.

That's all working fine but now I need Blender to receive the packets, evaluate them and use the values to drive properties on objects. In my case I need to drive the value property of shape keys.

Is this possible and if so, how can I approach this the best way?

The basic idea is to open a socket, poll the data and apply the received values to the shape keys:

import socket

# open network socket
port = 13001
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.bind(("127.0.0.1", port))
print "waiting on port:", port

# poll data (could use a timer)
data, addr = s.recvfrom(1024)
print data
# set float value from data
# value convert from data
bpy.context.object.data.shape_keys.key_blocks['Key 1'].value = float(value)

Related:

Mapping an algorithm to an animation
http://www.binarytides.com/programming-udp-sockets-in-python/
How to run a python script at regular intervals?


How do you change the Minor diameter of a torus in Blender 2.80? I am trying to change the diameter of a torus in Blender 2.80.
The Blender series on this is using Blender 2.79.
How do I do this using Blender 2.80?

When you create your primitive you have a folded menu on the bottom of your 3D View, just unfold it to have access to all the parameters. Once you've made some changes, like moving or editing, you won't have access to this menu anymore though.


Why does my Eevee renders freeze at 98%? I have here a strange situation today. On Blender 2.81 and 2.82, while trying to render a scene file, that I've been assembling for years, it strangely now keeps freezing at 98% and returns several "TIFFReadDirectory:Warning, unknown field with tag 18246 (0x4746) encountered"
...But I don't even have Tiff textures on the objects, they are all .png
...Some versions ago (from 2 months ago) render just fine, but from some point on, this error occurs.

Anyone knows what can be this related to? At least a clue?

It's surely not memory, I have a 12Gb Graphic Card (TitanX) and I can deactivate all collections (having just a few Mb of memory in use) and I still get the error.

Thank you very much for the attention!

Best regards,

Rogério

Edit: I've found the reason of the problem! It was some TIFF images loaded on a no longer existing object and the freezing at 98% was due it being render a 2nd ViewLayer that had all the objects turned on:

This view layer wasn't being used on the compositor and as such I wasn't seeing this render result in any place until now. Thanks for all the help!

The only reason for this warning is that Blender is trying to read a TIFF.

Objects are not the only things that might use TIFFs. You might check your skydome or environment texture. If you have BlenderGuru's Pro-lighting Skies, then it's probably loading TIFFs at some point. You may have some other addon that uses TIFF images.

If you can upload a copy of your .blend file, someone here might be able to help you track down what images are causing the problem.


How do I create a precise, tight fitting render border around an object? I know how to Ctrl+B then drag to manually create border while in camera view (Numpad 0). I also know I should check both 'Border' and 'Crop' in 'Dimensions' panel of the 'Render' context of 'Properties' editor.

However, I want to precisely create a tight fitting border around selected object like you can do in Inkscape when you "Resize page to drawing or selection".

Full disclosure, the add-on I'm about to recommend is a paid for add-on created by me.

'Animated Render Border', my add-on, allows the user to select an object from a drop-down list and automatically detect where the render border should be positioned so the object is encompassed by it:

You can choose whether it does this via the object's bounding box, or more precisely, using its vertices (if it is a mesh, curve, armature (uses bones) or lattice). It also has a mode to allow a more manual fine tuning ('Keyframe' mode).

As the name might suggest, this is actually intended for objects that are animated that you want to be contained within the render border, but it works perfectly fine for stills.

There are some limits in that modifiers that alter the object's geometry aren't currently supported and there are some objects which can't be 'tracked', like empties, lamps and cameras.


Info view print order / displaying debug information I have the following code:

self.report({'INFO'}, 'a\nb\nc')
self.report({'INFO'}, '0\n1\n2')

In the info view the output is displayed as:

c
b
a
2
1
0

Is it possible to configure the Info view to display it in a normal way, like:

a
b
c
0
1
2

This could be used, but i'm sure i'll receive some heat for suggesting this. Run this from text editor, and it will print 'wooot' in the first available blender Python Console.

import bpy

# doesn't support passing the context
# from console_python import add_scrollback

def add_scrollback2(ctx, text, text_type):
    for l in text.split("\n"):
        bpy.ops.console.scrollback_append(ctx, text=l.replace("\t", "    "),
                                          type=text_type)

for area in bpy.context.screen.areas:
    if area.type == 'CONSOLE':

        ctx = bpy.context.copy()
        ctx['area'] = area
        add_scrollback2(ctx, "whooot", 'INFO')
        break

A few caveats, this isn't recommended at all, and especially not for printing out large chunks of data rapidly. That's what logging is for, you can write output to text files on disk, much much faster than your machine can print messages to the screen (printing to screen slows down your code significantly if it happens in tight loops). The benefit of writing to disk is you have virtually no limit regarding the amount of lines you can record, unlike most terminals/consoles which have a finite scroll-back buffer.

In the long run most of us conclude that it's more convenient to have a  console/terminal open in addition to blender, be it landscape or portrait. This means starting Blender from a console, or creating a start-up shortcut that first spawns a console and then from that console an instance of blender.

If you do use regular terminal / console then be selective about what information you print, and avoid print statements that might be triggered in tight loops.


Alpha transparency not working Before you tag this as an 'already asked' question , please read all of it.
It is a different case than other similar questions.
I am making a farm scene.However , a problem occur when i render it.
Here is an image of it.

As you can see from the image , the plants have a black layer covering it .
But when i zoom out , the alpha work correctly again.
Here is the image.

The node for the crops look like this.

What i want it to look like is the view in material tab .Here is the picture of the scene in material mode.

I just made a simple , smaller size and similar scene blender file. Here it is if you want to check it yourself and solve the problem.It is only 5mb size.Here's the link - https://www.mediafire.com/folder/7fm3j77t24l4m/Help (Please download the textures along with it)

Thanks to chebbou for the link , i managed to find the solution to this .
Just go to render section and go to light paths . There will be min and max there . And if i am correct , default is set to 8. I turned both of it up to 120 and the problem is fixed ! Cheers.


Rendering matcap with ambient occlusion using blender internal render and cycles I'm using matcaps as materials most of time, using blender internal render and cycles with nodes or without, by making the material shadeless and setting the mapping coordinates to normal.
I want ambient occlusion to affect the final render.

Enable the Ambient Occlusion in the World section of the properties panel. Set it to Add.

Create a new material: "Ambient".
Set the Diffuse Intensity to 1, and the Color to (1, 1, 1). Rendered view will show the ambient occlusion of the material.

Create a new material: "mixedMaterial". Assign it to the mesh.
Enable nodes, add the "Ambient" Material, the "Matcap" Material and combine them with a Color Mix node. Set the Mix nodes mode to Multiply.

This is the result.


Smoke constrained by objects I have a smoke emitter that is under a rocket (but not touching anything). It emits smoke, but the smoke just sits there in a bubble. It doesn't flow. If I move the emitter away from the collision objects, it works fine. It's like the smoke won't get within a meter of any collision object, and this is a threshold that I can't seem to edit. Any ideas?

Have you checked the boundaries of the Smoke Domain?

The Smoke Domain is a cube that determines the limits of the simulation of the smoke. It cannot escape it. The cube can be resized and it's shape changed, of course.

Here's the relevant page from the Blender Manual for 2.79.


Poles not correct in Rigify add-on after skinning I have a big problems with the Rigify addon. It seems that you need to have a slight bend for the knees and elbows (the natural bend) to get the poles for knees and elbows correct. If the poles are wrong and I try to fix change the poles afterwards I get weird twisting on legs. My solution was to reshape the basemesh a bit to get a slight correct bend and then the poles are correct. Is this a bug or is there a better way to solve this?

Closed; mentioned in manual:
"Limbs: Keep the legs as straight as possible in the front view (Rigify human works better in predictable cases). Give the knee and the elbow a slight bend angle (Rigify needs to know where your knee/elbow is pointing)."
A limitation just to be aware of


Edge Selection - Selection highlights vertices only? The first picture is showing how the edge selection should look. The second picture is mine, it is showing how my selection looks.

I'm trying to join the bridge of the nose and my selection looks different on
screen, only the vertices seems to be selected but the edges are not.

Looking at your image, you are in vertex selection mode, that doesn't explain why the edge in between the two selected vertices isn't highlighted, so most probably you have doubles. Select all by pressing A once or twice, then  W  and choose remove doubles, watch the status bar at the header of Blender to see how many vertices are removed, this should work normally, you can set selection by edges instead of vertices by pressing Ctrl +  Tab  then choose Edge.


Question about Bridge edge loops I want to bridge the two following loops:

a figure $8$ (i.e. two polygons with a common edge)
a rectangle

After joining the two objects and applying the tool Bridge edge loops, I only get one circle bridged.
Does it mean that that tool cannot be applied here? How do I join then the two loops?

Here's the result:

Remove/dissolve the edge shared, or the one in the middle, and retry Bridge Edge Loops. Blender has problems with cases such as yours as a loop has to be a loop, i.e. is not supposed to be split. And the same number of vertices in both loops does result in better topology


How to make noise more square-like? I have noise as an F-modifier in the graph editor on a bone animation. However, I want it to be more sudden and make the curve more like a square-wave than sinusoidal. When I look at the options though, I only see a smoothing key, not a sharpening key.

Once you've set up your noise curve, simply add a Stepped Interpolation modifier to make it blockish. Use the Step Size parameter to adjust the "definition".


Why is my scene rendered repeatedly when I press F12? I hit F12, tiles all render out - just as the final image appears, the whole lot disappears only for it to start all over again.

I've not specified multiple frames or any animation, so can anyone explain why this happens and what it's for?

If your scene has more than one render layer, blender will render each one successively. Finishing one and starting over with the next one until the information of all layers is complete.


What is the best way to make textures? What is the best way to make textures? Which way do you use?
I think UV mapping is most popular but not easy.

It really depends on what kind of texture it is.

For a texture which looks mostly the same everywhere (e.g. a dirt texture), you can use Blended Box mapping:

For a texture which has an obvious definition of what should go where (e.g. a head texture), you probably want to use UV coordinates.


Any idea when GPU volumetric rendering will be added? Smoke and fire renders with cycles take forever with my CPU, but would be much quicker with GPU... Anyone know when this feature will be added?

It is already there for CUDA GPU's in 2.77 and 2.77a. The other kind of GPU is not yet supported. Read the blender.org page for more on 2.77 and enhanced GPU capabilities.


Why Drop to Ground addon doesn't work? I have installed the "Drop to ground" addon. I have added the plane and renamed it to "Ground", took a normal cube and put on the plane some distance away from the plane. Then I selected the cube, Shift selected the plane and hit the button to the left - Drop to ground. It's giving an error and nothing is working.

Traceback (most recent call last):
file "C........ addons\object_drop_to_ground.py", line 166, in execute drop_objects (self, context)
file "C........ addons\object_drop_to_ground.py", line 108, in drop_objects hit_location, hit_normal, hit_index = tmp_ground.ray_cast(lowest_world_co, lowest_world_co+down)
valueError : too many values to unpack (expected3)
location : <unknown location>:-1

I have downloaded the addon from this new link https://gist.github.com/mhulse/571947fbe5ca16b7f2b7

Can anybody give me solution for that error

Object.ray_cast changed in 2.77 to include a "hit" return value giving the success of the hit.

You need to replace lines 108 to 111 with

        hit, hit_location, hit_normal, hit_index = tmp_ground.ray_cast(lowest_world_co, lowest_world_co + down)
        if not hit:
            print(ob.name, 'didn\'t hit the ground')
            continue

Full edit here https://gist.github.com/batFINGER/820d385839a222e5a10c1b7f5cdbd0b7


Add Properties Window Suppose I've added a Cylinder, on the left side there will be the 'add properties' section where I can tinker with all sorts of options such as radius, vertices, Depth etc. I will then resize the Cylinder and once I confirm the resize the 'add properties' section disappears. How can I get back the 'add properties' section back after I've resized?

Sadly, this isn't possible. There are some good reasons why though.

If you think about it, when you add your cylinder, you have all your settings there. The settings will always be for the last operation done. When you do another operation, the old settings are gone, and are replaced with the new settings for the operation you just did. There isn't a way to go back to previous settings without going back and redoing your steps, because it's not really practical to keep those sorts of histories, especially when mode changes come into play.


How to delete unused meshes from the Outliner? As you see on the screenshot I have many meshes in the DataBlock view of the Outliner, but in fact, I use only 3.

How to delete rest of them ?

Here is video describing the problem:
https://www.youtube.com/watch?v=RM9Rr1gnL5g

Change the outliner view mode to "Orphan Data" instead of "Datablocks".
To the right of the search field in the header is a "Purge All" button;

and may simplify your problem.

This button essentially performs the save and reload process in one click, which in turn invokes Blenders garbage collection routines.


Face Overlapping Edge I just recently started using Blender, so I am new to this.

Currently I'm working on a model of a mask. For that I created a flat rectangular shaped block, where I'm trying to cut out eye holes using the boolean modifier and a cylinder.

After applying the boolean modifier I fixed the ngons and removed doubles. Now I get the unwanted result of a face overlapping the edges of my mesh:

As you can see the marked area creates an overlapping face.
In the render it will look like a rotated square:

I appreciate all the help.

As previously said by Carlo: "Concave polygons can cause artifacts" because Blender is not sure how he is supposed to fill the surface between the vertices.

So here is a better way to make a hole in a 4x4 surface. I think you should avoid Booleans as much as possible, especially for such a simple operation. To make a hole you can simply select the central point and delete it. Then to round the shape, select the edge loop and use the LoopTools addon > Circle. Then you can extrude once, then scale down the extrusion, give it the shape you want, etc...


Blender 2.8 is rendering in eevee when cycles is selected I have a rigid body simulation that I rendered in eevee and I made an MP4 from it. I want to render the same thing in cycles but every time I try to render it renders in eevee even though cycles is the rendering engine selected. Does anyone have a possible fix?
I've already tried closing and reopening the project and the problem still persists.

With your attach Blend file, I see nothing rendering both for Eevee or Cycles ((2.80 2019-07-29). Not sure what the problem is. In either case, I was able to workaround the problem by selecting ALL objects in the first scene, creating a new, empty scene and pasting all the copied objects in the second scene. After that, it renders fine in both Eevee and Cycles.


Why does sculpting with dyntopo produces small cracks on the mesh surface? I'm new to blender, I started about a week ago. I'm currently designing a human head. As for the details, like lines, little molds etc., I thought of using sculpt mode. So bsc. what I did was, editing my object, or rather it's vertices, make it more "high poly" with a subdivision modifiers, editing again, subdivision again, and so on.

Now I ran into a problem.
When trying to use the sculpt tools, literally nothing happened. i searched the interenet for answers, all I found was the tip to turn on "Dyntopo". I did. After that the sculpting tools had effect, but the effect wasn't the one I wished for, neither the one it should be. It was more like little cracks in my model, I can't even describe it properly, but I'll add images.

Any ideas what I'm doing wrong? What settings should I use? Is there a way to finalize my model, so that the PC doesn'T take it as editable object anymore, in order to improve performance when sculpting? Kind of locking the vertices?
I'm running a GTX 980 and an I7 3770K and 16GB RAM, still it lags like hell...

http://imgur.com/a/JKcd0

Thank you very much, I hope this is the right place to ask this kind of question!

The first screenshot shows big amount of faces stretched horizontally really much, probably as a result of dyntopo atop of already subdivided mesh with maybe not proper base topology. They are bulging out of the model, most likely as a result of the brush drawing.

In short, don't use dyntopo in this case. It is useful for rough and quick adding details when e.g. base and draft sculpting is done; it's possible to do the final mesh with it only as well, but not mixing it with Subsurf or any other type of subdivision. The reason to use dyntopo is to selectively subdivide mesh where needed and sculpt it at the same time. On the other hand in the case shown you have big amount of geometry which as you see will prevent you from easy editing. Further, it's mostly useless as much less geometry is pretty much enough for showing details.

The thing also to keep in mind is that if you need more details continue subdividing the mesh relatively equal for all its surface. There are plenty of tutorials about subdivision while sculpting which will show you that in more details.

The easiest solution is to undo dyntopo (using backup copy of the mesh is assumed) and go with Multires only (instead of Subsurf). Then it will be possible to go with clean topology as much as possible while leaving base mesh relatively simple (Multires will do that for you).

If dyntopo is undoable then it's possible to use it for unsubdividing as well, just enable Collapse in the Dyntopo rollout and continue scultping on the mesh while checking what geometry it generates.


Hair Particle Objects change size and angle when parent object's bones are rotated To explain about my problem, I created a simple cube that is bent by an armature. I applied a particle system to the cube that consists of simple cones so we can see the size and angle of the particles.

When I only slightly rotate one of the bones, the particles increase their size. If I apply a subdivision modifier - as some people advise when having problems with particles - the re-sizing of the particle is no longer there, but now the angle of the particles change.

Question: How can I make the particles stay the same size and always stay normal during rotating of the structure's bones?

After a lot of searching the web I found the root cause of the problem: I have to apply Ctrl +  A Scale, Rotation, Size. This fixes the problem.
Frankly, I don't really understand what Ctrl +  A does, but it works.


Blender Render Transparent Tiles Until Final Image Sometimes when I'm working on a project at somepoint the following issue will occur and I have no idea what causes it, finding information about it is difficult because searching for transparent tiles seems to only give results about rendering transparency.

When the image is rendering, the render will not show the current progress in the image editor, but the tile being rendered will still have the orange outline. The image will display when the render is finished.

Any help is appreciated, thanks.

picture

I don't have the required reputation to comment, so I'm posting this as a reply

I am sure you've found out the issue since then, but for anyone comming across the same thing today:

Recheck the Render Slot at the bottom of your render window
Uncheck the Save Buffers checkbox under the Performance Tab in Render Properties


How to map musical data to objects in blender amd export 3D printable .stl file I'm a teacher, and I'm designing an assignment in which students will analyze music to extract timing and loudness data from recordings, then import the information into a Python script, map the information to Blender objects, and then output a 3D-printable .stl file.

While I know exactly how to extract the musical information, I'd like to hear your opinions on good ways to map the data to Blender objects and export a printable .stl using Python.

Assuming you have already baked a sound file to curve, you could evalutate the f-curves values and assign them to a prepared object e.g. massivley loop-cut cube.

import bpy

obj = bpy.context.scene.objects["Cube"]
action = obj.animation_data.action

fcurves = action.fcurves
for f in fcurves:
    print(f.data_path)

coords = []
for vert in obj.data.vertices:
    if vert.co.z > 0:
        coords.append( vert.co )
        print( vert.co )

ysorted = sorted(coords, key=lambda element: (element[1] ))

cidx=0
for i in range(200,250):
    curve_val = f.evaluate(i)
    ysorted[cidx].z = curve_val
    cidx = cidx + 1
    ysorted[cidx].z = curve_val
    cidx = cidx + 1

The vertices are first filtered by positive z-coordinste and sorted by y-coordinate so that opposite (on x-axis) vertices follow in a sequence. After that the curve value is evaluated and assigned to the z component of the vertex.

The resulting mesh is manifold and can be exported to.STL format.


Transparent laser focus Did I understand the answer in this post correctly? It says that due to the fact that volumetric lighting is not implemented yet, creating a transparent laser focus with visible molecular spheres in it is not possible?

Right now I'm trying to see a sphere in a red "focus" and do not get the result I would like to have.

Screenshot of the properties:

BI:
BI does have volumetric rendering, so you could you could use two Spot lamps with Halo enabled to get this effect:

ShiftA>Add > Lamp > Spot

Select the spot lamp and duplicate it with AltD to  duplicate linked. This way all settings will be mirrored between each Linked Duplicate.

Rotate the duplicated lamp 180° (R180):

Enable Halo in Object Data > Spot Shape.

Note that to get volumetric shadows, Step will have to be set to 1 or higher:

Result:

Cycles:
Cycles does not yet have volumetrics integrated, but they are planned to be in 2.69 or 2.70:

Plans
For 2.68, the following features are planned to be worked on:

Hair shader
Ubershader (combined diffuse+glossy+transparent node)
Look into of improvements for SSS, AO, mist, ..

After this the next big feature will be Volumetrics. Probably the
first release with Volumetrics will be 2.69 or 2.70.

You could fake this in Cycles by using the same scene with two spot lamps, but with transparent cone objects along with spot lamps to act as the volume.

Add a Cone and match it to the shape of the spot lamp:

Create a material for the cones. The IsCamera ray node mixes the transparent shaders so that the cone appears to have some color only to the camera. All other rays will just pass through it unaffected. The Layer Weight node allows us to change the color based on how much faces point towards the camera.

Result:

Note that with this technique it is impossible to get volumetric shadows. (see this post for some tricks to fake volumetrics in cycles with shadows.)


Bone weights with subsurface modifier I have a basic character I'm trying to rig, but the deformations are bad when I have a subsurf modifier on the stack (above armature modifier). It works well if I apply the subsurf, but while it's on the stack it interpolates the weighting and messes it up. Example:

also note the flared tip in the last example

Is there any way to fix this without applying the subsurf? I need to add a lot of edge loops to get it looking good, which defeats the purpose of keeping the subsurf modifier unapplied. The ideal solution would be for the bone weighting to work directly with the subsurf on the stack, rather than basic interpolation, but I'm not sure if that's possible.

There is no may of getting exactly the same effect, as you can only set weights on 'real' vertices, not the extra ones generated by subsurf, which just get interpolated. Automatic weights are just an easy way of setting the weights, it doesn't do anything that you couldn't theoretically do manually.

That said, when making characters, the subsurf modifier is generally placed below the armature modifier in the stack. This way the deformation with or without subsurf will be much the same as with subsurf, and subsurf is just used for smoothing and to support extra detail through displacement mapping. This is also important from a performance perspective, as the number of vertices can have a big effect on armature modifier performance.

Your base mesh, prior to subdivision, will need to have enough geometry to deform properly, which can mean adding extra loops around joints, but some experimentation is often required. In your case it looks like when you have added extra loops, they are too close to the joint.


How to dynamically paint cycle materials? I am wondering how you would dynamically paint a cycles material over another cycles material? Basically, interchange the material where the brush touches.I have tried switching between them with the attribute and weight paint but doesn't seem to work.

You can use an image texture that you paint on as a stencil between shaders, and this acts like a layer mask in Photoshop. You can also set up an attribute node and use vertex paint, but the effect there is limited to your geometry.


Setup bones on cloth sim so that you can transfer it to Unity via FBX export So, I would like to have this happen with a script for each vertice of an object:

I just couldn't to make it work :/ Except only some parts of it (scripts found from everywhere).
Building blocks:
Add an empty to each vertex:
    import bpy

vertices = [i.co for i in bpy.context.active_object.data.vertices if i.select]
vertices

for vert in vertices:
    print(vert)
    bpy.ops.object.empty_add(type='PLAIN_AXES', location=vert)

Add a bone to each vertex (thanks):
import bpy
from mathutils import Vector

def AddBonesAtVertices(length, use_normals):
    objects = bpy.context.view_layer.objects
    obj = objects.active
    if not obj or obj.type != 'MESH':
        return

    points = []
    normals = []
    data = []
    for v in obj.data.vertices:
        p = obj.matrix_world @ v.co
        target = v.normal @ obj.matrix_world
        dir = target - p
        dir.normalize()
        dir = dir * length
        n = p + dir * (-1)
        points.append(p)
        if not use_normals:
            n = Vector((p[0], p[1], p[2] + length))
        normals.append(n)
        data.append([p, n])

    amt = bpy.data.armatures.new(obj.name + "_vBones")
    rig = bpy.data.objects.new(obj.name + '_vRig', amt)

    bpy.context.collection.objects.link(rig)
    objects.active = rig

    bpy.ops.object.editmode_toggle()
    for i, l in enumerate(zip(points, normals)):
        bone = amt.edit_bones.new(str(i))
        bone.head = l[0]
        bone.tail = l[1]
    bpy.ops.object.editmode_toggle()

bpy.ops.object.mode_set(mode='OBJECT')
AddBonesAtVertices(0.5, False)

The command for vertex parenting (I think)
bpy.ops.object.parent_set(type='VERTEX')

Yay!
Thanks for the answer below :) I managed to make a flag cloth sim and bake it to the bones and transfer that to Unity via FBX nicely.

Without edit bones.

Edit bones can be a little tricky, in script below instead have added the default single bone object, copied it to match number of verts, joined and constrained to the empties.

IMO this is a little easier to use for something like this and avoids dicking around with edit mode and heads and tails.

Select a mesh object in object mode. Run Script.
Adds an empty vertex-parented to each vertex.
Empties added to a collection and linked to scene.
Add a single bone armature using the operator.
Make a copy, select and link to scene for each other vertex.
Join to original.
For each pose bone, constrain to each empty.
Make the constrained pose the rest pose. (Else all bones are Y up at origin)

Test script.

import bpy

context = bpy.context
scene = context.scene
ob = context.object
me = ob.data

mtcol = bpy.data.collections.new("Empties")
scene.collection.children.link(mtcol)

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

# add an armature
bpy.ops.object.armature_add(location=(0, 0, 0))
for i in range(len(me.vertices) - 1):
    ob = context.object.copy()
    ob.data = ob.data.copy()
    scene.collection.objects.link(ob)
    ob.select_set(True)

bpy.ops.object.join()
arm = context.object

for pb, mt in zip(arm.pose.bones, mtcol.objects):
    con = pb.constraints.new('COPY_LOCATION')
    con.target = mt

# set constrained pose as rest.
bpy.ops.object.mode_set(mode='POSE')
bpy.ops.pose.armature_apply()

Can a punishment be implemented for using the word "vertice" in a Q/A?


Print all frames in between set key frames? How could i have blender print all frames in between a set of key frames? For example, one is at 0, then another at 10. So it would print all 10 frames.

Code:

import bpy
import math

selection = bpy.context.selected_objects

def get_keyframes(obj_list):
    keyframes = []
    for obj in obj_list:
        anim = obj.animation_data
        if anim is not None and anim.action is not None:
            for fcu in anim.action.fcurves:
                for keyframe in fcu.keyframe_points:
                    x, y = keyframe.co
                    if x not in keyframes:
                        keyframes.append(math.ceil(x)) #(math.ceil(x)))
    return keyframes

def print_details(obj_list):
    XRot = round(obj_list.rotation_euler.x, 2)
    ZRot = round(obj_list.rotation_euler.z, 2)
    YRot = round(obj_list.rotation_euler.y, 2)
    xloc = round(obj_list.location.x, 2)
    yloc = round(obj_list.location.y, 2)
    zloc = round(obj_list.location.z, 2)
    print(obj_list.name)
    print("X Rot : ", XRot, '\t'*2, "Y Rot : ", YRot, '\t'*2, "Z Rot : ", ZRot)
    print("X Loc : ", xloc, '\t'*2, "Y Loc : ", yloc, '\t'*2, "Z Loc : ", zloc)

print("-"*25, "starting","-"*25)
for keys in range of (get_keyframes(selection)): #This part needs to be in range of keyframes. Gives list' object cannot be interpreted as an integer error
    bpy.context.scene.frame_set(key)
    print("key : ", key)
    for obj in selection:
        print_details(obj)
print("-"*25, "ending","-"*25)

The issue with this, the way keyframes are defined i cannot do a range of them.

Not an answer to your question, but just some general cleanup of your code:

Using generators instead of single-use lists.
Using string formatting.
Adhering to PEP-8 when it comes to naming things.
Using continue to reduce indentation level.
Using a set to do lookups, rather than a list.
Renamed obj_list to obj, because it holds an object and not a list.

import bpy

import bpy
import math

selection = bpy.context.selected_objects

def get_keyframes(obj_list):
    keyframes = set()
    for obj in obj_list:
        anim = obj.animation_data
        if not anim or not anim.action:
            continue

        for fcu in anim.action.fcurves:
            for keyframe in fcu.keyframe_points:
                x, y = keyframe.co
                ceil = math.ceil(x)
                if ceil not in keyframes:
                    keyframes.add(ceil)
                    yield ceil

def print_details(obj):
    xrot = obj.rotation_euler.x
    yrot = obj.rotation_euler.y
    zrot = obj.rotation_euler.z
    xloc = obj.location.x
    yloc = obj.location.y
    zloc = obj.location.z
    print(obj.name)
    print("X Rot : %.2f\t\tY Rot : %.2f\t\tZ Rot : %.2f" % (xrot, yrot, zrot))
    print("X Loc : %.2f\t\tY Loc : %.2f\t\tZ Loc : %.2f" % (xloc, yloc, zloc))

print("-"*25, "starting","-"*25)
for keys in range of (get_keyframes(selection)): #This part needs to be in range of keyframes. Gives list' object cannot be interpreted as an integer error
    bpy.context.scene.frame_set(key)
    print("key : ", key)
    for obj in selection:
        print_details(obj)
print("-"*25, "ending","-"*25)


Is there a way to update Blender without deleting it and downloading the new version? I like to stay up with the latest version of Blender. I use Blender on my Macbook Pro and it is kind of a pain to update Blender because you have to delete it and then re-download it.

This isn't a huge deal but is there a way that you can just update Blender without deleting it and re-downloading it every time? It is kind of ridiculous to just re-download the entire program when the new version consists solely of bug patches.

Blender doesn't have an (auto-)update function that would do this for you.

Some years ago I experimented with a way to create binary patches - that works pretty ok, but the experiment never took further form, as an entire infrastructure to support this needs to be created, and for such an effort no resources have been found (people willing to work on it, maintain it and the servers).

Until that day you'll just have to download the entire program. Note that you don't have to install Blender, you can just run it from the location you downloaded and extracted it to (at least on Linux and Windows, so assuming it works also on OS X).


Add on - rhino import not working I am trying to install the jester king/import_3dm add-on.
However I get this error.
Anyone who might be able to help, thank you?
Best
Søren

I add the zipped file via preferences/addon and Install button.
The add-on appears on the list but shows me this error.
I am a newbie to blender, so this does not make a lot of sense to me.

The add-on is just a wrapper for the rhino3dm package, which is currently missing on your system.

The following steps should allow you to install the missing Python package:

Open Blender and switch to the Scripting workspace.
In the Text Editor press the + New button.
Copy and paste the following script into the editor.

import bpy
import subprocess

try:
    output = subprocess.check_output([bpy.app.binary_path_python, '-m', 'pip', 'install', 'rhino3dm'])
    print(output)
except subprocess.CalledProcessError as e:
    print(e.output)

For Blender <2.83: Run the script by clicking on the Run Script button. For Blender >=2.83: Press the button with the play icon (triangle).
Enable the add-on in the preferences.


Get all the objects intersects or falls inside a specific object I have 2400 small cubes stacked to form a brick base. The total dimension is 40x12x5 with each cube size of 1x1x1. There is a large cone, some parts of that directly go through the brick base as shown in the figure.
Is there any very fast way of getting the name of all the objects (cubes) that touches / falls inside the cone?

I have found a solution with two different approaches. The first is to find the cubes that intersect with the cone and usually on the side of the edge. Second, finds the cubes that sit inside the cone. In the second part, there will be some cubes that actually intersect with the cone. Thus, there will be some cubes present both results. You can just join both lists and get rid of the duplicate cubes for the correct answer.
# import libraries
import bpy, bmesh, time
from mathutils.bvhtree import BVHTree
from mathutils import Vector

obj_list = [e for e in bpy.data.objects if e.type == 'MESH' and e != bpy.data.objects['Cone']] # get all the cubes
cone = bpy.data.objects['Cone']

# part 1: find the cubes intersect with the cone create cone mesh and it's BVH Tree
cone_mesh = bmesh.new()
cone_mesh.from_mesh(cone.data)
cone_mesh.transform(cone.matrix_world)
cone_BVHtree = BVHTree.FromBMesh(cone_mesh)

intersect_obj_list = [] # the cubes intersect the cone create cube mesh for each cube and their BVH Trees
for cube in obj_list:
    cube_mesh = bmesh.new()
    cube_mesh.from_mesh(cube.data)
    cube_mesh.transform(cube.matrix_world)
    cube_BVHtree = BVHTree.FromBMesh(cube_mesh)

    # get the intersected faces using BVHtree, if result is non-none, the cube is intersecting
    inter = cone_BVHtree.overlap(cube_BVHtree)
    if inter != []:
        intersect_obj_list.append(cube)
print (len(intersect_obj_list))

# part 2: find the cubes sits completely inside the cone
falls_inside = []
for cube in obj_list:
    cube_location = cube.location
    x,y,z = cube_location
    dest_point = Vector((x, y, z+100)) # destination will be point far from the origin
    origin =  cone.matrix_local.inverted()@cube_location
    destination = cone.matrix_local.inverted()@dest_point
    direction = (destination - origin).normalized() #normalizing
    # shooting ray from origin to the destinantion, if it hits then the object is sitting inside the cone
    hit, loc, norm, face = cone.ray_cast(origin, direction)
    if hit:
        falls_inside.append(cube)

interset_inside_cubes = list(set(intersect_obj_list+falls_inside))


Where are clouds, stucci, wood textures in cycles materials? So I want to use the extra settings for the musgrave setting (where you can pick blender original or voronoi f2 etc.) in a material but it seems you can only use it in the texture panel. Is there any way of using these textures in materials?

Cycles is a completely different rendering engine, with its own system, separate settings, materials and different workflow. Blender internal materials and textures are not available under Cycles and the opposite is also true.

Cycles has it's own musgrave texture accessible through the node editor Add Menu > Textures > Musgrave. It has it's own set of settings and can be tweaked as just like Blender Internal.
You can even use other textures com combine, mix or deform the current one.


How to move selected object exactly towards/away from the camera origin? TLDR: Given an object that's within my camera view, I want to move the object exactly towards / away from the camera's "origin" such that the object will appear to remain in the same position from the camera's perspective. How can I do this?

I'm new to Blender and dabbling with camera-matching techniques to manually reconstruct a 3D mesh by matching up several static images (from an old game I love). As a first step, I'm trying to figure out how Blender's "Align to view" feature works, and having trouble.
First I added a Camera and entered "Camera view", and used shift + right click to place a 3D cursor somewhere in front of the camera. See screenshot - the left pane is the camera view and the right pane is another view from the side:

Then I clicked Add -> Empty -> Plain axes (the simplest movable object I can think of) and selected "Align to view":

As expected, the new object's local axes are aligned to the camera view. In a second viewport, I can look at the object from a different angle, and click and drag the (blue) Z axis to move the object towards and away from the camera view. But what I did not expect is that the Z axis is perpendicular to the camera "lens plane", it's not pointing directly at the center of the viewport. As a result, moving the object along the Z axis causes it to change position from the camera's perspective:

I also tried setting the 3D cursor to the camera (ie. the very back point of the camera) and then aligning the object to the cursor, but this seemed to have the same result: the object's Z axis was perpendicular to the camera "lens plane", rather than pointing at the cursor itself.
What I want is to align an object's axis to point exactly to the back tip of the camera (or to the 3D cursor), so that I can move the object along the Z axis without it changing position from the camera's perspective. How can I accomplish this?
I remember playing around with this on an older version of Blender in 2016, and got it to work without trouble, but Blender's UI has changed a lot since then. Note: I'm now on Blender 2.91.2 on a Mac, if it matters.

if i understood you right, you want to change the axis from global to local.

Then select your camera and press G and Z. Now you can move the camera by moving your mouse and it is just zooming in and out now.
UPDATED ANSWER:
ok, now you have an object and your camera in the right position and rotation so that you see your object perfectly through your camera.
Now select your camera and tap on "local"

then tap on "+"
then you got this

then tap on your object and with G -> Z you can move your object as you wanted.
Viel Erfolg! ;)


How can I create sets of orthogonal rings on a sphere that I can extrude inward? I'm trying to make grooves on the surface of a sphere.  I can make one set of grooves by making a UVSphere with many rings, and then extruding every third or fourth ring inward individually.  However, I also need to extrude a set of rings that are orthogonal to those, like rotating the sphere 90 degrees and doing the same.  I can't just do it that way because the UV sphere is made with segments instead of an orthogonal set of rings.  If not a full solution, I am hoping at least for some ideas.  I also have learned how to make a sphere out of only quads by turning a subdivided cube into a sphere, but then there are no rings to use.

Use Booleans

I can't think of a topology that has the loops that you describe ready to work with.
So, depending on your project needs, I would advice to try other ways of modeling your object.

For example you could take advantage of booleans in the exact way you described.

In the main object extrude inwards the edgeloops of a sphere, then duplicate and separate those faces in another object.

Rotate the object on the Y axis by 90°, re-extrude the faces to build a watertight mesh and use it as target for a Boolean modifier to carve the grooves in the other direction while maintaining a certain degree of felexibilty in the modeling

Final result:


Materials tab missing I am working on blender using a friend's computer, and I cannot find the materials tab. I circled the red area where it is usually located for me.

It's there, but it's hidden because the properties editor is not wide enough.

You need to either

Scroll the header over a bit by clicking and dragging on the tabs with  MMB.

or

Expand the Properties editor by clicking and dragging on the boundary between the properties editor and the 3D view.

Example:


Adjust last operarion menu does not work with newly made mesh and mesh is placed twice I made a little script that makes a plane with thickness
when i add the mesh to my model it places 2 meshes instead of 1

For 1 of the 2 meshes the ALO menu works but for the second one not
Can someone help me and tell me what i did wrong?

This is the code i use

    bl_info = {
    "name": "Test object",
    "author": "DGRL",
    "version": (1, 0),
    "blender": (2, 80, 1),
    "location": "View3D > Add > Mesh > DGRL",
    "description": "Adds a new Mesh Object",
    "warning": "",
    "wiki_url": "",
    "category": "Add Mesh",
}

import bpy
import bmesh
import mathutils
from mathutils import Vector
from bpy.types import Operator
from bpy_extras.object_utils import AddObjectHelper, object_data_add

def add_object(self, context):

    verts = [(1, 1, 0), (-1, 1, 0), (-1, 0.9, 0), (-0.25, 0.9, 0),]

    mesh = bpy.data.meshes.new("mesh")
    obj = bpy.data.objects.new("MyObject", mesh)

    scene = bpy.context.scene
    bpy.context.collection.objects.link(obj)
    bpy.context.view_layer.objects.active = obj
    bpy.context.active_object.select_set(state=True)

    mesh = bpy.context.object.data
    bm = bmesh.new()

    for v in verts:
        bm.verts.new(v)

    bm.faces.new(bm.verts)
    bm.to_mesh(mesh)
    bm.free()

    **object_data_add(context, mesh, operator=self)**  *<-- THIS LINE MAKES A SECOND BMESH BUT WITHOUT THERE IS NO ADJUST LAST OPERATION MENU!*

class OBJECT_OT_add_object(Operator, AddObjectHelper):
    """Create a new Mesh Object"""
    bl_idname = "mesh.add_object"
    bl_label = "Add Mesh Object"
    bl_options = {'REGISTER', 'UNDO'}

    def execute(self, context):

        add_object(self, context)

        return {'FINISHED'}

def add_object_button(self, context):
    self.layout.operator(
        OBJECT_OT_add_object.bl_idname,
        text="Add Object",
        icon='PLUGIN')

def add_object_manual_map():
    url_manual_prefix = "https://docs.blender.org/manual/en/latest/"
    url_manual_mapping = (
        ("bpy.ops.mesh.add_object", "scene_layout/object/types.html"),
    )
    return url_manual_prefix, url_manual_mapping

def register():
    bpy.utils.register_class(OBJECT_OT_add_object)
    bpy.utils.register_manual_map(add_object_manual_map)
    bpy.types.VIEW3D_MT_mesh_add.append(add_object_button)

def unregister():
    bpy.utils.unregister_class(OBJECT_OT_add_object)
    bpy.utils.unregister_manual_map(add_object_manual_map)
    bpy.types.VIEW3D_MT_mesh_add.remove(add_object_button)

if __name__ == "__main__":
    register()

This was a quick answer to the user's question, however batFINGER's answer provides more details on how to improve the add-on. It also addresses other issues such as the architecture/structure, imports and the naming convention.

If you want to use object_data_add() from bpy_extras.object_utils then remove the object creation and linking to the scene from add_object.

def add_object(self, context):

    verts = [(1, 1, 0), (-1, 1, 0), (-1, 0.9, 0), (-0.25, 0.9, 0),]

    mesh = bpy.data.meshes.new("mesh")

    bm = bmesh.new()

    for v in verts:
        bm.verts.new(v)

    bm.faces.new(bm.verts)
    bm.to_mesh(mesh)
    bm.free()

    object_data_add(context, mesh, operator=self)


Is there a way to make a game splitscreen in BGE I want to make a 2 player game but I need it to use 2 cameras. Sorta like an fps. I'm not great with code, any help?

Maybe this thing can help you
https://youtu.be/78ORdi4-ynk


Get an executable list of executed operators in python What is it for:
I’m writing an addon for blender which will have to store operators that have been executed since a custom button has been pressed, until another button is pressed.

What do I need:
If possible I need the operators in a form like this:

bpy.ops.transform.translate(value=(0, 3.89135, 0), constraint_axis=(False, True, False), constraint_orientation=‘GLOBAL’, mirror=False, proportional=‘DISABLED’, proportional_edit_falloff=‘SMOOTH’, proportional_size=1)

In particular I need the Operator with it’s values.

Options I found:

The first option I found is bpy.context.window_manager.operators.

That gives a list of the operators, but not in a usable structure. It’s possible to convert them to the bpy.ops format, but there are around 2000 Operators in blender and I already stumbled across a lot of differences between the properties of an Operator which makes this option possible, but increadibly teadious and uneffective to implement.

The second option is the undo history, which has the problem that it’s not accessible to python.
The third option is the info space, which draws all the operators that I need, but there’s no way that I know of to access them.

It would be great if you could help me find a solution to this!

Here's a solution I found. It’s not a nice one, but the best I could come up with:

context = bpy.context.area.type
bpy.context.area.type = “INFO”
bpy.ops.info.select_all_toggle()
bpy.ops.info.report_copy()
bpy.ops.info.select_all_toggle()
bpy.context.area.type = context
clipboard = bpy.context.window_manager.clipboard
clipboard = clipboard.splitlines()

So basically I’m changing the active context to the Info Space to then select everything and then copy it. The copied text is then split into lines, so you get a list with operators, that are formatted nicely.


How can i eliminate the edges from this mesh? I'd want to extrude the face go this mesh but i can't understand how to eliminate the edges inside it

Try selecting the desired edges in edit mode using edge select and press the delete key. Select the dissolve edges option and it will delete the edges without affecting the vertices.


Car model does not render after using motion tracking, but its visible in viewport I am fairly new to Blender.(I am an experienced Maya 3D artist) I'm using version 2.83 on an iMac. I have rendered simple 3D models before using blender and the Eevee engine. But I need to test motion tracking and photo realistic 3D car rendering for work. I have followed a good motion tracking and rendering tutorial on youtube, but since I have the motion tracking figured out and scaled correctly with my car model, it will not render. If I add a sphere to the scene it will not render. The only thing that shows up in my renders is the image sequence background that I used for the motion tracking. I have checked my render layers, the car is render enabled. The Cycles render engine is selected. I can see the car in the viewports, but it never renders! Can someone please help? I am attaching a screenshot.

When you press "setup tracking scene" after solving the camera movement, blender creates two collections: a foreground (with a cube as reference) and a background (a plane to catch shadows).
You can safely delete the background one if you don't need a shadow catcher.
See: https://blender.stackexchange.com/a/108876/92768


When I use 'Shift+B' to Zoom in to box, doesn't work I have V 2.79. I've tried to use keyboard 'Shift+B'and it only has the dotted lines and doesn't form a Box. I've tried the View/Zoom Border command and it forms the Box, but zooms in on the Cursor. I've changed my User Preferences to Zoom to Mouse, and it still zooms to Cursor. Is there a bug in 2.79 that I don't know about? How can I fix this?

I have no idea why this is happening but i can give you some ways that it MAY fix it. Blender uses a central orbiting camera movement, this means that if you have zoomed in too much, the camera will be at the origin of the orbital system. You can zoom out and in with your scroll wheel and you can also use 'SHIFT+CTRL+(- or +)'. Hope this helped, if it did not please reply as i will try my best to help you!


How can I make the background color change when my character steps on a plane? I'm quite new in the blender world and am trying to create a small game.
I try to make the background color change to a random color each time the character steps on a plane. However, I am having trouble thinking of how to go about doing this. What would be an easy way to do this in the game engine.

You can change the background color via Python controller by calling bge.render.setBackgroundColor()


Is there a way to "calculate" speed/duration for animation? So this video of the burning earth is one of my first (Blender) videos. I had made the quite arbitrary choice to let the earth turn in 10 seconds. It seems a little too fast ? Is there a way to "calculate" the best speed/duration for such a video ? And are there any tools in Blender to "play" with the speed of your video ? I guess I should study relevant concepts for this kind of work because now it is a bit of trial and error.

It seems a little too fast?

There is no "right speed" when it comes to animation. It all depends on what  you are intending to do.

Is there a way to "calculate" the best speed/duration for such a video ?

Best (or any other superlative) is beyond the scope of this site, as there is no categorical way to answer...
But calculating the duration of an animation is not only possible, but absolutely necessary for anyone trying to express ideas through animation.
To only way to get a sense of how your animation is working out, is to pre-visualize it in real time, meaning: evaluating while playing back at a sustained pace at the target framerate.
For simple scenes you can just playback the animation on the 3D vieport at the desired target rate.
As the scene gets more complex your system might not be able to compute the transformations in real time.
As you play your scene you'll see a number on the top left of the screen that reflects the actual playback speed. If those numbers are red it means that the playback speed is not the correct one and what you are seeing is not an accurate representation of your scene.

At that point you can use a multitude of strategies to get a sense the actual pace of the aninmation:

Visualize things in wireframe mode or bounding box.

Do a quick render in OpenGL

Render a low resolution file using a single simple material for the whole scene. Simplify it by reducing the numbers of subdivisions, baking all bakeable actions/surfaces/simulations. Hide objects that do not move or are irrelevant to the elements you want to evaluate. In other words, use every trick you can think of to simplify your scene and accurately evaluate it.

In short, make sure you have a good idea of what the pace of the animation is before you spend a lot of time rendering the real animation in full detail, only to find out errors that could have been prevented by pre-visualizing.
How do you modify the timing of animated objects?
The pace of animated objects is an easy formula: how much are the elements transforming over how many frames (time).
To slow something down you need to have less transformation occur on the same number of frames (time):

Or have the transformation occur over a longer period of time:

In the simplest form of animation you have a start key frame and and end keyframe. Spacing the keyframes apart in time will make the transformation slower, getting those keyframes closer together will accelerate the transformation.

See this post for more details
For complex animations where all the elements are working fine with each other, and you don't want to affect the placement of keyframes in any way,  you can use the Time-Remapping tool on the "dimensions" section of the properties panel:

More info on this post.

And are there any tools in Blender to "play" with the speed of your video ?

There are, and they should really be avoided and thought of as the absolute last resort.
Re-timing a rendered video is only going to create a new set problems. Not only will you be dealing with decompression-recompression issues, and multigeration quality loss, but even if your workflow involves real lossless formats you will be dealing with some form of spatial and temporal interpolation that blender handles very poorly.
When you are re-timing video, you are either creating new information for new frames by interpolating existing ones, or discarding/combinig frames to compress the time. Depending on how severe the changes are you'll be introducing stuttering/flicker to scene or will have issues with inaccurate motion blur.
To re-time video properly you need some form of otpical flow. Blender does not have any such tools.
There are some amazing tools out there that will allow you to re-time video like twixtor (Not cheap) or slowmovideo (open source) both require in depth knowledge to make them work correctly... Adobe Premiere, Davinci Resolve or Fusion have basic tools for optical flow

It is a bit of trial and error.

Just like life...
So to summarize:
Try to get the rhythm of your animation before you render, not as an afterthought.


Transmission to glass Hi Blender StackExchange, can you help? I'm currently trying to create glass from a solid object by turning transmission up to 1.0. The rendered image I'm getting is a solid dark grey and not transparent at all. Thank you.

So "this just works" when rendering with Cycles, but Eevee requires a bit more setup.

Try the following settings:

Render → Screen Space Reflections ON
Render → Screen Space Reflections → Refraction ON
Material → Surface → Principled BSDF → Transmission 1.000
Material → Surface → Principled BSDF → Roughness [Cycles Only]
Material → Settings → Blend Mode OPAQUE [or ADDITIVE]
Material → Settings → Screen Space Refraction ON
Material → Settings → Refraction Depth PLAY WITH IT

You can also check out the documentation for:

Principled BSDF shader node
Eeve materials settings

You should get something like this in Render Mode, I didn't have the patience to model a teacup, so the default cube is all you get :)


Rendering an animation then saving it as a video is black I asked this question a few weeks ago, but I guess I didn't explain it enough. I am a programmer so sorry if this is a stupid question.

I have a scene with a camera that has an animation fully setup. I was told you can go to render animation with that object that has the animation selected to quickly render all frames of that animation, however when I do that all I see is black, besides a few objects in my scenes that have a "glow" material.

I have a light "sun" pointing towards everything else, so it should be rendering the light, but for some reason it is not. The thing that confuses me more is that when I got to the bottom of the 3d editor to select show in "solid", "material", "wireframe", and "rendered" all those, in rendered it shows up fine.

And just to be clear cause people in the previous post seem to think I'm talking about the video being black, I'm not. I'm talking about when I go to "render animation" in the rendered tab it renders the animation frame by frame as black.

If you need screenshots or even the file let me know and I would be happy to send it.

The box called Sky has a Background shader. This shader is only meant for the world, and it is ignored on anything else. While the box is hidden from the vireport, it is still enabled during render, and it occludes the background light coming from the world. If I give it an Emission shader, I get this.

If I disable it altogether, I get this.

The sun lamp is a special type of light, that basically only gives a direction and a strength, and act like it is always outside the scene, regardless of where you actually put it, so even if it's located inside the Sky box, the box occludes its light. Take a look at Lamps in the Blender online manual.


Basic rigging doesn't work! i'm having a big problem here!, i'm just pretty much new on this, as well, basically i followed this tutorial from youtube (Which is basically create bone by bone, then select mesh + bones , then control + p , select with automatic weights) and it's done, but in my case it just doesn't works (it doesn't do anything, tried with rigify, and it's far too slow and my blender just crash, so please help me, i'll be so grateful if some of you can help me through this basic rigging (i just want my little robot to raise its hand and say hello) here is a gif of behaviour, and image for purposes of letting you know the order of my armature.

i cannot figure why it behaves like that, even scaled (control+a scale, not necessary) the model and the armature before doing the  control + p thing

The armature:

The problem:

The file:

Your mesh is super messy and has too many double vertices, which means vertices overlaying other vertices at the same position or too close to. You must select your object, go in Edit mode, select all and W > Remove Doubles. On the bottom of the Tools panel (activated with T), on the left of your 3D view, you can change the Merge Distance, choose 1cm.

Now you can parent the mesh to the armature.

But note that the Automatic Weight mode is not the good one for this kind of object, as this is not an organic but a mechanic object. You should rather choose With Empty Groups, which will create in your object as many vertex groups as you have bones, but without assigning them to any part of the mesh ("empty groups").

First you need to separate your mesh in several parts (well, it will be very hard with your topology, I suggest you redo it from scratch). Then parent With Empty Groups. To assign each part of the mesh to the right group, go in the Properties panel of the object > Data > Vertex Groups, select the part of the mesh you want, select the vertex group it is supposed to be part of in the list, and click Assign.


Shader: Random cubic color I'm struggling with how can I create a random color between some range.

To explain better I have this:

But I want these each cube has one random color.

My code:

shader RandChecker4(

    point Pos = P,
    float Scale = 1,
    float Rand = 0,
    color Color1 = color(1,0,0),
    color Color2 = color(0,1,0),
    color Color3 = color(0,0,1),
    color Color4 = color(0,1,1),

    output color Col = 0

  ){

    point p = Pos * Scale;
    int x = (int)mod(p[0],2.0);
    int y = (int)mod(p[1],2.0);
    int z = (int)mod(p[2],2.0);

    color Colorlist[4] = {Color1,Color2,Color3,Color4};
    int r = (int)mod(Rand*10,4.0);

    if(x%2==1 && y%2==1 && z%2==1){
        Col = Colorlist[r];
    }

}

In order to have each 'square' to be a consistent color you need to change the coordinates fed into the Noise texture to change in discrete steps. This can be achieved using a Modulo function. The Modulo node effectively divides the input value by the specified amount and outputs the remainder. By subtracting the remainder we can produce a 'stepped' value. Since this value does not change over the specified range (in this case 1/7 - to match the scale of the 'squares' texture of 7) the result of the Noise will be constant over that range, resulting in a constant color.

Note that I also added a Mapping node to offset the coordinates slightly - so that the squares correspond to all faces.


What do the sampler numbers at the bottom of the image editor mean? When in the Image Editor, left clicking on a pixel makes a small row of numbers appear at the bottom.
I know what some of these mean, but others are a mystery to me...

From left to right: X & Y are the coordinates you clicked on.
R, G, and B are the RGB values for that pixel.
A is Alpha.
These values are in Scene Referred values in a infinite linear scale,
The numbers after "CM" are the Color-Managed values.  Based on how you have set the Color Management section of your scene, it's telling you what the effective colors will be after applying the settings.
R, G, and B are adjusted for your color management, and the little square next to them is showing a visual representation of the adjusted color.
Then H, S, and V are Hue, Saturation, and Value, which is simply a different way of representing the R, G, B values.
HSV is closer to how humans perceive color, whereas RGB is based on colors of light, so some people prefer to work in that color space.
The L is Luma, which is a gamma-corrected sum of R, G, and B.  Basically if you converted a color to grayscale, how bright it would be.
Since yours already is grayscale, the L value is the same as the RGB and V values.
Here's way too much detail: https://en.wikipedia.org/wiki/HSL_and_HSV
The RGB on the left are "scene-referred" values, meaning they are the actual values in the scene.
Only formats such as .hdr or .exr can hold this kind of information.
If you were to display this information without a color transform by the color management, the colors would look wrong, too dark and contrasty, and all values beyond 1 would be ignored or clipped in the standard sRGB display transform (the clip point is at 16.19 when using filmic).
The numbers to the right of the "CM" indicator are "display-referred" values, meaning they are adjusted to show on a monitor based on your CM settings.
These are my scene settings, for example. If you change them you'll see the "CM" numbers will be different.

If you're not familiar with color management, I suggest watching this video: https://www.blenderguru.com/tutorials/secret-ingredient-photorealism
Read also:
Render with a wider dynamic range in cycles to produce photorealistic looking images


Continuation of existing curved edges to close mesh body I’m totally new to blender; this may be a really obvious question! I just wondered if anybody can help.
I created this mesh body
I then smoothed the vertical edge vertices.This had the desired effect of smoothing the curves, but shortened the overall length of the vertex edges. This has left the top and bottom of my mesh open.
I would like to close both ends of the mesh using a continuation of the smooth curved edge vertices.
As shown below: the open end(circled red) is where I’d like to continue the edge vertices(yellow) to a closed point or small flat face. I need the continuation to follow the smooth curve/angle of the existing edge vertices

Any help or suggestions of a way to do this would be much appreciated, many thanks.

Select the top edge which you want to extend, hit G twice to activate Edge Slide mode. Now hold the Alt key and you can move the vertices outwards along the projected edges. As soon as your vertices are close enough together press LMB or Return to apply the transformation. Now close the top by hitting F to fill it or  M to merge the vertices. But this extends the edges linear, it doesn't preserve the curvature.


Armature doesn't stay connected when moving mesh in object mode Problem: I have created an armature that attaches to my mesh, but when I move the mesh in object mode, the armature doesn't come with it after parenting with automatic weights. This is obviously due to the parenting position (Mesh to Armature) but I don't know how to get around it. Parenting the Armature to the Mesh doesn't give the Armature Deform options, so I can't do it that way.

Here is my model. The armature works correctly with the mesh like this, as it's parented correctly with automatic weights.

The problem arises when I want to curve my mesh into a circle using the Curve Modifier. I added a Bezier Circle and using the Curve Modifier to the mesh, attached the circle. I then merged the ends of the mesh so there are no gaps. The problem you can see is that the armature doesn't keep its position with the mesh, and grossly distorts the mesh if I leave it where it is. I would prefer not to add the armature after adding the curve modifier as that would be very time-consuming, so much easier doing it flat to start, or so I thought.

How can I get the armature to remain inside the mesh after moving it (or making it into a circle shape) in Object mode? Thank you.

Armature Deformation usually works from bone to mesh, not the other way around. There is an option to use a shape key to deform the mesh, and then parent a bone to some of the vertices, but it will not be applicable to your situation. Depending on the rig itself, there might however be a workaround.

Given that the bones have to deform the mesh, what you need to achieve then is to reposition all of your bones in Pose Mode so they form a circle. To do this, you can try the following: Set the rotation mode to individual origins with the button on the bottom left of the screenshot:

This will apply the rotation to each child of the bone individually, instead of just rotating the upmost parent. The bone chain in my screenshot is one single chain, so all bones are in a parent/child relationship. If you now select all bones, and then activate the rotation tool, constraining the rotation to Z-Axis only, you should be able to achieve this:

Rotate it until the circle closes and you're done. In Edit Mode the chain will still be straight, also if you disable the armature modifier visibility you're back to a straight chain.

The logic is: The first bone rotates by X degrees, its first child by X degrees again, the child of that child by another X degrees, and so on. That's why you get a circle in the end. This method is sometimes used when animating fingers curling. If that works with your current rig has to be tested, but I believe there is a chance it will.


Why won't logo display properly in solid mode? The curves look fine in wireframe, but in solid part of the "S" and about 1/4 of the bottom of the rounded square is missing (the first picture is wireframe and the second is solid).

The most likely cause is Self Intersecting segments. The same happens if you have a text object and extrude it to the point where Curves intersect other curves:

From: text-objects-are-messed-up-when-using-offset/2727#2727  (Different question, same answer and reason)


Any way to create a 360 stereoscopic video for playback in VR? I have search the web for a solution to my problem, but most of the solutions out there seem to be created for a "fixed" view-angle..
For instance:
http://www.dalaifelinto.com/?p=1009

That would only create a "flat" movie with depth.. but what If I actually want to create a spherical 360 stereoscopic top-down(or side by side) video for playback in VR?

Simply using the above solution and turning on Panoramic->Equirectangular wouldn't do it.. since after all.. the cameras(left and right-eye) has to rotate around the center of the cameras/eyes..

As you might notice.. the problem with only using a Equirectangular is that as soon as the user turns his/her head to any other direction than the direction the cameras was pointing to.. the stereoscopic-effect will "break".. or you will end up with a "cross eye"-effect..

Any ideas of how to solve this.. any tutorials around that you are aware of?

Br,
Inx

Starting from Blender 2.78, there will be a 'Spherical Stereo' checkbox in the camera panel which does exactly what Sybren has described. It will pivot the stereo camera per pixel to give you always the correct stereo offset for any direction.

Read official release notes for more details.


Grid Floor Axis Not Aligned With Zero? I am having a problem with a vertex that I move to 0 along the x axis, but it is not appearing to be on the axis like it should.

See the screenshot below. I am in top view, and the selected vertex is clearly set to 0 in the in the transform tab. However, it appears at all angles to be to the left of the grid floor which it should be on top of.

You have the Local button selected, which means it starts the coordinate system at the object origin, not the world center.
Set it to Global and it will work like you want, where 0 is at the grid floor.


Is it possible to create a mesh between two different objects that has single edge via Animation Nodes? I'm not really that good at animation nodes, but want to know if it is possible to create a mesh or fill a plane between two edges. I was planning to make a trail using animation nodes, so I have this: https://gyazo.com/cffff87116688f8d92d0e946324243ba
Nodes:
https://gyazo.com/e9ddf6ee903c6d7abb62986ac1f4eace
But I have fill the gaps. So I decided to fill those gaps even though they were separate objects, and the other objects are just created in AN loops. I've tried my best in explaining, tha

Assuming your vertices are in a typical order, you can use the polygon and edge indices from a grid mesh to construct you mesh as follows:

Blend file:


How to flip normals/direction of curve geometry in 2.8 I'm trying to make a seat belt. I've pulled a loop off the seat and converted that geometry to a curve, and then extruded/beveled the geometry in the curve properties. It works, but it's making the belt vertical instead of laying horizontal how I want it.

I've searched around, some suggested using Switch Direction to change the way the normals(?) face on the curve, but that does nothing. I can't figure this out. How can I get the geometry on the curve to be in the horizontal direction?

The control points on Bezier Curves have a Tilt property.

It can be accessed in edit mode

through the Properties Panel (N) in the 3D Viewport under Transform: Tilt
through the hotkey ⎈ CtrlT

The control points, which you want to tilt, have to be selected beforehand.


noise texture Projecting outward from center point While usinging shader nodes, I am trying to make a noise texture on a plane, start from the middle and project radially so when I shrink the necessary xyz, I can turn the noise into lines.

You can add a scalar multiple of cosine of the angle that the vector makes with the x axis to the x component, and similarly with the y component but with the sine of the angle, this will produce:

Higher scalar values means more line-like distortion. A radial distortion can be done as follows:


How does the cycles render-passes (for example: diffuse) works out when using colored light source? As i read in the blender-wiki, there are several render-passes which are added/multiplied later on in order to give the final image.

My question is, How does colored light influences the values of the diffuse direct pass for example?
Is there an extra pass for every color channel?

Im confused because all the non-color passes are just giving values between 0 and 1, but a color is made up of 3 values, one for each channel. And in the blender-wiki, it just says (DiffuseDirect + DiffuseIndirect) * DiffuseColor.

Direct and indirect passes are lighting passes. You literally add them to add light to your pixels. That light can be either white or colored light and it may hold intensity values well above 1, as they are scene values.

These passes contain the information of light coming from the light sources of your scene and interacting with surfaces (glossy, diffuse, etc.) both directly and indirectly (via bounces).

In real life, the colour of materials is actually a factor of absorption of wavelenghts, creating the ilusion of colour when those materials interact with light.
In a CG scene, when you light a red surface, it absorbs blue and green components (a part of the spectrum) from your light source and bounce back red.

This absorption can be expressed mathematically with a multiplication, hence why you multiply the lighting passes by the shader base colour to retrieve the appearance of the lit surface.

The multiplication of an RGB image by colour sort of mimics the behavior of a colored glass: It lets a part of the spectrum pass (the colour of the glass) and blocks the other parts.

As Carlo mentioned, producing your own test scene will clear up your doubts. Go try yourself and inspect the passes with a viewer node, it will show what information each pass has and it will make sense.


Outliner : show objects match name with wildcards I have 20 storeys building, each floor has its own objects, for example
floor 1 : Floor 1 bath, Floor 1 kitchen etc.
floor 2 : Floor 2 utility, Floor 2 terrace etc
up to ..
floor 20 : Floor 20 office, Floor 20 meeting etc.
I want to show objects starts with 'Floor 1' , 'Floor 3', 'Floor 12', 'Floor 13' , 'Floor 14' but not starts with other 'Floor XXX' .
I want to display the list in the outliner. Can i do this ?

I found the solution (only for 2.9 above , not working in 2.8 ) , the search box in outliner can accept regex (unix regex) pattern.
floor [1,3,12-14]

1,3 -> to match floor 1, floor 3
12-14 -> match range between 12 to 14 -> floor 12 , floor 13, floor 14
and will skip other number outside the range 1,3,12-14
We can also use ^ to exclude ( '^' means 'NOT') . For example if we type 'Floor [^143]', it will show everything starts with 'Floor ' but NOT starts with 'Floor 1' , 'Floor 4' and 'Floor 3'.


Composite cryptomatte video I’m working on a small animation/film, I will render the frames out as PNG then sequence them together.  How do I use the cryptomatte/render passes feature on this animation because when I add an image strip, all of the passes/cryptomatte are gone.  Thanks,

Png does not work with cryptomatte, as it requires a 32bit float precision which PNG can not provide.
You must use EXR in float32bit !
Blender will save out either a OpenEXR or OpenEXR multilayer. If you want all layers in one EXR file per frame, choose the multipayer option.
If you wish to save out multiple EXR per pass (Diffuse, Specular, Crypto ..) you must do via the Compositor "File Output" Node.
Apparently Blender will not render out multiple passes as EXR unless from inside the compositor. See also this answer here:
Save all render passes to EXR image?


mesh breaking apart and recombining to form another mesh? I've had this effect in my head for some time but still unable to think of a possible way to do it. For the sake of simplicity, would there be a practical (time-wise) way to create an effect where the letter A blows up (fractures) and then the pieces recombine to form the letter B?

Another way is morphing objects with Particle Systems

You can morph shapes of objects and even objects themselves (influnced by Explode modifier) with Keyed Particle Systems.

From wiki:

  The particle paths of keyed particles are determined from the emitter to another particle system’s particles. This allows creation of chains of systems with keyed physics to create long strands or groovy moving particles.

You should only setup them in appropriate way so to make particles travel from one emitter to another.

Step 1: Add objects and assign "simple" particles systems

These systems don't do anything but providing particles needed for action. Because we need them to not emit in time, setup this system (as you can link to both objects the same) so to change Number of particles, Start and End time, Lifetime, Velocity.

Step 2: Add Keyed particle system

Add 2 different Keyed Particle systems - 1 per object. As in the gif above, first setup object on the left. Change Number, Start and End, Lifetime to the same values as for the "simple" particle system and set Velocity > Normal to something more than 1.

And the main, in Physics scroll select Keyed.  Add 2 keyes (in
    both setups) and setup them in this way:

for object Sphere:
    - 1-st key: second ParticleSystem of the Suzanne (use slider in the bottom to select Particle System of the object);
    - 2-nd key: second ParticleSystem of the Sphere.
for object Suzanne:
      - 1-st key: second ParticleSystem of the Sphere;
      - 2-nd key: second ParticleSystem of the Suzanne.

(in example above I also changed timing in Time and Duration sliders so to make systems not interfere with each other, and materials transparency, in order not to see already broken object etc.)

Now, for both objects add Explode modifier, and move it to the bottom (under both particle systems). Choose Cut Edges for finer result.

Note that this way doesn't provide accurate result and it could be greatly enhanced. Particulalry, here are some disadvantages:

Objects' topology means a lot for this to work. Particles will be emitted taking into account amount and distribution of them on the faces.
Keyed Particles aren't affected by physics (so force fields, gravity and so on). Read more about it in this related question. In order to further improve such animation you may consider using 2 approaches:

using simple systems as keys in Keyed Particle System setup (it would involve a lot of cheating to make particles form initial objects)
using 3-rd object and 3-rd Keyed Particle system which shold represent "falling particles down" (if simulating gravity).

Although it could be a beginning for some effects.

(note that stripdown version of file is linked; it includes morphing objects, their setup, ground plane and light).

Credits for particle systems setup:

very good starting lesson on keyed particle
systems


What options are there for high quality transparent file types? I originally saved as a tiff but I couldn't find an option for transparency. What are the best file types to save as to maintain high quality and have transparency.

PNG TGA TIFF openEXR and JPEG 2000 are the image formats that blender can render to that support transparency.

Here they all are in order from best to worst.

PNG

Universal support
4 channels
Only sRGB color space
8 or 16 bits per channel
small file size, with little compression to image quality.

openEXR

Good support among 3D, image editors, compositors, and editor programs.
Multi channeled, can store an unlimited number of channels.
Any color space
up to 32 bits per channel
Large file size, variable amount of compression.

TIFF

Very good support among 3D, image editors, compositors, and editor programs.
Multi channeled, can store an unlimited number of channels.
Many color spaces Grayscale, RGB, CMYK, CIE Lab*, YCbCr
up to 16 bits per channel
Variable file size, variable amount of compression.
Older, openEXR has become the mainstream replacement of TIFF.

TGA

Very good support (because it is old)
4 channels
sRGB
only 8 bits per channel
Large file size, variable amount of compression.
Older, openEXR has become the mainstream replacement of TGA.

JPEG 2000

Very good support
4 channels
sRGB
up to 32 bits per channel
very small file size, however with compression to image quality.