How to assign colors to Point Density based on data values? I have a file containing approximately 900,000 x,y,z data points, each with a list of physical values at that position (temperature, density, chemical composition, etc.)

I have written a Python script to create a mesh and add a vertex at each x,y,z position. Then I added a cube to the scene and added an Emission volume shader that is fed by a Point Density texture. This produces a visualization of the distribution of points. I can write a Python function that converts the physical values to color values.

How can I assign these colors defined at the x,y,z data points to the Emission volume either directly or through the Point Density texture?

The following script will generate a vertex color layer and assign a color for each vertex coordinate. Since you have a data structure with a color assigned to each vertex, and the vertex's coordinate, you can it to assign colors to each vertex.

The code is not straightforward, since the vertex color layer does not assign a single color to each vertex, but rather a color for each mesh loop. A single vertex can be a part of several loops, and thus have several colors. In a cube, for instance, each of the 8 vertices has 3 vertex colors.

This is why the find_loops_by_vert_co function takes in an object and a vertex coordinate, and returns the list of all loop indices that include a vertex with the same coordinate.

When iterating over the vertex coordinates, this function is called and assigns the desired color to each of the relevant loops. I'm using a specific data structure to include coordinate and color data. You'll have to adapt this script to match your own data structure.

import bpy

def find_loops_by_vert_co( o, co ):
    verts = o.data.vertices
    loopsInCo = []
    for poly in o.data.polygons:
        for i in poly.loop_indices:
            vCo = verts[ o.data.loops[ i ].vertex_index ].co[:]
            compare = [ round( e1, 3 ) == round( e2, 3 ) for e1, e2 in zip( vCo, co ) ]
            count   = len( [ e for e in compare if e ] ) == 3
            if count: loopsInCo.append( i )

    return loopsInCo

o = bpy.context.object

# Create a new vertex color layer
o.data.vertex_colors.new('Heat')
heat = o.data.vertex_colors['Heat']

coos2colors = [
    { 'co' : (1.0, 0.9999999403953552, -1.0),                  'color' : ( 0.5, 0.25, 0.25 ) },
    { 'co' : (1.0, -1.0, -1.0),                                'color' : ( 0.1, 0.6,  0.3  ) },
    { 'co' : (-1.0000001192092896, -0.9999998211860657, -1.0), 'color' : ( 0.9, 0.1,  0.2  ) },
    { 'co' : (-0.9999996423721313, 1.0000003576278687, -1.0),  'color' : ( 0.5, 0.8,  0.0  ) },
    { 'co' : (1.0000004768371582, 0.999999463558197, 1.0),     'color' : ( 0.4, 0.4,  0.9  ) },
    { 'co' : (0.9999993443489075, -1.0000005960464478, 1.0),   'color' : ( 0.1, 0.1,  0.6  ) },
    { 'co' : (-1.0000003576278687, -0.9999996423721313, 1.0),  'color' : ( 0.5, 0.5,  0.0  ) },
    { 'co' : (-0.9999999403953552, 1.0, 1.0),                  'color' : ( 0.5, 0.25, 0.25 ) }
]

for d in coos2colors:
    co, color = d['co'], d['color']

    vIndices = find_loops_by_vert_co( o, co )
    for vi in vIndices:
        heat.data[ vi ].color = color

You can use the vertex color layer in Cycles by using the Input --> Attribute node and plugging it into an Emission shader's color input.


How do I reset the 3d cursor rotation in 2.80? I'm currently working with the Blender 2.80 beta, and although I can snap the 3d cursor to objects easily, and tweak its precise position with the 3D Cursor UI, I can't figure out how to reset its rotation, because it is not exposed in the UI with the position. Is there a tool or some kind of trick to reset only the rotation?

Also, there is no undo for cursor changes, correct?

You can control the behaviour of the 3D Cursor orientation via the Cursor tool - in early 2.8 builds this was found at the top of the workspace :

Enabling the Cursor tool gives you options to set whether the cursor is projected to the clicked surface and how the Orientation should be updated.

The default option is for 'View' - so the cursor is always oriented to the current view. In order to prevent the cursor from being reoriented at all, select 'None' - if you do this before moving the cursor from its initial default orientation then the cursor will remain aligned with the 3D world coordinates.

If your cursor is already skewed then you can reset it back to its default orientation by selecting 'Transform' orientation mode and then clicking anywhere in the scene not on a mesh - this will reset the orientation to the world. Once you have done this you can change the orientation setting to 'None' so that the 3D cursor remains in that orientation.

In order to set a custom orientation, you can orient a surface in the direction you want to set the 3D cursor, set the Orientation mode to 'Geometry' and click the surface to move the 3D cursor to that surface, settings its orientation.

Update

In the final release of Blender 2.8 the tools options can be found in the 'Active Tool and Workspace' panel on the right side :


"Pivoting" a part while moving faces Still a newbie to Blender. Trying to line the gray tube along the edge of the blue object, but there is still a slight lip. How do I rotate or pivot or whatever the gray tube so that it follows the edge of the blue object?

This may not apply in your case, but it would be much easier to copy than to follow:

Select the perimeter of your shape
ShiftD duplicate it and P part it off into a new object
Header Menu > Object > Convert to > Curve
Adjust the curve's bevel in its Data tab > Geometry panel

Convert back to mesh if necessary.


BI how to use the Defocus node with images as plane In blender internal, there's seems to be a problem when using the defocus node with images as plane.  The Z-pass doesn't see the alpha of the image.  How can I fix this?

Well, as you put, the internal render doesn't see the alpha of the image it can only see the alpha of the object and this can't be changed. This is a common limitation of the internal renderer's depth of field.

An often used workaround is to model with geometry the outline of whatever the texture is so that blender can see the alpha. For example if the texture was a leaf you would have to model the outline of the leaf before applying the texture to it. Of course, this might be time consuming for a complex texture but unfortunately that's one of the few workarounds.

An alternative method is to render the plane with the texture onto a separate render layer and manually blur it in the compositor using a standard blur node and then layer it back onto the background.


Is it possible to export a single object from an entire scene? In a scene with more than one object, is it possible to export that one object without deleting every other object, exporting it, then undoing the deletes?

Yes , most exporters have the option to only export selected objects.

You can find this option under File -> Export -> <your exporter>, e.g. STL or OBJ. The relevant checkbox is "Selection Only".


How should you go around with geometry for Unity? I'm confused. Can someone tell me which way is better (1 or 2)?

1.

2.

2nd is after using a limited disolve

Better for what?  The only thing that matters is the outcome.  If either model does everything you want, then either model is the correct one.

You don't need to ask anybody which of two models you have made is better.  Just hit F12.

I will say that there are probably a few issues with these models.  But the issues depend on how you're going to use them.  Are they supposed to be smooth shaded?  Auto-smooth?  Are you going to have UV mapped textures, vertex color?  Are they going to deform?  Are you going to share the models for others to edit, or are they just for animation?  Are they for use in Blender or in a different engine?

If you are using Blender to render, and you are using sharp edges /autosmooth / flat shading, and you are using split vertices for all potentially interpolated values like vertex color and UV, and you are done with the mesh and do not plan to deform it or use it to deform any other mesh, or to use it for any physics, and you're not going to use Catmull-Clark subdivision, (whew I'm out of breath), then there is nothing wrong with either model.  But the second shouldn't be seen as superior to the first model, just adequate.

Because both models have ngons, the biggest difference between the two is that the second has a concave face, which will give you problems with use with some modifiers.

If any of that long list of things I mentioned doesn't apply, then you've got issues with both models.  Use more control loops or practice your topology, avoid ngons.


Why there is difference in the measurement With the Measure tool i have draw the line to measure the model. It shows 6.03. Where as in the N panel under dimensions in the z axis it shows 5.18. Why there is difference in the measurement

I tried to scale the complete model but some parts disappear.

Any solution to get perfect measurement for the model.

Measurments differs because Dimension displays size of Active object only.
With Measurment Tool you measure all objects.


Need help modeling a circle inset on a slanted surface I'm trying to model this little section of this scope, mainly the slanted hole that the bolt sits into. I've tried to boolean it and that just makes a mess of everything. Is a boolean the best option and I'm just not doing it right or is there a cleaner way of modeling this?

You could do it with a Boolean modifier, please tell me if you don't understand one of the steps:


Why doesn't UV Unwrapping show up? When I Mark the seams of the head mesh. And when I start UV unwrapping. It doesn't show  it on UV Editing window.

Select your object, press Tab to enter Edit mode.
Press A to select everything.
If there's any image opened in UV / Image Editor, click "X" button in the menu header. This will unlink image from UV / Image Editor (the image still will be present in the file).

If the model was unwrapped, the UV map should now show up.


Move Hair with Armature I am trying to animate my character right now but whenever I move the head the hair particle system doesn't move with it. Is there a way to make it so that whenever the head moves the hair follows?

I did some research and I figured out that it was as simple as putting hair dynamics on and making the armature modifier be above the particle modifier.


Starting two rigid body animations at different points in time I am animating a rigid body in cycles but I am experiencing problems when it comes to other rigid bodies. As you can see I would to PEN (White one) to drop after the three rings but both of them seem to occur at the same time. Please Help.

Thank you.

Select the pen then go to the frame in which you don't want the pen to fall (presumably frame 1) and uncheck the Dynamic tick in the rigid body menu. Then mouse over the tick and press I.

This adds a key-frame. Then go to the frame where you want it to fall, and check the Dynamic box (so it's on) and press I to add another key-frame. Then the object will have dynamic rigid collision when the key-frame is hit.


Nurb Interface Tool question - lost my way When I add a Nurbs curve now I get the wrong icon and no hairy catapillar. Whaa, What did I do?

In Edit Mode enable Normals Viewing on the side panel:

This works for all curves: Bézier and nurbs.


when ever i move/pose a bone blender lags/freezes when ever I move a bone in pose mode my blender freezes/does not respond for 10s and then moves the bone and the mesh

Your mesh is either very complicated, you have a bad PC, or both. I suggest disabling or lowering the quality of subdivision modifiers in the viewport if you have them on the mesh, or upgrading your PC


How to create a super fine wireframe with low poly? https://www.youtube.com/watch?v=A2oPC4ytFrE
As you can see on the Ironman nanomachine suit, during the transformation, there is a very fine wireframe being formed before the shell forms around it. Currently, I don't have a way to increase the amount of wires without also increasing the resolution of the mesh, so I'm asking, is there a way to create a super fine wireframe using textures, or a way to create more edges without increasing the polycount, sort of like hair children.

You could try something like this - material only, no geometry.

All it is really, is a mix of two separate Wave Textures (on different axes), clamped by ColorRamps to make sharper "ridges". I softened the effects of the procedural textures (noise and wave) in a few places using MixRGB nodes, mixed with white, and I ran the (multiplied) result of the 2 Wave textures through a Bump Node and into the Normal input of the Principled BSDF.
I slightly warped the input vector using a Noise Texture so the result isn't so "gridlike", and I mixed a bit of Ambient Occlusion shadow effect to make the ridges "pop" even more.


Store each animation frame as new object Is it possible to store each animation frame as a new object? I searched quite a long time now on google and was wondering that I cannot find any information about this.

I just have a simple model with a simple pose animation and I'm looking for a way to get each frame stored as a new object, that I end up with maybe 100 objects "frame001", "frame002", "frame003", ...

I need this for a game engine that does not support bone animations, but I can fake such an animation by exporting this object (as a collada) and then setting only one of the "frame-objects" visible in this engine.

I tried to write a quick and dirty python script myself after some basic reading, but unfortunately the most important action (the conversion to a mesh) does not work:

import bpy

count=0

for x in range(bpy.data.scenes["Scene"].frame_start,bpy.data.scenes["Scene"].frame_end):
    bpy.ops.object.duplicate_move()

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

obs = bpy.data.objects
bpy.data.scenes["Scene"].frame_current=0
for ob in obs:
    bpy.ops.object.select_all(action='DESELECT')
    if ob.type == 'MESH' and ob.name.startswith("model"):
        if count>0:
            ob.select=True
            bpy.ops.object.convert(target='MESH')
            bpy.data.scenes["Scene"].frame_current+=1
        count=count+1

You should avoid operators whenever possible:

import bpy

scene = bpy.context.scene
frame_current = scene.frame_current

for f in range(scene.frame_start, scene.frame_end + 1):
    scene.frame_set(f)

    meshes = []
    for ob in scene.objects:
        if ob.type == 'MESH' and ob.name.startswith("model"):
            me = ob.to_mesh(scene, True, 'PREVIEW')
            meshes.append(me)

    # do something with the meshes (note: they aren't linked to anything)

    # Clean up mesh copies
    for me in meshes:
        bpy.data.meshes.remove(me)

scene.frame_set(frame_current)

This will apply modifiers to all mesh objects in the current scene that start with the name model. The resulting (new!) mesh datablocks can be used for export.

Note however, that you will have to create objects and link the meshes to them if you plan to call an export operator - they usually export all (selected) objects, not invisible mesh datablocks. You may wanna check out the exporter code and see if you can import the actual export routine to avoid that operator call and maybe even the object creation.

If you want to apply animation in a way, that there's one static object per frame of an animated model, you may use the following script:

import bpy

scene = bpy.context.scene
frame_current = scene.frame_current

r = range(scene.frame_start, scene.frame_end + 1)
l = len(str(len(r)))
obs = []

for f in r:
    scene.frame_set(f)

    for ob in scene.objects:
        if ob.type == 'MESH' and ob.name.startswith("model"):
            me = ob.to_mesh(scene, True, 'PREVIEW')
            me.transform(ob.matrix_world)
            new_ob = bpy.data.objects.new("%s_frame%0*i" % (ob.name, l, f), me)
            obs.append(new_ob)

scene.frame_set(frame_current)
for ob in obs:
    scene.objects.link(ob)
scene.update()

It applies modifiers as well as transformations (.matrix_world, so loc/rot/scale).


Importing vector lines (SVG) as Curves I got the following line drawing in Illustrator.

As I export it as SVG and importing it in Blender. Blender automatically creates from the seperate lines closed Curves.

How to import a SVG without closing the curves?

The closed curve is called Cyclic, to open and close a Cyclic go into Edit Mode and hit the hotkey Alt+C.


Modelling a mechanical spring for a bike I am currently modelling a bike based on a Norton 961:

I struggle with modelling a proper mechanical spring. It should look like this, I think:

I really don't know how to make it look flowing and natural and having enough "layers".

Activate the Add Curve: Curve Extra Objects addon in the user preferences if you haven't yet.

Then just add a new 3D object with Shift + A Add > Curve > Curve Spirals > Logarithmic or Archemedian in you prefer.

Adjust the desired height and number of turns as required.

Adjust curve bevel factor from the Properties Window > Object Data (Curve) as desired and set the Fill option to Full.

You can then manually add the "flat" end loops manually by joining in a bezier curve circle object afterwards in Edit Mode.


Can't use displacement modifier to create low poly water I'm trying to create some low poly water, and for whatever reason the displacement modifier is not functioning. I have about 100 subdivisions on the object and when I click "displacement", it works until I click "new texture", where instead of displacing the plane it just moves it extremely low.

The "new texture" is still on the defaults, which just aren't very interesting, yet. It just has too little noise to do anything on the displacement.

Click on the button all the way to the right of the texture's name in the displacement modifier. This will take you to the settings for this texture. You'll need to reduce the scale of the texture so that the portion mapped to the plane has some variation, instead of being mostly the same color.

EDIT: Or Zak might be right, there might just not be an actual texture associated with it, yet.


Why the 'Simple Deform' modifier bending my object on the wrong axis? I'm trying to bend this simple object, a cube and I was following a Youtube tutorial on how to do it and I performed each and every step and it doesn't seem to work for me. I don't seem to understand what I'm doing wrong. Can anyone help please?

Steps.

Create a cube
Scale it along Y-axis
Added several loop cuts
Created an Empty
Added the Simple Deform modifier to the cube
Selected Bend
Set the Axis, Origin to empty

enter image description here

By default, with the Simple Deform modifier, in Bend mode, the object will bend on its Z axis. So if your object bends in a unexpected way, it must be because you have rotated it in Object mode, and its Z axis is not aligned on the global Z axis anymore. In that case you may want to apply the rotation with a ctrlA.

If you give the Simple Deform an other Axis Origin, like for example an empty, the object will bend according to this second object Z axis. So same thing, if your object bends in a unexpected way, rotate your empty the way you want.


UV unwrapping how to seperate seams How do I separate them like romeo and juliet

I have selected the middle with alt and marked seam, but they don't seem separated?

Actually the problem was that you had activated the Proportional Editing mode (which allows you to select the closest vertices), just deactivate it.


Setting an object to a random position in the BGE I'm programming a game, and I have an empty that I want to be dropping enemies randomly throughout the map.  I have the following logic bricks and Python script right now:

import bge

def main():

    cont = bge.logic.getCurrentController()
    own = cont.owner

    sens = cont.sensors['mySensor']

    if sens.positive:
        own.worldPosition = [own['xPos'], own['yPos'], 30]

main()

My empty is staying in the same place, but it is at least adding enemies every second.  How can I make the empty go to the random positions that are being generated by random actuator (I would have used the random module but it wasn't working last time I tried it).

The problem is that your script controller is on the Enemy Dropper object and attempts to reference mySensor which does not exist on that object. If you check the console, accessed by Window > Toggle System Console (only on windows systems), you will see an error.

  Traceback (most recent call last):
    File "Setting Position.py", line 9, in
  KeyError: 'value = gameOb[key]: KX_GameObject, key "mySensor" does not exist'
  Python script error - object 'Enemy Dropper', controller 'Python':

To make it operable, add the mySensor sensor to the Enemy Dropper object's logic bricks.


Exporting a FreeCAD model to Blender I am an Engineering student and I am designing some electrical device on FreeCAD. I am a complete beginner but I am interested in Blender because what I am planning to do is to create some fancy advertising (commercial) video of my product. Now, my question is can I reuse the models I created in FreeCAD when doing the commercial video in Blender or are these softwares incompatible?
I know this question may sound trivial but since I am a beginner and as confused as I am, I want to make sure that I am the right place, opting for Blender in order to get my commercial video done.

.FCStd is a native, software specific format. You can't import or export it within Blender. You can however use an exchange format. According to wikipedia FreeCAD can import and export .stl, .obj, and .dae (among others). Those three are ones that blender can also import and export.


Can vertex indices be transferred between identical meshes? I want to transfer the vertex indices from one mesh, to another mesh with identical topology, shape, size ect. As an example, I created two identical subdivided cubes. The only difference is that they do not have the same vertex indices.
To demonstrate the problem I am having, I sculpted some smiley faces on to the cubes as shape keys.
My goal is to have both shape keys applied to one cube at the same time. However, when I try to copy the shape key from the red cube to the green one, it doesn't work. I have tried Transfer Shape Key (left), which doesn't apply correctly. I have also tried Join as Shapes (right), which heavily distorts the cube.
Is there a way I can change the vertex indices of the cube red cube to match the cube on the right?

I may be missunderstanding what you are trying to do here, wouldn't just making a copy of the Green cube in object mode be the easiest way to insure that both objects have identical vertex indices?

I thought it would be possible to Transfer Mesh Data from Green to Red cube. Object menu > Relations > Transform Mesh Data but I couldn't get it to work.

Tried with the Data Transfer modifier but again with no success.

That left the long way of transferring vertex indices :
Link the data of the Red to the Green and then remove the link.

In Object mode first select Red object then select the Green one. Object menu > Make Links > Object Data.

The Red object now has the same vertex order as the Green object:

......... but also using all other data from the Green object.
The Red can be unlinked in the Object Data Properties menu:

There must be a more elegant way of doing this  :)

there you go ... an Addon, see comment above.  Thankyou  @R-800  :)


Why does part of my model disappear when I zoom in on it in the 3D Viewport? I'm having an odd issue - When I try to zoom in on a detail using my MMB, the "camera" in the 3D view seems to be cutting off the exterior surface of my object and showing me the inside instead. I'd expect this behavior, but only when I was much more zoomed in.  If I zoom out a bit (one click on the scroll wheel) then I can see the exterior as I intend.

Is there any way to adjust this behavior?  Thanks!

Clipping in the 3D Viewport:

It sounds like you have your camera's Start Clipping Distance set too high in the 3D Viewport Properties. Clipping distances define the range (in distance units) within which objects are visible. If your distances are set incorrectly, your view gets "clipped" when you cross the clipping threshold, as you describe. To change the 3D Viewport clipping settings:

Properties panel (N) -> View section -> set the Clip Start distance lower

(NOTE: These settings only effect display when NOT in Camera view)

You can read more about clipping in the 3D Viewport here.

Camera Clipping Settings

Just so you know, there is also the option to adjust the clipping range of a camera. This effects the scene when viewed through the camera, such as in Camera View or when rendering. To change these properties:

Select camera -> Object Properties window -> Camera tab -> Lens section -> adjust the Clipping Start and End values

To visualize the camera clip distance, select the camera and enable Display > Limits.

You can read more about camera clipping distance here.


Adjust the image offset and image crop for multiple strips Initially I had done my video in a portrait size 9x16, but now I want to make it wider - something like 16x16.

So I changed the render size, but now all the strips are resized (not proportionally too) to fit the new size. I know that by checking the Image Crop property and adjusting Image Offset I can have the strip stay in the input size.

But I have many strips, is there a way to apply these settings for multiple strips. Is there some plugin or script?

I found a solution, there is a script called Extra Sequencer Actions

http://wiki.blender.org/index.php/Extensions:2.6/Py/Scripts/Sequencer/Extra_Sequencer_Actions

http://blenderartists.org/forum/showthread.php?248129-Extra-Sequencer-Actions

Initially I came across it they were mainly talking about batch editing proxies. But after installation I found it had and many sub menus under the Strip menu.

It behaves as desired.


Lamp visible in solid shading, but not in rendered mode so I'm new to blender. I was following this tutorial and found out I might have done something wrong. In object mode -> solid, I can see my lamp and the effect it has. In object mode -> rendered it's just dark and no sign of a lamp nor light.The strenght of the lamp is high enough.

Can someone help me out and tell me what I might have done wrong?

Strength 18 for cycles spot lamp is to low. Try to increase this value up to 1000 or more


Glossy reflection using Principled BSDF is much rougher, why? Here's an example with the simplest possible node setup:

For some reason, all glossy materials using the Principled BSDF are super rough when viewed in a mirror.

I'm using Blender 2.79. Have I encountered a bug or am I completely missing something else?

I'm using the Cycles Renderer with a GTX 1070.

The blend file is here: https://i.peterwunder.de/mirror_test.blend

Too much Glossy Filtering

As said in the manual:

  When using a value higher than 0.0, this will blur glossy reflections after blurry bounces, to reduce noise at the cost of accuracy. 1.0 is a good starting value to tweak.

You are using a value of 4.0, that means you are strongly using the filtering for glossy bounces.

Use a lower values to lower the strenght of the blur applied.

That said, actually the principled glossy shader behaves quite differently in comparison with the mere glossy shader in the sensitivity of the filtering.


How can I enable or disable bone constraint in blender game engine Actually I want my bone to target an object when it comes near so I want the tracking constraint to be enabled when the object comes near. And I want to keep it disabled rest of the time.

Use the "run armature" actuator. you can even set it to enable/disable individual constraints like the one in your example!

heres a simple setup with a  cobra lashing out at a cube.


Getting this weird halo in my reflection Im getting this weird halo in my reflection when rendering. Does anyone have any suggestions to help with the node setup I have going on here for reflections to help get rid of this.

It was recommended to me that I have my mix shader at 0.5, but if I do that this happens I imagine due to the environment lighting:

So I guess where I am at now is is there a way to get the reflection of only the object which I have on a separate render layer, and not get the reflection of the environment lighting.

Activate the Clamp Checkbox in your Mix node. This should solve the problem.


Positioning the pivot point in center in part of mesh I made three models which will be tiled next to each other in a game.

Center Tile, Corner Tile, Edge Tile.

My problem is I have trouble positioning them next to each other, I've come to the conclusion the problem is the pivot point.

My most left tile, the pivot is directly in the center.
But on the other two they are not in the center even though I used "Origin to center of mass" and also Shift-C and "Origin to 3D cursor".

I have also tried selecting the top vertices "the green part" and Shift-S "Cursor to selected", its nearly perfect but not quite.

How can I perfectly center the pivot point in the green part in each model?

The reason "Origin to Center of Mass" (or "Origin to Geometry") does not work is because your center of mass in not in the same location. The two tiles with dirt, have most of the geometry much lower.

To set the origin in the seam place as the your all green first tile requires a 2 step process.

In edit mode, select the top 8 vertices of your tile. (Note that the pivot point can not be set to "3D Cursor" or "Active Element") Now press ShiftS > Cursor to Selected. That will move the 3D cursor to the location you want as the origin.

In object mode press CtlrAltShiftC > Origin to 3D Cursor.


Animating and creating pose libraries without Shape Keys Allow me to properly explain, step by step, in order for everyone to understand the question.

In case anyone who reads this is unaware, Manuel Bastion has released an add-on named "ManuelLab". This add-on creates Humanoid meshes you can tweak however you please. It's finalization feature uses Shape Keys.

Meanwhile, Karan Shah has posted tutorials involving creating Motion Graphics without Shape Keys or Add-ons. He also has a tutorial involving 2D cut-out characters...without Shape Keys...and with a Pose Library.

Please, do not get me wrong, I understand 2D and 3D are 2 completely different things here, especially with how Karan Shah uses the NLA editor. However, I want to set that fact beside the question at hand.

Is there any way to finalize ManuelLab generated Meshes, with their skeletons intact, without using Shape Keys? I believe there is something to be gained from the mixture of what both of these artists and developers have created. This sounds like a tall jump or too steep a step, but I am no less hopeful.

The pose library involves the use of multiple layers to Move objects throughout.

Edit by request:
http://www.manuelbastioni.com/download.php
http://tutsplus.com/authors/karan-shah
http://www.tutsplus.com/authors/karan-shah (Check the 1st 4 tutorials at the top, at the time this post is edited.)

I think the answer is simple : you may need up to one bone per vertex to obtain the same accuracy as shape keys.

About Karan Shah : he uses UV warp modifier which is purely based on the UV mapping. So that does not change the 3D (or 2D) geometry. Also, in this approach, you cannot mix the effect of two bones (and shape keys can be mixed).
If we want to compare shape keys effect on the face of a Manuel Lab character to UV warp effect for Karan Shah, you'll see that for each shape keys combination (for ML), you may need one texture part (for KS).

After that, maybe something new could be invented... I don't know.


How to distribute points along a single edge with geometry nodes I have a mesh with a single edge/two vertices, which I've added a point instance geometry node instancing the "circle" mesh.

What's the most practical way to change the amount of circles being instanced? Let's say I wanted to animate that there's 2 circles, then 3, then 4, then 5...
Using the subdivision surface node doesn't work because it doesn't just add single points, but subdivides the generated edges.
Using point distribute just doesn't work... unless I'm doing something wrong, it seems to only work on faces, not single edges.

you can use this setup:

and keyframe the count, then you will get:
https://youtu.be/8Ftlse3fn2Y


blender volume material has opaque surface I am creating procedural clouds in Blender Cycles as shown in this tutorial: https://www.youtube.com/watch?v=Ba18cwDSAsk

After that, I would like to create a series of them, so as to generate a tileable picture, using an addon from stuffmatic

The problem I am encountering is that the procedural cloud material is still "opaque" somehow, it blocks the view from the cubes in the background, as seen in the attached screenshot.

http://williamjohnson.eu/Stack_Exchange_imgs/procedural_clouds_opaque.png

I played around with the nodes, tried to put a Translucent and/or transparent node in the "surface" output of the shader, but it didn't work. I also tried masking the cube somehow to keep only the volume but I didn't succedd either... Also tried changing some camera and rendering options but didn't help either.

It sounds strange that volume only materials have opaque surfaces, anyone had this problem before ?

Any hints are welcome :) Thanks for your help.

I noticed that all of the cubes had faces that were in exactly the same place, so I moved every cube around until none of them were touching. This could also be done by selecting each cube, setting the pivot point to individual origins and then scaling down slightly.

After that, it rendered as expected.

Just avoid having the faces of a mesh that has a volumetric shader applied in the same place. Intersections of the objects are fine though.

One more thing that I found is that you had many cubes that had an identical cube in the same place, so just avoid doing that. My render had some darker clouds because of that.


Prevent shadow on object/material A, allow for object/material B I would like to have the default cube cast its shadow on the orange plane, but not the purple:

Is this best done with render layer? Can it only be done with render layers?

Unfortunately, I am pretty sure this is impossible to do in Cycles material nodes.  You will have to do this in the compositor.

First place the object which you do not wish to receive shadows on a separate layer.  Then create two render layers, the second of which excludes all layers except the one where you just put the object.

Everything is on layer 1, except the plane which should not be receiving shadows which is on layer 2.  So I am excluding layer 1 from the second render layer.

Now give the shadowless object a pass index under Object Properties > Relations rollout.

And make sure you have the Object Index pass enabled for the main render layer.

Now head over to the compositor and use the object index pass to mix the second render layer onto the first one.

Here is the final result:


how to animate a gradient moving over an object Improving on this tutorial, is there a way to animate the gradient so the colours move across the object?

This can be achieved by animating the Location in the Mapping node, and adding a few math nodes between the Separate XYZ node and the ColorRamp node, like this:

The ColorRamp uses values between 0 and 1, and if you input anything outside this range, it gets clamped (i.e. anything greater than 1 becomes 1, and anything less than 0 becomes 0). These math nodes make sure you get a value in the expected range.

The Modulo node with the lower value set to 1, basically preserves only what comes after the decimal point, i.e. 1.5, 2.5, 3.5 and so on all become 0.5, and -1.5, -2.5, -3.5 and so on all become -0.5. So this gives us a value in the range -1 to 1.

The Less Than node with the lower value set to 0 outputs 1 if the upper input is below 0 and 0 if it's equal to or greater than 0.

The Add node simply adds the output from the Modulo and the Less Than nodes, thus fixing negative values. So now we have a value in the expected range.

To animate, hold the mouse pointer over the Location properties in the mapping node, and either press I or right click and select Insert Keyframes or Insert Single Keyframe. The former adds keyframes to all three location properties and the latter adds a keyframe to the one the mouse pointer is on. Move the timeline a number of frames, change the appropriate location value(s) and add keyframes again. Repeat as many times as needed.
N.B. The nodes above only affect the Z location. It can easily be changed to either the X or Y location, by using the corresponding output from the Separate XYZ.


Proper way to maximize reuse of assets within scenes I am trying to use Blender to create game content like models and environments(levels). Whether creating a mesh/model or a level there's usually multiple assets involved that are getting shared by many other assets like textures, other meshes, rigs and materials. The blender flow seems to involve recreating assets every time they're used.

What is the best way to reuse shared assets between .blends and to make it easy to find these assets? I'm aware of the linking functionality but it does seem a lot of work (finding the host .blend and navigating its structure) when there's lots of links to be made for each .blend. I'm also looking for the ability to change the shared asset in any .blend referencing it and have the change propagated through every other .blend that references it (Example: altering a Material or a Mesh that's being referenced by a level). I don't think this is supported by Linked proxies.

If linking with proxies is my only option I was thinking of having every instance of certain types of assets in one .blend file (Like Materials and Textures or sounds but absolutely not models) to make them easier to find when linking. Is this a terrible idea?

It looks linking is what you want, you will have to use the link option. You can find this under File→Link. Although it sounds as though you already pondered this method. After some quick testing it does seem that all the mesh and material data is transferred.
For advise on keeping all the objects organized, keep all the objects you want referenced in a library file and just link from that to keep from going through all the objects you don't need to reference. Also, name your objects properly. Navigating through the .blend structure is easy when you know which folder you need to go to. For whole objects, after you select File→Link, go to your library blend file and select Object→'Objectname'.
Use Alt+D to duplicate the linked object in your level files if you don't want to get another linked object. If you use Shift+D, only the material will update in my experience.


Blender 2.78a sapling add-on vertical attraction When I learned Blender, was with the version 2.77 and in the sapling add-on was an option called vertical attraction that make the branches in shapes that looks like a tentacles, now in the latest version (2.78a) the option is gone, anybody knows where I can find it again?

The sapling addon in 2.78 was mostly rewritten by a new developer, vertical attraction would be an option that didn't get included with the new version.


Choosing right context for property in viewport panel I have a simple panel that you can see in the viewport which is a shorter version of UI Panel Simple.
Seeing from other panels, by using Edit Source, they all define a context where the property is added, but how do I decide which one to use to get it working?
Using Blender 2.92.
import bpy
from bpy.props import BoolProperty

class HelloWorldPanel(bpy.types.Panel):
    bl_label = "Hello World Panel"
    bl_idname = "OBJECT_PT_hello"
    bl_space_type = 'VIEW_3D'
    bl_region_type = 'UI'
    bl_category = "Tool"

    def draw(self, context):
        layout = self.layout
        row = layout.row()
        row.label(text="Hello world!", icon='WORLD_DATA')

class QuickRename_PT_Panel(bpy.types.Panel):
    bl_space_type = 'VIEW_3D'
    bl_region_type = 'UI'
    bl_label = "Quick Rename"
    bl_category = "Tool"
    bl_parent_id = "OBJECT_PT_hello"

    testBool: BoolProperty(
        name = 'Test',
        description = 'Test description',
        default = True,)

    def draw(self, context):
        layout = self.layout
        layout.use_property_split = True
        layout.use_property_decorate = False

        tool_settings = context.tool_settings

        row = layout.row()
        row.prop(tool_settings, 'testBool')

def register():
    bpy.utils.register_class(HelloWorldPanel)
    bpy.utils.register_class(QuickRename_PT_Panel)

def unregister():
    bpy.utils.unregister_class(QuickRename_PT_Panel)
    bpy.utils.unregister_class(HelloWorldPanel)

if __name__ == "__main__":
    register()

I want to add the testBool property to the Hello World Panel.

But I think the
tool_settings = context.tool_settings

is wrong.

Okay by looking at How to create a custom UI? I could figure it out
import bpy
from bpy.props import BoolProperty, PointerProperty
from bpy.types import PropertyGroup

class HelloWorldPanel(bpy.types.Panel):
    bl_label = "Hello World Panel"
    bl_idname = "OBJECT_PT_hello"
    bl_space_type = 'VIEW_3D'
    bl_region_type = 'UI'
    bl_category = 'Tool'

    def draw(self, context):
        layout = self.layout
        row = layout.row()
        row.label(text="Hello world!", icon='WORLD_DATA')

class QuickRenameProperties(PropertyGroup):
    test_bool: BoolProperty(
        name = 'Test',
        description = 'Test description',
        default = True)

class QuickRename_PT_Panel(bpy.types.Panel):
    bl_space_type = 'VIEW_3D'
    bl_region_type = 'UI'
    bl_label = "Quick Rename"
    bl_category = "Tool"
    bl_parent_id = "OBJECT_PT_hello"

    def draw(self, context):
        layout = self.layout
        layout.use_property_split = True
        layout.use_property_decorate = False
        scene = context.scene
        mytool = scene.my_tool

        row = layout.row()
        row.prop(mytool, 'test_bool')

def register():
    bpy.utils.register_class(HelloWorldPanel)
    bpy.utils.register_class(QuickRename_PT_Panel)
    bpy.utils.register_class(QuickRenameProperties)
    bpy.types.Scene.my_tool = PointerProperty(type = QuickRenameProperties)

def unregister():
    bpy.utils.unregister_class(QuickRename_PT_Panel)
    bpy.utils.unregister_class(HelloWorldPanel)
    del bpy.types.Scene.my_tool

if __name__ == "__main__":
    register()


Insert Blank Keyframe with Grease Pencil not working + Time Offset Modifier I created a basic walk cycle in Grease Pencil and with time modifier looped it.
Now that I am trying to insert blank keyframes to the same to terminate it, and work again in the same layer it is not possible.
Despite inserting blank keyframe the loop does not disappear. How do I stop the time offset loop and get a blank keyframe?

This Q was a result of a FLASH mindset where I can cut the loops as I wished.
Apparently in GP we cannot make these loops and cut as wish.
So, I copy pasted the frames as many times as needed, not the most beautiful solution but it works.


Render Audio on a machine with no sound card I'm using VSE to create small video clips. I create the clips using python and render everything in the background. Now I am trying to add audio to my clips. This works on my local machine.
This is the line I run:

blender -b --python test.py -o //out -a

However, I am trying to run this on a google cloud machine and I get the following error:

AL lib: (WW) alc_initconfig: Failed to initialize backend "pulse"
ALSA lib confmisc.c:768:(parse_card) cannot find card '0'
ALSA lib conf.c:4292:(_snd_config_evaluate) function snd_func_card_driver returned error: No such file or directory
ALSA lib confmisc.c:392:(snd_func_concat) error evaluating strings
ALSA lib conf.c:4292:(_snd_config_evaluate) function snd_func_concat returned error: No such file or directory
ALSA lib confmisc.c:1251:(snd_func_refer) error evaluating name
ALSA lib conf.c:4292:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:4771:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2266:(snd_pcm_open_noupdate) Unknown PCM default
AL lib: (EE) ALCplaybackAlsa_open: Could not open playback device 'default': No such file or directory

I think the issue is because there is no sound card on the google cloud machine, and I don't think its possible for me to add one.

Thanks!

EDIT: I'm adding that the above are just warnings. The video is rendered fine, only there is no audio present.

You can do ./blender -noaudio -b --python test.py -o //out -a to get rid of those errors/warnings but I'm not sure if this will cause you not to be able to have audio in the videos you are going to save


How do I import .c4d files on Blender? How can I import a .c4d static model (Cinema 4d) on Blender? Is there any plugin could help me? I didn't notice anything on Internet.

Maxon's Cinema 4D is a closed and proprietary tool and there is no way to access the .c4d file in a legal, safe and usable way other than C4D itself.

But you can use one of the many other export methods available.

".obj" , ".fbx" , ".dae" .... for simple mesh transfer and Alembic (.abc) for dynamic and advanced export.


How to troubleshoot Blender 2.83 crashing I’ve just added a GPU to my system in the last few days that has allowed me to upgrade from 2.79 to 2.83 YAY!!!

A few times while rendering though I return to my computer to finder Blender has shut down. One occasion I had 2 instances of 2.83 and one of 2.79 running at the same time (which might have been an issue) but on another 3 times it was only the rendering instance open.

Is there a way to find out when and why this might have happened?

I’m running Windows 7 (64 bit), 2nd Gen i5 3.3GHz, 12G RAM, GTX1650 (just installed). Everything seems to be running efficiently in task manager and I’m loving the new GPU and Blender version but I don’t want constant crashing and want to be able to avoid it becoming an ongoing problem if possible

Follow the instructions here, you'll get a crash report:
https://docs.blender.org/manual/en/latest/troubleshooting/crash.html
It's no guaranteed fix, but it will get you some information. Also ofc. keep your drivers up to date.
And lastly, windows 7 isn't supported by MS anymore, seriously consider switching to win 10.


How to create Motion Trail in Cycles I want to create a motion trail effect for a sword like known in games look at that example if you have an solution that looks not as fancy as in the picture don't mind to post it. I'll accept anything useful.

Here is what I achieved using transparent nodes and AnimAll addon.

Create a plane and give it a 'slashy' shape. Add a curve and place a mesh along it using a Curve Modifier. Add a Subsurf Modifier also if you like.

Prepare two textures- a color map texture (in this case I used a hair photo) and a mask texture (a simple oblong b&w gradient image).

Create two UV Maps- first for a color texture and second for a mask (which will be helpful in achieving the fading effect). Unwrap the mesh using Project from View (Bounds). Scale the island of the second UV map as shown below.

Set up the nodes as pictured below. We want to use the color texture for the emission color and as a mask for a transparency. Optional you may add an extra overall transparency to the mesh (just add one more transparency node and mix it with existing nodes).

Now we'll set up an oblong gradient texture as a mask for a fading effect.

Place the uv island as pictured below, enable the AnimAll Addon and check the UVs box . Go to the desired start frame and insert a keyframe. Next, place the uv island in the dark part of a gradient texture. Go to another chosen frame and insert a keyframe again. Play the animation in Object Mode and you'll see the fading effect.

Here is the same animation as on top, but with less transparency and played slower.

Here's the .blend file:


Blender crashes when Baking fluid I've been working on a project for a while now, and recently Blender seems to crash whenever I try to bake the fluid involved in that scene. In User Preferences > System > Memory Cache Limit (Under Sequencer/Clip editor) I have set to 2048mb. I have 8GB of RAM, so this should be fine. Also, I have no external programs running when I do this. Observing the Blender process in Task Manager, when I begin baking it's RAM usage bumps up to almost 5 gigabytes, for no reason. Is there some kind of fluid cache that I could have filled on accident? .blend file here.

The cache limit in the user preferences only limits how much memory can be used by clip editor and the sequencer to preload frames for faster playback.
Fluid simulations are not limited by that value.

You can bake the simulation from the command line without loading blender's interface.


Run additional code after user has executed and finished an operator The script https://gist.github.com/zeffii/5671824 creates a polysphere, but allows the user to set how spherical it is and how many subdivisions it has and its radius as parameters.

The problem is the sphere has doubles along all sides as a result of the way the geometry is created. Doubles are no good for sculpting -- and sculpting is the reason for the polysphere.

I would like to know if there is a way to automatically run remove_doubles(threshold=1.0e-5) just once, on the newly created object when the script is finished. (by finished i mean you can no longer adjust parameters)

edit:
I guess my alternative will be to construct the mesh without doubles in the first place, which is going to be a bit of a mind-bender or delete the mesh on each parameter adjustment and remove doubles too on each adjustment.

edit2
I reluctantly went for the delete / create / remove doubles combo, the script does work as desired from the point of view of the user. Script is here

No, at least operators don't have the notion of a final state.

I can see in some cases you may want to setup a tools options, then perform some action once the options are set.

You could use a pop-up dialog 1 (as image-new does), but then you dont get feedback when changing values.

Some script writers add toggles to their operators that perform some extra calculation, so the user can choose to quickly setup options then press this last, while this isn't in keeping with our intended workflow, it makes some sense if the operator can't give interactive feedback because they're so slow.

There is one way you might be able to do what you want, and that is to create a Modal Operator, see the example in the text editor templates.
This way you start a tool which has its own mode (like grab or rotate), you can choose to handle events to adjust the settings, then a key such as Enter can finalize the operation.
So this may work in some cases - but modal operators assume a fairly different workflow so it depends a lot on what you do.


F-curve modifier not working Tried to apply noise F-curve modifier on the power of a light but it isn't showing up on graph editor. Not sure what the problem could be.

with Light selected go to Properties editor > Data Properties > Power add keyframe
go to Graph Editor > View > View Selected (or View All)
if selected add Noise modifier


How to get out of HDRI mode? I realise this is a noob question, but while selecting materials for my objects I accidentally hotkeyed into this HDRI mode (I think). I just want to (pre)render with a regular light but I don't know how to remove this HDRI lighting.
Help is appreciated, thanks!

Just click the drop-down menu to the right of the shading mode buttons in the top-right.

Then enable Scene Lights and Scene World this will override the HDRI to use your scene lighting instead of the look dev lighting setup.


Export rendered image corners coordinates I'd like to know if there's a simple way to get the 3D coordinates of the 4 corners of the active camera: the goal is to export a text file with the rendered image with these coordinates in order to be able to insert the image in a CAD software like autoCAD with the correct orientation and scale, as with a Geotiff image for example.
This should be possible with a python script but the most difficult for me is to get the 3D coordinates of the corners of the image...
Thanks a lot !

This is how to get camera corners 3D positions:

import bpy

cam = bpy.context.scene.camera
frame_local = cam.data.view_frame(bpy.context.scene)

# Its in local space so transform to global
frame_global = [cam.matrix_world * corner for corner in frame_local]

# Output to System console
locations = ["TopRight   ", "BottomRight", "BottomLeft ", "TopLeft    "]
for location, corner in zip(locations, frame_global):
    print("corner {0}: {1}".format(location, corner))

Here you can find more that might interest you:

Casting rays into the scene for each pixel


Skin Modifier 'Skin Resize, Ctrl-A' Not Working! Just started learning about the skin modifier and immediately came across this issue. The shortcut to scaling is Ctrl A, but this error messages pops up. Does anyone have a solution for me?

Thank you!!

Edit: I already tried rearranging the modifiers, but the same problem exists. Does it have to do with my using Cycles instead of Blender Render?

Try this one test and see what happens: place the surface subdivision modifier above skin modifier. Sometimes, modifiers clash with each other, so you have to test them by moving them up and down within the panel.
If that does not work, try moving mirrior modifier down. If nothing, try applying surface subdivision.
If that fails, I hope somebody else will have a solution.


How can I add an image to a texture in Cycles? I would like to make cat's eyes. I did the cat in Cycles Render and the cat has different materials all over it.

I made the eyes in Photoshop.
I want to add the eyes like a texture in Cycles Render if it is possible.

Idle Chit-chat

I don't see any reason why you should not be able to simply unwrap the eyes and add in your texture, as I said in my comment. I will, however, elaborate here.

Materials

I will use a sphere to represent the eye (smooth shading), and the following eye texture from Google (full size linked).

With the sphere selected, go to the Materials tab in the Properties panel. + New a material to the sphere. Go into the Node editor, and use the setup shown.

Now, go to the sphere in the 3D Viewport. Tab into edit mode, Numpad 1 to front view, and Numpad 5 to orthographic view. Press U and select Project from View (Bounds). Split the screen into a 3D Viewport and a UV Image Editor by dragging the marks in the top-right corner to the left. Make sure you are still in edit mode. Open the image of the eye through the toolbar at the bottom of the UV Image Editor. The orange should already be aligned over the eye.

Final Notes

For whatever reason, the eye did not show up right from the pure UV editing, so I had to add the Mapping node to the node setup.

Here is the .blend file:


How to create clear plastic? (Cycles) I am trying to make a clear plastic material.

Here is what I have.

I am looking for something more like this. (but darker)

Everything I try looks more like glass than plastic.

I have tried messing with just the refraction node and with the roughness of the shaders but it tends to look more "frosted" where the clear plastic has more of a soft/blurry reflection.

Plus I found the IOR of clear plastic is 1.4 but from looking at different reference pics it doesn't look like there is much refraction going on at all.

Any ideas?

This is very similar to the thin glass problem.
It can be fixed by giving it a thickness, (i.e. Solidify Modifier, as already sugested), which in some cases raises some topology problems, besides the doubled mesh.
Or by faking the surface thickness by not using refraction at all.
This last approach raises another problem: IOR inverts automatically on backside faces (which in this case should be treaten as frontside)... Luckly we can solve that.

Explanation:

When a light ray hits a surface with a refraction shader, the ray will be bent dued to the difference of the light speed from one side of the surface to the other. This speed difference is represented by the IOR and ruled by the Snell's law. When the ray is exiting that medium, the difference of the light speed gets inverted, and so the IOR. Cycles does this automatically, and treats objects as solid (not hollow).

If we want hollow objects, we need to model both outer and inner surfaces of that object, and most of the times is exactly what we do. But there's a nice particularity from this phenomena: if both surfaces are parallel (at least where the ray enters and exits), the outgoing direction will be the same as the incoming direction; and thought the complete light path is not a straight line, the difference is quite small, sometimes smaller than the pixel size, and we can discard all that refraction calculation. A very good example of this are glass windows. In 3D, we call this the 'Thin Wall' or 'Thin Glass' effect, and some renders even have a shader just for this purpose.

In Cycles we can do something similar (treat the surface as a thin wall and discard refractions), but we need to specifically tell the engine that the IOR from a face when viewed from the objects inside, is the same as from the outside.

The nodes in the 'Fixed Backside IOR' frame do exactly that: If 'Backside' is 0 (False), we get (1-0)*IOR+(0*1/IOR)=IOR; if it's 1 (True) then (1-1)*IOR+(1*1/IOR)=1/IOR. Cycles will invert this backface value internally and in the end it stays equal to the initial IOR.

After having the IOR fixed, we can deal with the Reflective/Transmissive sides of the Fresnel formula. I didn't use a complete transparent shader for the transmissive part, because the greater the angle between the incoming ray and the surface normal, the greater the distortion and absorbtion on the light on that path. I used the translucent shader to mimic that effect, but it's just an approximation.


How to connect vertices of two grids efficiently? There 2 grid meshes as in image1. They both are relatively distorted.

Now how to connect the vertices from one mesh grid to its partner in the next mesh grid as in image2.

I used "Bridge edge loops" method but for a huge grid it is not easy to employ that method. Is there any other way to do it efficiently.Looking for your valuable suggestions. Thank you

Select boundary loops, which actually will be used anyway afterwards, and proceed with Bridge Edge Loops.

Select all the geometry of both grids.
In 3D View header menu choose Select > Select Boundary Loop (or find it from Space menu).
Once boundary loops selected it's time to connect them. Press Ctrl+E >  Bridge Edge Loops.


FBX vertex weight import problem I am getting a distortion with a rigged mesh due to the way that Blender imports FBX files. This is due to some kind of loss of accuracy that occurs while importing the vertex weights.

Here is a blend file with 2 Armatures and meshes.

The mesh on the left was imported via FBX. It appears as if all vertex weights are normalized so that for a given vertex, the weights add up to 1.00.

The mesh on the right was imported via DAE/Collada. The vertex weights appear to be normalized so that for a given vertex, the weights add up to 8.00.

So, are there any 3D file format experts out there that have any ideas on how to deal with this?

Here is a little background on this issue: Both meshes were created from the same Mixamo Fuse character with their auto-rigger. The broken one was imported from FBX, the working one was imported from Collada/DAE. I am in the process of writing some scripts to clean up Mixamo characters imported via FBX, however I am stuck here.

To solve this:

Delete all vertex groups of the mesh. To do this select the mesh then go to the vertex groups panel inside the Object tab and delete all groups as shown below:

Select your mesh first then select your armature as well using shift+ Mouse Right Click
Hit Ctrl+p then choose With Automatic Weights as shown below:

Your mesh will be parented properly with the armature with correct deformation as shown below:

Updated .blend file can be found here:


What does it mean when blender prints "cyclic OBU" to the console? I've been doing some animations involving drivers and I got some messages in my xterm:

cyclic OBU voxel -8.0,-4.5
cyclic OBU voxel -8.0,-5.0
cyclic OBU voxel -8.0,-5.5

As of 2015-Apr-8 there are absolutely zero google search results for blender "cyclic OBU". I figured I'd create this question so future google search results are informative.

What does this message mean?  If it's a problem, how do you solve it?  If it's not a problem, how do you get blender to stop being a hypochondriac?

(blender version 2.74, just in case that matters)

I figured out how to reproduce the message.

Create two objects and make one the parent of the other (maybe Cube is the parent of Sphere)
Create a second scene.
link the child object from the original scene to the new scene (I selected the sphere and used the Ctrl-L menu to do this).
Switch to the new scene.  Blender prints "cyclic OBSphere".

I suspect it's because the scene includes an object whose parent is NOT in the scene.  I have a feeling it is printing "cyclic OB%s", and this is going to make it hard for anyone googling to find an answer, since the only constant is the word "cyclic".  OB is glued to the name of the object which can vary quite a bit.  I bet "cyclic OBCube" or "cyclic OBCube.001" will be pretty common.

In my original question it was an object named "U voxel -8.0,-4.5" .

This is with blender 2.74


Is there a way to add a color legend in the mesh analysis? I'm doing a medical research in which it is necessary to analyse the wall thickness of this Object. I used the mesh analysis which automatically colorized the meshes. Unfortunately I can't find a way to add a color legend in order to indicate the wall thickness of the colors. I'm looking for something like that:
https://www.researchgate.net/figure/Three-dimensional-3D-atrial-wall-thickness-variation-across-the-whole-human-atria-Top_fig2_319241926
Is there a way to solve this problem?
I watched for something like this.

The objekt remains blue with this settings.

As I'm quite new to Blender it was not that easy for me to figure out the shading editor and using scripts but slowly I get comportable with it. When I tried to rebuild the settings in the shading editor I could not connect the script to the group ,,MaptThickness". I copied the NormalDepth text from your test_Thickness from volume projekt @vklidu and saved it as (.py) in order to install it as an add on but it didn't work out. When I save it as (.osl) Blender don't even show it to me. I guess it is quite easy but how do I actually implement the script?

What about Ambient Oclussion node with Inside feature enabled?
I'm not sure how precise result is, but seems to work much better than Mesh Analysis.

(Bar in screen is just a 2D gradient.)
Compare to Mesh Analysis, this shader:

can be rendered (with Cycles engine)
color is assigned to vertex (not a face)

Tips:

To share same ColorRamp node in both material close this node into Node Group in one material and add this Node Group into second material.
Color Management switch from Filmic to Standard

Note: Eevee with AO enabled produce colours, but there is not "Inside" feature we use for thickness.

Accuracy
quite interesting Q since a thickness depends  on direction of meassure. Like plate of glass that we use to say and meassure a thickness in depth direction, that is thin. But you can also meassure thickness in width direction that would ve very thick in this case.
That is what Mesh Analysis measure. If you check @RobinBetts blend with OSL shaders, inside is one material called NormalDepth and that does exactly the same thing as Mesh Analysis - it shoots a single ray in face normal direction up to another face. This distance is represented by corresponding color assigned to a face. So if you open node group and check Map Range node - the first two values defines start / end of Color Ramp.
Example - From Min = 0 means red starts on distance zero and From Max = 1 means blue ends on distance 1 m. Playing with these two values you can exactly specify what distance ColorRamp represents. So this material seems to be the best for you.
But same as Mesh Analysis it generates "weird"  colored faces that Are mathematically correct. Like when you check bottom part of Monkey's jaw, there is dark blue even that part of mesh is not such thick, but ray shooted from face goes all the way up to eyebrows, that make distance correspond to dark blue for that face.
There are other methods how to calculate thickness, where is not used a single ray direction. Like AO shooted many in hemisphere directions. Final colors represents average od these distances.
Comparison - Normal Depth (OSL)/ Ambient Occlusion / Lambert Depth (OSL)

Bar object is 1m high and 1m depth shaped as wedge object. Bar on the left uses Normal Depth shader and works just because distance is measured ONLY from one direction. Cube is 0.5 m so pure green in correct color for distance in a middle of bar. But as you can see other two shadery let you know that corners of Cube are thinner in 3d observation than Middle Mass of cube.

NormalDepth shader seems to be accurate ... with values of Ambient Occlusion and Lambert I had to play, to get similar colors. And I don't have a clue how to control.


How can I make a curved ramp? I imported a DFX file and wanted to make a curved road but with elevation (a curved ramp basically). How can I do it?

This is what I want to do.

Thanks!

Well you could try hiding the ends of the road you want to keep the same box selecting the vertices, then by using proportional editing (hotkey "O") you can select an edge and grab and constrain it along the Z axis (the middle mouse button changes the influence).

So select and hide "H" all the parts of the road you're happy with.

So select the edge of the "peak" of where you think the curve would be.

Press "O" to turn on Proportional Editing.

Press "G" and "Z".

While you move it up and before you confirm, use the middle mouse button to change the influence of the proportional editing tool.

