cutting a hole in cube with subdivision surface modifier already applied I'm trying to cut a rectangular hole in my cube. You can download my source file on this link. The cube was tempered with subdivision modifier and the shading is smooth. This is what I got so far:

I used the left block and a boolean modifier to cut a hole. The problem is that I need my hole to be exactly the same shape as block-right angles are necessity. The Blender gives a warning that my boolean modifier is not the first one and that results may not be what I expect. So how do I cut a block hole out of the object with smooth surface? This really bugs me and I'm very thankful for your help.

EDIT: situation after smoothing inner part of cube with subdivision modifier and Smooth option from Shading panel:

First things first. Boolean is not a good choice in my opinion to receive simple shapes like that.

If I understand you right, you only want a cube which has rounden edges with a rectangular whole in the middle.

This is how I would do it.
First create a simple Cube.

Than subdivide it twice

Delete the inner faces

Now select "Bridge Edge Loop" under the "CTRL +E" Sub Menu

Last but not least, round your edges

Now you can still add a subdivision Modifier to make it even more smooth.

To keep the whole sharp, select all edges and increase the Mean Crease to 1.

Now select the faces you want to be sharp and click Faces -> Sharp under the "Shading"-Tab


Importing textured psd into blender not showing correct colors in blender Im using blender 2.75a. After I export my uvmap from blender, edit it in photoshop and try to reopen the psd file in blender. I don't see the changes I made in photoshop. Instead I see totally white background and no textures applied on my character. Is there some other way of texturing uv map in blender 2.75a? or am I doing something wrong?

Even though PSD is not presently listed among Blender's supported image formats, it is partially supported. Some PSD features will work and some will not.

Excerpt from the link Ray Mairlot has provided:

  What works:

  8-bit images (with or without alpha)
  16-bit images (alpha discarded)
  Photoshop files saved with 'Maximum Compatibility'
  Cycles, Blender internal,  BGE (and player)

  Known limitations

  (due to OIIO dependency):

  Images with less than 4 channels show a wrong thumbnail (bug may be in  OIIO)
  Packed images are not supported
  We do not write PSD files.

So if you want to be sure your images will work in blender, you can either:

Export your texture in a fully supported format instead, such as EXR, TIFF, JPEG, or PNG. (If it contains transparency data, use PNG, EXR, or TIFF.)

-OR-

Stay within to the guidelines of "What Works" to keep your PSD files compatible.


