Separating parts of an object Is it possible to ungroup an imported Wavefront(.obj) object? I have created the object in EasyToy and would like to finish it with Blender due to it's better functionality.

The object looks like this:

But I can't select just for example an ear or eyeball. So my question is: is it possible to do this or do I have to select the single parts by selecting faces, edges etc.?

In Edit Mode unselect all by pressing A.

Select a vertex from one part of the mesh and press Ctrl+L to select linked.

Then you can press P to separate that part of the mesh into a new object, you then have the option to separate the elements by selection, material or loose parts.


Blender Cycles Render is rendering past end frame My 13-second animation has been rendering for about a week and I expected it to finish today. However, it's been rendering past the end frame (starts at 25 ends at 330) and is currently at 337. Does this usually happen or how can I fix this? I also notice that when I try to play the animation while it's rendering, it says the file is corrupt; I thought it would at least play a few seconds of what was rendered. The output format is FFmpeg video.

You should check your scene render settings:

Make sure your end frame range is where you want it to be. Also, don't mix up the render frame range with the preview frame range. You can toggle those two in the Timeline editor:


How to change the default views of quad view? How do I change the TOP ortho view to BACK ortho view for my BACK image?

check out the pic I uploaded to see what I'm talking about.

Quad view can be unlocked and customized.
For blender 2.8
Select quad view.
(CTRLAltQ or select View > Area > Toggle Quad View
Open the properties panel on the right and unselect  "lock".

To customize the view move the mouse over to the quad you want to alter and make it whatever view you want.
In this case press CtrlNumpad 1 for back view. (and Numpad 5< to toggle ortho or perspective).

Note: Any changes on quad view are lost once you go back to single view: The next time you switch to quad view it will revert to the default configuration.

For older versions (2.7x) of blender
While on Quad view (CTRLAltQ) press N to show the Properties panel on the right side. In the Display tab uncheck the Lock box.

When you are satisfied you can lock the view again to prevent accidental changes.
To reverse the view on quad view. Hover over the view you want to change and press Numpad 9  to reverse the view. No need to press unlock


Noob Question: Unable to Weight Paint my Mesh So, I made an armature for my bipedal model and successfully rigged it in Blender 2.7. Since then, I updated to 2.9, and then added some Mouth bones to my armature. Now I want to weight paint my model to the Mouth bones, but I'm unable to select bones in the armature. I cannot click it!

Link to my .blend file:
https://drive.google.com/file/d/1XkwYgJpSaftngevlgV5yr7aEJITty4LG/view?usp=sharing
Thank you for any answers and comments. :)

You can select the corresponding vertex groups in the mesh properties, or go to object mode, select the rig, shift select the mesh, enter weight paint mode and select the bone with Ctrl left click.


How to make logical rigged, weight painted mesh transformation? I tried to look for my question before asking, but could not.

I'm doing Blender + Unity, which is why I'm trying to rig via vertex groups and weight painting. (I think that's the most logical approach to Unity)

The wheel in the below gif doesn't rotate the way it should. Not only does the vertex group not rotate 360 degrees, but the mesh selection doesn't stay rigid during the rotation. This issue is also shown by using the wheel rotating bone.

To better uderstand the vertex behaviour try this little experiment: scale down the default cube to something like 0.1 BU, then create an armature with two bones, one on the left (X = -1) and one on the right (X = 1) of the cube.

Assign a weight of 1 to all the vertices relatively to both L and R bones.

Then in pose mode move the R bone by 1 on the X axis: the cube will move on the right by 0.5 BU: this happens because all vertices are influenced by all two bones: one is telling them to move 1 on the right, one is telling them to stay still; the average of the two instances will result in half the movement (1 + 0)/2 = 0.5.

Your wheel has the same problem, because is weighted to 6 different bones: the correct approach is to have it weighted only to a single bone that will have to perform all the movements (i.e. its Y rotation will be the rolling, its z rotation will be the direction, its location will be influenced by the complex mechanism of the shock absorber, etc ....)


How can I add loops cuts to all the parent selection within an object? I have a model, that I have selected specific face loops and I used (Shift G) - > Perimeter, which selected all of the same kinds of face loops around the whole model. I then want to add two loop cuts on one of those face loops, and is it somehow possible for those two loop cuts to be inherited over all of the selected face loops ? This way I can only press Ctrl - R only once, and all of those selections will get the same kind of loops cuts. If there is no way, then I will have to do it manually, and this will be very frustrating, because there is over 30 of those faces, and there is a big chance of missing some. If someone knows a technique to do this in a much faster way, please specify it below.

Shift+H to hide the everything else while your face loops selected.
Switch to edge selection mode and select one of the short edges
Shift+G to select similar and choose Length from the menu to select all the edge rings.
Hit W and select Subdivide from the menu and in the operator panel or by hitting F6 change number of subdivisions to 2 to make 2 edge loops across all the edge rings.


Serial data from arduino not received properly I was trying to receive some integer data from arduino and rotate the cube based on the value, but when the script was run, it gives the following error.

Can someone help me with this?

The python code:

import bpy
from bpy import context
import serial
from time import sleep
from bpy.props import IntProperty, FloatProperty

value = 0
i=0
j=0
degree = 0
ser = serial.Serial("COM77", 9600)

class ModalOperator(bpy.types.Operator):
    bl_idname = "object.modal_operator"
    bl_label = "Simple Modal Operator"

    x = IntProperty()

    def modal(self, context, event):
       self.x = ser.read()
       if x >0:
         value = int(self.x)
         value += 10
         degree = value * 3.14/180
         bpy.context.object.rotation_euler[0] = degree
         print(degree)

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

       return {'RUNNING_MODAL'}

    def invoke(self, context, event):
        if context.object:

            print("hi")

            context.window_manager.modal_handler_add(self)
            return {'RUNNING_MODAL'}
        else:
            self.report({'WARNING'}, "No active object, could not finish")
            return {'CANCELLED'}

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

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

if __name__ == "__main__":
    register()

    # test call
    bpy.ops.object.modal_operator('INVOKE_DEFAULT')

The arduino code:

void setup()
 {
    Serial.begin(9600);

 }

 void loop()
 {
    for(int i=0; i<350;i++)
    {
        Serial.print(i);
        delay(100);
    }
 }

There are two problems with your code on in the sending and one in the receiving part.

You get from serial.read() a bytes object, but your self.x should be an integer, so you have to use int() before the assignment (see at the bottom for the code).
The next thing is, that you receive exactly one byte, but your string with the number can have more bytes, to overcome that you could use serial.readline() to read a whole line and modify the sending code as follows.

You send the integer from the arduino as sting, but you can't know how long it is on the receiving end. So you should terminate the string with a newline: Serial.println(i) will automatically append an \r\n for you.

The whole code would have to be modified like so:
receiving:

# ...
def modal(self, context, event):
    self.x = int(ser.readline(10))  # read a maximum of ten digits (only because
                                    # there could be an error in the sending code)
    # ...

sending:

# ...
void loop()
{
    for(int i=0; i<350;i++)
    {
        Serial.println(i);
        delay(100);
    }
}


Motion Tracking not working for Eyeball I'm experimenting with motion tracking an I'm a little stuck.
My plan is to track the motion of an eyeball from a video an let an animated eyeball repeat the same motion.

And in principle it works. If the attached image was a video you could see that the eyeball in fact moves according to the track. However only very little (track is highlighted in red).
I even get why: The path of the track is (since it is eye movement) very little. I want this little motion to rotate the eyeball by something like 45° which of course it does not.

Is there a way to sort of amplify the movement from the track?

The Follow Track constraint includes a 'Constraint to F-Curve' button - click that and Blender will convert your track into a series of keyframes. You can then use the Graph Editor to edit the resultant F-Curves for the object.

To edit a curve, right-click on one of its points and press L to select 'Linked' (ie, select the whole curve). Then use S to scale it (you can type a number to scale by a fixed amount if desired - eg, S10Enter) to scale up by a factor of 10. Repeat for each of the X, Y, Z channels.

Once you've scaled up your F-Curve you'll find that the motion of the empty used for the track is similarly affected, resulting in more motion for the eye.


Multiresolution modifier not working When I try to increase the preview, sculpt, or render, it does not work. How do I fix it to make them increase? I already have the subdivision surface in the modifier stack.

The multires modifier doesn't allow you to subdivide while in edit mode. Try switching to a different mode (e.g. object mode).

Note that you can still edit the base mesh in edit mode after subdividing (your changes will even affect the higher subdivisions), but you won't be able to see the affect on the higher poly mesh in real time.


Circular Light Source Causing Speckles in Cycles (Blend file is in the comments)

I am trying to create a stage in the Cycles renderer. I have modeled a stage light that looks like this. It has a circle with the emission shader to act as a light source

However, when I try to render the scene, speckles appear on the stage:

As you can probably tell, the more samples, the more dots, but they become smaller. Given that it took a couple minutes to render with 1024 samples, I don't simply want to set the samples to something ridiculously high like 16,000. Does anyone know what's going on?

(The Wooden Floor uses the default Diffuse BSDF Shader with an input from an Image Texture, mapped by a UV texture coordinate. I would put an image but I can't upload any more)

I figured out the problem: I needed to turn up "Clamp Indirect." The Article Here has a bunch of solutions, and the only one that worked for me was the 6th option.


My object keeps rotating on the X axis when playing the animation What is the solution for this object to stay in its rotation while playing?

I just manually put the right orientation in in the dope sheet. Every single second.


My 3D object looks different when exporting it to Unity? I'm new to blender and Unity so my Question is simple , My Design lost some materials like some colors after Importing it to Unity , I exported it as .fbx file and Imported it to unity.

Here is The design from Blender :

and here is it after importing it to Unity and lost some colors , and looks bad not like in blender (note I didn't use textures in Blender just colors from Blender itself) :

Any help is Appreciated .

It sort of looks like you have a subsurf modifier on the object. Unity doesn't actually take the raw blender file when you import it as an asset. It actually exports the blender model as an fbx and then imports that into Unity. Exporters tend to apply modifiers before they export. What Unity is allowing you to do is sit back while it does all of the export/import work for you. It's also going to have some wonkiness when it comes to translating the materials so you should always use a UV texture even if you're just talking about a flat color on the object just so you have some predictability and control.


Subdividing part of spherical object without getting weird bumps Ok so I use cube with level 4 subsurf modifier and 'to sphere' in edit mode so it becomes sphere, now I want to create some circles engraved into it so I need to create more topology there but when I subdivide few faces or subdivide smooth it creates weird bumps which are more notable under subsurf modifier. What would be good approach to do that. Here is what am I going for but I'm far away right now, I mean on these little circles on on three prong thingy, any thoughts?

Assuming a couple of levels of subdivision below those already applied, a fairly conventional method to insert features like this into curved surfaces is to use a topology something like this:

Retain an intact,featureless, more subdivided copy of the sphere in the same place, and assign a Shrinkwrap modifier to your model with the intact sphere as target. (You can hide the target sphere, or put it on another layer)

Make a vertex group in your model, of all the vertices you want to conform to the target surface, (for example, excluding the ones shaded blue in the picture) and aim the Shrinkwrap at that group.

The result:

Matcap - showing Srinkwrap off:

Matcap - showing Srinkwrap on:


How to activate a node only on certain frames? My video clip is 60 frames long and I want a node to be active only on the last 50 frames.
How can I do that?

Just found this:
One needs to use the Right click/keyframe property on a node and set a serie of keyframes, to activate, deactivate, modulate the property.


Trying to make a plane follow a bezier curve I'm trying get a plane to follow this form of bezier curve:

Though I'm struggling getting the plane to actually follow the curve. It either does some weird bunching at the spiral or overflows at the other end. The spiral itself is meant to taper till it folds in on itself. Here's what is currently happening. Is it because the bezier is too long compared to the plane? or too short. I know that I'll need to add in more points to the curve itself. Also there is a mesh deformation on the plane to taper it at either end.

Any ideas?

You can create a plane, add Array modifier to it for repeating and Curve modifier - for curvature:

But why if it's possible to go with curves and avoid any "origin points matching for Curve modifier"? Create 2 curves, 1 - main one (shown above), another one - default curve from Shift+A > Curve menu, but just scaled down by one axis (in this case by Y axis) so it's flat.

Then set that curve as bevel object for the main one and in Edit mode scale simple curve to adjust thickness of the main one.

Adjust curve resolution in the Shape rollout, Preview U for the simple curve to in-/decrease amount of loopcuts by X axis and Preview U for the main curve to in-/decrease amount of loopcuts by Y axis in the example above.


Animation of falling paper in cycles I want to animate the falling sheet, i.e. swinging oneself and falling with zigzag. Is there some modifier which would let me get the more realistic effect than normal appointing the motion path manually?

Similar effect was described in this topic: How to simulate a sheet of paper in Blender Game Engine? but I want to use Cycles redner and I cannot fit appropriate settings.

You can use force fields to obtain this kind of effects, specially 'wind' and 'vortex'.

But I did not succeed the zigzag you mentioned

The paper is a soft body, with no particular parameters.

Then add some force fields and tune them..., for instance this kind of configuration, where :

Strength and flow allows to create an air flow at the given strength
Noise and seed add some randomness to the flow
Power and min/max defines a falloff of the field

I don't know if the zigzag is possible with a paper in real.. but anyway, as said before, I did not succeed to turn that into a zigzag...

Hope this help however.


Making a car game opponent I was making a go kart game and I need an opponent. is it possible that I use a follow track but when I touch the car it will affect him?

Here is a "simple" solution.

It involves two objects. A vehicle and a "waypoint jumper".

It is a kind of "Carrot on a stick" approach. The vehicle follows the waypoint . When the vehicle collides with the waypoint it jumps to the next waypoint location -> "waypoint jumper".

Vehicle

You are free to create an vehicle as you like. It needs to have two operations:

move forward
turn towards the waypoint jumper

here is an example:

I'm sure you have your own version of the vehicle. Just ensure it turns and moves forward all the time.

To make the vehicle detectable add a property car

The type does not matter. It has no further purpose. It just should exist at the vehicle.

Waypoint jumper

We need an object that can detect the vehicle from a certain distance. I suggest to use a mesh object that detects collisions with the vehicle. A plane or circle should be fine.

To avoid stopping the vehicle the object gets Physics type Sensor.

When you have the object you can define the waypoints. Create an action with location keyframes at subsequent frames (1,2,3,4...). You do not need fine granularity. Just ensure the direct line between waypoints is not blocked and there is enough space for turns.

The jumper should know what the current waypoint is. We store it as property 'frame' a whole number, starting with the first frame.

First we play the current waypoint position. We do not need to do that all the time - only on startup or when the waypoint changes. We let the waypoint jumper play the pose according given by the property frame.

When the car comes near  we switch to the next frame. If the car happens when it collides with the mesh. We filter collisions by property car, to exclude any accidental collisions with other objects.

Now you can start your game engine and watch your vehicle follow the carrot ... waypoint jumper.


Selecting object show nothing in info pane I am using blender 2.81.

If I change into "Default" view and then manipulate objects then the Info pane shows the Python commands associated with those manipulations.  This is very helpful.

But when I select objects it does not show the equivalent operations.  Specifically I am trying to associate the bones with the mesh and parent them with automatic weights.

It is quite frustrating as I am trying to write a script to automate the export of a rig.

To set active object as parent armature deform with Automatic Weights for selected objects, you need to:

select objects include active:

object.select_set(True)

set active object:

view_layer.objects.active = object

call operator:

bpy.ops.object.parent_set(type='ARMATURE_AUTO')

Code example from scene:

import bpy

objects = [
    'Armature',
    'Cylinder',
    'Cylinder.001',
    'Cylinder.002'
    ]

context = bpy.context
view_layer = context.view_layer
scene = context.scene

# select objects include active
for ob in objects:
    scene.objects[ob].select_set(True)

# set active object
view_layer.objects.active = scene.objects[objects[0]]

# call operator
bpy.ops.object.parent_set(type='ARMATURE_AUTO')


Why my object is not showing in Rendered result but in the Rendered viewpart? Im facing this problem for the first time and it looks very funny to me because there is no issue with the settings.

My object is showing in the Rendered viewpart but when i hit render for final image result its nothing in the result. lol

O my goodness.
This was the problem i find out myself.


My materials look all scratchy and not cool, i've given them a texture but when i render it it looks lame, and kind of scratchy any help?

Thing to try:

Increase the lighting on the scene.
Increase Samples. Check Properties->Render Tab->Sampling->Samples.


how to create node group inside another node group using Python script I wan't to create a node group "testgroup1" inside "testgroup0" using python script can anybody explain me how to do that?

Here is some Python functions to manipulate groups and group instances.

Principally, there is two aspects:

Groups are stored in Blender's data in bpy.data.node_groups
Inside a material or another group, a group needs to be instantiated so that it is link to this material or other group

The code is commented below:

import bpy

def create_material( name, use_nodes = True, clear = True ):
    """
    Create a material of the given name.

    Parameters:
    name (string): the name of the material to create
    use_nodes (bool, default True): if True the material is ready to have nodes
    clear (bool, default True): if True clear default nodes

    Returns:
    material: The created material
    """
    material = bpy.data.materials.new( name )
    material.use_nodes = use_nodes
    # Materials are created with two default nodes, so we may want to clear them
    if clear:
        clear_material( material )
    return material

def clear_material( material ):
    """
    Remove all node of the given material

    Parameters:
    material (material): the material to clear
    """
    if material.node_tree:
        material.node_tree.links.clear()
        material.node_tree.nodes.clear()

def create_group( name ):
    """
    Create a group in Blender's data

    Parameters:
    name (string): the name of the material

    Returns:
    group (group): the created group
    """
    group = bpy.data.node_groups.new( name, 'ShaderNodeTree' )
    return group

def instanciate_group( nodes, group ):
    """
    Instanciate a group inside a node tree

    Parameters
    nodes: the nodes of the node tree in which the group is to instantiate
    group: the group to instanciate

    Returns:
    instance: the created group instance
    """
    instance = nodes.new( type = 'ShaderNodeGroup' )
    instance.node_tree = group
    return instance

# Example:

# Create a material
material = create_material( "mat" )
# Create group0
group0 = create_group( "group0" )
# Create group1
group1 = create_group( "group1" )

# Instantiate the group0 into the material
group0_instance = instanciate_group( material.node_tree.nodes, group0 )
# Instantiate the group1 into group0
group1_instance = instanciate_group( group0.nodes, group1 )


Completing Mirroring Halves Once I have finished the portion of my object that makes use of the mirroring modifier what is the best way to remove the modifier so that the faces, edges and vertices can be selected independently of each other for UV mapping, texturing, etc?

Go to the modifiers tab, make sure you are in Object mode.  Currently you can change one side of the object, and it will automatically update the other side.  Click the "Apply" button, and the mirror modifier will be applied to your object.

Now that the modifier is applied, I went back into Edit mode, and dragged a vertex around, and you can see that it does not change the other side of the object.

Now you can continue modeling!


Object has no color dispite whatever I do The figurine has no color dispite whatever I do. The material was assigned to the object but it still doesn't pick up any color. The only colors are the white clouds and the green grass that the figurine is standing on. And when I click on materials, the tiny image turns white!

You need to assign your texture to the material. Create the Shading workspace by clicking the plus button next to the other workspaces or change the 3D View to the Shader Editor

Activate Use Nodes then select the material you want to edit and then set up a basic shader with a texture like in the image below.


Can i "execute" the Compositor node graph without re-rendering? I have an image rendered, and its showing in the Blender Render window.
In the compositior, i have a file output node set up to write out .tif files for each render pass. Can i somehow execute just the node tree without having to re-render my image?

Ok, so the proposed answer said:
"Delete the renderlayer node from the node setup, and then blender won't render the 3D scene."

Feeling stupid here, but, if i remove the renderlayer node, then my file output node won't have any inputs anymore. It's direclty connected to the passes of the renderlayer node to output each pass as a .tif file.
Secondly, what button do i have to press to then execute only the compositor nodes??

If I understand your question, when you render an image and set "use nodes" in the compositor, you can check the "backdrop" function, then Ctrl Shift click on a node to create a viewer and see the output of that node on the backdrop. You can see the result anlso in an UV/image editor, if you change the header's dropdown menu from "render result" to "Viewer node".

As soon as you change a value in the compositor, the change is reflected in the Viewer (Backdrop or UV/Image window), without any need to push any button to trigger the compositor, and without the need of redoing the render: it's automatic (maybe a little slow and not realtime: check the upper info header for a compositing Time bar)


Stars feature missing? In the Properties -- World tab, I am no longer seeing the "Stars" option. Has it been removed or did I accidentally do something silly that caused it to be deleted or completely hidden? It is completely absent not just closed, and I have tried with several different files and a new restart.

I am running on Manjaro Linux and the blender version currently installed is 10:2.69.a0dbee6e. I'm not sure of the change occurred at the last upgrade or since then.

Stars feature has been dropped from Blender Internal render engine. See here. However, the official release 2.69 still has it. You can either choose that version, or find another way to get the same result.


Unable to merge two objects After hours of searching this on google and coming up with nothing, I figured I might as well try asking here.
I am currently in the middle of doing a head-swap, where I am attaching a head to a body at the neck. Both objects share UV's, doubles cleared, and tris-to-quads. I marked a seam on the neck and body, bridge edge loops straight up refuses to even do anything at all. I then tried to manually merge the meshes with selecting both loops and pressing F.

Instead of connecting both meshes together, it closes both of them off.
I have even tried merging after making them the same object with CTRL + J.
I was told in a discord that the issue is because of remaining triangles on the head mesh, but I am not entirely sure that really matters. Dissolving some of the edges that form tris will disfigure the mesh.
If I have committed any question no-no's, let me know to avoid it in the future.

From the pictures you've provided, it appears that you do not have the same number of vertical spans for the head mesh and the neck mesh. They will need to be the same before they can be properly joined. You won't want to count them manually, so just select each of the edge loops in Edit Mode individually, and then look to the bottom right of the screen to see the number of edges and vertices for each of the selected edge loops. This will tell you exactly how many more spans one mesh has than the other. It looks to me as if your neck mesh is the one which has more.

If you don't see this information, right-click on the field where it should appear, and a menu will appear. Check the box that says Scene Statistics. Now you can see the information.
Fixing your kind of topology problem can be a headache. You could try to remesh the parts to fix it, but I find that it's more straightforward to simply manually select and delete the extra spans. If you are worried about how that may damage your model's shape, you can try to retain it by shrinkwrapping your body mesh to an unedited copy of the body mesh, then delete the spans for your project body mesh, and then adjust the remaining spans on it with by edge-sliding the spans into somewhat better positions. Shrinkwrapping to the copy mesh ensures that the overall shape will be preserved.
If you don't want to delete any spans, there is another way to get this done. You could add spans to the head instead of removing them from the body. One nice thing about going this route is that it won't interfere with your shape. But it will create unnecessary geometry, and maybe even ugly topology. You could consider using the Knife tool to add small edges that bring the total count up on the head side of the join, but then those new edges you create will have to end up going somewhere. There is a trick that prevents you from needing to follow a newly created span all the way around the object you're adding it to. You can get rid of any two extra spans at the same time by tracing them into the new mesh area and then making sure they meet one another at the centerline of the mesh. To keep things all quads, though, you will want the vertex that defines the 90 degree bend that this solution requires to be joined to the nearest corner vertex. It looks ugly, but it gets the job done (Newly added knife cuts shown in dotted green; centerline shown in dotted red).

Your neck mesh looks especially problematic from the side. You may have to use loop tools (an addon which is included with Blender, but not on by default) to straighten and round out the neck hole. You should probably also partially rebuild the topology on the side of the neck so that the edge flow is consistent with that of the head.

When you finally get the spans to be the same number for both parts, your bridging of the edge loops should work. But be aware that you must be sure to join your mesh parts before beginning this operation.


Why is the color ramp in the compositor treating my transparent pixels as black? I have a scene that renders to black, white, and grey pixels, with some transparency in between. Here's what that looks like:

When I use the following color ramp configuration:

I get rid of the black and am only left with the white, and the transparent background:

This is fine, and what I intended to do. But, when I try to do the same with the white instead, and change the color ramp configuration to this:

(ie, I set the lighter side's color alpha to 0) It doesn't work, and I get this:

It seems that the color ramp is equating any pixel with alpha values of 0 to black pixels. Though I'm really not sure what's going on. Excluding the pictures because this post feels long enough as is, but I did test an additional modification: when I change the white tab to black on the last color ramp I posted (keeping alpha at 0), the resulting picture is the same as the last one I posted, except the white areas are transparent. So it is possible to get the lighter pixels to turn transparent with the color ramp, but that still doesn't solve the problem of having the black pixels and transparent pixels in the original render treated the same (ie as black pixels).
Sorry if this is worded a little awkwardly, I'm not totally sure of how to explain the issue I'm having. I'd be happy to clarify anything. I've been trying to figure this out for hours, any help would be appreciated.

...and yes, shame on me, big Blender community, i did not answer the question "why is the colorramp....", but hopefully it is useful for stillsleep and that's what he wanted to achieve.
If i understand you right, you want to

convert black to transparent

convert white to transparent

if yes, here is the node setup:
Original:

convert black to transparent

convert white to transparent

and just in case you wanna make both transparent, black and white, you can use this setup:


How to mix to material with mix node I have 2 different material (Ocean & Snow) from PBR material Addon. I want to mix both the nodes so that they combine each other smoothly. I have a node with green and white mix and same way i want combine both nodes to achieve a smooth result. Any suggestion or help how can mix both the Materials. Why there is a black edge line seen. Thanks

Smooth Result

Mix node

2 different materials

a node setup is a group of nodes that you build, to get a virtual material for a single object. As i see in your images, there are 2 objects, a "landscape"/mountain and a plane. You need to do that material just to the mountain (maybe extend the mountain mesh, or joining the meshes). On your node setup, under "texture coordinate", try to use "object" instead of "generated". To control the transition, in the color ramp node, change the mode until you get want you like.

On your node setup, connect directly the mix shader to the material output. Delete the diffuse shader.

The ocean should be just a plane that cuts the landscape and you move on Z axis, up and down to where you want it.

For a 3 material setup, procede as the following image, where you replace the RGB nodes with the materials you built:


How to access center of polygons after remesh I'm working on a method to compare distances in a space in Python. I am only using the GUI to check my results; all operations are done via a Python script.

I am using the remesh operator to increase the number of faces of a given primative, so that I can find a pseudo-accurate distance to the object by finding the closest face.

I was able to get the remesh to work. However, I'm having trouble accessing the new polygons. It seems there are only the original centers available.. although I am able to see when loading Blender that the number of faces have increased. So, the number of face-centers should also?!

Before:

After:

In the console:

>>> ob.data.polygons[:]
[bpy.data.meshes['slab'].polygons[0], bpy.data.meshes['slab'].polygons[1], bpy.data.meshes['slab'].polygons[2], bpy.data.meshes['slab'].polygons[3], bpy.data.meshes['slab'].polygons[4], bpy.data.meshes['slab'].polygons[5], bpy.data.meshes['slab'].polygons[6], bpy.data.meshes['slab'].polygons[7], bpy.data.meshes['slab'].polygons[8], bpy.data.meshes['slab'].polygons[9], bpy.data.meshes['slab'].polygons[10], bpy.data.meshes['slab'].polygons[11], bpy.data.meshes['slab'].polygons[12], bpy.data.meshes['slab'].polygons[13], bpy.data.meshes['slab'].polygons[14], bpy.data.meshes['slab'].polygons[15], bpy.data.meshes['slab'].polygons[16], bpy.data.meshes['slab'].polygons[17], bpy.data.meshes['slab'].polygons[18], bpy.data.meshes['slab'].polygons[19], bpy.data.meshes['slab'].polygons[20], bpy.data.meshes['slab'].polygons[21], bpy.data.meshes['slab'].polygons[22], bpy.data.meshes['slab'].polygons[23], bpy.data.meshes['slab'].polygons[24], bpy.data.meshes['slab'].polygons[25], bpy.data.meshes['slab'].polygons[26], bpy.data.meshes['slab'].polygons[27], bpy.data.meshes['slab'].polygons[28], bpy.data.meshes['slab'].polygons[29], bpy.data.meshes['slab'].polygons[30], bpy.data.meshes['slab'].polygons[31], bpy.data.meshes['slab'].polygons[32], bpy.data.meshes['slab'].polygons[33]]

Clearly more than 33 polygons! Any ideas?

I've tried:

after remeshing

bpy.ops.object.origin_set(type='ORIGIN_GEOMETRY')
bpy.ops.object.editmode_toggle()
after remeshing ob.data.update(calc_edges=True)
when reading bpy.ops.object.mode_set(mode='OBJECT')

After applying the modifier, you can convert the object into a mesh:

How can curves be converted to meshes?

This will "flatten" the results you expected from the modifier into the mesh and you will see the transformed vertices and be able to select them in edit mode.


How to use a texture colour to define a transmission map I have a model that has a texture applied to the plane. The red icons are actually supposed to light up because of an LED behind them.

To achieve a controllable transmission level on my map I took the texture and isolated the red icons as pure white on a black background:

And then plugged this into the Principled BSDF along with a Mix RGB node to control the level of transmission:

Could this be done by simply taking the original texture and isolating the red colour and defining that as my input using nodes?
This would be helpful in future in case the texture changes, then I wouldn't have to re-do the transmission map as well.

Sure thing.
Just add a ColorRamp and increase the contrast.
You can also set it to Constant (for maximum contrast) if you don't mind jagged edges.


How to twist a cloth? I am starting to get pretty stressed and sad. This is for a mobile game I have accepted a project for and if can't solve this I might have to drop this project which will cost me a bit. So if you could help me it will mean a TON! :)

I am trying to make a cloth look like this.

What I did is I created a cloth simulation with enough vertices and required cloth settings.
Then followed this video to parent some vertices to a bone. To make it work I had to add the bone to the pin group. I animated the bone to rotate so it will mimic the pinch and rotate movement you will do in real life.

After that with some objects with a collision component I have restricted the movement above so it wouldn't clump up and also used a cylinder in the center.

I tried using some vortex force fields but I didn't do that much. Or I don't know how to use them.

You can check this video to see how far I got with the simulation.

If you want to try yourself you can download the .blend file.
To note that both quality settings are set to 100 so it will take a while to bake.

Update: I made some progress but not enough. Using some wind to push the cloth up and more bones. The bones are animated from the edge of the cloth to a small circle in the middle, but there is a lot of loose cloth remaining on the edges. You can watch this video to see.

Thank you :)

Probably not serious answer, but easier to explaine. What about to add one collision object?

Example with only one bone (your blend) plus Cylinder as collider, bad timing and probably better to use some less circle shape, but you got idea.

For final shape you can try Modeling Cloth addon, you can "model" shape in a realtime, final shape is stored as shapekey. So no way to just do animation with two shapekeys O-1, the transition wouldn't work for you.

You can try some combination of your baked cloth sim + shapekey from this addon, somehow ... export to MMD, assign to a mesh via Mesh Cache works, than I wanted to use Surface Deform modifier after that (for target object shaped in state of end of simulation with adjustments as shapekey), but they doesn't run together.

It's really hard to understand how ideal result should looks like :)


How i can remove transparent ball from model? How i can remove that transparent ball?
https://imgur.com/a/UapILfq
there no way to select her and delete like rest objects.

look's like you have your clipping value to low.

the clipping can be found in the n panel or in the camera tab for the camera.


Remove pointlight in reflection (Cycles selective lighting) My scene contains:

1 sphere, 1 ground plane, and 1 point light.
The scene is lit with an HDR.

I'm searching for a way to disable the reflection of the point light on the ground plane. But I want to keep it on the reflecting object.

Is there a way to achieve this?

I want to get rid of this light in the reflection:

But keep this light in the reflection:

All in all - an exact reflecting copy of what's over the reflecting plane.

Here's the solution. I must confess it wasn't easy to find out...

So basically you make a list of render layers.

RenderLayer : all objects (not important in this case)
Ball: the ball alone
Ref all: all reflections (the light and ball reflections)
Ref lamp: reflection of the lamp only
Ref ball: reflection of the ball only (not required in this case)
Plane: only the ground plane

Use a ToonBSDF -glossy (cfr image below) for the ground plane material. Size: 0.001, Smooth: 0.

In the Render Layers nodes

The green box uses all reflections and lamp reflection together in order to substract lamp reflection from all reflections with the Difference key.

We combine the plane alone with the content of those green boxes with Alpha Over.

The last green box is used to go through a Blur in order to "simulate" the ground plane's roughness. It cannot be done any other way for the roughness as the input reflection needs to be very sharp in order to substract the lamp from it.

If you slide the Size of the blur down you will have a very glossy plane. If you need a higher roughness for the ground plane, duplicate the blur and add its duplication to its output node.


How to make text object restricted to certain height? See the image and you understand my problem.

I have followed this excellent tutorial:
Is it possible to drive the contents of an existing text object with a text file?

I have also made my text object to be in text box with a setting of Width: 7.8 but how can I "cut" or "restrict" this dynamic text so it does not flow over the 3d phone objects screen?

Pekka Varis

Create an object above text and set it's material to holdout:


Cycles baking testbuild gives black image (no displacement used) I've been using Blender for a few months to make the models for a game (actual game engine is Unity Free). I'm new to Blender and 3D modelling in general, so please be patient with me if I'm doing something stupid or I use the wrong terminology.

Anyways, I got the Blender 2.71 testbuild 2 and I've been using it for baking in my Cycles materials for my game. It's been working pretty good, but for one of my models it isn't working. I go and press "Bake" with bake type set to "Combined" and I wait there for an hour or so and instead of baking the model in full color (like it normally does), the UV's are all black (see "combined bake.png"). Am I doing something wrong here? (I've uploaded my .blend file if anyone wants to see it.)

Also, this is how I normally do cycles baking (this has worked for my other models): First, I go into edit mode and do a Smart UV project. Then I go into one of my materials and open up the node editor. I add a Texture Coordinate node. Then I add an Image Texture node and set the file to whichever file I want to bake to. I then take the UV from the Texture Coordinate and put it into the Vector node in the Image Texture. I repeat the process for each of the object's materials. Then I go to Render>Bake and press Bake with the type set to combined bake. This normally does work for my other models. The only thing different with this one is that there is a crystal thing hovering over the object I'm baking. The crystal has a strong emission shader. Is there anything wrong here?

I'm using 1000 samples if anyone wants to know.

(Note: I tried this on the Blender 2.71 RC1 from http://ftp.nluug.nl/pub/graphics/ble...e/Blender2.71/ that just came out - still no luck.)

rendered.png:

combined bake.png

full file.blend This my blend file that I'm using for this model.

You need to recalculate the normals of the object (Edit Mode > CtrlN).

If you don't, the normals will all face inward (where there is no light).


How to divide an object with Blender 2.8 i am trying to divide an object:

in Edit Mode, i select "Loop Cut". But the selection is only possible in that way that it divides the object in half. I didn´t found a solution to change the selection. If i wont another selection, i have to repeat that step.

But that is ok, i can live with that.

My question is, when i selected the region with the "Loop Cut", how can i process the cut? Found no possibility. The region where it would cut is shown but i can´t execute it. (I know, this is a rudimentary question...)

I am showing you on a cube.
If you are loop cutting from exact center, that is Ctrl + R and Right Clicking mouse button to exit sliding.
In Edit Mode:
Go to face select mode.

and select the faces on the other half.

Now press P and seperate by Selection.

Go to Object Mode(by pressing Tab)and select any half of cube and Press G to Grab and move.

  This same method works on Blender 2.79 too.

Now cube is divided into two different parts! Enjoy.


Inheriting texture from another layer Hej!
It's my first post so sorry if I overlooked something.

I am here to ask how object could inherit texture from another object lying under it. What I mean?

I have a raster image (orthophotomap on Digital Terrain Model) and I imported a shapefile with buildings as polygons (about 5000 objects). I can extrude these buildings with BlenderGIS plugin to exact height, but I 'd like to have on a top surface exact same image as these buildings are overlying - to have a good image of a roof on every building. Side walls can be blank/grey or with stretched image - they are not a point of my interest right now. How can I do it?

Please help.
Thanks in advance!

I attach print-screen to illustrate the problem.

You can join all objects into one, go to edit mode, top ortographic view, select all, press U and choose "Project from view".

Load your image into an UV editor window, adjust the scale until it fits.

Then assigne a material with the image as texture.
You can select all bottom zones (walls) and assign another material to avoid stretching.

Then you can separate all by loose parts (P) if you need to.


Label points in plane and get position after transformation As I'm a Blender greenhorn, I need your help. Here is my problem:
I have a document added as plane. Next, I want to label certain points within the document. Afterwards, I transform (fold and rotate) the document. In the end, I want to read off the new positions of my labels. Moreover, the points should not be visible when rendering the image.
I am doing the transformation by rotating bones. This works great! (see picture)

However, I am struggling with the labeling of points (see example in the attached image) and reading off the new position.
I would appreciate any help :-)
Background:
I want to generate a training data set for my Neural Network.
Cheers,
Julian

One thing you could try is creating separate vertex groups for each point you want to label and then using the following Python code in the script editor to get the positions for each vertex.  Let me know if it works (or if it doesn't).
import bpy
import bmesh

ObjectName = "Plane"
VertexGroups = ["VGroup 1", "VGroup 2", "VGroup 3"]

obj = bpy.data.objects[ObjectName]
vGroupIndex = 0

def select_obj(obj):
    obj.select_set(True)
    bpy.context.view_layer.objects.active = obj

def create_cube():
    bpyscene = bpy.context.scene
    mesh = bpy.data.meshes.new("Vertex")
    cube = bpy.data.objects.new("Vertex", mesh)
    bpyscene.collection.objects.link(cube)
    select_obj(cube)

    bm = bmesh.new()
    bmesh.ops.create_cube(bm, size=1.0)
    bm.to_mesh(mesh)
    bm.free()

    return cube

def get_vertices_in_group(a,index):
    vlist = []
    for v in a.data.vertices:
        for g in v.groups:
            if g.group == index:
                vlist.append(v.index)
    return vlist

def create_boxes():
    boxes = [];
    for vgi in VertexGroups:
        vg = obj.vertex_groups[vgi]
        box = create_cube()
        bpy.ops.object.constraint_add(type="COPY_LOCATION")
        box.constraints["Copy Location"].target = obj
        box.constraints["Copy Location"].subtarget = vg.name
        boxes.append(box);
    return boxes

def get_locations(boxes, should_delete):
    for box in boxes:
        print(" ")
        print(box.name)
        mat = box.matrix_local
        pos = (mat[0][3], mat[1][3], mat[2][3])
        print(pos)
        if should_delete:
            bpy.ops.object.select_all(action="DESELECT")
            select_obj(box)
            bpy.ops.object.delete(use_global=False)

boxes = create_boxes()
get_locations(boxes, True)

You can replace ObjectName with whatever your plane is called and VertexGroups with the list of the names of the vertex groups you end up using for each vertex.
The way it works is by creating a box for each vertex group named in the VertexGroup list, and then using the copy location constraint to move the box over to wherever the vertex is.  Then it uses the box's matrix_local to find it's actual position (just checking the box's location doesn't take constrains into account and thus just returns (0,0,0))
It doesn't work to just find the vertices in the vertex groups and spit out their positions (vertex.co) because that only gives the position of the vertex relative to the object's origin as it is in edit mode (i.e. it won't account for armature poses, constraints, or even moving the mesh in object mode)
I doubt this is the fastest or best way to do this, but hopefully it will work well enough.  Hope it helps, and let me know if it works (or if it doesn't)


Mirror Modifier not working with subdivision surface I created a chair, and added a mirror modifier as well as a subdivision surface modifier. I made sure that the subsurf mod is below the mirror mod, as you can see in the picture below. However, there is still a visible shrink in the mesh at the point where the right and left side of the mirror meet.

I also made sure that the mirror line is at the origin of the object, that all the vertices on the mirror line are indeed merged together, and that the points beside the mirror points are in  line (the meeting point is not a v-shape).

This causes there to be a visible line when rendering the image.

How can I fix this problem?

You have to enter Edit Mode (Tab) and then select edge select mode (Ctrl+Tab). Then press N to bring up the Properties panel and set the Mean Crease of the edges along the mirror plane to 1.00.


Transform this into a flat surface How can i transform this sphere into a flat terrain with the pattern of the sphere ?

Two ways of doing this:

Use that sphere for knife project tool

Cut the sphere in half in Edit Mode
Choose Top View
In Object mode select your sphere, and then select the pane
Go into Edit Mode and Knife Project

Collapse the sphere

Cut the sphere in half in Edit Mode
Select all vertices
Scale it along the Z axis to 0 (On a keyboard: S + Z + 0)

I am quite new to Blender myself, but in my experience, these are the two easy ways of achieving it.


Try to get a stripe on my shirt texture to follow the curve of the collar I'm modeling a shirt and I want a nice even stripe around all the edges. I UV mapped the shirt and then made all the quads rectangular. I figured this would make it easy to draw a stripe with perfectly straight lines in Illustrator. However, back in Blender it's not mapping onto the collar the way I wanted. You can see the map on the left and the result on the right.
Any ideas how I can make that stripe follow the curve of that collar precisely?

EDIT: Guys, little update. Based on your suggestions I redid the UV map without rectangular quads, and then drew curvy lines in Illustrator. Back in Blender I adjusted some vertices in my UV map to try and get the edges lined up with the stripe. Results are pretty good, so thanks!

I would try laying out the UVs more organically, than just laying it out in quads. Since they are not displayed on the model that way in the end, I think it's giving it the appearance of being stretched around like that.
Could also be that since you've drawn in the corners on the UV map, that is it simply replicating those corners in your texture. So I would try to round out the lines.
These suggestions could be separate or work in tandem, but it's what I would try. Hope that helps. Good luck!


Focal Length in Walk/Fly Navigation Mode How do I change the focal length in Walk/Fly Navigation Mode?

If you'd like to use Fly/Walk Navigation in 3D View and adjust the focal length, open up the Properties Panel N go to View and set the Focal Length property for the actual viewport:

If in Camera, select the Camera go to Properties > Object Data (camera icon) and set the Focal Length property to what ever you like.


Double-click "g" not working as expected I'm new to Blender and used a boolean to cut into a shape. Now I'm trying to get rid of "n"-gons by using double-click "g" to slide "excess" edges along a face.

The trouble is that when I slide the edges:

the old edge remains (I made sure in the outliner that my object is the only object in the layer, i.e. I think there are no other copies -- specifically, the Outliner shows "Plane.003" and then when I click the "+" to expand, there's a "Plane.017" below it, but all my "Plane.00n" objects on other layers have "plane.00m" objects attached to them. Is this normal behavior?).
the edge that's slid seems to go out of the proper orientation when it's slid in one direction (but not the other).

Any ideas what might be going on? Thank you!

While you're waiting for an answer, you can try using Shift + V. That's an alternative hotkey to slide edges in Blender 2.79.


Multiple Curve Guides act wird I have set up Curve Guide. It will be used for showing how particles are moving inside of pipe.

The particles need to be insisde of 'pipe' object, so I thought that the best particles behaviour would be achived by Curve guides, as particles are good girls in this scenario and they don't fly away or something like that .
The set up works wonderful until I don't Duplicate Collection to create another CurveGuide System... Particles are being 'distracted' by the close Curve Guides...

In final animation the particles in the pipes will be close to eachother, and each particle system needs to be inside of his 'pipe object', it will be something around 36 pipes. The pipes will be slightly different so instance copy won't work.
How to set up these Curve Guides to only effect one particle system for one Curve Guide?

Ok, I found the option. We need to "Use Max" (Curves' Force settings) in this kind of situation (for all Guide Curves in the scene) :)


Align orientation in Pose Mode I'm trying to do a simple manipulation that I'm doing every day at work as a professionnal animator. My experiance is with Motion Builder and 3dxMax, but I'm learning Blender on spare time.

I just want to align in Translation AND rotation my IK bone to my FK bone in Pose Mode. My ultimate goal is to continu my animation with a precise exchange between IK curve and FK curve when it's time to switch between IK and FK.

I can use the CTRL+S->Cursor To Selected  /AND/ CTRL+S->Selection To Cursor to align in position my IK bone, but what can I do for the rotation? I cant eyeball this, it will create so much trubble down the road...

Thanks for your answer!!

Since I dont realy know how to make Mzidare answer in comment the real answer to my question, here is his reply:

«You can use Rigify, it has IK/FK snap button. If you want to use your own rig though, you would probably need to use a script for that. – Mzidare Sep 2 at 10:22»

Thanks!


How do I make the speed of an animated object constant instead of accelerating? I am relatively new to Blender and am looking for help with my animation. I know all about keyframing but my question is how to make the speed of an object constant when it moves between 2 keyframes, instead of it starting slow, going quickest in the middle, and slowing at the end.

What you're looking at is the default interpolation (that is, the rate things move between keyframes).  From your description, it is likely that your default interpolation is set to Bezier, which looks like below:

Get into the Graph Editor, select the channel you want to change (the names next to the eye in the above picture).

Then you want to go to the Menu >> Channel >> Interpolation >> Constant.  It'll move constantly after that.


Fitting rods into a wooden truss (cut off edges) I believe to have a very simple problem but I'm somehow too stupid to solve it. I want to fit a wooden rod in between two plates. To do so, I need to cut off the top and the bottom end so that the ends of the rods lie flat on the surfaces of the top and bottom plates.
I have tried the following:

Use the shear operation. But it turns out it doesn't work like intended when the rod is already rotated (I'm confused however why this is?). Shearing also begs the problem that there is no option to adjust the face to exactly horizontal (or is there?)
Use edge slide without clamping (c). I thought this would work great combined with the snapping options, so that the top and bottom edges of one end would snap neatly to the top face of the bottom plane for example. It turns out to be quite buggy and it snaps to everything else than the top and bottom plane.

Now I'm wondering whether there is an easy option to solve this seemingly easy problem :/ Any ideas?

The Shear tool won't work the way you want because your object is oblique. The Shear tool moves the selected vertices on one of the 3 axis, it doesn't slide the vertices along the existing edges, therefore the object you want to shear needs to be parallel to one of these axis if you don't want it to be deformed, and it is not the case here. Examples with shear on the Y axis:

In your case the solution is to use the Knife tool (K to activate, Z to cut through, C to cut perpendicullary).
That said, we don't know if you want to merge your bar with the other ones, in that case you'd better use the Bridge tool to join 2 faces of the horizontal bars.


How to ignore naming index in modifiers? This is what i want to do (out rolled example):

#mod_idx = '' or '.001' or '.002' or '.003'

mod_id    = global_prefs.mod_string
mod_id_01 = global_prefs.mod_string + '.001'
mod_id_02 = global_prefs.mod_string + '.002'
mod_id_03 = global_prefs.mod_string + '.003'
mod_id_04 = global_prefs.mod_string + '.004'
mod_id_05 = global_prefs.mod_string + '.005'
mod_id_06 = global_prefs.mod_string + '.006'
mod_id_07 = global_prefs.mod_string + '.007'

custom_id    = bpy.context.object.modifiers.get(mod_id)
custom_id_02 = bpy.context.object.modifiers.get(mod_id_02)
custom_id_03 = bpy.context.object.modifiers.get(mod_id_03)
custom_id_04 = bpy.context.object.modifiers.get(mod_id_04)
custom_id_05 = bpy.context.object.modifiers.get(mod_id_05)
custom_id_06 = bpy.context.object.modifiers.get(mod_id_06)
custom_id_07 = bpy.context.object.modifiers.get(mod_id_07)

if custom_id or custom_id_01 or custom_id_02 or custom_id_03 or custom_id_04 or custom_id_05 or custom_id_06 or custom_id_07 :
                        name = mod_id or mod_id_01 or mod_id_02 or mod_id_03 or mod_id_04 or mod_id_05 or mod_id_06 or mod_id_07

My goal is to adjust all existing modifier with the same prefix.

To adjust them like a group and ignore all other existing ones!

Any hints how to do that in a meaningful short way?

        selected = bpy.context.selected_objects
        for obj in selected:
            if global_prefs.mod_string != '':

                mod_id = global_prefs.mod_string
                custom_id = bpy.context.object.modifiers.get(mod_id)
                if custom_id:
                    name = mod_id

                    context = bpy.context.copy()
                    context['object'] = obj

                    for mod in obj.modifiers:
                        context['modifier'] = mod

                    for obj in selected:
                        view_layer.objects.active = obj

                        if self.mod_processing == "RENDER" or global_prefs.mod_processing == "RENDER":
                            if mod.show_render == True:
                                bpy.context.object.modifiers[name].show_render = False
                            else:
                                bpy.context.object.modifiers[name].show_render = True

This works so far for a single modifier!
Link to the complete blender addon: modifier by type

Thaughts:

                i = 0
                pref = global_prefs.mod_string
                while obj.modifiers.get(pref):
                    name_id = pref + '.' + '001'
                    i += 1

This is not working! Blender hangs up!

Next:

                i = 0
                idx = '.00'
                pref = global_prefs.mod_string
                name = "%s%s%d" % (pref, idx, i)
                while obj.modifiers.get(pref):
                    i += 1
                    name = "%s%s%d" % (pref, idx, i)

This does not stop at the last number....

There are (at least) two ways to approach this, either you can differentiate the modifiers through their name or their type.

Filter by Prefix

If you want to filter them by a prefix you could use the following approach to retrieve references to the modifiers.

First, get the modifier collection of the object. All (key, value) pairs can be accessed through the .items() function. The keys are the names of the modifiers, therefore these have to be checked for a prefix match. Python has the .startswith() function to check if a string starts with a given prefix. If a match is found for a key, the corresponding value is one of the modifiers you're searching for. All of this can be combined to a list comprehension as shown below.

import bpy

prefix = "Subdiv"
modifier_collection = bpy.context.object.modifiers
modifier_matches = [modifier for key, modifier in modifier_collection.items() if key.startswith(prefix)]

print(modifier_matches)

Filter by Type

Sometimes you may not know the name of the modifiers, since these are user editable, but you may know their type. Searching for modifiers by their type can be accomplished by getting all modifiers of the object through .values() and then checking if they are of a certain type, e.g. SUBSURF in the example below.

import bpy

modifiers = bpy.context.object.modifiers.values()
modifier_matches = [modifier for modifier in modifiers if modifier.type == "SUBSURF"]

print(modifier_matches)

The example below shows how to iterate through all modifiers of an object, check if its name starts with a given prefix and if it does, disable it for rendering by setting show_render to False.

import bpy

for key, modifier in bpy.context.object.modifiers.items():
    if key.startswith("Subdiv"):
        modifier.show_render = False


Bevel constantly regardless of face size (don't stretch bevel) I want to bevel a rectangular prism, but when I stretch the prism, instead of keeping the same bevel, the bevel stretches as well. How can I get the bevel to stay the same size while the prism is stretched?

Use the Bevel modifier, scale the object and then Apply the transform using CTRL+A -> Scale.


Add custom property to panel I created a custom property for my armature and I want to add it to my custom panel. If I want to add an object property to a panel I'll do it like this layout.prop(object, "property"). However this doesn't work for custom properties that I created. What am I doing wrong?

I'm using Blender version 2.79.

Here is the panel code:

class MyPanel(bpy.types.Panel):
    bl_space_type = "VIEW_3D"
    bl_region_type = "TOOLS"
    bl_label = "MyPanel"
    bl_category = "MyPanel"

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

       layout.prop(object, "prop") #Custom property is called "prop"

The custom property is not accessed as an attribute with the ., but through the name of the property.

bpy.data.objects["Armature"]["prop"]

Therefore the correct way of adding the property is:

layout.prop(bpy.data.objects["Armature"], '["prop"]')

You can add your custom property like this:

import bpy

class MyPanel(bpy.types.Panel):
    bl_space_type = "VIEW_3D"
    bl_region_type = "TOOLS"
    bl_label = "MyPanel"
    bl_category = "MyPanel"

    def draw(self, context):
        layout = self.layout
        layout.prop(bpy.data.objects["Armature"], '["prop"]')

classes = (MyPanel,)

def register():
    for cls in classes:
        bpy.utils.register_class(cls)

def unregister():
    for cls in classes:
        bpy.utils.unregister_class(cls)

if __name__ == "__main__":
    register()


Rock particles floating above terrain I’m using a particle system to place rocks on a terrain. Despite playing with every setting I could think of to resolve the problem, I can’t stop many of the rocks from floating above the ground. The particles are last in the modifier list, and I even have “use modifier stack” enabled in the particle emission settings to guarantee the updated geometry should be used.
I believe this occurs most when child particles are used. I'm using interpolated children which to my knowledge are aligned to the mesh surface thus shouldn't be producing this problem. I need child particles as they're the only way to achieve proper clumping (groups of little rocks scattered in various points), if I use just parent particles each individual rock is placed at random without any pattern.
Also please don't direct me to use geometry nodes: I'm aware they exist and they're definitely an exciting feature, however the latest implementation is still in early stages and constantly changing around a complex attribute setup. Once it becomes reliable I may go for those nodes, but in the meantime I'm still using particles for terrain details such as grass.
Here's a simplified version of my blend containing just the terrain with particle rocks. As can be seen in the screenshot the rocks tend to float quite a bit above the surface.
https://pasteall.org/blend/1782c65576eb4d9fb4bb6f09ad957717

It's definitely related to the modifiers, or clumping.
One option is to apply the modifiers, which seems to ground the rocks.  You might not want to do that.
The other thing seems to be Clumping.  If you set it to a positive value it seems to not float, but I think the clumping just pulls together the particles in space without regards to the modifier stack of the surface they're sitting on, unfortunately.  The only thing I could figure out that doesn't break the clumping was applying the subsurf and displace.


Wrong Size and Position After Importing in Cities Skylines I used Blender in Mac OS to create a model for Cities Skylines game. The final model is like that.

But when I import the model in Cities Skylines, the preview is like that.

Any help?

Thanks,

To fix that with Blender v2.77 is necessary to check the "EXPERIMENTAL Apply transform" option.


How can I change the centre of rotation of objects during an animation? I have developed several puzzles in Blender, and to test them I wanted to animate them.   The first problem I encountered was the rotation of an object around a central hub.   Between keyframes the object would cut across rather than follow the circular path.   To solve this I moved the origins to the centre of rotation, and that worked fine.   The next problem was to move the rotation of one or more of the objects to another hub.   This is where it gets a bit tricky!   It's not practical to have to keep changing individual origins for every keyframe.   I've tried parenting to the hubs but this doesn't make it any easier.   Perhaps there is a way with armatures?   Maybe I've missed something very basic.

I made a small demo to illustrate the kind of rotation I mean:

Keyframe 1.

Keyframe 2.

Keyframe 3.

At this stage there are three answers to my question, and all of them require constraint influences to be turned on or off for each object that needs to change its centre of rotation. Multiply this several times and it becomes a bit of a nightmare!

I'm thinking that to position the 3d cursor at the centre of the wheel and then select all the objects required to turn for each rotation might be easier than the answers so far, but I was hoping for something more straight forward than that.

Don't get me wrong, I do appreciate the effort you guys have put in so far, thanks. :)

Add multiple Child Of constraints and animate their influences as desired. But for the example usage above that's not required, merely disable the unwanted Location and Rotation transforms as shown:


How do I assign a color ramp to a 360° axis? I know how to assign a color ramp to a single dimension (I.e. How to make a color gradient from red to white along the x axis)

What I am stuck with is how to make a color gradient based on a circular rotation.

For instance, if I had a circle, 0 would be red, PI/2 is yellow, PI is green, 3pi/2 is blue with the gradient working its way around.

You can set a Gradient Texture to Radial for this. Here i combined it with the Object Output of the Texture Coordinate Node, but depending on your geometry you might have to put a Mapping node behind it.


Where can blender splash scenes be downloaded? I need the .blend for the blender 2.76 splash screen. If it's available, where can I download it?

The splash for 2.76 comes from the Alike short. I'm not sure exactly what you're looking for, but you can download the splash image itself here. And browse the history of all splashes here. Note that the 2.76 splash was mistakenly labeled as a 2.75 splash, so there appears to be two 2.75 splashes and no 2.76 splash.

As far as I know, the source files for Alike aren't available. However, you can find the sources for more recent splash scenes on the blender cloud.


Bad Render. Too much Noise. Low Light I've been using blender for quite sometime. But I have most my "Disabilities" in the NODE/Material/Lighting area.

I tried most REDUCE NOISE tutorials, tried TOP X Tricks to take out fireflies, but it seems that each case is a case and I cannot achieve approximate results to other people in the same sample size. For example, a person achieves a perfect render a 50 samples. I would have to put 500 samples to try achieve the same result... It's very frustrating.

The lighting inside the "DEN" seems too low, compared to the outside light intensity.

I have a Intel 2600K Processor, G.Skill.Sniper.8GB.1600Mhz RAM, GTX970 G1.Gigabyte Graphics card.

Blender File: http://www.mediafire.com/download/8gd70c8aonbr4ss/BEAR-Radio.blend
(might be missing one or two texture images for the Radio. Just delete that material and it should assume another Radio Material)

For scenes where the light bounces around a lot (think indoor scenes) you're going to need more samples.  Renders that look good at only 50 samples are probably more open than yours.

That being said, setting max bounces to 0 will get rid of your fireflies, but you will also lose all of the nice bounce lighting.  And at that point you might as well use the blender internal.  My advice is to turn up your samples and go get a cup of coffee.  I wouldn't worry about it.


Copying model decals as vector graphics Hypothetically, if I were to build a model of my favorite sci-for aircraft but lack the skills to make decals from scratch, would it be possible for me to refer to a model kit's decal sheet, scan it onto my computer, trace each decal in a separate program like Adobe Illustrator as a vector graphic and apply each one to my 3D model?

I agree with "10 Replies": Yes

A vector recreation, saved as high of a resolution png that you need,
can be much better than using just a scan.  (Unless it's a good scan already, but you'll probably want to cut it out, etc...  Still a vector will be noiseless and sharp at any resolution.  An exception is if your decals have gradients or many colors-- if it's more like a photo than line art/ clean sharp shapes.)

As mentioned already too, you can't use vectors directly as a texture in Cycles.  (But you could at least with the old renderer: https://www.blender.org/forum/viewtopic.php?t=12870 )

But I also agree with Duarte's "Don't bother retracing" comment.

Instead, use a tool like Illustrator's Live Trace, Inkscape's Trace Bitmap, or http://vectormagic.com to save a ton of time.  Then you can save your clean, sharp vector as a raster texture to size the you need.  Later, if needed, you can make an even higher resolution png texture for your blender render.

A good clean vector file of vector-like art is always preferred to have, even if you can't use it directly as a texture in Blender.


Show banding on object I'd like to emphasisze the '3d-ness' of my object, by applying a rectangular mesh to it, as if it were a white object in a black room illuminated only by a (far away) laser that scans horizontal and vertical lines.

I manage to get as far as this picture:

Now, instead of the 'black' lines, i would like them to be solid green. And instead of the green gradients, it would be nice if these would be black.

Conceptually, what I'm looking for (I think I am): I'd like to tell the node editor something like:

if your input value is smaller then 0.9, output 0. If it is between 0.9 and 1, output 1.

How do I achieve this?

I used the following setup of my nodes:

My question looks a bit like: How to make a mesh look like it was 3D printed

here's a grid OSL shader I wrote a while back.

/*
  Grid Lines
  : Author Dealga McArdle, 2013
  : modified from Sine Stripes by Thomas Dinges

  example shaders:
  http://www.openshading.com/osl/example-shaders/

*/

#include "stdosl.h"

shader GridShaderUV(

    // input and output parameters
    vector Vector = P,
    color GridColor = color(0.8),
    float Intensity = 1.0,
    float Distance_U = 0.02,
    float Distance_V = 0.02,
    int Stripes_U = 10,
    int Stripes_V = 10,
    output float Fac = 1.0,
    output color Color = color(0.8),
    float World_X = 1.0,
    float World_Y = 1.0
    )
{

    // shader code
    point Pos = Vector;
    Pos[0] -= World_X;
    float pattern_col = 0.0;

    for(int i = 0; i < Stripes_U; ++i ) {
        Pos[0] += Distance_U;
        pattern_col += abs(Intensity / Pos[0] / 1000.0);
    }

    Pos = Vector;
    Pos[1] -= World_Y;
    for(int i = 0; i < Stripes_V; ++i ) {
        Pos[1] += Distance_V;
        pattern_col += abs(Intensity / Pos[1] / 1000.0);
    }

    color C = transformc("hsv", GridColor);

    Fac = pattern_col;
    Color = color("hsv", C[0], C[1], (Fac*C[2]));
}

It generates a grid of black vs some user defined colour. There are many ways to use it, but to get a feel for it I suggest sticking it as a material on a Plane, and see what the sliders do.

If you add a Suzanne, you could set the Stripes U and V to 1 so there's only one grid line, then animate the Distance X between the extents of your object., and you'll get the laser scan effect. Or animate the WORLD X,Y as they are the center of the shader's coordinate system.

Looks like this

It's a grid osl, therefore capable (and intended) to make grids.

Alternatively, xyz banding

remove the axis you don't need. You can offset the Geometry position by some vector amount if the missing Axis band (0,0,0) bothers you


Trying to hide object during animation I'm trying to make a animation where, from a clean slate, more and more objects are to appear one after another. I have seen a method where you make the material transparent, but this doesn't seem like a good way to do it...
Since I have about 100 object that I want to animate, that all have the same material, I don't want to make a duplicate of the material for every object.

Do you have a better solution for this problem?

Best regards
/John

If you don't need your objects to appear gradually:

Select your object, go into the Outliner, deactivate the Show In Renders option (camera icon) and create a keyframe (i).
Now in the Timeline move to the frame where you want your object to appear, go into the Outliner, reactivate the camera icon and create a new keyframe.
If you duplicate your object, you just have to move the 2nd keyframe in the Dopesheet to change the time of its appearance.

You can also keyframe the Show In Viewports option (monitor icon) so that you can see in the viewport what will happen in your render.

These 2 options, Show In Renders and Show In Viewports are also available and keyframable in the Properties panel > Object > Visibility.


How can i make the railing follow the curve on these stairs? I have created a path from an edge but i don't know how to align these railing poles to the stairs. I've tried using array and curve modifier but it is all black magic to me and i cannot figure it out how to fix this.

Heres the link to the blend file : http://pasteall.org/blend/index.php?id=52309

To make a non-deformed duplications, you must not use Array and Curve but Duplication, called Instancing in 2.8. 2.8 makes it a bit more complicated than 2.7 in my opinion, but if you don't need to keep a bezier curve you can do it with Instancing > Verts:

Convert your curve to a mesh.

Give it an Instancing > Verts.

Select your pillar, delete the modifiers, parent it to the curve. It should be duplicated along the curve.

You can equalize the gap between the vertices with a W > LoopTools > Space. If you need to move a pillar, just move its corresponding vertex. Also, you can hide the original pillar if needed.


Is it possible to change operator's bl_label on the fly? I'd like to update the label of an operator when it's called. But this :

def execute(self,context):
    self.bl_label = "good night"

... apparently doesn't work if the bl_label property has already been defined. Am I wrong ?

Manipulating an operator type once registered isn't supported. *

Your options are:

override the label when drawing the interface. eg:layout.operator("some.op", text=label_override)
Modify the class, then re-register the operator(unregister() & register())

Hint, if you want to do a conditional override, Python can do this by passing a dictionary...

keyword_args = {}
if some_test:
    keyword_args["text"] = label_override
layout.operator("some.op", **keyword_args)

* (unless you modify the memory directly, which is possible but outside the scope of Blender/Python API).


What physics make an object not pass through another, if it's the "Child Of"? I am trying to add physics to the Lego Figure I have modeled.
The body of the figure, has holes on each side for the arm, just like real Lego Figures do.

I know I can attach the arm to the body, by using the "Child Of" Constraint.
If I do so, I can only rotate the arm in one direction, or else it would pass through the mesh/body.

How can I add physics, so that I can rotate the arm also to the side, or even let it pop out, without one object passing through the other one.

Does anyone know how to do so?
Maybe what physics I should add to make it work that way?

And different question, how can I let my figure pick something up, can that also be controlled by physics?

If you need physics for the project you're working on. You'll want to set the origin of each of your arm pieces to their joints. Parent the arm to the body. Then use a limit location constraint to keep the arm attached to the body. To do this copy the location coordinates to the maximum and minimum values for each axis, activate all the check boxes, and change the convert value to local space.

To unattach and reattach the arms you will probably need to write a script that will remove the parent relationship and the constraint between the arm and the body when a certain event occures and then set up the relationship and constraint again for the new arm.

As for picking stuff up, a similar limit location and parenting set up should work in conjunction with another script.


Gridlines doesn't show in topview anymore (np 7) in Blender 2.8 (Mac)? How do I get gridlines shown in topview (np 7) in latest blender 2.8 for mac? I downloaded a new update and after I cant se the gridlines in topview anymore, what to do? I would be happy to be able to editing by this grids after subdivide objekt

Are you sure you didn't disable them? Check your Viewport Overlays settings, top right corner of 3D view.


Vertices not Showing up on Object Hi so I just added a circle with vertices 32.
and when i go into edit mode they dont show up on the circle? I need to do some work with it and i need to see the vertices.
Any ideas why its not showing up?
I have tried alt-H and that wont work.

Thanks

You need to switch to Vertex manipulation mode. Just press Ctrl+Tab and then V.


beginner, appreciate for any advice! I am hoping that this is the correct forum to post this question. So I recently decided to join Blender but I am overwhelmed with all the information I get. I am an active sketchup and vray user and without any other 3d softwares experience before and my goal for learning Blender is for arch viz and perhaps real time rendering as well now that Blender 2.8 and eevee is out.

I want to get started with the latest Blender 2.8. I tried to watch the blender fundamental tutorials on youtube but the settings,buttons and UI seem different and sometimes its too difficult to follow through.

I know that Blender is completely free and open source so there arent lots of resources from its official organisation to make tutorials regularly. But since 2.8 is out and with lots of changes happened compared to the available tutorials online, is there a specific channel online where I can start learning the right way at the beginner level?

Or if theres any suggestion about what videos can help me get started for using blender 2.8?

I appreciated very much for any advice, I know this type of topics perhaps get posted many time but I am hoping I can get more update responses in relation to the 2.8 release. Thank you so much!

It can be hard to learn at first but you need to take long and sometimes frustrating baby steps. If possible, try to understand both 2.79b while it is still available for download and also 2.8. 2.8 is still in beta and brand new, as of about a month or 2 ago.

Most tutorials are for Blender 2.7x so I would advise to start off there and use tutorials such as https://www.youtube.com/watch?v=kes2qmijy7w Blender fundamentals. Blender Guru is also a good source for medium to higher level modelling and has just released a video on the new 2.8 layout which I suggest watching Watch both this one, https://www.youtube.com/watch?v=lPVpg4_POww, which is the Blender Guru new layout video, and the first link which is a Blender 2.79b video of a similar nature to gather how different the versions are, which is why I suggested to learn 2.79b since there are so many videos available for it. Start small and learn all the functions first. Remember that Blender engine has been removed in favour of the new Eevee rendering engine so as much as possible try to learn in cycles, but couldn't hurt to learn both the blender engine and eevee engine layouts.

Since 2.8 is still new there won't be as many answers and the layout has dramatically changed so it would be hard for a beginner to watch tutorials done in a 2.7x version and follow along in 2.8, which is why I suggest learning 2.79b first. Once you have an understanding of 2.79b then you can transfer allot of skills easily over to 2.8 by finding the new locations of the tools and menus. Good luck with it.


How can I order the vertex index? I'm new around here. I wanted to ask if there is any way to order the vertex index in this way?

Bmesh version

Here is a bmesh version of @3fingeredfrog's answer using method suggested here https://blender.stackexchange.com/a/36619/15543

Orders based on distance from scene cursor.

import bpy
import bmesh

context = bpy.context
scene = context.scene
ob = context.edit_object
mw = ob.matrix_world
cloc = mw.inverted() @ scene.cursor.location
me = ob.data

bm = bmesh.from_edit_mesh(me)
#bm.verts.ensure_lookup_table()
verts = sorted(bm.verts, key=lambda v: (v.co - cloc).length)

for i, v in enumerate(verts):
    v.index = i
bm.verts.sort()
bmesh.update_edit_mesh(me)

Could maually select all vertices in order (one by one) and retrieve from the select history

verts = [e for e in bm.select_history if isinstance(e, bmesh.types.BMVert)]

The order in question appears to be that next is furthest of all the connected verts if not visited.


Why does this happen every time I unwrap my textures? I've had blender for less than a week, so some of my issues are quite easy to fix, or are just plain obvious. I have been trying to texture a lighthouse model I've made, but every time I do so, the textures become extremely weird. From what I've picked up, you have to have a material for each partition you want to texture. I did that, then began to map my brick texture on the base of the lighthouse. All was looking good in texture view, but when I hit render, this happened:

Keep in mind I was not texturing the cylindrical piece below. I only have 1 material each for the 6 partitions, but somehow this is happening. Thank you for any help, and sorry for any unclear explanation.

Make sure in your textures tab , The uv co - ordinates are set to UV

Make sure to UV unwarp your model before texturing!


Why is blender's boolean so touchy compared to most cad programs? I love using Blender for modeling things, however, the boolean modifier is not always the most reliable. The fact that it can't bool 2 faces that are right against each other and can't handle 2 vertices overlapping is a big problem if you are trying to do 3d printing.
Example, If I Try to boolean 2 cubes with intersecting faces it looks good on the surface.

But if you apply the modifier and look at the mesh it is very disjointed and non-manifold.

This makes a lot of cleanup work that you don't come across in even relatively basic cad programs like tinkercad.
Why from a technical standpoint can't blender handle these situations as well as something like freecad?

The short answer is that Blender is not a CAD program, it is a 3D modeling program, and the two domains have very different goals and constraints.
Boundary representation
CAD programs are designed to create specifications of physical objects. They must be physically accurate, because when a CAD-designed part is actually manufactured, there is no room for cheating. Parts must be machined to high tolerances with exact dimensions and geometry; there is not much room for error when fitting screw threads to a hole. This means CAD tools choose internal representations of geometry that express the shape as directly and accurately as possible.
Specifically, most CAD programs use what’s called boundary representation (B-rep). Boundary representation is a generalization of constructive solid geometry (CSG), which is fundamentally a compositional description of how to obtain a solid volume from operations on simpler primitives. One of the essential concepts behind B-rep is that it is symbolic; a perfectly smooth curve can be described using a mathematical description of a spline, which can be differentiated at arbitrary points.
Mesh representation
In contrast to this, Blender uses a mesh representation of geometry, which is far more discrete. A mesh cannot represent a spline exactly, because a mesh must be composed of some finite number of straight edges. Therefore, a mesh can only approximate a spline using some discretization scheme that provides sufficient resolution from a certain viewing distance.
To compensate for this, computer graphics uses lots of tricks (or “cheats”) to hide discretization errors. One of the most obvious ones is “smooth shading,” which interpolates normals across faces. Smooth shading is a meaningless concept in the context of CAD, because when a part is physically realized, all that matters is the geometry. Faking normals only makes sense when one is generating a 2D projection of a scene, as occurs in 3D rendering.
Of course, the obvious advantage of this approach is speed: the discrete mesh representation is much closer to what graphics hardware can actually usefully consume, so when rendering B-rep on a computer screen, it must first be discretized into a mesh anyway. An advantage of B-rep is that the discretization is performed internally, on the fly, by the CAD program, so it can be performed adaptively at any viewing resolution. No information is ever lost, since the user edits the abstract, symbolic description of the shape they are trying to model, which serves as an “infinite resolution” source of truth for the discretization process.
Boolean operators
What does any of this have to do with Boolean operators? After all, a mesh does still mathematically define a boundary, just one made entirely from straight edges. And that’s true, but there’s an important difference!
Since B-rep is a symbolic representation, Boolean operations are similarly represented internally using a symbolic, mathematical description. Because each operand to the Boolean is an “infinite-resolution” mathematical description of a volume, the result of the Boolean can also be interpreted mathematically with “infinite precision.” Just as discretization of a spline can be adaptively performed at any resolution, discretization of the result of the Boolean can be similarly reevaluated using any technique at any resolution necessary, again with no loss of information.
With a mesh, Boolean operations are destructive, and their operands have already been discretized. You cannot union a sphere with a cube, you can only union an approximation of a sphere with a cube, and what you get back will necessarily be a new, modified mesh. Of course, if you leave the modifier unapplied, the operation will be dynamically recomputed as each mesh changes, similar to the behavior in a CAD program, but once you apply it, the mathematical structure is permanently committed to the mesh.
In a CAD program, there is no way to “apply a Boolean operator” in the sense that you can in Blender. The representation is fundamentally always a non-destructive, mathematical specification of the volume, and the discretization is performed behind the scenes, in real time. This of course means you do not get any direct control over the discretization, but that’s okay for CAD, because you care more about what will happen when the model is interpreted by CNC or a 3D printer, not a graphics card. Even if the same kind of non-manifold mesh you get in Blender is internally generated by your CAD program, you can never directly see or interact with the mesh, so the illusion is never broken. When you modify the parameters of your CAD specification, the Boolean is simply reevaluated on the fly to get a new mesh.
In other words, Blender is using a representation that is fundamentally lower-level than B-rep is. This gives you far more control, and it can be far more performant, but it also means you have to suffer the consequences of destructive modeling and manually manage discretization. In a CAD program, you never care about “bad topology” generated by Boolean operations because “mesh topology” is an implementation detail needed only for visualization, and it doesn’t have to be efficient. In 3D modeling, you do care, and you therefore have to deal with the consequences.


Unnecessary stuff in animation I've never rigged a character so bare with me in what I am gonna ask.
I've been given a rigged character with animations. It works fine. I want to clean it up a bit by deleting things I don't need. Here is the image of the objects:

I guess I should not delete anything in the rig hierarchy, but can I delete all the ik/fk objects since the rig has been made and the animations are done ? If not what can I delete? If nothing, can I somehow bake the animations (I think I've heard it somewhere) and delete things I don't need after? And what things would those be?

Those objects are labeled in a way that suggests they are shape widgets for the bones. Without these, the bones will look like the normal octahedral shapes (or however your armature is displayed). You could delete them if you really wanted to, but it's easier for those working on the file if you don't, especially us animators. It's very easy to get lost in a complex rig.

I would just parent them under an empty to clean up the outliner, if that's what you're really after.

The only parts I would delete are the lights, because those should be done in a separate file after animation is complete.


how to snap 2 specific points I'm trying to make a low poly lantern of some sort and I want to get a frame. To do this i'm trying to get cylinders to line up with the edges of the bottom of the lantern however when i try to snap the cylinder it is facing the wrong direction how can I A) get the cylinder to face into the lantern instead of hanging off the edge and B) how can i make sure that it is centered so that it isn't skewed off to one side or another (basically how can I make it so that all the vertices are lined up straight)

Basically you want to use the 'Snap with Active' part of the snap feature. The active element is highlighted white by default instead of orange, and it is the individual vertex/edge/face you most recently interacted with. If you need to set your active vertex to something new, deselect and reselect that vertex.

Then it's just a simple matter of selecting the correct active vertex and snapping your mesh into place.


How do you stop the sliding of rigid body objects? I have some simple tile like boxes that fall onto a plane. The tile boxes have a rigid body shape of "Box". However even when I think the simulation would be done, the boxes continue to slide off at shallow angle. What attributes in the rigid body physics controls how much an object grips another object. I tried increasing the friction of all the objects to 1 with no effect. Also turned off bounciness and increased damping. But the objects continue to slide until the point that they are all lying flat on the plane. I would think that friction would stop this.

I recreated the scene from scratch and set the friction of all the objects to 1 before running the simulation.  Below is the blend file that I created.

You can use Enable Deactivation option and adjusting it's parameters:

It also helps to have the collision objects set as Passive.

What will also increase the simulation accuracy is number of simulation steps:

The more steps the less sliding in the end and the more accurate simulation (this is 5000 steps):

If you don't want to increase steps, you can also Bake the simulation to keyframes with Object > Animation > Bake Action and delete the keyframes in Dope Sheet Editor that you don't want.

You can also keyframe the animation tag on the rigid body to be checked in the start and in the end of simulation:

This will enable you to control the position and bypass simulation when the tag is on. Notice that during simulation the location (in N panel) of bricks doesn't change from starting position. You need to get the end location and rotation from word_matrix in the Console:

bpy.context.active_object.matrix_world.translation
bpy.context.active_object.matrix_world.to_euler()

And you keyframe the starting position and the end position.


Shader output as factor input for other shader nodes A bit new to shader nodes so may be a dumb question.... Render engine is Cycles but same issue with Eevee.
I am using a Glossy BSDF node to generate the reflection window on a dome.
Plugged straight into the Material output I have a nice grey scale on the surface with window as expected:-

The plan was to then plug it into the factor input of another shader but not working as I had expected:-
Simplified to show the issue, I have a mix shader with two different color inputs and have plugged in the output of the glossy shader into the factor expecting this to mix shading of the colors ie reflective window mostly color 1 and the rest of the dome color 2.  This is what I get:-

Understand that I am plugging color into factor but have read that this can be done as it uses brightness.  Also tried putting it through the RGB to BW node but no difference.

To see output of the BW conversion I tried plugging that straight into the output.  Color is inverted but window is lost so looks like more of the same problem.

Obviously I am misunderstanding how this works? Any tips?

Answer: Wasn't working as you can't plug BSDF into Color (rookie error).  I have fixed the problem (getting reflection and nice clear transmission by mixing a Transparency shader with Principled shader.  The Principled shader provides the reflection (which Transparency does not) and the Transparency shader gives a nice clear view through the glass without the thousands of passes needed for clear transmission.  Only missing the distortion that comes from refraction but an OK compromise for my purposes.


UV Mapping identical meshes on top of each other I have an object with multiple identical meshes that I would like to use the same texture space for. When I unwrap the object, however, it maps each of them to a separate space. Is there a way to tell Blender to map them on top of each other, instead of having to manually move each one to the same space?

If the vertex orders aren't screwy, you can

In Edit Mode, P separate the identical components into their own objects
UV unwrap one of them
Back in Object Mode, with all component-objects selected and the unwrapped one active, CtrlL > 'Transfer UV Maps'
CtrlJ rejoin the components into one object.


How to override all multiple keyframes at once? Hello. Is there anyway you can override multiple keyframes at once? I need to apply rotation of just one bone in all the frames.

I could click each frame and pasted its rotations value. But I assume theres a better way to do this.

Thank you.

I'm not sure it's what you want but let say you want your object to be rotated on its X axis all along the animation: Open the Graph Editor, lock all the tracks, unlock the track on which you want to make your operation (X Euler Rotation), select all (as everything except the X Euler Rotation is locked it will only select the X Euler Rotation curve) and move it on the Y axis of the Graph Editor (G Y) until it is rotated the way you want it to be.


Rotate all bones in rig by 90 degrees I want to create an animation with a rigged model, but it appears as if the bones are all rotated 90 degrees:

This is best visible in the tail; I would expect the tip of the left bones meet the head of the right bones, as is the case with most rigs I've seen. For example:

While the rig does work correctly and is posable, I'd like to rotate the bones back so they look like you'd expect. Of course this can be done manually, but is there a way to do them all in one go?

This problem can be solved by tweaking the primary and secondary bone axis in the armature tab when importing. (In case of a .fbx)


Why cant I find the Tab in Encoding? I am trying to make a YouTube intro. I have it all done I just need to find the encoding tab in 2.79 but I can't.

Select FFmpeg Video from the File Format dropdown menu, then the encoding panel will be available.

For more detail read the following link:

I only get four video output options


Blender EEVEE not rendering smoke simulation For some reason the EEVEE viewport is actually rendering the smoke simulation, however, on the actual render, it does not seem to render it at all as if it's excluding it.

I have checked Volumetrics on, so I'm quite stumped here.

Make sure you add the Principled Volume shader to the Volume not Surface in the Material on the Smoke Domain (not the emitter), that did it for me

If that doesn't work compare your system to the F3->'Quick Smoke' with a cube selected