Press escape if you dont want to accept and try and a different curve type (bottom tool bar next to the proportional editing icon.

Play around with it until you're happy and/or try different edges with proportional editing with a different influence to get the desired shape.


Copying a detailed piece of a mesh and making it conform to the curve of a sphere I'm making a model that has a ton of minuscule detail. I was wondering if there was a shortcut to copying a good detailed piece of my mesh and just pasting it to another section of it?

I've tried duplicating but my mesh is a sphere and at an angle which makes it hard to relocate the duplicate to another section.

I think the solution lies in the Array modifier.

Use the Array modifier on your detail, put an empty on the center of your sphere and use it for the Object Offset so that your details will follow the curve of the sphere.


How can I dynamically show objects properties in the UI with python? I'd like to work on an Addon project to build facades from imported Curves.

How can I dynamically display in the UI e.g. the spline's number of a curve and how many points it contains?
I've tried with an update selected_object method inside and outside the drawing function of my class but I'm not sure at all about that...

To me, it's a far fetch, I'm not looking for solutions, more for directions. Ultimately, I'd like to be able to select and sort for example "window" type splines and "wall" type splines before generating a meshed solid with window frames out of it.

Assuming you are already in the panels draw function and you have curve assigned.

tot_splines = len(curve.splines)
layout.label(text="Number of curves %d" % tot_splines)

tot_points = sum(len(s.bezier_points) (if s.type == 'BEZIER') else len(s.points)
                 for s in C.object.data.splines)
layout.label(text="Number of points %d" % tot_points)

However I'm not sure why you would want this, seeing as how the info window shows this already.


Noise Reduction for Video in Blender I have footage of noisy HD video (too dark) and wonder if Blender's noise reduction applies to video. There is also this Blender add on that is available for a nominal fee, but again, there is no indication that it works for video and the seller cannot be contacted. Can anyone advise on noise reduction for video in Blender? I have tried noise reduction in DaVinci Resolve and it works a treat, but hope the same can be done in Blender...or better. Just to be clear, because some are saying 'duplicate' this is for VIDEO not 3D. V I D E O.

Cycles noise reduction introduced in recently released Blender 2.79 version works exclusively for rendered images because it specifically uses information from the 3D scene to make an educated approximation, as far as I know.

As such it would not work for random video files since no 3D information would be available in most situations

Everything else that uses the Compositor and/or Video Sequence Editor should be able to work as well for externally obtained footage, as long as it does not rely on data obtained from 3D rendering, like render passes, layers, or any other buffered data from a virtual model.

The mentioned addon seems to be used in the node editor as a node group based approach, so in theory it should work with any externally obtained footage.

Just use an Shift+A > Input > Image or Input > Movie clip to insert your video sequence and use the desired nodes as recommended.

Disclaimer: Whether the algorithms or processes used in those nodes will work correctly or satisfyingly in your particular footage or specific type of noise is unknown.

Those nodes were made specifically with Raytracer bound noise/fireflies in mind, that have particularly very high peaks, so it may not work well of the low intensity noise or your particular case.


parts of my models are disappearing as my scene gets bigger As I navigate around my growing scene parts of my models disappear. Is this a settings issue or is it because my computer doesn't have enough power?

It's the camera clip plane. It controls the closest and furthest distance that gets rendered. You can adjust it for the editing view in the properties region (N key):

...and for any render cameras in the camera settings panel:

It is a good idea to scale both the near and far clip plane by the same factor (i.e. scale 1cm..100m up to 1m..10km) to preserve the precision of the depth buffer.

Technical: when objects are drawn, each pixel's distance to the camera is recorded in a "depth buffer". If another object draws to the same pixel, the depth buffer is consulted to know whether to draw over the pixel (new pixel is closer and in front of old pixel) or skip the pixel (new pixel is further away).

The precision of the distance values recorded in the depth buffer is limited, thus there is a nearest possible value (near clip plane) and a farthest possible value (far clip plane). Everything outside that range is simply not rendered. If the depth buffer is stretched out too far (i.e. to 1mm..100km) depth accuracy suffers and "Z-fighting" ensues (pixels that are farther away randomly draw on top of nearer pixels due to rounding errors).


How can I extract volume and surface information from objects? How can I extract volume and surface information from objects?

I create an objects (e.g. a monkey).
With a Python command how do I extract an object's information like: volume, surface, location etc.?

I found that:

import bpy, bmesh
bpy.ops.object.transform_apply(location=True, rotation=True, scale=True)
bm = bmesh.new()
bm.from_mesh( bpy.context.object.data )
ref_obj_name     = bpy.context.object.name
volume = float( bm.calc_volume() )
print(volume)

and zawardo for all...


Attract part of mesh around an arc Here is my issue:
I've a foot insole

I would like to round up the back part of the insole. So I create a kind of arc and I would like to attract the back part of the insole: The arc in in orange on the following picture.

So I tried with a shrinkwrap but the result is not good as my arc in not really in 3D:

The idea is to attract gradually (from bottom to top) the back of the insole with the arc...

Do you have any idea?

Here is my blend file: http://pasteall.org/blend/index.php?id=47180

Thanks a lot

Maxime

In this case, the softbodies can be used to mold the geometry to a barrier. This uses a blender simulation to fit the geometry to a barrier.

Prepare the barrier by selecting, then, in object mode, using object>apply>scale, and using the toolbar, set origin > geometry center of mass. These two changes will make it easier to apply the barrier in later steps.
Add collision physics to the barrier.

Set the timeline to an end-frame of 25. This will reduce the time required to find the final shape.

At frame 25, add a keyframe with the scale set to 1.

At frame 1, add a keyframe with the scale set to 1.2. This makes the barrier larger then the geometry and as the simulation progresses, it will press on the geometry until it reaches its final shape.

If you animate this, the barrier should shrink into the geometry. This shrinking into the geometry is how it will be shaped.

Add collision physics to the barrier.

Fix the normals so they point towards the geometry. Go to edit mode, select all, then use Mesh>Faces>Flip Normals. The softbodies iteract with the faces that have normals towards them.

Add softbody physics to the geometry to mold. There should be no other modifiers on the geometry to mold. Follow the settings shown below. Set the gravity field weight to 0. Set the cache time to 25 (this will save a lot of time on calculations).

'Bake' the soft-body physics. At the physics panel>Soft Body>Soft Body Cache>Bake. Click on Bake.

The resulting animation presses the barrier against the geometry causing it to meet that form. The last frame of the animation has the desired shape.

Blend file here:


How to call python animation node operator? I have a problem i can't resolve.
Here is the context :
I have a blender file, i am using animation node addon.
I have a animation node tree with a empty string list node.
The elements in the list should be created programmatically with python.

When i call the create animation operator in a python console inside blender, the execution works:

Here is the create element operator :

bpy.ops.an.invoke_function_1(invokeWithData=False, confirm=False,
                                 callback="#('executeNodeCallback', (('NodeTree', 'summary_list'), 'newInputSocket'))",
                                 passEvent=False, data="None")

But when i call this operator from calling blender in the command line with a python script like so :

blender 'my blender file.blend' -P 'my python script.py'

Creation Operator is called in 'my python script.py'

I get this error in the command line terminal and the element is not created:

AttributeError: Calling operator "bpy.ops.an.invoke_function_1" error, could not be found

Any ideas of how to solve this error?

Thanks.

For Animation Nodes I developed a system that automatically generates operators for certain functions on nodes. Otherwise I would have to write a lot of overhead code all the time. This is why the operator has a weird name like invoke_function_1. It also explains why the operator does not exist when you run your script at first. The operators are only created when needed.

Those operators are only should only used on the UI. In all other cases you should call the underlying functions directly.

In your case you have to do something like this: bpy.data.node_groups["NodeTree"].nodes["summary_list"].newInputSocket().


Textures won't show up when I render an animation I have a problem with Blender and its animation process, I want to do an animation and to do that I rendered all frames of my project. Textures on all of my frames are visible but when I do the render animation, my textures won't show up. I used UV/Image editor, I applied the materials to the objects and I did the exact same thing for 3 other animation and it has worked on all of them..

Here is a rendered frame where we can see that textures show up.

On this screenshot we can see that there's no textures when I do render the animation but on the right screen we have a view in "Render Mode" which shows us textures...

If anyone can help I'd be very grateful

This is because you have a scene strip above your rendered image sequence, which will display the same thing as the default viewport in solid shading (no textures), unless you set it to something else like textured or rendered (rendered will be very slow because it has to render each frame. You also have to disable openGL preview for rendered to work):

However, assuming the image sequence below it is the rendered animation, then you can just remove the scene strip.


How do you animate objects coming out of objects realistically? I want to create some kind of monster, for a short animation.
The creature should have a long claw hidden in its arm, that comes out when needed, a little like Wolverine.
Modelling isn't the problem, it's a simple, four legged beast, there are no feet, the legs just end more or less plane, protected by armour plating that moves out of the way before the claw extends, so the claw just has to exit through a more or less plane end of the arm. The claw should probably be a separate object, extended by a bone
Now here's my problem
I want the arm to give way for the claw. The claw shouldn't move through the arm object without anything happening, it pierce through the object and shove I aside, like it would in reality.
But I can't figure out how to do that. I tried a rigid body, but the claw just pushed it forward.
Is this even possible?

A softbody could do it. Now I'm far from a specialist in all the softbody knobs, but here is a collision object going through a low poly softbody. Would be better with higher poly I guess and by having the whole basis more rigid.


MMB Breaks in from orthographic view to 3d view When am in an orthographic view either front or side and
try to rotate with the MMB it breaks in to 3d view port. The camera doesn’t show on the model unless I zoom out and zoom in to see the model.

I am assuming you are using Blender 2.8. In 2.8, pressing 1, 3, and 7, locks you view to X, Y, and Z axis, as well as setting your view to orthographic. Breaking this view disables orthographic mode. If you wish to enable it manually, and view other angles, press 5 on the numpad.


Why my render is more noisy if MIS is on and sample rate is higher? I set up a scene with a glass sitting on a plane with wood texture and I wanted to see how it looks. I rendered it and the glass and it's shadow was pretty noisy. I tried increasing the samples from 128 to 1280 but it became even more noisy and the shadow became weird. I tweaked around the settings and I found out that if I disable Multiple Importance for the light source, the noise goes away. But why is this? I heard that MIS is supposed to REDUCE noise, not increase..
Images: Since I can't post more than 2 images I zipped them (also, I included the .blend too).  [LINK]

filenames: glass [samples] MIS [ON/OFF]

I used cycles renderer.

Some links to point you in the right direction:

Ways to get rid of fireflies (White pixels in your render)

Reduce noise in Cycles renders

The noise can be caused by a lot of factors and is a common issue with Cycles.
I've personally found that Filter Glossy and increased clamping combined with more samples work best for me, but it's totally depending on your type of render. But I render a lot of glass myself, so I would assume this would work for you as well. But then again, check out the links I gave you for some good tips.


How to save render layers for later use This is probably a silly question, but I'm struggling with it. When I close Blender and open it up again I now have to re-render the scene to be able to use them again in the compositor.

I have read some things about OpenEXR Multi-Layers but you have to save them individually I believe. Isn't there a function to assign some sort of fake user to the render layers?

Simply set the output format to OpenEXR MultiLayer and save the render, it will store all render passes. Create another project for the compositing where you load the image(s) through an Image node. All render passes will be available as sockets, if you set the Layer in the Image node to (one of) the View Layer(s) you've rendered.

Example of multi-layer OpenEXR opened through an Image node and usage of the stored Cryptomatte:

There are three relevant options for the multi-layer OpenEXR file format in the context of compositing:

Color (Channels)
Color Depth
Codec

The color channels should always be set to RGBA in order to store associated alpha.

The color depth can either be set to Float (Half) (16 bit per channel) or Float (Full) (32 bit per channel). The latter is advisable in order to have the same floating point precision as the original render passes.

There are several options for codecs. They can be divided into two categories, lossy and lossless. The lossy codecs produce a smaller file size, but you're losing information through the compression. This should often be imperceptible, but may be undesirable for some compositing tasks, e.g. Cryptomatte. Unless you're constrained by limited storage space, I'd recommend using a lossless codec. In my tests it seemed that the PIZ codec is good trade-off between file size and encoding speed among the lossless codecs.

If you want to use the multi-layer OpenEXR files in other applications of your production pipeline, check if they support the codec you're intending to use before you start rendering.


How add primitives or other objects to scene using python I found many old information. Where is simple example to add all primitives (completly working example with actual blender)

I need put cylinder, and move it into specyfic location, seting scale and assign color and name. Im not using mesh, faces etc, I need only primitives like box or torus....

There are several operators that add primitive objects to a scene, look at the reference for each to see all available options.

An example of adding several objects -

import bpy

for x in range(10):
    bpy.ops.mesh.primitive_cone_add(location=(x,0.0,1.0), radius1=0.5, radius2=0.1)
    bpy.ops.mesh.primitive_cube_add(location=(x,0.0,2.0), radius=0.5)
    bpy.ops.mesh.primitive_ico_sphere_add(location=(x,0.0,3.0), size=0.5)
    bpy.ops.mesh.primitive_monkey_add(location=(x,0.0,4.0), radius=0.5)

You can also find similar operators available when using bmesh, which is a better option when you want to edit mesh objects, or build more complex models.

Note that after you add an object using one of the primitive operators, it becomes the active object, that means you can get the object using bpy.context.active_object and make further adjustments after you have created it.

This answer gives an example of creating multiple materials and assigning them to different faces.


How can I create a bump line across an object using textures? I want to create a photo realistic lego man in bender cycles.
But the problem is that I cant figure out how to use my black and white texture
to make this little bump line across the lego minifigures arm.

My scene.

I want the result to look like this.

It's driving me crazy!!!
Please Help.

You can do the following...

Add a Bump Node
Add invert node to your bump map texture.
Plug it into the height input on the Bump node.
Plug the bump node into the Normals channel of your shaders.
Adjust the strength value on the Bump node, to match your need.

Note bump is exaggerated for demostration purposes.

Here is the blend file.


How to use linked objects with an Array modifier? I need to create a bricks wall with linkeds option, for use less memory. But i want use this with a Array modifier(a procedural method) . How do this?
Addendum:

A method would be to use linked-duplicated bricks (AltD).
If you use an Array modifier, it has the advantage of being non-destructive and light as long as you don't apply the modifier, but it will give a bit repetitive result. But you can use a Displacement modifier to solve the problem:

Create a 2 brick object, subdivide them a bit.

Give it an Array modifier on the X axis. Then a second on the Z axis.

Give it a Subdivision Surface and smooth it. Then give it a Displace modifier with a Cloud texture, it will allow you to break the wall uniformity.

For the brick you show, you can do it this way:

Create a plane, subdivide it, bevel the new edges.

Drag the central edge to create the slots, give your object a Subdivision Surface to check the shape, give it an Array on X and Z axis. Put the Subdivision Surface modifier below the Array modifiers.


How do I hide, delete or manage grease pencil lines in 2.8? I drew on a face reference photo with the grease pencil by holding D. I want to hide the lines I drew. Some sources say to press N and then go to the "grease pencil" section, but that appears to be missing/moved in 2.8. Trying to search for 2.8 grease pencil gives me a bunch of long tutorials on creating 2D animations with the new grease pencil, but not a simple answer on how to hide the lines I drew. How do I hide or manage them?

Grease Pencil became a separate object (and more complex) type in 2.8. If you just draw with D, you now create an Annotation and you can toggle it's visibility:

globally in the Overlays section

individually by toggling an annotation layer in the N panel -> Annotations


Why are the faces skipped? Blender 2.81a MacOS

I tried lifting the vertices and this is what I got.

I started modelling with a plane, got rid of the two vertices and formed this mesh, by extruding, subdividing and joining them.

I'd love to know where I got wrong so that I can model better in the future.

The first gif shows that you have faces which aren't properly connected to the surrounding vertices. This can be seen because the face center is marked with a little black square.

The top face is an ngon that consists of eight vertices (marked in blue) and the center vertex isn't part of it.

In order to fix this, switch to face select mode (either by clicking on the icon or using the 3 shortcut in Blender 2.8x), select the top face and delete it (X > Faces).

Switch back to vertex select mode and select four vertices that are supposed to form a face. Press F to create a face and repeat this step with the next four vertices until you have created all four faces.

The two faces on the side are ngons as well and consist of six vertices each. The vertex you're moving in the second gif is part of both faces, but the two horizontal edges aren't.

Switch to face select mode and select both problematic faces. Then press X > Faces Only, which will remove the faces but keep the vertical edge.

Once the side faces are deleted, switch to vertex select mode, select four vertices and create a face with F. Repeat this step until you've created all four faces.


Hotkey issues for deselect I tried everything that I know to do but for some reason, out of nowhere, my deselect all "a" key will not deselect. I have to Shift+B to deselect all. I have a brand new computer and the deselect was working fine last week. I tried loading the factory settings from the file menu but same thing. I do not know anything about scripting so I wouldn't know where to begin. Any help is appreciated.

Uninstall The Blender 2.79b Then Reinstall It . If the problem still occurs try installing the blender 2.79a version of it.
HAPPY BLENDING


How to accurately add sound effects on each rigid body collision? Emitting sounds with different intensity at rigid body collisions is what I want. I couldn't find a tutorial on it. Sorry I didn't post any reference image this time.

I would write a python script to keep track of the object's velocity. When the velocity suddenly decreases (on collision) I would play the sound, setting its volume based on how big the deceleration was.


How to animate the particle hair size? I have made a sphere and assigned a hair particle system. I'd like to scale the hair particles in one area when higher than that of another area and would like to animate that too.
Q: How to animate the particle hair size?

I'm not exactly sure if I understand your question correctly, but you can easily animate particle scale:
In your particle settings, under "Render" right-click on "Scale" and choose insert keyframe. Alternatively, you can click on the small dot right to the box.
Then, go forward in your timeline, insert a new value for "Scale" and again, insert a keyframe.

This may result in something like this:


Is there anyway to keep bounce lights of scene when rendering in separate view layers? Is there anyway to keep bounce lights of scene when rendering in separate view layers?
As such I have a ceiling, 2 walls, and assets within
The assets within are affected by the bouncing of light on the walls, but in PS I want option to be able to toggle the walls, assets, etc
But in seperating them into their own view layers for render, the bounce light is no longer calculated because well, it renders them as if they are in their own void

You can put objects in separate collections and use the Indirect Only option in the outliner.

This setting will make the collection only influence the view layer through indirect light bounces.


Simulation in a web browser I am simulating a tshirt on a person in blender. Everything is working fine but I am looking for a way how to put it on my internet site so it will be animated together. I have found three.js which is really helpful but I am looking for a way of putting animation which is interacting with other object and has been previously calculated in blender. When I do export an glb/gltf file and import it again in blender I see that cloth property on a tshirt and collision property on my person are gone and animation of both things together does not work. I tried also fbx with same results. Any idea how this could be achieved?
Thank you all for help.

The modifier for cloth physics exists only in Blender — there is no way to export it to any format I'm aware of. You can either set up a new physics simulation in a physics engine compatible three.js (which may give different results!) or bake your animation.
For workflows to "bake" the animation, see Cloth Bake: Save frames in timeline as shape key? and https://blenderartists.org/t/export-bezier-curve-animation-as-gltf-and-or-fbx/1151423/4.


How to block custom properties from being edited by the user? I'm creating a custom property for each object in my scene but don't want the user to be able to edit it. Is it possible to block the property in ui ?
Here is my code :

import bpy

allObjects = list(bpy.data.objects)

for element in allObjects:
    element["myProp"] = "My value"

You might create a custom property and pass only a get method:

import bpy

#default getter
def get_my_prop(self):
    return self['my_prop']

#omit the setter with a given getter to make it read-only
bpy.types.Object.my_prop = bpy.props.StringProperty(get=get_my_prop)

for obj in bpy.context.selected_objects:
    #assign the value directly
    obj['my_prop'] = "My Value"

It looks like this in the properties panel in blender 2.71:


Partially high noise using glass material I created a simple bottle and applied a glass material using the new principled shader.
When it comes to rendering the surface of the bottle turns out incredibly noisy, except the part on the front that looks like glass. I tried several solutions with light paths, sampling settings etc. but it doesn't change anything. Any thoughts on that? :-)

Your lighting is using very bright mesh lamps and this isn't helping. You can get much better results by using Area lamps instead. Also, Branched Path Tracing can produce much better results with significantly less samples.

Here are the result I got with just a little tweaking :

This is simply using two Area lamps replacing the mesh lamps (scaled to the same size), each with Emission of 15 and with my own HDR image for environment (yours was missin). I swapped to using Branched Path Tracing, removed Clamping and Light Sampling limits and adjusted the Samples to favour Diffuse and Glossy. I also set the Render AA Samples to 10.


Custom Property vs ID Property for temporary User Preference Variable? I was making a modal operator and I needed some kind of global variable I could use as a "user preference" if you will. Whenever the operator is run, it checks if the value is True or False and runs the necessary code. If it doesn't exist then it creates it with a default value.

I managed by using something like this (an ID property?) which is great because I think it's saved with the scene and not per object:

context.scene["My Property"] = False

My code is already working just fine, no problems there. However, I discovered I can also do this (with optional extras I imagine are useful/necessary for UI Panels):

my_property : BoolProperty(default=False, name..., min... max...)

I just use this property to remember to turn on the wireframe for a selected object while the operator is running, that's it. I don't need to display it in any menu (at least not at the moment) and I don't need to save it in any file; it's just a temporary, non-persistant user preference.

My Question:

Is there's any benefit of one method over the other if I just use it like a global variable?

I've read about Custom vs ID Properties but I'm too much of a layman to understand when to use different things.

I decided to do this because it just works:

my_property : BoolProperty(default=False)
...
if button_pres_event: # Not real code
    self.my_property = not self.my_property
    do some stuff

I prefer this over the Scene ID Property I had before because it automatically creates it when the operator runs (no more checking if it exists first) and I can easily give it a starting value.

Basically, it simplifies the code. I'm sure there are other benefits but simpler/easier code is a good enough excuse for me.


How do I unwrap correctly? Blender noob here. Made a very simple vector square with radiused corners in Inkscape,and saved it as a simple SVG.

Imported to Blender 2.77, changed it to a mesh. Scaled it, then extruded it along the Z axis.

Blend file:

Marked a seam, hit unwrap. The resulting shape looks like a twisted towel.
Only the project from view (ortho),remotely works.
What am I doing wrong?

I took a look at your file, and the first thing I did was remove doubles. Select all in edit mode, press W>remove doubles (or just press  R). Second, I recalculated normals with  Ctrl+ N and then I unwrapped with Smart UV project. I think that this will be the best way to go for you. This is the result you can expect:


Copy and paste a pose onto a different character I have a rigged character and in pose, I ve made a new body and rigged it and now I would like to copy the pose of the other character. How do I do that?

Assuming the bones have the same names :

Select the first armature. In Pose mode, select all bones. In the Dope Sheet, select all the keys, Ctrl+C.

Select the second armature, pose mode, select all bones. Add a keyframe on the same channels used in the first pose (like LocRot or LocRotScale). In the Dope sheet, Ctrl+V.


EEVEE viewport and render are completely different I am creating this scene with hair in EEVEE - but the viewport and the render are completely different. I am using Bloom, turbulence force field. I can't seem to understand why this error occurs.

Viewport

Render:

.blend file:

You are using a particle system with hair and interpolated children.

Interpolated children in particle childrens have a count property which is different for viewport and render.

If you want the same amount of children (and the same results) for display and render, choose the same value for Display Amount amd Render Amount.


How do I change a Math Z Surface's x and y bounds? I am new to blender and I am trying to make a 3D model of an equation that I came up with. When I create a math Z surface with the Extra Objects Add-on, I cannot seem to change the bounds of x and y. I need them to be both from -5 to 5. The equation I am trying to graph is found below:

z = (169/2048)*(y*cos(x))**2 - (1/16)*(x*sin((1/4)*y))**2 + fabs((15/32)*x)+cos(y) [-5 <= x <= 5] [-5 <= y <= 5]

Here is what blender is outputting:

And here is an example of what it should output:

Is there a way for me to change the ranges of x and y? Is there a different problem? I have tried changing the scale and dimensions but they both just stretch the already incorrect graph. I have also tried looking on the blender docs but I cannot find any information about this.

Thanks in advance for helping me out!

x and y range from -0.5 to 0.5, if you want them to range from -5 to 5, simply multiply each occurence by 10. You get quite high values for z that way, so you might want to double-check your constants, but you can also quick and dirty correct this by scaling along the z axis.


How to update Blender 2.8? Haven't used blender for a while. Do I still have to delete my current blender and download new one from the webiste?

You do not need to delete the old Blender version.

You do not need to delete the old Blender version, but as Hikariztw said you should probably backup the files in %APPDATA%/Blender Foundation/Blender/2.80/ in case some beta built accidentally break them.