How to assign verts to bones (2.79( I want to assign this vert to this bone
When i try weight painting it just isnt as accurate

Assigning a vertex to a bone must be done by first assigning that vertex to a vertex group. This vertex group must have the same name as the bone which will influence the vertex you want affected. If your mesh doesn't already have a vertex group with the name of this bone, you will need to create one. With the mesh selected that contains the vertex you want controlled, go to the Object Data tab in the Properties Panel, and under the Vertex Groups section, click the plus sign to add a new vertex group and give it the same name as the bone you want to influence your vertex. Now, in Edit Mode, select the vertex you want controlled and in the Vertex Group section, press the Assign button. If your mesh already has an armature modifier on it, then moving the bone in Pose Mode should move the vertex.

If it happens that your mesh does already have a vertex group with the same name as the bone you want to influence this vertex, then don't create a new one. Instead, go into Edit Mode, select that vertex group in the Vertex Group section, select the vertex you want to add to this group, and click Assign.

Once assigned, the weight of this vertex can be tweaked if it is too low or high by rolling out the Properties Shelf (n key) and looking for the Vertex Weights section. Listed underneath will be all the vertex groups this single selected vertex belongs to, along with the weights, which can be edited here.


Saving project move objects I use Blender v2.83.6 on Linux Mint and I have an annoying systematic problem.
Before saving my project I inspect my work : all is in place, so I do CTRL-S.
When I re-open the file, 2 objects (always the sames) have moved.
One on Z axis and the other on Z and Y.
Each time I must reordered these objects.
I'm new with blender and I can't figure what happened. Is it a bug ?
Could you guide me ?
My file is here

The moving objects have a keyframe:when Blender load the file, it replaces the objects at the keyframed position.

Delete the keyframe. Using right click on the location:

And place again these objects where they should be.


None Type Texture in Image Breaking Export (Somehow) So I'm learning Blender 2.78 and am... definitely still a total newbie at this point, honestly, the depth of functionality in this program is HUGE. My problem, however, is fairly specific, and is proving rather intractable, so I figured I'd give it a shot here.

Long story short: I am working on a custom model that I'm planning to export from Blender to XNALara, and the export script I'm using keeps breaking on one specific model with the error "AttributeError: 'NoneType' object has no attribute 'filepath'", which I understand to be the Python equivalent of attempting to read a property off a null value. So I track back through the source code and find this line:

texFilePath = textureSlot.texture.image.filepath

So, it would seem I somehow have a textureSlot which has an entry and a texture value, but not an image.

The problem is... all of my texture slots for this object have images??

I've googled around for similar issues before and saw a different export script where someone had run into this sort of issue due to a glitched texture slot. I have combined and split this mesh with a few other objects at various points, and while I thought I had fixed the textures after doing so (every single texture on that list definitely belongs with the model), something is clearly broken. Unfortunately, I just don't know enough about what's going on here to fix it. I've tried adding and clearing the texture slots, to no avail. I can't even figure out which texture slot is broken because I don't know enough about Blender 2.78. I'd really rather fix the model than try to update an unfamiliar script in order to try to skip broken texture slots.

Has anyone run into a problem like this before? Am I correct in my thinking that there's probably a broken texture slot? And if so, how do I determine which texture slot is broken here, and how do I fix it? I'm willing to upload a minimal .blend file with only the helmet if that will help.

I figured it out. As I mentioned above, I'd joined and split the mesh a few times in order to better fit other mesh parts to the helmet, and when doing that, I'd left old materials attached to the object. I went into the material editor, removed all materials that did not appropriately belong to the object, re-exported, and it worked fine.


Grease pencil hold frame/extend frame I just started playing around with 2d frame by frame animation with Grease pencil. And it really has so much potential to be an amazing 2d animation software.

There is one huge thing that bothers me a lot, I have looked around for hours now trying to find an solution. But cant seem to find it. !

Basically I do my animations on 2s(a keyframe every 2 frames) So what I have done is that I have a bunch of frames for my animation. But I noticed that I didnt have enough frames. So I want to insert a frame(still on 2s) between 2 of the frames I already have. Now I can actually do this in Grease pencil, but the workflow it is so slow and tedious. First i have to insert frame inbetween, then move this frame and all frames after 1 frame forward, then I need to select all frames after the newly selected one and move them 1 frame more to get the timing right. Usually in my experience doing this kind of action should be simple one click thing, because you need to do that alot if you wanna add frammes . But in grease pencil this will take forever. Is there a way to do this smoothly?

So basically looking at the picture, I want to insert a frame where the marker is on the timeline, And it should be spaced just as the previous frames. And I want to do this preferably with a 1 or 2 click solution.

In your example you can set the timeline on the 9th keyframe, then hover the mouse over the right side of the dopesheet timeline and Ctrl click (select all keyframes from here to the end), then press G 2 enter. Now you're ready to draw your Inbetween.


Blender 2.82 EEVEE fire simulation appears in preview but doesn't in final render I've got a really annoying problem. The fire simulation is showing perfectly in the preview, however once I render it, it's nothing there. Everything works in cycles, it's just when I switch to EEVEE. Has anyone ran into anything similar? Thanks.

Bloody hell, I've got it, it was behind the glass in the render lol, and in the viewport the glass was switched off. Eeevee works strangely sometimes...


Joining a hexagon mesh with a circle mesh with faces: is there an easier way than what I'm currently doing? I hope all is well. I have a quick question regarding joining a hexagon and a circle with faces. First, here's how I've been doing it:

Either subdividing the hexagon sides to produce enough vertices to allow for a 1:1 match with those of the circle, or doing it the other way around, or, if that's not possible, finding the smallest common multiple of both.

Is there another way around doing this?

Sometimes it might be less fiddly to create the circle from a subdivided hexagon, by I insetting the hexagon, and then using either the shipped add-on Loop Tools > Circle operation, or ShiftAltS 'To Sphere'. You could always snap-scale the inner circle to connect it to another existing one, if that's the intention.

.. and you could do it to multiple hexagons at once


How to apply materials to specific faces only? I imported an object with many faces and materials, but I only want some materials to apply to certain faces, how could I do this? When I add the material, it adds it to the entire thing, how do I do it for one face?

This is actually pretty easy to do; first, go into Edit Mode, by pressing Tab, and select the faces on which you want the material to apply.

Then, go to the Properties panel, and in the Material tab, with the material you want selected on the list above, press Assign.

Notice that you can also select/deselect the faces corresponding to a material, by pressing the respective button.


Convert "Existing" Mesh to Bmesh (AttributeError: module 'bmesh' has no attribute 'from__mesh') In Blender2.79, the "Main Script" below converts an existing mesh(default_cube) to a "Bmesh" (using bmesh.from_mesh()) and stores the selected vertices of the mesh in a list.

On testing,this Bmesh example(create new vert on existing selected Mesh) works fine.

However,when run the MainScript in both Edit and Object(after calculating selected vertices in edit mode) modes ,the console gives this error.

AttributeError: module 'bmesh' has no attribute 'from__mesh'

Since,the selected object has to be accessed as a part of the "active" scene, assigning object in this manner ,gives above error

scene = bpy.context.scene
ob = scene.objects.active
me = ob.data
bm = bmesh.new()
bm = bm.from_mesh(me)

Also direct context assignment gives above error.

ob = bpy.context.object
me = ob.data
bm = bmesh.new()
bm.from_mesh(me)

[![Bmesh.from_mesh() error][2]][2]

However, "from_mesh" is a valid attribute in Bmesh module.

Even using bmesh.from_object() gives a similar error.

AttributeError: module 'bmesh' has no attribute 'from__object'

Also,if bmesh.from_edit_mesh() is used , and even if the selected object is in Edit mode ,the console gives the following error(even if the Bmesh is set_free after this line)

ReferenceError: BMesh data of type BMesh has been removed

How to run this script in EDIT mode using Bmesh module (without getting any errors)?

----------------------------------MAIN SCRIPT-------------------------------

from os import system
   system("cls")

import bpy
import bmesh

#Assign object as a part of the active scene
scene = bpy.context.scene
ob = scene.objects.active
vert = ob.data.vertices

#Set default mode == Edit
if bpy.ops.object.mode_set.poll():
    bpy.ops.object.mode_set(mode='EDIT')

print("Active object = ",ob.name)

#Store selected vertices in a list
print("vert_selected")
#ob = bpy.context.object #Also direct context assignment raised no attribute error
me = ob.data
bm = bmesh.new()
bm = bm.from_mesh(me) #AttributeError: module 'bmesh' has no attribute 'from_mesh'
#bm.from__object(me) #AttributeError: module 'bmesh' has no attribute 'from__object'

vert_selected = [v.co for v in bm.verts if v.select]
for vs_s in vert_selected:
    print(vs_s)

bpy.ops.mesh.select_all(action='DESELECT')
bm.select_flush(True)

bpy.ops.object.mode_set(mode='OBJECT') # if bmesh.from_edit_mesh() --> mode == EDIT - ValueError: to_mesh(): Mesh 'Cube' is in editmode

bm.to_mesh(me) #If mode ==Object  -> ReferenceError: BMesh data of type BMesh has been removed
bm.free()
ob.update_from_editmode()

A changed the way you selected active object and the way bmesh.from_mesh was called.

from os import system
   system("cls")

import bpy
import bmesh

#Assign object as a part of the active scene
scene = bpy.context.scene
ob = bpy.context.object
vert = ob.data.vertices

#Set default mode == Edit
if bpy.ops.object.mode_set.poll():
    bpy.ops.object.mode_set(mode='EDIT')

print("Active object = ",ob.name)

#Store selected vertices in a list
print("vert_selected")
#ob = bpy.context.object #Also direct context assignment raised no attribute error
me = ob.data
bm = bmesh.new()         # Create a new bmesh container instance
bm.from_mesh(me)         # Pass your mesh into this container

vert_selected = [v.co for v in bm.verts if v.select]
for vs_s in vert_selected:
    print(vs_s)

bpy.ops.mesh.select_all(action='DESELECT')
bm.select_flush(True)

bpy.ops.object.mode_set(mode='OBJECT') # if bmesh.from_edit_mesh() --> mode == EDIT - ValueError: to_mesh(): Mesh 'Cube' is in editmode

bm.to_mesh(me) #If mode ==Object  -> ReferenceError: BMesh data of type BMesh has been removed
bm.free()
ob.update_from_editmode()
```


how to connect objects with splines with animation nodes? I have a group of objects all with keyframed movement. I want to a create splines between the closest objects as they move like this...

https://www.youtube.com/watch?v=k9MvcCXsHHY

I know you can connect particles like this...

but dont know how to do the same effect with a group of objects.

Add your objects to a group or a collection. Then get the objects using the Collection Info node or the Objects From Group node. Finally, get their locations using the Object Transforms Input node. We now have the points locations, we use the Find Close Points and Splines From Edges node to create the splines as follows:


(Blender 2.82.1) "Could not build proxy for strip ..." How do I fix this? I'm using Blender 2.82.1 on windows. When I add a video and try to rebuild its proxy and timecode at 50%, I receive an error message "Could not build proxy for strip ..." This was not a problem before. I tried uninstalling and reinstalling blender, but didn't work. How do I fix this?

I had similar issue with the following file: "30 ans laura.mp4"
I renamed the original file to: "Laura.mp4", reimported it and it worked.
I suppose it's an issue with the numbers.
I didn't investigate further but I hope it helps.


What are Bevel Edges 8 i can see different types of edges in edit mode. I know what Sharp and Seam edges do. But what do the bevel edges do and why do the bevel edges has different color?

Thank you for your time :)

The bevel weight is visualized in light blue (similiar to the teal sharp).

You can edit the weight in Edit Mode by selecting edges and pressing ⎈ CtrlE to open up the edge menu (which can also be accessed through the 3d View's header menu bar).
In the edge menu choose Edit Bevel Weight. The bevel weight can also be accessed in the Properties Panel N of the 3D View. The bevel modifier can use the bevel weight to restrict the beveling.


Moving the yellow dot in the viewport Hi, how do I move the mesh so the yellow dot in the centre of the viewport is in the centre of the mesh

The yellow dot is the origin of the object.
To move it, select your mesh in object mode and then:
right click or object menu up there--> set origin--> "geometry to origin" or
"origin to geometry" as you want to do


Blender Game Engine - Load Scene Similar To Linked Lets say have have two files a.blend and b.blend. Inside both blends are two different game engine scenes. Both have animations, objects, logic, scripts, constrained objects and armatures.

From b.blend, I wan't to dynamically load the scene into a.blend, and switch two it.

For reference, this could be done statically by linking the scene in, and then using scene.replace("sceneB")

By the way, Start Game From File is not an option

You can use LibLoad(). It merges the data of a blend file into the current scene. So you could switch/add an hard-coded nearly empty scene and dynamically LibLoad() the data from the other blend file. The flexible part is the name of the blend file.


Grease Pencil strokes don't respect world space Does anyone know why grease pencil layers don't respect 3D space for view order? This is a default 2D animation file with two simple GP drawings, and the layer that is further from the camera  shows on top at certain angles. See this screencapture:
Layer order error screen capture

OK, after throwing the question out to Twitter, it turns out it is a bug, wherein, (as of v2.91.0) GP objects who's origin points are too close to each other can't seem to sort their display and render orders properly.
The temporary fix is to move the offending layer's origin point further out into the world space. This isn't optimal because now it has a "false" world space coordinate, and now you can't really rotate the GP object properly. But it's a solution for now, as long as your layers rotations don't need to animate.


What happens if the mass of a rigidbody doesn't match to it's volume X density? I would like to know what effect does an object have in the rigid body simulations, when the volume x density of the object doesn't match the mass. In most cases the default density is 1.0 in blender!

It's not that the mass doesn't match  density * volume, it's that the density is defined by
mass / volume.
 Needless to say, the default mass of 1 gram makes most objects very much the opposite of "dense" ;)

To calculate physically accurate values for mass based on measured density of real-world materials, try using the Calculate Mass operator in 3D view > Tool Shelf (T) > Physics > Rigid Body Tools:


Blender how to periodically reload file (python) I'm trying to write script that will automatically reload file every few seconds. In order to do that I wrote following plugin:

bl_info = {"name": "[PonyKart] Auto scene update", "category": "Scene"}

import bpy
import threading

DELAY=30
timer=None

def reloader():
    print("Updating")
    bpy.ops.wm.save_reload()

def register():
    print("Timer registered")
    timer=threading.Timer(DELAY,reloader)
    timer.start()

def unregister():
    print("Timer cancelled")
    timer.cancel()

But while it indeed does save file properly, it crashes Blender after doing so (I so i think it crashes when Blender opens file)

Just for reference here is code responsible for save_reload from amaranth plugin:

"""Save and Reload the current blend file"""
bl_idname = "wm.save_reload"
bl_label = "Save & Reload"

def save_reload(self, context, path):
    if not path:
        bpy.ops.wm.save_as_mainfile("INVOKE_AREA")
        return
    bpy.ops.wm.save_mainfile()
    self.report({"INFO"}, "Saved & Reloaded")
    bpy.ops.wm.open_mainfile("EXEC_DEFAULT", filepath=path)

def execute(self, context):
    path = bpy.data.filepath
    self.save_reload(context, path)
    return {"FINISHED"}

I'm trying to allow online collaboration on single file. When person A works on file a.blend and person B on file b.blend and they cross-link each others grouped objects (lets say personA_group and personB_group) then with periodic file reaload users can get updated info on scene. Maybe it's not super realtime, but it works and uses relatively stable Blender mechanics.

I know there's verse and I know it doesn't work. Apart from spending like days trying to set it up after I managed to do it it crashes every few minutes and glitches as hell. It's so extremely unstable on hi-poly meshes that it's unusable. Also requires high bandwidth while method above (if we enable Blender file compression) requires only sending few MB file (usually around 1-2) over network every lets say 60 sec. It's possible to implement such mechanics using samba share. According to initial tests file reload over our samba share takes around 3-4 seconds using awfully slow connection so it's usable.

Quote from the api documentation

  Python threading with Blender only works properly when the threads finish up before the script does

There are two ways i know of to periodically run python code:

Register a handler for scene_update_post:

import bpy
import time

t = [0.0] * 3
t[0] = time.time()
handles = bpy.app.handlers.scene_update_post

@persistent
def on_scene_update(scene):
    t[1] = time.time()
    t[2]+= t[1] - t[0]
    t[0] = t[1]
    print("Time elapsed %f" % t[2])

    if t[2] > 20.0:
        handles.remove(on_scene_update)

handles.append(on_scene_update)

Use a modal operator (in this case the code only runs when the user interacts with blender):

import bpy
import time

class OT_INFO_time_elapsed(bpy.types.Operator):
    bl_idname = "info.time_elapsed"
    bl_label = "Print elapsed time to the console"
    bl_options = set()

    def invoke(self, context, event):
        self.current = time.time()
        self.prev = self.current
        self.elapsed = 0.0
        context.window_manager.modal_handler_add(self)
        return {'RUNNING_MODAL'}

    def modal(self, context, event):
        self.current = time.time()
        self.elapsed += self.current - self.prev
        self.prev = self.current
        print("Time elapsed: %f" % self.elapsed)
        return {'PASS_THROUGH'}

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

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

if __name__ == "__main__":
    register()

Since you intend to reload the file only the handler using the @persistent decorator will work.


How to combine the Bevel shader with displacement and bump textures Edit: the displacement node has been changed in more recent builds, before it was used as a bump effect, now it displaces the geometry by default so you can't reproduce my issue in this post.

I want to combine the new bevel shader with a displacement/bump texture but when I use it the bevel the details are smoothed and becomes invisible:

How can I combine the noise displacement with the bevel shader?

You can use a Bump node to convert the texture into the required Normal to feed into the Bevel node - rather than using the Displacement socket :

The Bump node takes the height information and generates a Normal and the Bevel node can use this Normal instead of overriding the one generated by the Displacement.


Approach to making a 2D graphic 3D? I've been given a logo graphic that is solid black, in 2D.  The best way to describe is to visualize a musical treble clef drawn with a wide-tip pen slanted. There are two important characteristics that I'm trying to figure out how to model using Blender (2.69): 1) The wide-tip pen (calligraphy style) causes the width of the stroke to change continuously, and 2) the stroke crosses over itself twice.  The 3D request is to have the stroke be "raised" in the middle.

I have the outline of the logo traced perfectly with a bezier curve, but I can't figure out how to give it a smooth contour that changes height to match the width of the stroke.

Conceptually I'd like to extrude a bezier circle along the outline, scaling each extrusion to match the width of the stroke.  When done I'd bring a plane in and have it bisect the model between a lower or back half and the upper or front half.

But every way I've tried to extrude a bezier curve results in the curve just moving along with my cursor.  I was hoping to use bezier curves to keep the quality of the curve high until I was done shaping the entire model, then convert the curve to mesh and clean up where the stroke overlaps.

Perhaps a workable approach is to create a circle mesh, extrude it, rotate as needed, and scale it, then repeat all along the outline. However, I absolutely have to avoid faceted curves as the "skin" flows around the stroke.

I am hoping someone more experienced with Blender would have a helpful suggestion or two.

Try this: Extrude your outline to create a "flat topped" shape.

Switch to a side view and create a curve that describes the peak at the "stroke cross" the way you're visualizing.

Extrude your profile view curve along the horizontal axis to create a shape that intersects and contains your logo.

Boolean intersect.


Membrane cone effect? I'd like to achieve something similar to this (the mesh shown in the picture.  I don't need it to be rendered as wireframe.  Just need the mesh):

What I have in mind is that I have a plane, and I subdiv and deform it with a circle using something like the hook modifier.  I tried it and apparently the hook modifier doesn't work as I imagined.

In addition, I'd like to not only let the plane deform by a circle, but also by a custom curve.

You can use the Screw and Decimate modifiers to create this shape and others like it.
First, add a Bezier Curve and shape it like the slope of that volcano-ish shape.

Next, exit Edit Mode and add a Screw modifier. You can leave all of the options as the default for now, though if you want, you can disable the Smooth Shading option. To better view the mesh, switch into Wireframe mode in the viewport.

Next, add a Subdivision Surface modifier and leave the options as default for now.

Technically, this works fine. However, in the image you showed, the topology has two perpendicular edge loops running diagonally, while right now we have edge loops running horizontally and vertically. To fix this, add a Decimate modifier, set the type to Un-Subdivide, and set the Iterations to 1.

Any of the above modifiers and/or curve can be tweaked to get the desired result. The most useful values would probably be the Steps in the Screw modifier, and the Subdivisions in the Subdivision Surface modifier.


Vertex Group X Symmetry paints both weights onto same area I was painting the weight of one of my breast bones in a rigify rig, with vertex groups X symmetry enabled, and when I checked the opposite bone I realized that it was not symmetrica, all the paint I had applied on the left side for the left bone was also on the left side for the right bone.
I tried clearing the vertex groups and starting over, with the same effect.
The mesh is symmetrical and the bones are evenly placed and named DEF-breast.L and DEF-breast.R
Anyone has any clues of what might be going on?

Can you try to use Vertex Groups X Symmetry without Mirror X.


Do ray sensors detect collision bounds? in my game I have a painting behind glass and the glass is in the front side of the "painting case". Like this:

All 3 objects (Mona Lisa, painting case and the glass) have the block property.

I am trying to detect only the painting case with a ray sensor without the x-ray mode. As I was testing it, I activated all the collision bounds of the objects as a box and the result is that the painting case's box covers the painting(Mona Lisa)'s and the glass's surfaces so I always got the painting case with my ray.

My question is : Does the ray detect surfaces or the collision bounds of the objects or an area near the surfaces, or what if none of the above? And if the correct answer is the collision bounds, should I have them "ticked" for this to work? If they are not ticked what does the ray detect(cause it returns the object, but the paint itselft )?
And as a side-question : How does the margin attribute affect the collision bounds exactly? Is it visible somehow in the viewport?

Background

"Rays" are a method to detect if an imaginary line crosses one or more faces. That leads to the question: What faces?

In the BGE there are two kinds of faces:

visible faces (display mesh) and
collision faces (physics mesh).

These face types can but do not need to match. (Often it is better when there are less collision meshes than display meshes for faster processing).

Rays are part of the physics aspect. Therefore faces the physics would collide with are considered for hit detection.

Conclusion

I guess after this (hopefully understandable) explanation, you come to the conclusion that the ray will hit the shape defined by the objects Physics/Collision Bounds/Bounds

If it is set to Box, the physics mesh is a box where the display mesh fits in.
If it is set to convex hull, the physics mesh will span a convex triangle mesh around the display mesh (faster than triangle mesh processing)
if it is set to triangle mesh, the physics mesh will match the display mesh (creates the most processing overhead)

Be aware: quads are broken into two triangles. The triangles might not match the triangles of the display mesh as there are two ways to break a quad.

You can see the current physics mesh by enabling Main menu/Game/Show Physics Visualization (the green mesh when resting otherwise white lines).
Attention: The visualization on a convex hull is not necessarily correct. I guess it is simpler to detect collisions than drawing a convex hull.

Answer

The ray detects the collision bounds your explicitly set up.


Rigging mechanical rods I'm new to rigging process and I can't solve my problem. I'm trying to create armature on this mechanical arm but there are a lot of constraints (for my experience) How can I rotate multiple rods with different pivot?
Thanks a lot if someone can help me

This is a terible explanation. So sorry for that.
My problem is bind block A to the movement of four different rods.
The pivots are yellow dots.


Cycles save as EXR image I'm using Blender Cycles to bake the rendering result into the texture. Yet, I've observed that many parts of the texture is over-saturated, but I could only save the resulting texture image into a png file. Note that my texture image is a 32 bit float, and my rendering setting is set for an EXR output. Yet, I still cannot save the resulting texture as an EXR file instead of PNG.

Thank you!

As noted in the comments:

The filetype in the File Browser context can't be changed in the filename area. It has to be set in the dropdown menu in the Save As Image section.


Which mirror should I pick when downloading Blender? I'm just getting into 3-D artwork and more specifically, Blender. I am currently just trying to download the program, and on the download page it gives me the option to download from "Mirror" links. Do these separate links carry the same files and if not, which should I use?

A mirror is like a backup download link. If one for some reason goes down you can still download the file. They all contain the same file so it doesn't really matter which one you choose.


How make a frame of cloth simulation into a permanent object? I'm using the cloth modifier on a plane, and I was wondering if it is possible to take away the animation, with the default of that object being what it is in a frame of that animation.

I want the cloth to look like that in the beginning of the animation (or without an animation at all, really), where it looks like this:

The cloth button in the physics tab creates a modifier linked to it.

Apply the modifier, your cache will be lost. It will be applied on the current frame.


Models are see through in edit mode this is something that's been bothering me for a while and i've yet to find a solution.

sometimes when i'm editing a model the object is transparent in edit mode, i do not have wire turned on in display and limit selection is off.

Have tried to change face in preferences > theme but no luck. Also tried to change my clipping and it didn't help.

Is this a bug or am i missing something obvious?

Thanks.

Enable this button ("Limit selection to visible")

Also, you must setup more usefull limits here:

The result of "End"/"Start" mast be as low as it possible. Now you have 299621/0.000001=296210000000 - it is very big! Increase the first value and reduce the second, so that the result of the division becomes less than million.


How to constrain edge slide to axis? Trying to do a simple edge slide but it keeps twisting at angles when moved.  I am trying to just move them along its connected path whilst keeping the vertical alignment.

Because the top is curved, it is longer and twists? Any help appreciated, thanks.
no photo as file is deleted to start again. but answer still desired.

This is due to the extra edge you have on the top surface.

You can enable clamp (hold Alt or press C) after sliding the edge far away from it, but it's not perfect. Removing the edge works best, if you don't need it:

To get an edge where you've indicated, you might find it easier to use the knife tool, at least in this case:

Line up the view with the orientation you want the edge to be in (and ensure you're in orthographic view, numpad 5)
Start the knife tool with K
Click the top vertex, enable angle constrain (C)
Click the bottom edge:

Note that there are many ways you can go about doing this, for example vertex snapping combined with axis constraints can solve this and many similar puzzles:

Set the snapping type to Vertex
Grab (G) the top vertex and hold Ctrl to snap it to other vertices.
Grab the bottom vertex, constrain to the the X Y plane (ShiftZ), and hold Ctrl while hovering over the top vertex.


Replicate the light coming from a projector Trying to create projection light to put on a scene like this 1

Click to enlarge.

Example of the light I want to create.

How would I do something like this?

I'm sure you used the search function and found how to make a projector spot lamp in cycles.

With this node setup you only need to add a cube with a Volume Scatter to create the volumetric lighting.

Use a highly saturated image.
Use a high contrast image.
If your image is neither, increase saturation and contrast with material nodes.
Use a low lamp size (0.0), otherwise your image will be blurry.
Use a strong lamp emission intensity (my value: 7000).
Use a small density of the volume scatter material.
Only encase the necessary areas with the volume scatter node to speed up rendering .


Is it possible to make Blender a Y-up world? After learning bits and pieces of Maya, 3DS Max, IMAGINE and XSI I noticed that they all have Y-up worlds with Z being used for depth (naturally).

is there a way to make Blender a Y-up world?
and does anyone know why isnt it Y-up in the first place?

This is unique to Blender and as far as I know, cannot be changed. .

  Blender uses the right hand coordinate system with the Z axis pointing
  upwards. This is common with the coordinate systems used by most
  common 3D CAD packages.

Another reasoning for this is that a common convention for real world applications for engineering and science is that X and Y axes define a flat ground plane while the Z axis defines up and down

However, if you work between these software that you mention above, one way you could maintain consistency is to export the object(s) as a .obj or .fbx (or any other similar format, most if not all exporters in Blender have this option) to the other application with the 'up' axis being Z etc.


How to add some vertices from another object to the vertex object of one object? I have a sailboat. I made a vertex group on the sail to keep it pinned to the mast, but the mast is a different object. How can I add the vertices on the mast to the vertex group to pin them together?

https://i.gyazo.com/db001a70c7d52ce8288159a9dd0efb08.png

Select the 2 groups and press ctrl + j.After you join them click on this set it to vertices after you do that join them and then click on remove doubles so they will pin together.Hope this helps and that it's what you meant. :D


How to ensure there are no holes in my geometry? I have been given a geometry like the one in the picture but find that although it is a building, there appears to be holes in the façade...

Is there any way of making sure there are no holes (see below) in it apart from looking at it very carefully and making faces?

you can use the 3d print toolBox :

press Ctrl+Alt+U
go to Addons and enable 3d print toolBox and save the settings

in the 3D view switch to Edit mode and select your mesh
use the Non-Manifold operator ( press T to show the tools panel )


Sculpting Performance Workflow I'm new to Blender and using it to sculpt a character. I have been using Dyntopo for the majority of the mesh up to the point where i got to maybe 1 mio vertices, where I have started to subdivide the mesh using dyntopo whenever needed and switching back to non-dyntopo for saving hardware resource.

Now at 1.5 mio verts I can't use the clay brush anymore (lag) which is pretty much my bread and butter. Dyntopo is disabled and it is not only on high polygon parts of the mesh but also the very low polygon parts, that I now need to work on. Some other tools still work (grab, smooth and even the standard draw).

Are there any suggestions to workflow other than (in my case) cutting off the head, working on it separately and reuniting when done? Tried the Alt-B stuff, sadly not doing anything.

Sorry for long post, glad for any tips and help!

Cheers :)

CGBoost has some good vids on the topic. Also, try the sculptmode features branch. This has an excellent volumetric remesher that can convert your dyntopo object to quads for you to use the faster multires modifier with. This branch of Blender has lots of improvements over the ordinary Blender 2.8, but it's not official so be warned there may be bugs. Back up files, keep the old Blender around when you update just in case, etc., etc.
You could use the free and open source tool instant meshes for quad remeshing, too.

It's generally bad practice to have uneven detail density on a sculpture- you should get the low-frequency details right before the high-frequency details. But anyways, in your situation it's probably well advised to cut the mesh into pieces, then fill the holes, sculpt, and use Bool Tools to combine them later.

Filling the holes is pretty easy, enter edit mode once you've separated a part and go to mesh>cleanup>fill holes (or search with F3), and set the 'number of sides' to the max (100). If it fails to fill a hole (too many sides), try using select>select by trait> non-manifold, (in edge select mode, it won't show up if you're selecting faces) but be warned that it might select more than just the edges you want to fill. Once you have removed any unnecessary edges from the selection, press f to fill. I usually ctrl-f>Poke Face and then do some dyntopo sculpts on it to even out the triangles. Then you can use remesh or instant meshes to turn each part into quads, and multires.


2.81 Render an armature like OpenGL in 2.79 Is it possible to render armature bones in 2.81, like it was in 2.79 with OpenGL?

3D Space View Menu

In the View menu of the 3d view

which calls operator

bpy.ops.render.opengl(...)


Blender 2.8 can't find my intel gpu I was following a tutorial on YouTube when I realized that in render mode GPU is clickable but does not work. I tried doing what i saw online but couldn't find my GPU in the system preference. The information about my PC is: Intel(R) Core(TM) i3-5005U CPU @ 2.00GHZ. And the GPU i'm using is Intel(R) HD Graphics 5500 driver with OpenCl 2.0 and OpenGl 4.4.

Unfortunately your integrated graphics card doesn't fulfill the requirements for GPU rendering in Blender 2.8x. You would either need a

Nvidia graphics card with CUDA compute capability 3.0 or higher
AMD graphics card from GCN second generation or later

  CUDA

  CUDA requires graphics cards with compute capability 3.0 and higher. To make sure your GPU is supported, see the list of Nvidia graphics cards with the compute capabilities and supported graphics cards. CUDA GPU rendering is supported on Windows, macOS, and Linux.

  AMD

  OpenCL is supported for GPU rendering with AMD graphics cards. Blender supports graphics cards with GCN generation 2 and above. To make sure your GPU is supported, see the list of GCN generations with the GCN generation and supported graphics cards.

  AMD OpenCL GPU rendering is supported on Windows and Linux, but not on macOS.


Motion Tracking: status of tracked pattern in a python variable (tracked vs. not tracked) Is it possible to have the status of a tracked pattern stored in a python variable (per frame)? For example, a pattern is successfully tracked for some frames, then the pattern is hidden behind something, afterward it is visible and successfully tracked again. Would be great to use the status of "actually tracked" vs. "pattern lost" in my python script.

As far as I am aware, this is not possible. You could probably edit the C source code to output these variables for use in your script if you wanted to though.

You can view the Python API section of this page to make sure if you want.


Is there any way to plotting in 3D viewer without using object and mesh? I'm trying to use Blender as assets creation tool for my own stuff. I added width and height custom properties on objects, and I want the bounding box to be shown in the 3D view.

Currently, I achieved this by adding non-selectable objects and meshes, but they would be still on the Outliner view, which may confuse my users. So is there any way to draw lines in the 3D view without using meshes?

I assume you refer to axis-aligned bounding boxes (AABB), because regular bounding boxes are a built-in feature.

You can use draw handlers to draw in supported spaces with OpenGL (bgl module). draw_handler_add() is not documented, but you can find examples in Text Editor, Templates menu.

Here's a modified version of my bound box draw handler:

import bpy
import bgl
from mathutils import Vector

def draw_poll(ob):
    return ob is not None and ob.type in ('MESH', 'CURVE', 'SURFACE', 'META', 'FONT')

def draw_callback_view(self, context):

    for ob in context.selected_objects:
        if not draw_poll(ob):
            return

        mat = ob.matrix_world

        # 50% alpha, 2 pixel width line
        bgl.glEnable(bgl.GL_BLEND)
        bgl.glColor4f(1.0, 0.0, 0.0, 0.5)
        bgl.glLineWidth(2)

        bbox = [mat * Vector(b) for b in ob.bound_box]

        min_x = min(b.x for b in bbox)
        max_x = max(b.x for b in bbox)
        min_y = min(b.y for b in bbox)
        max_y = max(b.y for b in bbox)
        min_z = min(b.z for b in bbox)
        max_z = max(b.z for b in bbox)

        if ob == context.object:
            bgl.glColor4f(*self._color1)
        else:
            bgl.glColor4f(*self._color2)

        bgl.glBegin(bgl.GL_LINE_STRIP)
        bgl.glVertex3f(min_x, min_y, min_z)
        bgl.glVertex3f(min_x, max_y, min_z)
        bgl.glVertex3f(max_x, max_y, min_z)
        bgl.glVertex3f(max_x, min_y, min_z)
        bgl.glVertex3f(min_x, min_y, min_z)
        bgl.glVertex3f(min_x, min_y, max_z)
        bgl.glVertex3f(min_x, max_y, max_z)
        bgl.glVertex3f(max_x, max_y, max_z)
        bgl.glVertex3f(max_x, min_y, max_z)
        bgl.glVertex3f(min_x, min_y, max_z)
        bgl.glEnd()

        bgl.glBegin(bgl.GL_LINES)
        bgl.glVertex3f(max_x, min_y, min_z)
        bgl.glVertex3f(max_x, min_y, max_z)
        bgl.glVertex3f(min_x, max_y, min_z)
        bgl.glVertex3f(min_x, max_y, max_z)
        bgl.glVertex3f(max_x, max_y, min_z)
        bgl.glVertex3f(max_x, max_y, max_z)
        bgl.glEnd()

    # restore opengl defaults
    bgl.glLineWidth(1)
    bgl.glDisable(bgl.GL_BLEND)
    bgl.glColor4f(0.0, 0.0, 0.0, 1.0)

class ModalDrawOperator(bpy.types.Operator):
    """Draw a line with the mouse"""
    bl_idname = "view3d.modal_operator"
    bl_label = "Simple Modal View3D Operator"

    def modal(self, context, event):
        context.area.tag_redraw()

        if event.type in {'ESC'}:
            bpy.types.SpaceView3D.draw_handler_remove(self._handle, 'WINDOW')
            self._handle = None
            return {'CANCELLED'}

        return {'PASS_THROUGH'}

    def invoke(self, context, event):
        if context.area.type == 'VIEW_3D':
            # the arguments we pass the the callback
            args = (self, context)
            # Add the region OpenGL drawing callback
            # draw in view space with 'POST_VIEW' and 'PRE_VIEW'
            theme = context.user_preferences.themes[0]
            self._handle = bpy.types.SpaceView3D.draw_handler_add(draw_callback_view, args, 'WINDOW', 'POST_VIEW')
            self._color1 = theme.view_3d.object_active[:] + (0.5,)
            self._color2 = theme.view_3d.object_selected[:] + (0.5,)

            context.window_manager.modal_handler_add(self)
            return {'RUNNING_MODAL'}
        else:
            self.report({'WARNING'}, "View3D not found, cannot run operator")
            return {'CANCELLED'}

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

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

if __name__ == "__main__":
    register()

    for area in bpy.context.screen.areas:
        if area.type == 'VIEW_3D':
            context = bpy.context.copy()
            context['area'] = area
            bpy.ops.view3d.modal_operator(context, 'INVOKE_DEFAULT')
            break


foreach_get/set a mesh vertex group data? I'm searching how to batch set/get vertex group data inside blender.
using foreach_get() foreach_set() function from bpy.data.objects[0].data.vertices & numpy for a fast calculation.
but it seem that those two function only accept really simple properties? and batch actions on vertex_groups/vcol are not possible in blender ?
this code below is throwing me errors
vertices[...]' elements have no attribute 'groups[0].weight'
but this error message is False the elements does have this attribute !!

note that this error message also occur with getattr() and setattr()
import bpy
import numpy as np

def print_weight(o, vg_name, use_modifiers=True):

    #eval object modifiers to mesh?
    if use_modifiers:
          depsgraph = bpy.context.evaluated_depsgraph_get()
          eo = o.evaluated_get(depsgraph)
          ob = eo.to_mesh(preserve_all_data_layers=True, depsgraph=depsgraph)
    else: ob = o.data

    """
    #slow method
    weight_values = []
    for v in ob.vertices:
        weight_values.append( v.groups[o.vertex_groups[vg_name].index].weight )
    """
    #trying fast batch_get method, unsuccessful..
    weight_values = np.zeros((len(ob.vertices) * 3), dtype=np.float, )
    i = o.vertex_groups[vg_name].index
    ob.vertices.foreach_get(f"groups[{i}].weight", weight_values, )

    print(weight_values)
    return

print_weight(bpy.context.object,"Group")

I'm not entirely sure if this already is possible in some way but I made a patch last year that hasn't been reviewed yet to read/write vertex weights in batches. It speeds it up by around a factor of 8x. If you really really need it (and only on your computer) you can download and compile yourself.
https://developer.blender.org/D6227


Existing Frame Trimming Capabilities of Actions I am working on a direct connection of a Kinect2 sensor to Blender.  It is progressing, but I find that there are always going to be unwanted frames at the beginning and end of a capture session, especially if you are doing this by yourself.

Do I need to write operations to trim (either delete & shift left, or drop to the right)?  I do not want to re-invent the wheel, but at the same time some multi-step keyboard / rodent operation is not going to cut it for me.

There is an 'Animation: Motion Capture Tools' add-on.  Activating did not seem to do anything that I could find.  The doc link was an empty page.  Is this or maybe something new in 2.8 which supports this?

I took the lack of responses to mean that there was no really clean way to do this, so no re-invention would be done.  So just did it.  Made as a simple class in a separate file for simplicity, but also means I can just cut & paste.

from mathutils import Quaternion, Vector, Euler
import bpy
#===============================================================================
class AnimationTrimming():

    def __init__(self, armature):
        self.armature = armature
        self.action = armature.animation_data.action
        self.first = int(self.action.frame_range[0])
        self.last  = int(self.action.frame_range[1])
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#                         operation entry points
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def deleteAndShift(self):
        # drop from the front up to, but not including, the current frame
        firstGoodFrame = bpy.context.scene.frame_current
        self.dropRange(self.first, firstGoodFrame)

        # shift remaining keys on a bone, property basis, to the left
        for bone in self.armature.pose.bones:
            rotProperty = 'rotation_quaternion' if bone.rotation_mode == 'QUATERNION' else 'rotation_euler'
            self.shiftLeft(bone, rotProperty, firstGoodFrame)
            if self.hasLocationKeys(bone):
                self.shiftLeft(bone, 'location', firstGoodFrame)

        # dope sheet not reflecting deletions immediately, so do "something"
        bpy.context.scene.frame_set(self.first)

    def dropToRight(self):
        # drop all frames for the bones after the current frame
        lastGoodFrame = bpy.context.scene.frame_current
        self.dropRange(lastGoodFrame + 1, self.last + 1)

        # dope sheet not reflecting deletions immediately, so do "something"
        bpy.context.scene.frame_set(bpy.context.scene.frame_current)
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#                       below only called internally
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def dropRange(self, first, lastNotIncluded):
        bpy.ops.object.mode_set(mode='POSE')
        for bone in self.armature.pose.bones:
            for frameNum in range(first, lastNotIncluded):
                # does not error when location property missing, so just do all possiblities
                rotProperty = 'rotation_quaternion' if bone.rotation_mode == 'QUATERNION' else 'rotation_euler'
                bone.keyframe_delete(rotProperty, -1, frameNum)
                bone.keyframe_delete('location' , -1, frameNum)

    def shiftLeft(self, bone, property, firstGoodFrame):
        bpy.ops.object.mode_set(mode='POSE')
        newFrameNum = self.first

        # for each kept frame shift it, then delete the old one
        for oldFrameNum in range(firstGoodFrame, self.last + 1):
            # find the value of property of the bone at a given frame & set the bone to it
            values = self.findKeyValues(bone, property, oldFrameNum)
            if len(values) == 0: continue

            if property == 'rotation_quaternion':
                bone.rotation_quaternion = Quaternion(values)
            elif property == 'rotation_euler':
                bone.rotation_euler = Euler(values)
            elif property == 'location':
                bone.location = Vector(values)

            # add a new keyframe
            bone.keyframe_insert(property, frame = newFrameNum, group = bone.name)
            newFrameNum += 1

            # delete the old key frame
            bone.keyframe_delete(property, -1, oldFrameNum)

    # a given key only contains a single float, so return all found for a given property / frame number
    def findKeyValues(self, bone, property, frameNum):
        ret = []
        dataPath = 'pose.bones["' + bone.name + '"].' + property
        for c in self.action.fcurves:
            if c.data_path == dataPath:
                ret.append(c.evaluate(frameNum))

        return ret

    def hasLocationKeys(self, bone):
        dataPath = 'pose.bones["' + bone.name + '"].location'

        for c in self.action.fcurves:
            if c.data_path == dataPath:
                return True

        return False


Extra Keyboard Shortcuts for Porportional Editing? It's nice to enable/disable proportional editing with O, but I'd like to switch between falloff settings with a keyboard shortcut. If I open the the menu and right click on an option, the "Assign Shortcut" option is there, but blender doesn't seem to be able to differentiate between the different modes if I assign different shortcuts:

Is there any way to get it to work?

Will the falloff pie menu meet your requirement?
It should be ShiftO by default:

You can search the shortcut in preference with keyword falloff:


Custom hard edges in Blender Currently this is my method to get nice hard and soft shaded edges in Blender.
I "shade smooth the whole object. I then go ti it's object data, activate Auto Smooth and set a desired angle." This works for most cases but sometimes I want specific control over how some of my edges shade. Can I select a few edges and mark them to be hard?
Will that information be transfered seamlessly through OBJ and FBX exports?

You can select any edge you want to be hard and press Ctrl+E and choose 'Mark Sharp'.

In the example below I have smooth shaded a cube but set the top edge loop to be sharp:

(The result of this is the same as the result from the next technique mentioned, shown in the image below the next few paragraphs)

If you use Autosmooth (as you mentioned) you can leave it like that. If you didn't want to use Autosmooth you could add an Edge Split modifier to handle the smoothing angles.

Below, I have added an Edge Split modifier, unticked the 'Edge Angle' option and ticked the 'Sharp Edges' box:

If you leave the 'Edge Angle' option ticked you can use a combination of the two methods.

As for which formats support sharp edges, according to the 2.69 release notes, both FBX and OBJ formats now support 'Split vertex normals' for exporting sharp edges. The OBJ exporter calls this option 'Smooth Groups'.


How to add the same texture to every face individually I want to make a ground and add a grass texture to every single face(I already subdivided it). If i apply the texture it goes over the whole plain but I want the texture for every face

Either uv map individual parts to tiles within your texture or create several materials, select your faces and then click the "assign" button under the objects material list.

Uv mapping :

or

Assign :


Join all faces in a mesh together at once I imported a model from somewhere and all of the faces on it are separated from each other. It's not noticeable when just using the armature, but I'm trying to do a cloth simulation for part of it so it all just falls apart. Is there a way to join everything together at the edges? If there is, how would I do it? Thanks!

In Edit Mode select all, Merge by Distance, and keep increasing the merge distance from the default value until all the intersection points merge.


How to make a grainy material in Blender Cycles? How can I make a grainy/noisy looking material in Blender Cycles?  I want to have a node set up where I can create a grainy material of my choice of color, with a noise variable so that I change the level of grain shown.

Use a noise texture. You can change the scale and detail. Hooking it up to a Color Ramp (or curve, or gamma or Bright/Contrast) node will allow you to set the contrast

You can set the color directly.

Or use the texture to control the mix of other colors.

Or different shaders.

Or you can use it to combine with other textures and types of noise, as described in this answer: How do I make a Decal look worn?


How to Use D-Noise in the Compositor? Basically the question.
Usually, I let Blender save some additional render passes (mostly ID masks) together with my main rendering for later, in-depth compositing. In the compositor, I pick the image, environment and all my other passes and feed them into a File Output node.

Today I wanted to try the D-Noise add-on (for it got recommended to me), and it worked well in the rendering window itself. However, the saved files were all noisy, which means that D-Noise doesn't seem to recognize render passes being fed through the compositor by default. Is there any way to connect the "denoised image" to a File Output node in the compositor (manually saving won't be a solution of course)?

I think I've worked it out: in the Compositor, remove the Render Layers node and add an Image Node and a Denoise Node like this:

Now open the first image in your sequence, tell the Image Node that this is indeed an Image Seqeunce and choose the number of frames it has.

Now you can render as usual and see the result, either as a single image or as an animation. Specify the number of frames to be rendered and your output path as if this was a 3D scene.

Note that the results of applying D-NOISE this way are far inferior to applying it during a render. I guess OptiX has a lot more information to work with when the 3D scene is loaded, as opposed to seeing only the 2D image. Here's a comparison between D-NOISE when a applied with a render, and after the fact. Notice the loss of detail in the second image.

In regards to D-NOISE not kicking in: try starting Blender as an Administrator (if it's a Windows system). I've had the same issue with some of my nodes, when run as Administrator D-NOISE behaves fine.

Hope this helps!


Problems in sculpting mode I am new to blender and have been following Blender Guru's donut tutorial. When I go in sculpting mode for the icing I always end up getting getting holes for the icing. But When I select the donut I have no problems. I have applied the solidify modifier and the subdivision. I have played with the settings. Nothing is working. The donut looks fine when I am on layout and edit mode. I can sculpt but on it but the wholes wont go away.

I've had a similar problem before. The solution for me was to use Alt + M  to clear any masks that might have been applied to the model by applying the modifier.
Not sure why it happens, but I think it has something to do with the Subsurf modifier.


Why is Blender selecting the object furthest from the viewport camera in object mode? If I have two objects or more overlapping, RMB will select whichever is furthest away in the overlap. This seems counterintuitive. Is this how selection operates by default or is this a setting I've turned on/bug??

For anyone encountering this problem in 2.8x+, enabling Depth Picking in Preference > Viewport > Selection solves the problem


Why does a face on one side of the cube not go with the vertex? This has probably been asked, but I am not good with the modeling lingo yet so I have no Idea how to search this.
Why does a face on one side of the cube not go with the vertex? Its fine on the one side but on the other the face gets outside the edge.

Can someone explain or link why this happens please.

This is happening because of the way polygons are displayed. In order for the geometry to be displayed it needs to be triangulated as video cards draw only triangles behind the scenes(math is easier this way and pretty much all computer graphics currently are built on that). There are two ways to triangulate the side faces in your example:

What we are observing here is automatic triangulation algorithm failing to guess what kind of triangulation is desired in this case.

Errors like this will happen from time to time if you have concave n-gons. The best thing to do here is to get used to not having them in your geometry.

You can solve the issue manually connecting vertices of any concave geometry to make them convex as you can see in the GIF. If it happens that you need an automatic way to fix these issues you can also go to the Mesh menu in the header of any 3D View panel and choose Clean up -> Split Concave Faces while you have everything selected in edit mode:


Object seems rotated altough it isn't? I have encountered a weird issue; Blender shows that both of my objects have 0 on all rotation grids but when I look at them closely I can see that one of them is rotated, I haven't changed any of its rotation settings when I made both of these objects so default for both of them should be 0.

Visualization:

That could be due to the object's origin is far off (when you move/edit the size in edit mode and not in object mode, the origin stays in the same place and can cause some artifacts like this), you can always take the vertices that don't align, press G to grab them, then Z to pull them only on the Z axis, now you can snap them on the vertices on the other side:


Changing Centre of 3D Viewport I'm sorry if this is a stupid question; I am very new to the program.

All the basic movement controls (Orbiting, zooming, strafing) seem to be based around the centre of the viewport. I am trying to work with something fairly far away from this point, and it is very difficult to control. All movement is very sensitive (do you know what I mean?). Is there any way to change this point? Or is there any other way to circumvent this problem? Sorry again if the answer is something obvious.

Select an object by LMB over it and then press numpad period to focus on it.

But if you want to focus on an emtpy space and pivot around it, LMB to move the 3D cursor to that spot then  Alt home


How to bevel edges next to ngons? I can't get an acceptable bevel, is there any way to fix it?

You need to have an inner edge loop on the top side of the edge in order for the bevel tool to work properly.

You either need to:

Select all the vertical side faces and extrude outward along their normals

OR

Delete some of the top faces that connect to the corner
edge. Then you can extrude the corner edge in slightly to achieve
the inner edge loop.


How do I get imported objects to show in view? (.wrl files) I'm new to Blender.  I have imported a large (file size 259 mb) file into Blender (2.7.1).  The files are all listed and selectable from the Scene tab. However, I can't see the objects.  I feel like they are perhaps too large (virtual physical size) and therefore out of view.  The file is a Solid Works 2014 export. Is there a way to change the field of view or another thought on getting them to show?

Select all objects in the outliner or other means. Press the home key ... the one NOT on the numeric keypad. (there are two home keys on many full size keyboards)
After that is successful. Consider press numeric keypad 0 a couple of times to switch bebtween

User View and Camera View.
Press Control Alt (Numpad) 0 to align the camera view with the user view.


Blender Downloads and the information required to Where can I download a copy of the 'free' (and I use that word loosely in relation to Blender) Blender program without having to give my inside leg measurements, or signing up for a daily collection of spam emails? I don't want the world and everyone else to help me with a few 3d models that I want to use myself. I don't want to receive a 'you may be interested in this...' offer of add-ons or plans for a house, of horse. I just want the program because Daz3D says that I 'HAVE' to use this program. I even have to give my email address so that I can read any answers to this question, presumably because I'm too stupid to re-visit these pages knowing that someone has answered. Oh and my inside leg is 32".

You can download Blender from the official website www.blender.org. There's absolutely no sign-up required. Blender is truly free software, since it is open source and GPL licensed. More information about Blender and the Blender Foundation can be found on the About page.

The following versions of Blender can be downloaded:

The current stable release
Experimental daily builds of versions currently in development
All past releases of Blender

Please check that your hardware fulfills the minimum requirements for running the current version of Blender. If your hardware is unsupported you may have to use an older version of Blender with lower requirements.


Export model transformation matrix I need to know if there is a add-on or a built in function that could export (all)  objects model transformation matrix (the matrix that contains the models scaling, rotation and translation information)in one code.

Thanks!

From my quick and superficial testing both 3Ds and Obj seem to apply transformations and discard that information. DXF discards it too.

Collada DAE however keeps transformation matrices non applied, and even keeps instancing information. That is if one object were linked to the other using the same object data that relationship is maintained.

FBX also maintains both transformation matrices and instance relationships


Clothing intersecting with skin I'm having trouble with getting my mesh deformation to work how I'd like it to for clothing. I would assume that this works fine; since it's effectively the same mesh + same weights, but unfortunately it seems to deform differently from the body where the vertices of the sock & body don't exactly line up. (Even after Data Transfer!)
The issue is that I'm trying to make every part of my clothing modular since it's for a game; however I'm struggling to grasp how I'd do that when it comes to two intersecting pieces of clothing. As an example; wearing the sock in my picture with pants on. My first thought when doing this is to just simply remove the mesh underneath, but then I realize that if I do that; I'd need to remove the sock too since that would have the same deformation issue. Meaning I'd need to make a mesh of every single combination of clothing; which sounds like that's probably the wrong way to approach this.
If anyone has dealt with this issue before; I'd really appreciate some advice on where to go from where I currently am. Thank you!

It seems like identical weights would be right-- but unfortunately, they're not, because how a bone deforms a mesh isn't just a function of the weights, but of the distance from the bone to each vertex as well.  And your sock is more distant from the bone than your leg.  That requires weights that are more diffuse the more distant the mesh is.
There are a couple of ways to get those more diffuse weights.  If you weighted your leg via autoweights, the slightly more diffuse weights you want can also be gotten via autoweights, just via autoweights on a slightly larger model.  Duplicate your model, alt s shrink/fatten until it's about the same size as your sock, and then reparent it to your mesh with autoweights.  Take a second to compare weights-- notice how the bigger mesh has different weights than the smaller mesh?  Weights that are smoother, more spread out.  You can use this mesh as the target of a data transfer for your sock to transfer the more diffuse weights onto the sock.
If you weren't using autoweights, you can use a smooth operation in weight paint mode to make your sock's existing weights more diffuse.  Set it to affect all groups and give it a positive expand/contract value, then tune the other parameters to eye.
However, the truth is that you're best off hiding mesh rather than fiddling too hard with weights.  That's especially true when you're talking about a game engine, where you probably have a limited number of weights per vertex.  In that case, think about breaking your sock (and leg) into multiple pieces: those that might be hidden by pants, and those that won't be hidden by pants.  It's still modular, it just requires fiddling with a few more parts and combinations.  Or, consider giving the meshes shapekeys that shrink parts of the mesh, to be used only in certain combinations of clothing.
In Blender, there are other techniques you can use as well, like post-armature displacement or shrinkwrap.


Rigid Body Constraint: how to prevent stretching I'm trying to use Rigid Body Constraints (type=Fixed) in Blender 2.81 to connect an assembly of rigid and cloth components.  a

crinoline cage
By Crinoline, 1860-1870. Jacoba de Jonge Collection in MoMu - Fashion Museum Province of Antwerp, www.momu.be / Photo by Hugo Maertens, Bruges, CC BY-SA 3.0, Link

that will move realistically (e.g. swaying when person walks). When I run the animation, the RBCs stretch infinitely, defeating my purpose. If they didn't stretch, I think the assembly would work ok, everything else seems fine. Is there a solution for this?
Update: here's a simplified example to illustrate this issue.

I had no enough time to test, but it could work ... (I'm not sure how much realistic it is)

create simple topo (lowpoly) skirt with Cloth sim
top loop assign as vertex group for Pinning

create rings
manually parent each as 3point vertex


My Image Texture is not Affecting Geometry Node Point Distribute I made a simple, spotlight type of image texture but when I try to apply it to point distribute in geometry nodes it doesn't affect the distribution and everything is covered.

maybe you just expect "too much". It might be that your cube is just too big and your density is too low so that you really can "see" the influence of your texture. As you can see i tried out a really sharp texture and i had to make the cube really small and put the density really hight to "see" the effect at all.


Object attribute error when assigning material I am new to blender and having problem with import

I created 4 cubes and exported them into a .obj file.
Then I import the obj file and added texture to one of the cube

import bpy
full_path_to_file = "C:\\Users\\xyz\\Documents\\test.obj"
bpy.ops.import_scene.obj(filepath=full_path_to_file)
object = bpy.data.objects['cube1_Cube_Cube.005']
object.select = True
selectedObject = bpy.context.selected_objects
mat = bpy.data.materials.new('pixelColor')
mat.diffuse_color = (1.0,0.0,1.0)
mat.diffuse_shader = 'LAMBERT'
mat.diffuse_intensity = 1.0
bpy.context.object.data.materials.append(mat)

But this shows error in the last line:

  AttributeError: 'NoneType' object has no attribute 'data'

This error does not occur if I create the object in the file itself(that is if I don't import)

In the example given, you're expecting an active object, (bpy.context.object) when there are none.

Its possible to have selected objects, but nothing active.

In this case you don't even need to have an active object. You can assign the material directly to the object, there is no need to selecting it before:

# create the material
mat = bpy.data.materials.new('MaterialName')
mat.diffuse_color = (1.0,0.0,1.0)
mat.diffuse_shader = 'LAMBERT'
mat.diffuse_intensity = 1.0

# get the object
obj = bpy.data.objects['Cube']

# get the material
mat = bpy.data.materials['MaterialName']

# assign material to object
obj.data.materials.append(mat)

# or overwrite an existing material slot via index operator
obj.data.materials[0] = mat


How to get a bone’s Pose Mode transform matrix With my script I want to export these values for bones:

I have tried using PoseBone.matrix_basis but I got incorrect values. For instance the expected quaternion rotation is (1,0,0,0) after export it is (0,707107, -0,707107, -0,707107, -0,707107). Can someone help me out please ?

The PoseBone.matrix_basis attribute works as expected. Use the matrix's decompose method to extract the quaternion rotation.

To test the script, open up a new file, delete everything and create an armature.

import bpy

for b in bpy.context.scene.objects.active.pose.bones:
    # use the decompose method
    loc, rot, sca = b.matrix_basis.decompose()
    # or use the to_quaternion method
    rot = b.matrix_basis.to_quaternion()

    print(rot)

Result: <Quaternion <w=1.0000, x=0.0000, y=0.0000, z=0.0000>>

If you want to use the matrix for other things you can easily make a copy with the matrix.copy() method.


run a text block from command line using this command blender --help to get more help about Blender command line options, you can find this snippet

  --python-text <name>
      Run the given Python script text block

So if I'm not wrong, this means that I can specify the name of text block which I would like to auto run at Blender start.

So my final command will look like this:
blender --python-text my_text_block_name scene.blend

Where "my_text_block_name" is the name of text block I wrote and save right in my blend file.

But, when I run this command, I have the following error.

  Error: text block not found my_text_block_name.

What I'm doing wrong?

EDIT:
I'm using the latest official version of Blender for linux 64bit available at this moment (2.76)

Unlike most command line programs the order of the options make a difference. The thing to remember is that blender executes each option in the order they are given, almost like a mini script.

The command you used blender --python-text my_text_block_name scene.blend says run this text block then open this file.

To get your example working you want to open the blend file then execute the text block - blender scene.blend --python-text my_text_block_name

More details about Blender command
and some example of how order works.


Rig moves when switching action in action editor I can't seem to get around this problem.

I have multiple animations in the same file and when I switch actions in the action editor the rig moves, but gets back into place as soon as I edit anything.

I wouldn't think to much of it, but when i export the animation in Unreal my frame 0 doesn't represent the actual frame 0 I have in blender for that animation and seems affected by that same weird bug.

Frame 0 in blender:

Frame 0 after switching action:

frame 0 in Unreal 4

Alright so I tried fixing this issue by myself and found a work around, I had to delete all other actions from the file and now on export there was not this weird influence on the first frame. Not the most convenient fix, but a fix nonetheless :P.


Making a realistic dust trail I am trying to simulate the smoke/dust from a scene from the latest Star-Wars trailer ("the rise of skywalker"): see attached trailer segment.

I also included a gif that shows what I got so far. The set-up is rather easy: I have an smoke emitter that is animated within a large domain. In front of the emitter I parented a wind forcefield to emulate the effect seen in the teaser. See also attached .blend.
 What bothers me the most in my example is the returning pattern that forms the smoke and clearly tells the viewer this is CGI. I tried using a noise texture as instructed in this tutorial (from 1:05 - 2:08) but my pc(i7-2600k, Geforce GTX 1070) crashed when I tried to play the animation. In the video he states you need to tweak alot of settings (or have a good knowledge) of smoke to make it work which I don't have right now..

It's not my goal to copy the scene 1:1 from the trailer but make a believable smoke trail which can be done in blender (2.79 or 2.8).
Maybe someone can offer some suggestions in order to make the dust more believable and break up the smoke pattern?

It's amazingly easy to achieve.

Create emitter with Real World Scale - this is important, as Smoke sim can differ based on scale. Mine has ~56x7m. Apply Scale!
Add to it Quick Smoke - F3 > Quick Smoke.
Scale Domain in Edit Mode to make it as big as you need.
In Domain settings I've changed only Resolution - 192, Temp. Diff. - -0.04, Adaptive Domain - checked and High Resolution - checked + Resolution Division > 2.

Collision Object. This is most important thing to do here. Set it as Smoke > Collision and Animated.

Now you have 3 options how to interact with smoke.

Allow object to "sink" into smoke.
Attach to object "plow" to raise smoke and not be visible in Render.
Attach Force Field to object to "suck" smoke from the ground.

This is it for the Smoke sim. You can cover smoke after baking by ground material, it will only show after being forced up.

Also to produce something as realistic as from your reference smoke is not enough. You can add some Particles for bigger parts from the ground (not necessary), motion blur, colors for the volume and probably that's it.


What is the correct measurement systems for animation? In animation, which scale or measure system should I use? For example, If I model an entire room and plan on having a character moving about in it, should all the assets and character be done to real world values or should I use Blender units?

I'm asking this because sometimes when I make a character and scale it down to it's "real size", I sometimes have issues with simulations or hair particles because of the character being to small in the scene. Like having to use very small values to tweak values(example:o.oo5 in particle hair uniform slider instead of 0.5), which sometimes can make tweaking very finicky.

So I wanted to know which is way that is most commonly used.

The best way is using the reference unit. for each animation you should have a proper reference footage or etc.

For example you want to create walk cycle. you start to walk in your room and observe Walking variables by taking a footage from it. when you want to use that footage, you should use a measurement system With which you understand your footage. for this example metric unit maybe is the best choice.

But when you want to simulate a animation in big scale, you pick a proper ratio of a small unit that can describe the actual scale. for example the space between moon and earth is 363,104 kilometers. you can use metric unit and set it 3.63 meter to get the best result.


Blender wireframe without backface issues Hi I am simply trying to remove the backfaces from my wireframe. The left one has a wireframe material on it. there is my question: How could i integrate an geometry node with "backfacing" as output so that the backfacing side is ignored by the camera?
The right one has a wireframe modifier on it with unchecked "keep original" and a material index of 1.
It has two materials. First one for solids is just transparent. Second one is simply a colour. There as well I wanted to put a geometry info node on the solid onces, so that I can see only the front and make that one transparent.
But I seem to not get it right in this instance, while i could have sworn it was a super easy thing to do.
Could anyone point me to the right way? Better solution? Wireframe with backface culling for rendering. ....
Thanks a lot.

For Eevee:
Your node setup is perfect. Make sure to go to material settings and tick "Backface Culling". And right below that check box is Blend Mode. For Eevee transparency to work, you must change Blend Mode from "Opaque" to "Alpha Blend" or something else.

If you want to do this in Cycles, you will need this setup:


Copy rotation is twisting bone I'm trying to implement a basic foot/leg IK system. I've added the IK constraint and that works fine, and I'm now trying to add a Copy Rotation constraint to my foot so I can control rotation via the IK bone. I'm noticing that when it's in World Space, the foot will twist upward unnaturally.

It works correctly in Local Space, but I'd still like to know why World Space isn't working, and fix it if I can.

It's not working in world space because the target of your copy rotation constraint has a different world space orientation that the foot that is copying that rotation.  Your IK bone is pointed at the ceiling, while your foot bone is pointed at the toe.

If you want to use world space copy rotation, give each bone the exact same orientation.  The easiest way to do this is to make your IK bone a duplicate of the foot bone (but with the parent cleared of course.)


Start an animation nodes TimeCode Generator at a specific point Does anyone know how I would START a timer at a specific point?  I will need to use the timer between many scenes, and I need it to pick up where the previous scene left off....

Here's what my timer looks like:

It is in days:hours:seconds:milliseconds format. In the next shot, I would need it to START at 00:00:03:15.  Here is the uber-simplistic node setup:

Any suggestions?

Adding n to the time will offset the time n number of frames:


How can I create a dynamic HUD bar in the GE? I 've been taking a break and got rusty so I need your help.

I have an integer property with a random first value.I want to somehow connect it to the length of a plane, so that when the integer property decreases the plane's length will decrease the same percentage.

For example if the first value of the property was 100 then every second that passed the integer would be subtracted by 1 so the plane would lose 0.01.

If the first value was 20 then it would lose 0.05.

I 've found some tutorials where the plane would get animated but they did not quite help. Any ideas on how to procceed?

The following script runs every second when the light is on. I used an always sensor with "60" placed on the frequency. Since I am interested only in the plane's vertices I won't say more about the logic bricks.

import bge

scene = bge.logic.getCurrentScene()
controller = bge.logic.getCurrentController()
object = controller.owner
#sensor = controller.sensors["name"]

# Get a list of the mesh
meshList = object.meshes
# Get the first mesh on the object
mesh = meshList[0]
# or mesh = object.meshes[0] for both lines

# get the 2 vertices in the right side of the battery
verttop = mesh.getVertex( 0, 2)
vertbot = mesh.getVertex( 0, 1)

# new xyz for the vertices
# 0.09 is a result of the following:
#length of battery(180cm)/time it should work(20s)
verttop_xyz_Pos = verttop.getXYZ()
verttop_xyz_Pos[0] = verttop_xyz_Pos[0]-0.09
vertbot_xyz_Pos = vertbot.getXYZ()
vertbot_xyz_Pos[0] = vertbot_xyz_Pos[0]-0.09

# set local xyz position of the vertices
verttop.setXYZ(verttop_xyz_Pos)
vertbot.setXYZ(vertbot_xyz_Pos)

This solution worked for me. So till anyone finds a drawback, here it is.


Connect two cubes without creating overlapping edges/faces I were trying to make an extremely simple table model like this:

I made this without problem:

But then I got stuck having a hard time figuring out how to continue.

My first idea was to duplicate the top face, move it down and create side faces:

Then the new vertices were not on the side and the edges were overlapping, which wasn't what I wanted:

Perhaps I could've cut the side first?

But I don't know how to cut along the top edge, nor how to make the exact same cut on the other side.

What's the better way to achieve this?

To follow your approach, you could:

K with C to constrain to the horizontal and Z to cut through.. create loops on both sides,
In Face Mode, Select the inside faces, and CtrlE  Edge menu > Bridge Edge Loops

But, if your desk is mainly symmetrical, I would make only one side, and work on that, under a Mirror modifier, with 'Merge' checked.


Is it possible to see an object's positions at different frames all at once? In other frame-by-frame animation software, you generally have an option to display previous frames as a kind of chronophotography (with the farthest the most transparent)

Is is possible in Blender to view a same object say at $t_k$ and at $t_{k+n}$ ? (That would ease setting the orientation)

The technique you're referring to is usually called "onion skinning" or "ghosting". An implementation that fits your needs exists for Armatures and Grease Pencil.
Other kinds of animations don't have an equally good implementation of this: objects' midpoints can be "ghosted" for rigid motion (but this ignores rotation/scale and requires constant updates of your cache), while very little is present (as far as I know) for "soft", shape-deforming, motion.
Here you go:
Armature
If your object is driven by an armature, then it's possible to enable ghosting from the Object Data properties panel of the armature:

Just increase the "range" option under Ghost.
Grease Pencil
Onion skinning is also available for the Grease Pencil as a "Layers" setting. The options are in the "N menu" in the 3D viewport:

Rigid motion
For keyframed objects or rigid bodies, you can display the trajectory of their origin points using "Motion Paths". These paths must however be updated every time you change something (it's fast, but requires a click and can be distracting). I couldn't find a way to also "ghost" the orientation/shape.

[ Just a word on dupliframes: alternatively, it's possible to switch the object's duplication object, from the same property panel, from "none" to "frame": this will display all the frames in the same way as the current one (no transparency, no customisation), and must be switched back to "none" as soon as you're done animating. Please note that this is not a visualisation tool made for the purpose of ghosting, but a technique for instancing, that is supposed to be used at render time as well! ]
Particles and Point cache simulations (soft body + cloth)
(Just to make a complete review I'll add this, even if it's not related to your question)
For particle and "soft" simulations, after baking, the trajectories of the particles or of the vertices can be shown in Particle Edit mode and tweaked with the "Draw: Path Steps" and "Fade Time", "Fade Time: Frames" options.


Is it possible to have a preview while scripted rendering? Is there a way to have a preview of the rendered image during the render process (like the one you get after you press the render button) if the render process is started from a script with

bpy.ops.render.render()

?

If you call the render() operator via PyConsole or Text Editor, a different default execution context is used. It is 'EXEC_DEFAULT'.

In contrast, buttons in panels and also menu entries use 'INVOKE_DEFAULT' by default for operators.

You can override the execution context in layouts:

col = layout.column()
col.operator_context = 'EXEC_DEFAULT'
col.operator("render.render")

As well as in the console / editor:

bpy.ops.render.render('INVOKE_DEFAULT')

If you use an override and keyword arguments for an operator call, the order is:

bpy.ops.render.render({'dict': "override"}, # dictionary for context overriding
                      'EXECUTION_CONTEXT',  # a valid execution context
                      undo,                 # undo support (True or False)
                      keyword="argument_1", # first operator argument
                      ...)                  # more operator arguments follow here

Links:

Keywords and Positional Arguments
Execution Context
UILayout.operator_context and the example of Calling a file selector
Invoke Function


Why does my blender file close a few seconds after opening it and how do I fix this? When I open a blender file, my project is visible for a few seconds while I can't make any changes to it, and then it closes. Does anyone know how to fix this? This doesn't happen to all of my blender files by the way. I can also start a new project.

This may be caused by any single object in your file. Try opening a new project, click File -> Append, and add the objects from your corrupt file chunk by chunk or piece by piece. This way you can narrow down, if or which single object causes Blender to crash.


Connetcting Vertices While Retopologizing When I first learned how to retopologize a model, I wanted to connect two vertices to finish one of my faces.  However, I could not find any obvious tools to connect to vertices, and the book I was using did not mention connecting vertices.  How do I connect these vertices?

There are dozens of ways you can create the 4th vertex and connect a face when you have already 3, but most of them will be slow for retopo.

To work fast you want to enable the F2 addon (and while you are at it also have a look at BSurfaces):

With this your F shortcut gains new features, these ones help your case:

Make polygon by selecting corner vertex and hitting F:

Then you need to snap them to highpoly mesh. The addon has Auto Grab option which is great for this case - it let's you place that 4th vertex precisely.
Make polygon strips from an edge (extrude all the needed vertices with E, select edge, hit F couple times):

The F2 addon takes into account the position of your mouse cursor, when there is no clear direction where to put new face from the surrounding geometry:


Blender consuming all memory I have hundreds of thousands of models in a folder. In my script I have a loop which loads each model at a time as object in my scene then render an image of it then delete the object. After couple of thousands models, blender consumed all my machine memory and then froze and stopped processing. Do I have to load the startup file every time before loading and processing each of the models to prevent this from happening? Or do I use the garbage collector? I'm not sure how I can avoid this from happening?

I was able to avoid this by saving my file as a startup file then reloading the startup .blend to clean up all the data blocks.


"One or more addons do not have UTF-8 encoding" I tried installing an addon and I'm sure I did it wrong, because now I have a warning that I didn't notice before.

The warning icon now shows up next to addons that don't seem to be related to the addon I was trying to install (BoolTool).

How can I make the warnings go away?

Even if you solve the UTF-8 Warning, the other warnings will not disappear -- but there's no reason to worry about them: here's why:

The warning icons to the right of those add-ons are benign and intentionally added by the authors of those add-ons to warn users about something -- but they have always been there.

It's been pointed out above, but it's worth a mention and a screenshot.

Addons can define if they should be displayed with warning icons, this is to indicate to the user that there's some remaining work to be done on the addons. The message about the UTF-8 isn't caused by something that also causes those warnings. I have them too and my Blender works fine, and those warnings don't affect any part of Blender other than to give that indication.

The fact that the UTF-8 warning uses the same icon doesn't mean that it's the cause of those warning icons on the other addons, though it's understandable that you might think so. This is merely a matter of 'icon reuse'

Take for instance the Render: Network Render Addon. An addon you are not likely to ever use unless you have a network. In its source code (in its __init__.py file) it has a short manifest which we call a bl_info dictionary. It looks like this:

bl_info = {
    "name": "Network Renderer",
    "author": "Martin Poirier",
    "version": (1, 8),
    "blender": (2, 60, 0),
    "location": "Render > Engine > Network Render",
    "description": "Distributed rendering for Blender",
    "warning": "Stable but still work in progress",
    "wiki_url": "http://wiki.blender.org/index.php/Doc:2.5/Manual/"
                "Render/Engines/Netrender",
    "category": "Render",
}

The bl_info is a way for an add-on to tell Blender 'Hey! add me to the add-on list, and display this information about me`. Without that bl_info add-ons will not appear in the add-ons list.

The inclusion of the key / value pair "Warning":  "Stable but still work in progress" is the sole reason you see the warning icon beside that addon in your preferences -> Add-ons tab. All the other addons in that list that have the warning icon, has a similar entry in their bl_info.


Armature is deforming too much mesh on one side. Rotating hand also rotates foot I am fairly new to Blender. I modelled a character using separate meshes for each body part (head, two arms, two legs). All of my child body parts are parented to one Body mesh.
I created an armature, and the rigged my mesh by selected my entire body hierarchy, selecting the armature last, and then clicking Parent ->  Armature Deform -> With Automatic Weights.
If I go into pose mode, everything works fine on the left side of the character, but when I rotate bones on the right side, the mesh deforms incorrectly. For example, if I try to rotate the right arm, the right foot also moves.
I have applied all transforms to my mesh before parenting.
At first I was using Symmetrize for my armature, but when it didn't work, I created all bones manually for both sides. I had the same results in both cases.
I tried joining my meshes into a single body mesh before parenting to the armature, but this did not fix the issue.
None of my meshes have any modifiers on them before applying the deform.
All of my meshes and bones have unique names.
When I was modelling the character, I modelled the left arm and leg first. I then duplicated each mesh, and rotated them back into place on the other side. I am assuming this is where I went wrong, but I am not sure how to fix it.
Any help would be appreciated!

Sounds like Automatic Weight Paint failed.
Possible reason can be wrong Normal Face orientation.

In this example I also model separate parts of body. Later I joined right parts together. When I Mirror right side to left side in edit mode with Ctrl+M+X Normals switched ... hmm. Automatic Weight Paint issue followed.

To fix it check first normal face orientation, like enable Display Face Normals in edit mode. On left side is direction pointed inward.
(Or you can display Face Orientation in object mode, but since this view mode use red/blue colors same as weight paint, I didnt wanted to mess up screenshots with similar colors here.)

Recalculate Normals Shift+N

Go to object Data Properties > Vertex Groups and Delete all Unlocked, and run Ctrl+P Parent > Armature Deform > With Automatic Weights again.

Note: I see red/blue color of face orientation vs WeightPaint Red/Blue is probably confusing here :)


How to create an object with both emmision and diffuse or reflective properties? Imagine two opaque plastic spheres with small light bulbs inside of each that aren't too bright.  They should both emit light, but also be partially illuminated even more by the light emitted from the other one.  So, hiding one of the spheres should make the other less bright and vice versa.  I would prefer to use the Cycles renderer.

It seems like I can only choose between using emission or diffuse material.

P.S. I'm a newb at Blender but know the basics.

You can plug a Texture Coordinates node from Reflection to Mapping node, mapping node to Math node set to mulptiply connected to ColorRamp and connected to another Math node set to multiply plugged in a Mix Shader node, in the Mix Shader connect Emmision Shader and another Mix Shader With Diffuse as the First Shader and With Translucent as the Second shader

The Result


baking normal from high poly to low poly made with instantmeshes issue I made a high poly sculpt and I have used instant meshes to do the automatic retopology to get my low poly mesh.

the high poly:

The low poly, we can see the quads and it is not possible to use the smooth shading on it

Then I create an UV image, unwrap the low poly on it. save the image, create a material for the low poly, open the low poly image on the node editor

select the High poly and then the low poly, set baking option to normal and check "selected to active" and add a bit of ray distance

but I get normals like this:

and if we zoom in we can see the quad of the low poly

Is there something I have done wrong ?
Is it the unsmooth lowPoly who cause troubles ?
Is it possible to have smooth shading on the low poly from Instant meshes ?

The issue is within the exported low poly mesh,
Instant meshes generates sharp edges and custom split normals data to the new generated mesh.

The solution is simple:
In edit mode select all edges and click Ctrl+E and select clear sharp. If that doesn't smooth the object you can click the 'clear custom split normals data'  in the object data properties under geometry data.
Don't forget to check autosmooth angle and shade smooth/flat.

Hope it helps.


Python script to render a single .obj I am familiar with python but completely new to Blender. I want to create a python script to read an obj file and render it from a fixed camera with a fixed lighting and save it to an image. Is there an introductory script that I can see?

My constraints are that I am on a remote server without an X connection, so I can't launch a GUI.

I ran into this question, but it doesn't tell me how to set up lighting:
Blender script import model and render it

Thanks!

Blender's object oriented approach uses a generic object for items in a scene with a varied data block that varies for each type of object. Using python we can create the lamp data and use it when adding an object to the scene, which can then be positioned where you want it. You could add a sun lamp and rotate it as desired, or if you wanted a spot light you could use a trackto constraint to point it at the object.

import bpy
from math import radians

# sun lamp
light_data = bpy.data.lamps.new('sun', 'SUN')
light_obj = bpy.data.objects.new('sun', light_data)
bpy.context.scene.objects.link(light_obj)

light_obj.location = (2.0,2.0,2.0)
light_obj.rotation_euler = (radians(10), radians(15), radians(20))

# spotlight
light_data = bpy.data.lamps.new('light', 'SPOT')
light_obj = bpy.data.objects.new('light', light_data)
bpy.context.scene.objects.link(light_obj)

light_obj.location = (2.0,2.0,2.0)
light_constr = light_obj.constraints.new('TRACK_TO')

light_constr.target = bpy.data.objects['Cube']
light_constr.track_axis = 'TRACK_NEGATIVE_Z'
light_constr.up_axis = 'UP_X'

light_data.spot_size = radians(25)


How to make moving strip? How do I animate a strip so that it looks like it's being drawn over time, as though it were produced by actual writing?

I can't find a direct way to make it. For now I am using a surrogate method - make an array of planes and add it to a curve path, then animate the array count.

You can use a curve to do this. in order to make it into a tube you need to set the fill to full and raise the bevel depth and resolution. You can then animate the start value to control the end of the strip. If you need to scale up or down the ends, select a point on you curve and use Alt-S.
To animate, the start value hover over the input box and it I to add a keyframe. The navigate to the other end of your animate, set the value down/up then hit I again to add another keyframe. Keyframes can be remved with Alt-I.

The green lines in this gif were created using this technique in blender

Single image with settings

Green squiggles file: