Unselectable edge? Help! I don't know if anyone has asked this but I've encountered this problem numerous times on multiple files. When I'm trying to edit a mesh I get this edge that I can't select.

Here's a better picture of what's going on. It's part of the face, but the edge doesn't show up in the wireframe. I tried deleting the face and it put a hole in my mesh.

It looks as though you have a non-planar face.  Since there is no such thing as a curved surface in computer graphics each face gets "triangulated" down to one or more tris (triangles).  So even though a face may only have four edges, it is really composed of two tris, separated by a hidden edge.  This can cause unpredictability when the face is not planar.

To put an editable edge there you can select the two vertices and hit J to join the two vertices.

Alternatively, you can make the face planar by going to Mesh menu > Clean up > Make Planar Faces.


Why isn't VSE dropping frames and giving me a correct frame rate? I'm using the VSE (Video Sequence Editor) to set up the timing of my movie. I have 30 images from a storyboard, in rather low resolution (1000x1000 px or less, 100-200kb in size) in JPG format.

I've put them in a sequence, first by importing them all as an image strip, then separating them into images. I have no effects other than "Image offset" (not an effect?) in the right hand side toolset to center them on the screen.

When I play the video, render settings set at 30 fps, it plays back at 30 fps in the beginning, but after 5-6 images, it plays at 15-17 fps. I have Sync Mode set to Frame dropping, but apparently it's not dropping frames.

It's not like it's any heavy animation, linked scenes or anything, just still images, changing every 2-3 seconds.

Why isn't it dropping frames, and how can I improve playback speed? I have set the Sequencer/Clip editor > Memory cache limit setting to 2048 MB. Should I need more than that to cache 30 images?

I'm using a MacBook Pro Late 2016 2,7 GHz Intel Core i7 in Blender 2.78 and MacOS Sierra 10.12.3.

Here's a screenshot, if that helps in any way:

Make sure you have your render dimensions are the same as images dimensions in your sequence.
Also it seems like FFmpeg used in 2.78b and newer gives much worse performance then an older one in 2.78a and previous releases.
I have tested it with videos only so I am not sure it will make any change with image sequence. But you can give it a try.


Blender Add-on Dev: Unregister is never called on Blender Exit? In my add-on __init__.py file, I have a function defined def unregister(): which unregisters all other modules. But when I exit Blender normally (Windows 10, X button), this function is never called.

Edit Note: This is normal behavior - see answer

Is there something that needs to be done before Blender executes unregister() on exit? Or perhaps some error in my add-on may be causing this behavior? I get no warnings or errors. Only two lines print out on exit:

Saved session recovery to 'C:\Users\Moats\AppData\Local\Temp\quit.blend'
Blender quit

Maybe this is normal? Blender is saying - its over, so it doesn't matter? One other unlikely possibility is that print() doesn't function after a certain exit point. I can probably confirm this, but not easily.

If anyone knows what might be happening, or can confirm that their own unregister() is being called on exit, I'd really appreciate it.

The unregister() function is only called when you deactivate the add-on in your preferences, while register() is always called when Blender starts in case the add-on is activated in the preferences. You can test this with the following simple add-on that writes into a text file whenever one of the functions is executed. The example also includes how to add a handler that is triggered when Blender is exiting.

This add-on tries to write the test file into Blender's install directory. If that directory requires special permissions, then you should adjust the path to somewhere it can write the file to.

bl_info = {
    "name": "Register and unregister test",
    "author": "Robert Guetzkow",
    "version": (1, 0),
    "blender": (2, 80, 0),
    "location": "Dummy panel in View3D",
    "description": "Check when register and unregister are called",
    "warning": "",
    "wiki_url": "",
    "category": "3D View"}

import bpy
import atexit

class EXAMPLE_PT_panel(bpy.types.Panel):
    bl_label = "My own addon"
    bl_category = "Name of your tab"
    bl_space_type = "VIEW_3D"
    bl_region_type = "UI"

    def draw(self, context):
        layout = self.layout
        layout.label(text="This is a label")

classes = (EXAMPLE_PT_panel,)

def exit_handler():
    with open("test.txt", "a") as myfile:
        myfile.write("exiting\n")

def register():
    for cls in classes:
        bpy.utils.register_class(cls)
    with open("test.txt", "a") as myfile:
        myfile.write("register\n")
    atexit.register(exit_handler)

def unregister():
    for cls in classes:
        bpy.utils.unregister_class(cls)
    with open("test.txt", "a") as myfile:
        myfile.write("unregister\n")

if __name__ == "__main__":
    register()


Render time stuck on "synchronizing object" with extreme memory usage spike I am using Blender 2.91 with Windows 10. I am using the Cycles Rendering Engine on my GPU which is an RTX 2070.
I have a project that I'm working on that takes an incredibly long time to render. I am doing all of the obvious things to reduce render times (ex. lowing the sample rate, decreasing the number of light bounces, changing the tile size to 512px because I am using an RTX 2070 card, turning off reflective and refractive caustics, checking "render region," turning down the number of max subdivisions, etc...). Even with all of these time saving efforts, I can't get a frame to render in less than about 8 minutes which is way too long considering that I might need to render a 1000+ frame animation in this scene.
I noticed that the lengthiest process for rendering seems to be called "synchronizing object." There are a lot of objects in this scene with many different somewhat hi resolution textures. Is there a way to simply bake every object together to cut down on rendering time? Even if that's not possible is there any way to quickly sum all of the objects together of print them as a single mesh object or something to make rendering this scene less computationally expensive?
Also, Idk if this is relevant or not but my memory is peaking at over 21GB which seems crazy on account of my video card is only 8GB and my computer only has 16GB of RAM total.
Update
I deleted about half of the materials and render time is FANTASTICALLY short! It still looks great even with only half of the materials present. The only problem now is that I can't add additional textures. I am trying to change the color and material of the main door to a wood material but the door material won't change at all. It just keeps the material of the wall for some reason. Any thoughts on why this is happening? I've included the Blender file and and a screenshot.

Here is the Blender File.
https://drive.google.com/file/d/1ik7SoVbX7c1LiEyj1An1GKJiyRTOnoCk/view?usp=sharing

Close to 2 million faces, high levels of subdivision surface modifiers, large textures 2K and 4k... all of that uses resources from your computer and eventually you will run out of them.
Read:
Why does Blender use so much memory for large textures?
Using 4k textures on something that will only be a few hundred pixels tall on the screen is wasteful.
Solutions:
You can adjust your ambitions to the computer power at your disposal and otpimize your scene, or you need to get the hardware that supports the complexity of the scene.
Fast, Cheap or Quality, Choose any two


Can I parent an object to follow a miximo animation? I would like to parent or join the Object (yellow missile pod) to follow the animation movements of the mech (grey) which I animated (walk animation) through Miximo.  Is it possible?  Tried parenting but did not work.

Select the object, shift select the mixamo armature, go to pose mode, select a bone you wish as parent, press Ctrl P - Bone.


Strange baking result I got this baking texture out of this mesh, it as a normal albedo map and emissive, I just simply need to bake the material with the direct and indirect lightning from the emissive, but as it looks, the baking does not work.  the texture does not translate to reality, do you guys know what is going on? The last image is how it looks in unity. I need help thank you in advance.

Okay I found the problem, actually you cannot bake a 1 mesh with 2 types of materials, a ColorBase and Emissive cannot be baked, doing a recap a mesh cannot iluminate itself. Maybe it sounds logical, but i tried so many times and results of trying has shown me that it is no posible.


Using 'Float Property Layers' value in Node Editor (similar to Vertex Color) I have an object called origin with 272 meshes/faces and Float Property Layers (called random_layer), i.e. every mesh has a its own attribute. You can see random values in the Data -> Outliner -> Data API (see screenshot).

Goal: I want to use the values of the random_layer to manipulate shaders/nodes.

Already tried: To get the values, I tried to use the Attribute Node calling it with the name random_layer, or ["random_layer"], but with no luck. I tried to wire the the three output nodes, but all seem to output 0.0. Setting the name to Col (for Vertex Colors) works fine.

The object has a material ('TheOne') using a Vertex Color node, this is working.

I have searched and found this: Use custom properties (variable values) in the node editor
However, this is not actually using the values of the Float Property Layers, but rather the graph editor. Also, my values are static and not dynamic.

Any help or pointers are much appreciated.

Setup

Win10 Pro
Blender 2.81a
Engine: Cycles (also tried Eevee)
Add-ons: 'Node Wrangler' and 'Sun Position'

Update
just to clarify how the float layer is created. mesh_object is an intermediate object for one mesh/cell/face that you see in the screenshot.

random_layer = mesh_object.data.polygon_layers_float.new(name="random_layer")
random_layer.data[mesh_object.data.polygons.active].value = random.uniform(0.0, 1.0)

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

random_layer = bm.faces.layers.float.get(random_layer.name)

Also I am using the experimental 2.82a

Using UV Layer

Example showing UVMap

Then use the UV Map node as input.

UV layers and vertex color layers are available to the attribute node by name. Not custom polygon float layers.  Be careful not to  name two layers of different type the same, (which you can) if you are going to use either or both as  node input.

Script that sets a float layer to randoms, then for each face sets the uv of each loop vert; u to the face layer value, and v to another random (or ...).

Can only have 8 UV Maps.

import bpy
from random import random
context = bpy.context

def get_mesh_layer(me, type, name="Float Layer"):
    layer = getattr(me, type)
    return layer.get(name) or layer.new(name=name)

#bpy.ops.object.mode_set()
ob = context.object
me = ob.data

rflayer = get_mesh_layer(me, "polygon_layers_float")
for f in me.polygons:
    rflayer.data[f.index].value = random()

uv_layer = get_mesh_layer(me, "uv_layers", "Random")

for f in me.polygons:
    u, v = rflayer.data[f.index].value, random()
    for l in f.loop_indices:
        uv_layer.data[l].uv = u, v
#bpy.ops.object.mode_set(mode='EDIT')

Note: needs to be run in object mode. Can be emulated in edit mode using bmesh. Simply wrapped it in change mode ops for screen shot above


Water Not Being Emitted and the Domain Stays a Cube when Baked in Water Simulator I don't know why this is happening, but my water simulator is not working. Here is my setup:

The selected object as well as the other big object are both obstacles. There is a rectangle at the top as the inflow and another at the bottom as the outflow. The whole thing is surrounded with a cube that is the domain (it is hidden now). Basically, it is a slab then a drop then a slab. A side view looks like this:

000000000
x       0
ooooooo 0
      o 0
      o 00000000
      o        y
      oooooooooo

o - Object 1, obstacle
0 - Object 2, obstacle
x - Object 3, inflow
y - Object 4, outflow

And a cube as the domain surrounding all of that. I have the default settings on all except for no slip and some velocity on the inflow and water on the domain for viscosity. When I bake the domain just stays a cube. What would cause this?

The blender file:

Share the file just to make sure, but you can try to set the volume initialization on all the objects to both, and make the domain object larger.


Add a Custom c++ Class to Blender and drawing it in the viewport using an Addon Ok, what I'm asking could not be so mainstream. I'm writing an addon for blender that will add a better particle system, and I am in the process of reating an operator that spawns particles and animates them during time.
Untill now I've used this procedure to create a particle object:

I created a plane,
Merged it at the center
removed doubles

So That I would have only a vertex. And then to add datas like particle age, the frame it was born, etc, I used object Custom Properties.

the problem is that Blender struggles to keep upp with thousands of different objects to the point where it doesn't even play the animation at all or just crashes.

But I noticed that it could hold more than 20000 particles at a time without any problem. I want to state that I know python but not so much C++ or C, so excuse me if the following argument is wrong, but I think that blender cannot hold so many object cause they have much more to them than a single particle, for example an objects has Material Slot, Particle Systems, Location, And Much More and It's also treated in a completely different way than a particle which on the other side only has few properties.

given the Argument is true (Escuse me if it isn't) could I create a simple class in a c++ file like this:

class better_particle{
    public;
    int age;
    vector Location;
    }

And create instead of a normal object a better_particle object to represent each particle, and also important draw that better_particle Class into the viewport using for example a Rectagle (Like For Example blender's Default Particle)?

I think this is possible modifying the Blender source code to fit my needs, but I want to keep it a Blender addon and not just a custom Build.

So is this possible?

EDIT:
I Cannot use Animation Nodes as it hasn't the flexibility of an addon, and The Tree as long as I know it's executed each frame, so particle will not be able to spawn or move in subframes and this would lead to lagging streaks of particles. The same problem that there's in blender by default.

WHAT I'm TRYING TO ACHIEVE:

I've Written this simple Python Code:

class particle:
pass

created_particles = []
for f in range(0,40): #For each of 40 Frames
    for i in range(0, 30): # Create 30 Particle
        pp = particle() ##Create New Particle Object
        pp.location = (0,0,0) #Add location variable
        pp.spawn_frame = f
        created_particles.extend([pp]),

As you can see it just creates some particle object ad assign them some variables.
Now I need to Create the particle class in c++ with something like the lines up above and then in Python do something like:

p = bpy.ops.add_particle()
p.location = (0,0,0)
etc

and the Last Thing I need to do it's to create a drawing function in c++ do display these particle objects.

I suggest writing your code in Python first to keep it simple and get results quickly (especially when you have little experience with where are the bottlenecks).

Then you need to benchmark it and find where the bottlenecks are.

if they are on Blender's side, porting your code to c/c++ will have little to no effect. Building your own Blender is the solution.
if they are on your code's side consider using Numpy module rather than writing custom C/C++ code first. If you want speedup on arrays or math, it is often enough. Threading can also help.

For most use cases when you need to wrap C/C++ classes the ctypes module is all you need.

You can also use Cython to expose parts of C/C++ library to Python.

For another solution for Python binding to C/C++ code look into Boost.Python:

  The Boost Python Library is a framework for interfacing Python and C++. It allows you to quickly and seamlessly expose C++ classes, functions and objects to Python, and vice-versa, using no special tools

Last thing to consider is that Blender 2.8 version is behind corner and a lot of things will change including the particle system. Some coding time on an addon this big might be wasted when it will release and you will have to re-work it or it becomes redundant by the new native system.


How can I switch the direction of a Curve on Blender 2.8? How can i switch (invert) the direction of a curve to the opposite direction, in Blender 2.8?

It seems that the shorcut for this option has changed.

In edit mode:

select all (A)
right click > Switch Direction

(or   right click > D)

There isn't a more direct shortcut, but these are pretty quick! However, if you need to use this option so often that you'd like to only use the keyboard, you can Right click on the "Switch Direction" menu option ad do "Add shortcut".

By design, in Blender 2.8x, the buttons F5 to F8 are free for add-ons and users to use with their favorite shortcuts.


How to move one edge's vertice without interrupting other mesh How to move one edge's vertice without interrupting other mesh - Here on picture, how can I make one more white vertice and slide it to the right to make 2 squares instead of this weird looking n-gons.
EDIT: Here on picture you see I have selected one edge, and it has 2 vertices. That edge seperates mesh in 2 weird n-gons. Left one is triangle(marked as "1." at picture I uploaded), right one is some weird quadrangle. I want them to become 2 squares(something as close as marked in picture "2."), obviously by adding one vertice more but don't know exactly how.
Also, how can I make edge loop to continue through this n-gon, beacuse as you can see it stopped right top of orange vertice.
EDIT: I marked with red dashed line on the picture where I want to cut mesh, but can't do it with CTRL+R.
P.S.: sorry for the unclear information, but I am pretty new to Blender so I don't know proper vocabulary for those problems. Hope now it is little bit clearer.

Connect Vertex Path & Dissolve Edge
You don't have to move any vertices: they all are right in place. What you want is to re-arrange the topology, aka changing the connections between them. You'll need this two tools:
Use Connect Vertex Path to create an edge between two vertex

This tool connects vertices in the order they are selected, splitting
the faces between them. When there are only two vertices selected, a
cut will be made across unselected faces, a bit like the Knife tool;
but this is limited to straight cuts across connected faces.

https://docs.blender.org/manual/en/dev/modeling/meshes/editing/vertex/connect_vertex_path.html

and then Dissolve edges to remove an existing edge:

Removes edges sharing two faces (joining those faces).

https://docs.blender.org/manual/en/dev/modeling/meshes/editing/mesh/delete.html


light bleed through window I'd like to get my light to bleed through the window and create a soft edge effect around the window frames. Here is an example image I found that shows my desired effects. The light seems to pour in and wrap around the window frame.

Here is my render (this is not a final version, only 100 samples to show my example).

As you can see, my window frame has very hard edges to it. I've tried turning up the outside lights, painting the window white (as opposed to dark wood), added portal lights, tinkered with the exposure, etc. I even tried volumetric scattering in the environment but this creates too much 'haze' in the entire scene. I really only want that effect around the window.
Here is a link to my blender file. I'm still very new to Blender so any helpful advice would be appreciated.
Thank you.

Use a glare node in the compositor.
The glare node works using a "threshold", that will allow you to have the effect on pixels brighter than a certain value.
Read:
Any way to control light halos in the compositor based on emission level?


What is the ray cast result? I know the result of the ray_cast call is (result, location, normal, index) as stated in the documentation. But what is the ray_cast result in case the ray exactly hits a vertex? It seems that in my tests, just one random linked face is given in the index result.
How can I get all linked faces then?

Using bmesh

The result gives you the face index. Can look directly at the mesh data, however I'm going to use bmesh since the linked geometry is worked out for us.

In this example I'm using scene raycast. It's much the same beast.

Cast the ray into scene from global (10, 10, 10) in the direction
(-1, -1, -1).  This will hit the default cube at the vertex at (1, 1, 1)
From the resultant face, get the face and how far it is from the
location of the hit. The hit is put into local object  space by
multiplying it by the inverted returned matrix world of the obect. Get the
distance from the hit to the face center.
For each edge in face, calculate the distance from edge middle to
hit.
Lastly for each vert the distance from vert coordinate to hit.
Order the above by distance from hit.
If the hit is closest to a vertex or an edge show the linked faces.

Script.

import bpy
import bmesh
from mathutils import Vector

context = bpy.context
vl = context.view_layer

scene = context.scene

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

o = (10, 10, 10) # ray origin
d = (-1, -1, -1) # ray direction

hit, loc, norm, idx, obj, mw = scene.ray_cast(vl, o, d)

if hit:
    result = {}
    loc = mw.inverted() @ loc
    bm.from_mesh(me)
    bm.faces.ensure_lookup_table()
    f = bm.faces[idx]
    result[f] = (loc - f.calc_center_median()).length
    for e in f.edges:
        mp = (e.verts[1].co + e.verts[0].co) / 2
        result[e] = (loc - mp).length
    for v in f.verts:
        result[v] = (v.co - loc).length
    print("-" * 33)
    for e, d in sorted(result.items(), key=lambda e: e[1]):
        print(type(e).__name__, e.index, d)
        if hasattr(e, "link_faces"):
            print([f.index for f in e.link_faces])

Result on default cube.

---------------------------------
BMVert 4 1.7691638564653194e-06
[5, 2, 1]
BMEdge 9 0.9999988079071045
[5, 1]
BMEdge 2 0.9999990463261543
[5, 2]
BMFace 5 1.4142120450860174
BMVert 0 1.9999990463258834
[2, 0, 5]
BMVert 7 1.999999046325911
[5, 1, 4]
BMEdge 7 2.2360664847631893
[5, 4]
BMEdge 1 2.2360666180432514
[5, 0]
BMVert 3 2.828425523165797
[5, 0, 4]

Related

What is the space used by Scene.ray_cast()?

Strange object.ray_cast() behavior

Finding neighboring mesh faces


Particle object cutting through mesh on which I am currently weight painting I am weight painting particles on mesh, and instead of them be on surface, they are cutting through. How can I make it to be just on surface

Put the origin of your particle object on its bottom face. The particle origin will stick to the emitter surface.


Cannot Render in Cycles - "No Render Output Node In Scene" error I must have accidentally clicked on something because when I went to edit my model and tried rendering it, it won't render. It says:

"No Render Output Node In Scene"

How to fix this?

As others said, it seems you tried compositing nodes, but then deleted them. But, you probably forgot to uncheck "use nodes"!

If you "use nodes", you need to have an output node!

You could just disable this setting, and leave "compositing" enabled. It should work.


Why my bubbles particles stop working at frame 11 I'm working on a fish tank and so I would like to create air bubbles which go up until the surface. I have put 600 frames in the render. And as you can see on the image, I put settings. But my particles die at 11 frames. Do you know the reason? Did I put wrong settings?

thanks for help ;)

Based on the conversation, i would check out the object that is used for the bubbles, should that be animated and shrink, it would also reduce the particles size.

Below the direct relation between size of the object and the resulting nearly dissapearing particles:


How to avoid switching layers and import an object directly into a specific layer? I am using the multiprocessing package in Python to do renderings in parallel. Meanwhile the rendering is being done I want to import an object into  layer X to start rendering it right after the previous renderings are done. However, it seems that I need to switch the scene's active layer to layer X(as also suggested here) and import the object in that layer. This way, the rendering will not be done properly (or at all) as I have to switch layers. It seems that the obj import function also does not provide anything for this.

Using Blender's Python API, does anyone know if it is possible to import an object directly into a specific layer so that the rendering pipeline will continue doing its job?

When a new object is added to a scene, it is always placed on the active layer. It should be easy enough to modify an import script to work around this.

When creating an object by script, that is when not using bpy.ops, you create the mesh data, create a new object that uses the mesh data and then link the object to the scene. It is possible to set the objects layer visibility after linking it to the scene and before updating the scene so that it should not show briefly in the render. Worst case would mean setting the objects data to None, linking it to the scene, placing it on a layer and then setting the data property back.

For the obj importer, line 1297 is where it links the object to the scene. The following addition of one line (base.layers=) seems to work with importing new objects into layer twenty, I haven't tested during rendering or with multiprocessing to check if it might show.

# Create new obj
for obj in new_objects:
    base = scene.objects.link(obj)
    base.layers = [x in [19] for x in range(20)]
    base.select = True

Note that Collada and Alembic support is compiled into blender so would need some more work and a custom build of blender to make this adjustment.


Why doesn't beveling work on both faces of this model? I need a shape that goes from horizontal to vertical with a smooth curve

Maybe you've scaled your object in the Y axis in Object mode, it makes the bevel completely deformed. So before any bevel, apply the scale with a ctrl A.


Light not going through the glass in the window I am having a problem with lighting my room with the sun.  I don't think its a problem with my window but just in case I put the node group. No matter how much strength I put on it doesn't light up the room.As long as the room has a ceiling, even if I put the sun in the middle of the room, it will not light up. When I turn off cast shadow however the room lights but I know it is not the way lighting is intended. I am fairly new to blender .

You have 3 options.

Let the room Recieve Transperent
Use Cycles render
Let the Sun light cast no shadows

I believe the first one is most helpful.

1. Let the room Recieve Transperent

Change the material applied to the room. (Not the window)

If you scroll down, you can find the Shadow panel. Tick the Recieve transperent.

This works with the default blender render.

2. Use Cycles render

Cycles is a physic based render and let the light penetrate through the window.
For links, check the comment on the question.

3. Let the Sun light cast no shadows

I believe this is not your required solution but just in case this was.
The ray will IGNORE the ceiling.

Go to the light setting of the sunlight and Switch from Ray shadow to No shadow. (at the Shadow panel)

What I think is best

Combining 1 and 3 might be a neat solution.
Make two sunlights and let one light ray shadows, the other, none. This will lighten up the entire room while especially lighting up the wall on the opposite side of the window.


Why I can't export in fbx my model? This is my model. I'm trying to create a skyscraper

Now in edit mode is this one:

As you can see the many polygons creating my model are also into the skyscraper, i.e. they don't finish on the surface of my model but they continue inside it. This is because i create many polygons that i combine each other to create a bigger model. In the end i simply unified all meshes in one with CTRL + J. Then inside my model there are vertices, faces and edges.
The problem is this one: i have tried to export my model in fbx and this is the result:

Why I can't export in fbx my model?
EDIT FILE BLEND

You may want to reconsider your modeling method as it produces lots of unnecessary geometry, face intersections, and fragmented mesh with no flow.

There is no easy one-button press to clean it up quickly, but you could try the new Edit Mode Boolean operations in Blender 2.77.

By selecting one of your "shards" (a complete chunk of connected faces or geometry) and pressing Space bar and Searching for Intersect or Boolean you could let blender try and detect all intersections and cut geometry accordingly. You can then easily erase all surplus geometry by hand and repeat operation for all remaining independent chunks.


How to model stylized Hoodie How would you go about modeling a hoodie on a tictac shape model like the image below?
For example I started with a outline with a bezier curve but it just doesn't look good.

I have an idea for this.
It is: the basic shape of a hood is a sphere cut in half  and squashed and stretched into more of an oval shape.  Kind of like an egg cut in half from top to bottom.
You just need to take that primitive mesh shape and add a little detail.
I like to start with an add an extra object add on called Add Mesh:  Extra Objects, I am not sure if it is  there by default but it is definitely free.  This gives you a sphere made out of quads instead of the default sphere.
Then I just take that object, delete the front faces.  Then solidify it, bevel it, and apply those modifiers.  This will make the cloth have a bit of a nice rounded rim.  Then I would add a subdivisions modifier to smooth it out, and maybe sculpt it a bit to add details.
I show all the stages of that in this picture here:


Why is my Eevee render pixelated? I am getting an extremely pixelated result when rendering with Eevee and I don't understand why; you can see the settings I am using for render and output in the attached screenshot.

Images

I tried to copy and paste in new file did not work. Any suggestion or help. Thanks

Looks like a result of setting Render Properties > Film > Filter Size to 0, try changing that setting.


Frame rates: 3D view port vs VSE I created a 1.5-minute-long animation of a 3D model that rotates it to various orientations. The animation was rendered to .png image files using 24 fps. The animation runs as expected in the 3D view port. When I add the images into the VSE the animation runs much slower, around 9-10 fps. Render setting are shown the screen capture image. Any suggestions about how to work through this would be greatly appreciated.

In 3d view you may be playing only the OpenGL version of the scene, for example in textured or material mode or even just wireframe. Blender is optimised for this and it takes relatively little memory. This will play very fast.

After rendering to a high resolution image sequence you are asking Blender to load into memory a lot more data to display. Try selecting the strip and and creating a proxy, define the resolution and timecode type in the strip properties panel. The rebuild proxy/TC function is in the Strip menu at the bottom of the VSE timeline. Then go to the VSE preview window properties (N-key) and select the proxy size to view. Proxies of your footage should play back properly (less memory and processing overhead).

Alternatively go to the Blender timeline (not the VSE) and change the playback mode to AV-Sync. This will prioritise playback to frame rate and drop frames to do so.


Got two connected BVerts, how to get the BEdge? I've created a couple of BVerts:

v1 = self.bm.verts.new(vector1)
v2 = self.bm.verts.new(vector2)

I run some python functions on my mesh, and at sometime while doing python stuff on my mesh, a face is created that has these two BVerts as adjacent vertices. I don't have that face stored in a variable.

Based on that, I know there is an edge connecting the two vertices. Is there an easy way to get that Bedge only using v1 and v2? (I need to feed it into an operation that only takes edges).

Thanks!
Chris

Looks like I've figured it out:

edge = self.bm.edges.get([v1, v2])


Vertex Paint on faceless model Is it possible to apply vertex colors to vertices that aren't part of a face?

I've tried using vertex paint mode in the Blender application, and also directly modifying a vertex paint object via python, neither or which worked.

The wiki
says:

  The color of all visible planes and edges attached to the vertex are
  then modified with a gradient to the color of the other connected
  vertices. (Note that the color of non-visible faces are not modified).

As I understand this, it works on gradients which are not available without edges and faces. Thus you can't paint isolated vertices.


Transparent object isn't showing the intersecting object inside it The cylinder has raytrace transparency on and it does show the texture of the globe through it but not the squares. How come the grid doesn't show through the cylinder?

I am guessing that rendering wireframes inside other materials or through effects like refraction is not supported since the wireframe is itself sort of a "2D-like effect.

Try using a Wireframe modifier in your cubes instead, that should be visible inside refractive materials, at the expense of extra geometry.


My material for my donut bun is glowing I finished my donut texturing and and don't know why its glowing. I'm pretty sure it wasn't there from when I started to add texture to the donut. I don't know how to make it stop glowing

The viewer node you are using is actually an Emission Shader. To stop the glowing, plug the Principled BSDF into the Material Output.


Animated Passive Object Does Not Work With Rigid Body Simulation Animated Passive Object Does Not Work With Rigid Body Simulation. It's bit hard to explain.

Download Blender File

You've got two problems:
 1. You baked the physics simulation, effectively key-framing all objects that are part of it. Baking the simulation is useful if you don't plan on changing the simulation again, but it's not necessary to render an image/animation.
 2. You have two planes which you are trying to animate in the same spot - Plane.003 and Plane.013; they have different settings.

First, free the bake:
https://imgur.com/a/GBrIuOG

Second, set Plane.003 to be animated, or just delete it since it is a duplicate:
https://imgur.com/a/hqoxvVt


Why is there no save confirmation when closing a file? I was working in the default file which was not saved. And suddenly I remember I want to open a different file and from the file menu I selected the file. The old file open but the problem the file which was working (default file) was not saved. Blender did not prompt that you want to save the file. I lost the model from the default file and the old file open. Is there any function or why there is no pop-up for blender to save.

Currently Blender does not have a 'Do You want To Save?' warning before opening a new or previous file. There is a dialog box that pops up of course, but it definitely could be a lot clearer as to what will happen when you confirm.

Blender does have several ways to recover lost files though.

First is the 'Recover Last Session' option in the file menu which you already know about based on your question. From my experience this usually doesn't do a great job of recovering in a case like yours as it goes back too far.

Blender also auto saves files. In the user preferences in the file tab you can set it to auto save more frequently (down to every 1 minute). Autosaves can be recovered from the file menu. Do note that Sculpt and Edit Mode changes won't be saved by Auto Save though (and I'm not exactly sure why that wasn't implemented, my guess would be a full save takes too long).

Finally blender created backup versions of your files. These are the .blend1 and .blend2 files that get automatically created after a while. You can open these versions using the default open menu and adjusting the filter settings at the top to display .blend1 and .blend2 files.


Automatic Heat Weighting: Failed to find a solution for one or more bones error Please don't mark this question as a duplicate, because solutions for other questions with the same error, doesn't work for me.

So I have a character model, created via ManuelBasioniLab, and I want to make an armature with automatic weights for it, so I created few bones to test that it will be working, and it doesn't work because of error.

I tried to:

Delete half of the mesh and using mirror modifier
Use Remove Doubles (on the first try deleted about 130 vertices)
Use subsurf modifier
Use decimate modifier

Nothing seems to be working, the error is still showing.

Link to the model: https://www.dropbox.com/s/8cqahidxh39zyav/character.blend?dl=0

Changing the scale of mesh and armature to bigger solved my problem.


There are strange lines that appear on my glass in my phone render. How do I get rid of them? I've been working on a phone model for some friends, and there are strange lines that appear in the glass when I render it. I'm using Cycles. Here's an example:

I think it might have something to do with the distance between the glass (which is now just the outside layer of white) and the layer below it, but it doesn't appear in the render preview... Is there anything I can do about it? It only appears in the final render.
If you need the .blend, here you go: Google Drive

Your model has very bad topology (N-gons) and that's the problem of the artifacts in render (but you can see problems also without rendering, check my screenshot)

more info:
What is an Ngon?
If you're unfamiliar with what an ngon is let's go over a very quick review so you can understand this question a little more. An ngon is a face or polygon that is made up of five or more sides or edges connected by five or more vertices. Anything over a quad (4 sides) is considered an ngon.
More here (https://www.pluralsight.com/blog/film-games/ngons-triangles-bad) and on youtube/google if you look for ngons.


How to simulate Miura-fold I'm hoping to find advice here for simulating the Miura origami in Blender. I have searched quite thoroughly on methods and have only come as far as my failed attempt in my attached image above. The Miura fold is based on units of two-way folds, not only do the folds perform as hinges, they also influence the whole origami system.

In my attempt I'm using bones, however they force the whole mesh to deform. To prevent this, is it necessary to have the mesh as  units of rigid bodies so that they adopt physical reactions?

Below is my paper fold for reference.

I was able to create that animation just using shape keys.

Start out with a plane that has the same geometry as the folds in a Miura fold.

Add two shape keys on that mesh. The first will be the "Basis," the second will be the one in which you edit the mesh. (I used more then two, but two will work fine.)

Tab in to Edit mode and start moving the edges together. The only tricky part is keeping the edges the same length. You will need to turn on Length in the Mesh Display heading of the properties region. (I duplicated the unedited mesh so I could check the edge lengths.)

Start by selecting every second edge loop and moving it up along the Z a bit less then the length of the edges. (In my mesh the shortest edge was about 2.66, so I moved the edges up 2.5.)
Starting at the end, select each edge loop and move it along the X until the lengths match the original length. (It does not have to be perfect, in the gif I'm sure not.) Continue moving the edges closer together until you are done with that axis.
Simply do the same thing for the other axis. Starting at the top (or bottom) select each edge loop and move it along the Y axis until it is the same length as the original.

In this gif I only do three edges, just because it is all the same.

4. Add a bevel and a Subsurf modifier to the mesh. You will need to crease the outside edges, to keep the corners from rounding.


Perspective Camera does not change view when moved I have a perspective camera, aligned with the model on the X Y Z axis but moved some distance away from the model in an attempt to fit the whole model in the camera view.  But moving the camera does not change anything.
Also, I have a lamp which is not intense enough to show the model properly but increasing the luminance makes no difference.
What is going on here?

Ok, I wasn't being aggressive enough with the luminance.  I increased the power setting to 5000 and that worked.
Ditto with the camera - I moved it a long way back and the model image then fitted in the camera window.
It would help if Blender provided a range for these settings - you might expect to double the luminance to get a better view, but not to increase it 5,000 fold!


How to properly import from CATIA v5 to Blender? As I use CATIA V5 to model and Blender in Cycles to render I've been having some problems with de export-import process between these two softwares.

My usual way to do it is by creating a tesselation (polygon mesh creation) in CATIA, then exporting in .stl, importing it in blender and then applying the smooth feature to avoid those mesh divisions. Sometimes this works but the thing is that when I have small details I'm being forced to reduce the size of the poligons in the tesselation (make a heavier mesh in CATIA) so the stl's of a single product are about 700mb, making the scene slow to edit and also, when applying the smooth, I've some small poligonized shadows that I have to edit later in Ps.

So there's my question, does someone knows how to properly export-import from CATIA to Blender in order to get a smooth model that it's suitable for a nice render?

Hope someone can help me with this issue.

Thanks!

You can use a Decimate modifier in Blender to make your mesh more manageable. First, import your high-res .stl in to Blender. To try and minimize shading artifacts and improve the Decimate results, select the whole mesh in Edit Mode and apply Remove Doubles (Mesh > Clean up > Remove Doubles).

After that, go to the modifiers panel and change the method to Planar (I can't tell what exactly your mesh is from the pictures you gave, but It looks like it is mostly flat).

Adjust the Angle Limit and Delimit settings so that your mesh looks good without a loss of detail on high-res areas, then apply the modifier.


Create different shapes of the same objects with its content I was trying to recreate the following screenshot from https://www.youtube.com/watch?v=IzL5GjFjcbU

The cells are quite different from each other and also their content (not visible in the pic) is animated and also variate from cell to cell.
They seem also arranged in an array, but somehow they fit in between the blood vessels. I can get an array of cells that variate but not this complicated. Also external cells are bigger than the internal part.
By using a displace modifier you can obtain subtle variations but not dramatic change in shapes so that they can fill the space nicely.
I don't think they did it manually.
My question is how can this be achieved in Blender? Do you need some python scripting to obtain something like that? I am wondering what's the workflow to do it.
Thanks!
Here is the result after particle emitter suggestion:

I would use a particle system. Here's one approach

Create a circle
Extrude it and scale the extrusion inward to the same radius as the base of the thing that is going up
add a lot of edge loops.
Then I would select all of the faces and delete "faces only"

This will create a circle with a lot of vertices.
Next I would create a collection of objects representing the cells.  (For my example I only created a cube)
Next I would create a particle system for the circle.

Set it to hair.
Emit from vertices.
Disable random order
Set the number to match the vertices
Render as collect (object in my example)
Use the collection of cells (cube) as the collection (object)

Finally you can use a vertex group to limit which vertices so you can draw the veins where the vertices won't have cells.
My result is too rigid but you can randomize the vertices a bit and so on.
You get about half the work done automatically this way but you have to do the rest to make it organic in any way.


Subdivide in GUI vs Subdivide in Python When I subdivide edges of selected faces using the GUI, it ends up looking like this:

On the other hand, using python, it looks like this, only generating vertices and not faces:

Here is the code - how can I get a similar result to the GUI, actually splitting faces up?

import bpy
import bl_operators
import bmesh
from math import ceil

obj = bpy.context.active_object

mat_zero = bpy.data.materials.new("mat_zero")
mat_zero.diffuse_color = (0, 0, 0, 1)
mat_one = bpy.data.materials.new("mat_one")
mat_one.diffuse_color = (1, 0, 0, 1)

obj.data.materials.append(mat_zero)
obj.data.materials.append(mat_one)

me = obj.data
bm = bmesh.new()
bm.from_mesh(me)

for edge in bm.edges:
    linked = edge.link_faces
    if(linked[0].smooth and linked[1].smooth):
        edge.seam = False

print(len(bm.faces))
bpy.ops.object.mode_set(mode="EDIT")

for face in bm.faces:
    if (face.smooth):
        face.material_index = 1
        area = face.calc_area()
        face.select = True
        for edge in face.edges:
            edge.select = True
        bmesh.ops.subdivide_edges(bm, edges=face.edges, cuts=1)

bm.normal_update()
me.update()

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

print(len(bm.faces))

bm.to_mesh(me)
print("done")

Processing edges twice.

The logic is wrong.  If an edge is a boundary of two selected faces it gets subdivided twice (for each face).  These are the edges to have seam set to false

To get all the edges of smooth faces. First will select smooth faces. Set the material on these faces.  From these faces get the edges.

faces = [f for f in bm.faces if f.smooth]
edges = set(e for f in faces for e in f.edges)

by making edges a set it has only one of each unique member. Pass list(edges) to an operator.

Can use this narrowed down selection to do the seam setting.

Object mode test script.  With object selected and active in OBJECT mode run the script below.

Set use_grid_fill=True in the bmesh subdivide operator if you wish to subdivide faces too.

import bpy
import bmesh

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

# object mode bmesh

bm = bmesh.new()
bm.from_mesh(me)

faces = [f for f in bm.faces if f.smooth]

for f in faces:
    f.material_index = 1

edges = set(e for f in faces for e in f.edges)

for e in edges:
    if all(f.smooth for f in e.link_faces):
        e.seam = False

bmesh.ops.subdivide_edges(bm,
        edges=list(edges),
        cuts=1,
        use_grid_fill=True,
        )
bm.to_mesh(me)
me.update()

Recommend when using bmesh choosing which mode you wish script to run in. The toggle mode operator is not required in your question script.

If you wish to see live results as you are editing would go with an edit mode bmesh as below.

Here is a test file to run in EDIT mode.  Can run this script against a "live" selection of edges.

import bpy
import bmesh

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

# edit mode bmesh

bm = bmesh.from_edit_mesh(me)

edges = [e for e in bm.edges if e.select]

bmesh.ops.subdivide_edges(bm,
        edges=edges,
        cuts=1,
        use_grid_fill=True,
        )
bmesh.update_edit_mesh(me)
me.update()


How to keep same texture coordinates on model exported from Blender to glTF? How can I keep the texture looking same as in Blender? In the GLTF viewer it always looks like there is no "texture coordinate" node connected. When I connect this node, the texture changes in Blender, but it does not change in the GLTF exported file. It still looks the same no matter what kind of connection of texture coordinate node I use (Generated, Normal, Object...). It all looks the same in GLTF, as if the texture coordinate node were not connected at all.
How can I fix this?
Here is how it looks in Blender:

And this is how it looks in GLTF viewer:

The glTF format needs an actual UV map, not Blender-generated coordinates.  Blender offers many ways to bake or project different kinds of coordinates into a UV map, many of which are available with the u shortcut when in "Edit Mode."
Blender's glTF exporter also supports UV transformations to a limited extent.  You should avoid complex things like nonuniform-scale rotations of UV coordinates, but a simple transform will work.
Ultimately you'll need to get your coordinates into a UV Map and assign that to the material, before exporting to glTF.


How do I create a right column when I have a 2-rows layout? Suppose I have 2 windows under the following layout:

 _____
|_____|
|_____|

How do I create a right window so that it becomes:

_________
|_____| |
|_____|_|

Without disturbing the open ones?

Split the two editors separately, but make sure the splits align vertically:

Note that once the vertical splits are aligned, they become locked.

I actually wrote a feature request on the wiki a while ago asking to improve this behavior.


UV Mapped a cube for a skybox, seams showing The question is: how do I get rid of these particular seams? I've found a few tutorials on removing seams in UV mapped textures, but these all seem geared specifically towards matching textures that actually don't show gaps. In this image, you can see the seams near the bottom, appearing white. In the past, I have caused them to be black or grey, by having "render alpha" unchecked.

In my UV map, everything looks reasonably correct: the image is 1024x768px, with each "frame/cube-side" being 256x256px. Some of them match up fine, others seem to leave a few-pixels-wide gap. With the UV map, I have checked to make sure the map isn't picking up any unused areas of the texture. The UV map bounds the image perfectly.

Is it possible that this is a bug in the UV map stuff, causing it to pick up a pixel or two of the unused transparent areas of the image? Or is it something I'm doing wrong.

UPDATE: These lines appear exactly on the same edges as the seams I marked. This makes sense, taken with the fact that it's rendering transparency. Why this happens, I don't know.

UV's are used to define a link between a 3d surface and a 2d surface. When a colour is needed for the 3d surface it finds a location in 2d space and then chooses the nearest pixel from the image. While rounding floating point numbers and choosing the nearest pixel from the image there can be slight variations while following the edge between two points. While texture painting may get drawn to the left, the renderer may choose from the right.

For this reason it is common to bleed the texture colour past the visible edge of the UV's so that there is always a valid colour to be chosen. This means you need to leave some space between islands when laying out your UV's.

When texture painting there is an option to set the amount of bleed, it's location is probably a bit misleading as it is found within the project paint settings.


Ways to have one mesh control another? I'm working with Cloth Simulations brought in from another program (Marvelous Designer) via .mdd, applied with the Mesh Cache modifier. No changes can be made to this mesh in Blender without breaking the .mdd. I want to add further details to the cloth in blender, such as thickness, seams, grooves, and other surface detailing that Marvelous Designer doesn't have good tools for. To accomplish this, I want to have my detailed mesh be controlled by the simpler cloth simmed mesh. This isn't much different than if I was doing the cloth sims in Blender, as that is generally done on simple meshes that then control more detailed ones.

My question is, what are my options in Blender for having the simmed mesh control the higher detailed one? From tutorials I've seen from other software (Max and Maya), this is a very common workflow, and they handle it very easily. Does Blender?

I am aware of the following options:

Mesh Deform Modifier:
Take the simmed mesh, solidify it to envelope the high detail mesh, and use a Mesh Deform modifier. This works for very simple meshes, but even at high precision, does not handle complex ones well. It also fails badly when dealing with layers. I can limit it's effect to a vertex group on the target object, but I can't have only a certain vertex group of the parent object exert control. So any place where I would have layers touching each other will get destroyed, as even if I weight paint the solidify very precisely, I can't fully avoid the cage overlapping certain areas.

Bones constrained to the simmed mesh:
Constrain bones to the simmed mesh and have them control the high detail mesh. This is very inefficient and time consuming, even if you have custom scripts to help set it up. It can also lose detail in important areas, and can't really handle things like folds and creases unless you have as many bones as you have vertices. And constraints can often give very strange results. This method has worked so far for things like belts and straps, but that's about it.

Are there any other options? From what I can tell, a combination of the two I've listed is the best choice. But it seems horribly inefficient and obnoxious. This seems like it should be a very common workflow, and there should be better tools for it. Am I missing something?

From Blender 2.79 onward the new modifier Surface deform makes this answer obsolete.

This code rigs simulated mesh so there is bone for every edge of mesh, such rig can control high-res version of cloth:

The code adds panel to 3dView > Toolbar > Rigify Mesh.
The mesh has to have rotation and scale applied.
The vertex count of mesh is recommended below 2000 (timed on i7 4GHz).

300 verts ~ 6s
560 verts ~ 46s
1k verts  ~ 8.2min
2k verts ~ over night

After profiling the code and going through forums the bottleneck is setting constraint properties. Specifically constraint['name'].target and constraint['name'].subtarget. The issue is that blender validates the constraints on every change to all other bones. This may be drastically speeduped with new dependency graph (hopefully). (Same as with duplicating large datasets of objects - before bmesh it took hours, now can be done in seconds.)
If the constaints will be no issue the rig can be improved so the bones rotate along edges nicer (this requires more bones and constraints).
The progress is now also printed in the console:

Known bugs were fixed.

The code:

import bpy
import time
import sys
from mathutils import Matrix, Vector

def new_bone(armature_ob, bone_name, head_loc, tail_vec, parent=None, deform=True, layer=0):
    '''Works only in edit mode'''
    new_bone = armature_ob.data.edit_bones.new(bone_name)
    new_bone.head = head_loc
    new_bone.tail = Matrix.Translation((0,0,0)) * Vector(tail_vec) + new_bone.head
    new_bone.parent = parent
    new_bone.use_deform = deform
    new_bone.layers = [i==layer for i in range(32)]
    armature_ob.data.layers[layer] = True
    return new_bone

def add_constraint(const_type, const_entity, target_obj, sub_target_name):
    '''Works only in pose mode'''
    constraint = const_entity.constraints.new(const_type)
    constraint.target = target_obj
    constraint.subtarget = sub_target_name
    return constraint

class RigifyMeshPanel(bpy.types.Panel):
    bl_label = "Rigify Mesh"
    bl_space_type = 'VIEW_3D'
    bl_region_type = 'TOOLS'
    bl_category = "Rigify Mesh"

    def draw(self, context):
        layout = self.layout
        layout.operator("object.rigify_mesh", icon='OUTLINER_OB_ARMATURE')

class RigifyMesh(bpy.types.Operator):
    bl_idname = "object.rigify_mesh"
    bl_label = "Rigify Mesh"
    bl_description = "Generates a Rig with bones for every edge of active mesh"

    @classmethod
    def poll(self, context):
        try:
            active = context.active_object
            return active and active.type == 'MESH'
        except (AttributeError, KeyError, TypeError):
            return False

    def execute(self, context):
        mesh_ob = context.active_object
        progress = ""
        start = time.clock()
        # Force object mode:
        if bpy.context.active_object.mode != 'OBJECT':
            bpy.ops.object.mode_set(mode='OBJECT')
        # Generate vert groups for each vert:
        sys.stdout.write("------------------- RIGIFYING MESH -----------------\n")
        sys.stdout.write("Generating Vertex Groups (step 1/4): ")
        sys.stdout.flush()
        for ivert in [v.index for v in mesh_ob.data.vertices if str(v.index) not in mesh_ob.vertex_groups]:
            progress = "Vert %i of %i" % (ivert, len(mesh_ob.data.vertices)-1)
            sys.stdout.write(progress+chr(8)*len(progress))
            sys.stdout.flush()
            mesh_ob.vertex_groups.new(name=str(ivert))
            mesh_ob.vertex_groups[str(ivert)].add([ivert], 1.0, 'REPLACE')
        # Update mesh data
        mesh_ob.update_tag({'DATA'})
        sys.stdout.write("DONE IN "+str(round(time.clock()-start, 3))+"s"+" "*(len(progress)-9)+"\n")
        sys.stdout.flush()
        start = time.clock()
        # Get and Reset Armature
        sys.stdout.write("Cleaning up Armature     (step 2/4): ")
        sys.stdout.flush()
        if bpy.data.objects.get(mesh_ob.name+'_Rig') is not None:
            rig_ob = bpy.data.objects[mesh_ob.name+'_Rig']
            context.scene.objects.active = rig_ob
            # Clean constraints:
            bpy.ops.object.mode_set(mode='POSE')
            for id, pbone in enumerate(rig_ob.pose.bones):
                for constraint in pbone.constraints:
                    progress = "cleaning %i of %i" % (id, len(mesh_ob.data.vertices)+3*len(mesh_ob.data.edges)-1)
                    sys.stdout.write(progress+chr(8)*len(progress))
                    sys.stdout.flush()
                    pbone.constraints.remove(constraint)
        else:
            bpy.ops.object.armature_add(location=mesh_ob.location)
            rig_ob = context.active_object
            rig_ob.name = mesh_ob.name + '_Rig'
        # Clean bones:
        bpy.ops.object.mode_set(mode='EDIT')
        for bone in rig_ob.data.edit_bones:
            rig_ob.data.edit_bones.remove(bone)
        sys.stdout.write("DONE IN "+str(round(time.clock()-start, 3))+"s"+" "*(len(progress)-9)+"\n")
        sys.stdout.flush()
        start = time.clock()
        # Add bones:
        sys.stdout.write("Generating Bones         (step 3/4): ")
        sys.stdout.flush()
        mesh_ob.data.calc_normals()
        for id, vert in enumerate(mesh_ob.data.vertices):
            progress = "Bone %i of %i" % (id, len(mesh_ob.data.vertices)+len(mesh_ob.data.edges)-2)
            sys.stdout.write(progress+chr(8)*len(progress))
            sys.stdout.flush()
            new_bone(rig_ob, "vert"+str(id), vert.co, vert.normal/4, None, False, 1)
        for id, edge in enumerate(mesh_ob.data.edges):
            progress = "Bone %i of %i" % (id+len(mesh_ob.data.vertices), len(mesh_ob.data.vertices)+len(mesh_ob.data.edges)-2)
            sys.stdout.write(progress+chr(8)*len(progress))
            sys.stdout.flush()
            v0 = mesh_ob.data.vertices[edge.vertices[0]]
            v1 = mesh_ob.data.vertices[edge.vertices[1]]
            new_bone(rig_ob, "edge"+str(id), v0.co, v1.co-v0.co, rig_ob.data.edit_bones[edge.vertices[0]])
        sys.stdout.write("DONE IN "+str(round(time.clock()-start, 3))+"s"+" "*(len(progress)-9)+"\n")
        sys.stdout.flush()
        start = time.clock()
        # Add bone constraints:
        bpy.ops.object.mode_set(mode='POSE')
        pbones = rig_ob.pose.bones
        sys.stdout.write("Generating Constraints   (step 4/4): ")
        sys.stdout.flush()
        # Setup vertex bones constraints:
        for id, vert in enumerate(mesh_ob.data.vertices):
            progress = "Constraint %i of %i" % (id, len(mesh_ob.data.vertices)+3*len(mesh_ob.data.edges)-1)
            sys.stdout.write(progress+chr(8)*len(progress))
            sys.stdout.flush()
            child_of = add_constraint('CHILD_OF', pbones["vert"+str(id)], mesh_ob, str(id))
            context_py = context.copy()
            context_py["constraint"] = child_of
            rig_ob.data.bones.active = pbones["vert"+str(id)].bone
            bpy.ops.constraint.childof_set_inverse(context_py, constraint=child_of.name, owner='BONE')
        # Setup edge bones constraints:
        for id, edge in enumerate(mesh_ob.data.edges):
            bone0 = "vert" + str(edge.vertices[0])
            bone1 = "vert" + str(edge.vertices[1])
            progress = "Constraint %i of %i" % (3*id+len(mesh_ob.data.vertices), len(mesh_ob.data.vertices)+3*len(mesh_ob.data.edges)-1)
            sys.stdout.write(progress+chr(8)*len(progress))
            sys.stdout.flush()
            add_constraint('DAMPED_TRACK', pbones["edge"+str(id)], rig_ob, bone1)
            progress = "Constraint %i of %i" % (3*id+1+len(mesh_ob.data.vertices), len(mesh_ob.data.vertices)+3*len(mesh_ob.data.edges)-1)
            sys.stdout.write(progress+chr(8)*len(progress))
            sys.stdout.flush()
            const = add_constraint('COPY_ROTATION', pbones["edge"+str(id)], rig_ob, bone0)
            const.use_z = False
            const.target_space = 'POSE'
            const.owner_space = 'POSE'
            progress = "Constraint %i of %i" % (3*id+2+len(mesh_ob.data.vertices), len(mesh_ob.data.vertices)+3*len(mesh_ob.data.edges)-1)
            sys.stdout.write(progress+chr(8)*len(progress))
            sys.stdout.flush()
            add_constraint('STRETCH_TO', pbones["edge"+str(id)], rig_ob, bone1)
        # Hide vert bone layer
        rig_ob.data.layers[1] = False
        sys.stdout.write("DONE IN "+str(round(time.clock()-start, 3))+"s"+" "*(len(progress)-9)+"\n")
        sys.stdout.write("----------------------------------------------------\n")
        sys.stdout.flush()
        return{'FINISHED'}

bpy.utils.register_module(__name__)


UV Wrapping not correct - it takes the upper side, but is not the same expected result I'm using Blender 2.76b1 for learning Blender and I'm following this tutorial for make a hammer in Blender:
Blender 2.8 Beginner Textures and Materials Tutorial
In the linked tutorial, at the 2:22 mark, the handle of the hammer is unwrapped, but, I'm not able to get the same UV unwrapping results as is shown in the video.
This is a screenshot of my progress - to me, it seems like is only unwrapping the upper side of the habld of the hammer:

I followed these steps:

In "Edit Mode", I selected (with Ctrl+A) the handle of the hammer - which is a separated object (cylinder).
In a new view, select "UV/Image Editor" , open the "wood texture image".
Back in the 3D view (with the selected cylinder), press U and select: "Unwrap".

I got the result shown in the screenshot.
First I got: "object has non uniform scale unwrap will operate" message, but, after applied what is said in this answer, the message not longer appeared, but, the UV unwrapping has the same results (shown in the screenshot above).
I don't know what I'm doing wrong. Can someone see what I'm doing wrong?
This is the .blend file:

and this is the URL of wood texture image - all textures used in the video are shown in the video description.

1 I'm using this version since my computer hasn't the recommended system requirements.

He's using 2.8, He must have used a cylinder to make his handle, by default cylinders are already correctly unwrapped in 2.8, as shown in the video, it's not the case in 2.7.
The best thing you can do I guess is to choose a front orthographic view, unwrap with the Cylinder Projection option, then select the top and bottom circles, simply unwrap. Now scale and move the UV islands the way you want.


Rotating a single image texture for multiple instances I have a node setup for a single image texture (actually its a set of images) tiled floor. For variance I grouped the spec, normal, occ images then rotated them randomly using the Object Info. The end result looks pretty good, but it I dont think the node setup is very efficient. If I want to change the image, I need to go into each group and manually change 4 images for the 4 different rotated tiles. Is there a way to change the rotation of an image AFTER the using the image texture node to make changing an image quicker?

I've checked out a similar post here, but this is different because I want to rotate the same image, not replace it with a rotated image.

No, it's currently not possible. To "rotate" a texture, you actually rotate it's mapping, so it must be done before hand.


Rendering with compositor only renders single image I am currently trying to render out an image sequence that I imported into Blender's compositor and put a denoise node to. I set the start frame to 1 and the correct amount of frame length and offset. When I render the animation, it re-renders over the original image sequence which is fine, but it only renders the last frame of the sequence over each image. I then have to re-render the image sequence since it basically replaced my image sequence with a single image.
Does anyone know how to help?
Here are my compositor settings:

The offset is set to 116 because thats when the image sequence and animation begin.

The error is this you are setting the offset to 116, but the start frame is set to 1, so the 14 frames you want to render would be rendered in frames 1 to 14. Otherwise you are getting a repeat of the last frame.

On a side note, it is quite unfortunate that you chose to use png as image format, by doing so you've lost a lot of the information that would help you denoise the image. In the future use EXR mulilayer and save the denoise passes.


Where is the panel to change parameters for gears created using the Extra add-on? Gear is added but I can't find the the panel that lets you change number of teeth, diameter etc. Sorry for being dumb. Can sb guide a dummy?

Thanks for R-800. It was minimised on the bottom left. It is not on the right as i thought it would be.


Animation: customize bounce interpolation I want to animate a plane falling onto the ground.

It’s good to have the bounce interpolation however you are quite limited when you want to customize it, for example adding more smaller bounces to the end etc, just like you are able to in After Effects.

Is there an addon available to adjust that or is there even a solution within Blender which I just haven’t found?

There is no way to customize them.

The only way out is to not use the premade interpolations. Stay in Bezier interpolation, and use "free" handles to create your own bounces:


Why can I see through my objects? When you fly through your Blender 3D world, you can fly through things. However, sometimes I fly through objects, and before I even get close to them, the objects start cutting off(visually). See image:

How can I stop Blender from doing this? Or at least make it do so, when I get closer to the object?

There are some camera angles that I can't get because Blender cuts away the object in my view/cam

It is caused by the View Clip setting in N panel (If you look through the camera, it is controlled by the camera clipping that locates in its own Object Data panel).

To avoid it, either set start clip to a relatively small value (0.1 by default), or switch to Ortho view (3D view only).


Removing Location Keyframes from LocRotScale? I am working on a Minecraft animation with the ender dragon.  I first made sure that the flying was correct before I did anything else and by habit i used LocRotScale when setting the keyframes.  Is there a way to convert LocRotScale to just RotScale, removing the location keyframes?

Try opening the graph editor with your dragon selected, and go through the drop down menus for it and see f there is a separate key frame sequence for location. If there is, you can select it and delete with x. I'm sorry I don't have access to a computer at the moment otherwise I would provide screenshots and a less vague answer. I will update this when I can.


How to delete an action? I try to delete Action.005 permanently.

But I don't know how. If I click on the X

then it is still in the list.

I already researched without success, I even managed to loose all my animations by attempting to apply a fix, so I want to be cautious now... How can I do this?

Probably best way is change Outliner into Blender File mode, right click on action and click delete.


Weight Brush Does nothing on any setting My weight brush does not add, subtract, or make any changes on any bone. I’ve read a bunch of forums. I’ve tried choosing all the vertices on edit mode by pressing ‘A’ before I weight paint.
I’ve tried add subtract blur gradient - auto-normalize - protected/not etc etc.
Any ideas? *this is a rigify rig"

If weight painting a vertex group in a mesh differently is not affecting how an armature deforms it, one of the following is probably true.

The vertex group has no bone with the same name to match with.
The armature modifier is disabled.
The armature modifier is set for “Bone envelopes” instead of “Vertex groups.”

Check for these. If not, make sure you were posing the correct bone.


Is it possible to set all characters in all vertex groups to lowercase? So I've been working on porting several meshes from an older project into a new one, I however added capitalisation on a lot of vertex groups that I didn't have to. So now its _R instead of _r for example. Is there a way I could remove the capitalisation so its all lower case?

It just so happens that I have a snippet of python that does exactly that:
import bpy
from bpy import context as C
import re

for vg in C.active_object.vertex_groups:
    new_name = vg.name.lower()
    print(vg.name, '->', new_name)
    if new_name != vg.name:
        vg.name = new_name


Solid Wireframe, F4 shortcut I'm new to Blender - and to any 3D modelling software, really - so I started following tutorials on Youtube. In this particular case, the OP says to toggle the wireframe on the solid interface by pressing F4. Here's the link to the video, and go to minute 18:50:
https://www.youtube.com/watch?v=xYUK5HantuE&list=PLxt9ZAGPLIpcuPkSTGOJ9iZssTG3o1a0p&index=4
If I press F4, a simple contextual menu opens up:

but this should be the result:

I checked the key shortcuts in settings, but F4 is nowhere to be found in relation to wireframe:

I'm running Blender 2.91.2 on a M1 Mac.
Thanks in advance to whoever can solve this mystery to me.

He simply toggles Wireframe.
It's in the Overlays menu, but doesn't have a shortcut by default.
(You can assign a custom shortcut by right-clicking on the checkbox > Assign Shortcut.)


Physically accurate water shader I'm a bit tired of faking it and I'd like to craft a physically accurate water shader in cycles that works in most situations with minimal tweaking.
I haven't found a solution yet and i'd appreciate help.
Some properties the water shader has to have:

Glass- like appearance in small quantities

Volume and green tint in low depth

Blue colour underwater, darker the lower you go, reflective surface at top,
Ability for volumetric rays, even with sun

Snell's window

What i know is impossible with cycles: caustics

I have figured out some of these but can't make them work together.
Render times are not an issue, i just want to create an all purpose water shader, i don't intend to use it all the time.

Most (all?) of those effects can be easily replicated using the standard Principled Shader and Principled Volume shader, with the surface shader providing the IOR and surface interactions (eg, reflectivity, refraction, etc.) and the volume providing any scattering and absorption (but at a suitably low density).
At small scales the volumetric effects are negligible, making the water appear almost clear, the skewed absoption colours (set it with higher Blue, medium Green and low Red) give the different colors at different depths, the scatter can give volumetric rays and the IOR (again) will give 'Snell's window' effects when viewed from within.
This just needs something like the following (note the low Roughness, high Transmission, low(ish) volume Density, blueish volume absorption). I've also added Displacement for adding distortion to the surface.

You might want to tweak the settings slightly to get realistic behaviour with a specific scale - you should always ensure you model at 'real world' scales to ensure it's more physically accurate. In particular, the absorption and scattering (so the volumetric density) will be sensitive to scale.


How do I convert 2D text into a mesh when alt c doesn't work in 2.8 How do I convert 2D text into a mesh when alt c doesn't work in 2.8
I don't understand why this happens maybe they moved the feature elsewhere because in 2.79 in worked fine for me...

Either right click on the text object, and select Convert to Mesh or from the Object menu select Convert to followed by Mesh from Curve/Meta/Surf/Text. If you've set selection to right click in preferences, the context menu obviously will not show up when you right click, and in that case you'll be limited to using the Object menu, or, as suggested in a comment, searching for it. After clicking your way through the steps, a window that lets you tweak the conversion will appear in the lower left (if it's closed, click the arrow to open it).

If you right click instead of left click on the menu item, a submenu will appear. From there you can click Assign Shortcut to set your own keyboard or mouse shortcut to call this.

In the same submenu, there's also Add to Quick Favorites. The Quick Favorites is a user defined menu, that can be called with Q. Blender 2.8 Quick Favorites -- A Feature Everyone Will Love? has a good description of how this feature works. This video is about six months old, and the UI still looks more like 2.79 than it does in newer builds, but this feature still works the same as in the video.


Snap two objects face to face in object mode? For the love of god how do you snap two objects face to face? I've read on this forum and I've seen videos but I'm missing something fundamental about blender. I'm thinking it can't be this hard, so I'm probably barking up the wrong tree.

What I'm doing is making a model of a house so sticking the inner walls to the outer walls etc is something that I was thinking could be done in "object mode" by moving objects around.

Like, is snap point always based around the object origin? It's apparent when using snap to increment (grid). Do I have to set the object origin to align with a face on the two objects before aligning it to another object or what?

What I'm getting is moving an object into the other the "snap" circle appears and when I release the two objects are intersecting quite a lot.

/Lars-Erik

To do this:

Select the object you want to snap it to the other object
switch to edit mode
switch to face selection
Select the face you want it to be the one touching the other object
Hit Shift+S
choose Cursor to selected
Hit Ctrl + Alt + Shift + C and choose Origin to 3D Cursor
switch to object mode
Select the object you want to snap another object to it
Enter to edit mode
Switch to Face Selection
Select the face you want to snap the other object to
Hit Shift+S
choose Cursor to selected
switch to object mode
Select the object you want to snap it to the other object
Hit Shift+S and choose selected to cursor
That's it
you need to set the origin of the snapped object back to normal using Ctrl + Alt + Shift + C and choose Origin to Geometry


Lost my 3d Manipulator Lost my 3d Manipulator in my current session.

Things I've tried, ctrl space, checked snap, and reset to factory settings still nothing.

Started a new blend and the 3d Manipulator is present.

Using 2.79a on a higher end Windows 10 laptop.

tia

At the bottom of the 3D viewport, there are these buttons.

You probably don't see the manipulator wigit type buttons, so click on the button that's got the axies icon. Then, you can see the others, and choose which one you want.


Vertex Paint not painting the areas selected on Blender2.8 So I'm literally using blender 2.8 for the first time and I'm following a tutorial to make a low-poly island. I'm at where I want to paint the tip of my mountains white (while preserving the low-poly effect), what I'm doing is I selected the faces I want to paint in the Edit Mode using circle select, then I switched to Vertex Paint and picked the color using the color bar at the bottom next to "color". Then I clicked paint->set vertex colors, but it did nothing.

I'm not sure if I did something wrong or it's got something to do with blender 2.8, if anyone could point out my error or provide an alternative to my purpose it would be very much appreciated.

This has an answer here.

Is it possible to paint only on selected vertices in vertex paint?

Though I would like to add that if you are in any viewport shading mode other than Solid, the results won't show up in the 3D viewport when you are painting in vertex paint mode.

Also of note that after you get this working, you're very likely going to want to perform a render at some point. And you may run into more trouble when you get to that point, because vertex paint doesn't seem to want to render unless you go into the Shader Editor and hook up some nodes. If you later find that this is a problem, consider reviewing the following:

How can vertex paint be rendered?

How do I set a vertex color material in Blender 2.8?


Packing and Animating Rectangles in Animation Nodes I would like to re-create the effect in the below gif with animation nodes. As I see it the process would break down into these parts:

1)Define boundaries - Define some flat area that the animation will occur in

2)Create Geometry - Define a method of placing planes within this defined area, where the width and height of the plane randomly chosen between a defined min and max value. Together this arrangement of planes forms a perfectly filled flat surface.

3)Animate - The rectangles scale down in different directions. Not sure how you would do this a simple scale transform, I'm imagining controlling the vertex locations of the individual planes. The duration/rate of this animation is somewhat random, like the example.

Potentially helpful threads:

Omar Ohmad's Sphere Packing Answer:
How to animate spirals on packed spheres using Animation Nodes?

https://stackoverflow.com/questions/1213394/what-algorithm-can-be-used-for-packing-rectangles-of-different-sizes-into-the-sm

https://www.codeproject.com/Articles/210979/Fast-optimizing-rectangle-packing-algorithm-for-bu#basic

I think you should take a step back and think about this problem from a different perspective. Instead of randomly choosing the width and height of the rectangles and then try to optimize their positions to be tightly packed, you can successively split the domain into smaller and smaller rectangles. This way, the rectangles are already positioned and tightly packed as you might expect.

Algorithm

Our general algorithm can be as follows:

Create a loop that takes an initial list of rectangles as input. The list could initially contain a single big rectangles which we could consider our boundary.
For each iteration in the loop, we choose a rectangle at random and split it at a random position to produce two smaller rectangles. We then remove that rectangles from the list and add the two produced rectangles.
We could add a condition that skips the rectangles that have an area less than some threshold value. This ensures rectangles don't get too small. We could also add a condition for the areas of the resulted rectangles, but we shall not do this in this instance.

We shall define each rectangles by two 2D vectors, a vector representing the location of the lower left corner, and another representing the location of the upper right corner. Let those two vectors be $(x_1, y_1)$ and $(x_2, y_2)$. We have two ways to split a rectangle into two smaller ones, horizontal splitting and vertical splitting. This diagram demonstrate how one can compute the two smaller rectangles from the original rectangle using vertical splitting:

First, a random float $\delta \in [y_1, y_2]$ is chosen as the $y$ location of the splitting. Then the two rectangles are defined as:

$(x_1, y_1)$, $(x_2, \delta)$.
$(x_1, \delta)$, $(x_2, y_2)$.

Similarly, horizontal splitting can be done by choosing a random $\delta \in [x_1, x_2]$ and forming the two rectangles based on it.

Implementation

We shall define each rectangle using a struct of four floats. Our initial rectangle list will be composed of a single struct representing a rectangle defined using an empty in the scene. The loop will output a list of structs, those structs can then easily be used to construct quad meshes which can be output and used. The high level node tree look like this:

With the Generate Rectangles loop defines as:

As for the Compute Rectangles loop, we first get the index of some random rectangles from the list. We use that index to get the rectangle and delete it from the list:

Then we compose the four rectangles (Two for each split type) based on the formula above. A random number is used to determine if the type is horizontal or or vertical by switching between rectangles. Finally, the two rectangles are combined with the rest of the rectangles and are reassigned if the area condition is met:

And by adding some value to the seed for seed control, we get:

Which gives the following result:

Blend file:

The animation should be easy, so I will let you do that on your own.


how to manage big project? I'm working on a room with lots of stuff. This project worries me as I look at the outliner's growth. I know in term of management blender's outliner is already pretty amazing but can you suggest any better way to reduce confusion?

for example when I make an indoor plant with a lot of leaves I'm gonna have leaf1, leaf2, leaf3 ...etc How do I get all the leaf into 1 one folder?

thanks a lot

Presumably the leaves will be part of a plant - in which case you'll want to set them to be Children of the parent plant. This way when you manipulate the Parent (eg, move, rotate, scale) the children will be similarly affected rather than being left behind. You can easily Parent objects by selecting all the children, holding Shift and selecting the Parent (so the parent is the last object selected) and then pressing Ctrl+P and select from the Parent menu. When you do this the outliner will show them as being within the parent object which can be collapsed to hide them (ie, the Parent effectively acts as a folder for its children).


Transparent render layers I am trying to figure out how to work with render layers. Now I have two render layers connected to the output via Alpha Over node. But when I render the composite output layer is not the combined output of the two separate render layers. What is my stupidity?

It could be that you are not actually providing the compositor with any transparency. The alpha output socket from the scene node will just be a solid white unless you check the following properties:

Blender Internal: Turn on Shading > alpha > transparent, in render properties.

Cycles: Turn on film > transparent, in render properties.


Not executing commands immediately For example, I press left click on the 3D view to change my cursor position. Nothing happens until I do something else, for example zooming in/out.

Also, I press 'T' to hide the tools panel. It just does it after doing something else.

In summary, whatever I do, it gets executed/showed up with "one instruction of delay".

SORY if it's a noob question

Update:
I tried Blender 2.7 and Blender 2.79.
Both on Windows 7 64 bits

Resolved :)
Now the behaviour is correct, with these Window Drawing Method configs:
Window Draw Method: Full
MultiSample: 2
Region Overlap checkd

Its normally a problem with the graphic. Check that your graphics drivers are up to date. Also once you have done and if the problem is still there mess with the windows draw settings in user preferences. The settings under system.

Also have a look at these links
https://www.blender.org/forum/viewtopic.php?t=26691
https://www.blender.org/forum/viewtopic.php?t=28035


Alt-C not working in Blender 2.8 I want to convert my text object to mesh. In 2.79 it was Alt-C, are the keys changed for 2.80?

I browsed it externally and I got some thing like this image as answer..

but any shortcut-keys will be easy to work!
If you know one, you can comment below.

The shortcut Alt+c was removed from the default keymap in 2.80 unfortunately. You can bring it back by just right-clicking on the option in the menu and selecting Assign Shortcut. If you do that you will have a shortcut for the specific operation and not the convert menu like it was in previous versions. If you wanted to bring it back exactly like it was, you need to go to the User Preferences(F4 -> p), find it using Key-Binding search mode and just remove the Target property there so it is unset and you are presented with the choice when you hit the hotkey.


When to use add shader? I know the basic difference between a mix shader and an add shader, this question is about the applications of each.

I have heard that add shader should be used with translucent shaders.  But in answering a question about the difference between add and mix, Maccesch said "Add Shaders aren't necessarily physically correct.".  So my question is what does "aren't necessarily" exactly mean; and when, if ever, is an add shader appropriate when making physically-correct materials?

I think Maccesch meant that in the context of reflecting shaders.

Think of it this way:

In a diffuse+translucent material, you want the light transmitted through in addition to the light reflected off the surface.

Though you may want to darken the translucent node a bit to simulate absorption:

In a diffuse+glossy material, you want some of the light to be reflected specularly (glossy), and some to be reflected and scattered (diffuse).

Here "some"  can be conveniently defined by the factor of a mix node (which in this case is defined by the angle of the surface to the camera, via a fresnel node). Using this setup, at most you can reflect the same amount of light as received:

You don't want to reflect more light than what hits the surface, as easily happens with an add shader:

The exact difference between the two nodes is nicely covered in question you linked.


How to distort still image or gif animation I found this gif animation in Twitter as shown below. Now I want to know how that is done. I wish to put flickering effect on any still image. I'd like to use that technique on not just still images, also image sequences.
Thanks in advance.

Twitter link: https://twitter.com/mertakbal3/status/1197494768399527936

For this effect, you have to first install the Animation Nodes + Extra Nodes because we need UV Map Data Output node (learn more).

Idea: Distortion of image/movie coordinates in the material.

Step-1: Add image/movie as plane using Images as Planes option of the Blender. Then, setup the material like this in the image (please note that the Generated and UV coordinates are added together),

Step-2: Then subdivide the image (or movie) plane few times,

Step-3: I have created a 2D Noise group-node from two Vector Noise nodes which will use in the next step to set the UV coordinates for the plane,

Step-4: Now, compute the 2D Noise based on the vertices of the plane then use that noise as UV coordinates in the UV Map Data Output node and adjust the parameters of 2D Noise group-node based upon your requirement,

Step-5: Then you can also animate the z-value of Offset of 2D Noise group-node,

Final Node-Tree:

Blend File:


Model refuses to move in pose mode I'm working on a model for the VR game for school. But for some reason it refuses to move. Before it was working fine then I had to fix the tail and now it refuses to do anything. the weight painting is ok. noting is locked. the model works but it just refuses to turn the bones in pose mode... is there a fix?

Foun the problem myself with the help of a teacher


Can I implement the lattice deformation to an animation? I need help. I have a weapon I've created comprised of 5 parts. One of the parts has a lattice with 2 shapekeys. I haven't yet hit apply on the lattice modifier, but it still affects my object. I have used the two shapekeys to simulate a movement, and it looks pretty good. The thing is I move them in the shapekey editor and not in the action editor. The Action Editor wont save any keyframes when I mess with the shapekeys for some reason. Well I sent my blend to Unity and the object with the lattice does not get animated. Any ideas?

Unity doesn't support lattice deformation, but it does support bone deformation which can be used in many cases.

For example (left side is lattice, right side is bone):

You can get it to look even better if your especially careful with the weight painting.


CUDA ERROR - illegal adress when rendering I'm trying to render my scene, which was working fine before, but suddenly when I want to render it starts to throw CUDA error.
I upgraded to 2.9 and same deal.
I'm using OPTIX denoiser, but render on normal CUDA.
I have Razer blade 2020 with RTX2080 MAX-Q super
Any tips? I updated windows, restarted the laptop etc.
I'm pretty sure all my drivers are up to date.
I have motion blur enabled, as well as denoising, 512 samples, DoF is enabled as well.
Also after it shows up once, I'm getting "failed to initialize CUDA context" every time after it. :/

Sometimes when I render things and it doesn't work I just make a new project and then I append everything into that new project from my old project then it usually works. It's annoying but I don't know how else to fix it.


"stitched" style panorama in Blender? (NOT equirectangular) I'm looking for a quick solution to creating curvilinear perspective renderings in Blender. Specifically, I want the kind of panorama you'd get if you shot a panorama on a camera or were drawing a wide-angle drawing of what's around you, turning your head.

Rob Adams has good examples of the goal here:
http://www.treeshark.com/treeblog/?p=301

Equirectangular is close but it seems to be designed to keep vertical lines straight. I'm looking for curvature on both vertical and horizontal lines.

Has anyone done this? I'd prefer to avoid doing this the hard way, stitching together renders into a panorama. A script could do that, I'm sure, but even that would be somewhat clunky in terms of interactivity.

If you want a spherical perspective as your link suggests, then fisheye equisolid is the type of camera you want to use. You can find it by activating the Cycles render engine, then selecting Panoramic in the Camera type and then Fisheye Equisolid in the panorama type.

You can also do it the "post-prod" way by first rendering using a rectilinear camera (called "Perspective" in Blender) because it renders faster and has a 1 on 1 correspondence with your viewport, and then use the "Lens distortion" node in the compositor. However, this one gives an elliptical distortion if your image is a rectangle (just like a Fisheye Equidistant camera). You'd have to set up a node tree to get the real spherical distortion. It could be done using a displacement node; some gradient textures and some math nodes, but you may get some subtle sub-pixel artifacts due to discontinuities in the gradient texture node.
My web search didn't give me any result for someone who already set up a node tree for that particular projection but maybe I missed it.


Different mirrored position when i need to join them when I create head and body with different position, i want to join both of the head and the body. how to fix that?

You have to select the head ( uncheck clipping) and rotate it by 180 degrees on the z axis. Then you just have to move it until it is on the same side as the body. For the actual joining part select both edge loops, press F, then click the right mouse button and select bridge faces.


How to copy everything from one object to other OK guys first to tell you im new with blender and i found this really cool.
I made one Pakistan flag and applied many things on it like wind, subdivision, keyframes to make it waving,
now i made another American flag and i want to apply all same effects on.
Do i have to make it one by one like i did for Pakistan flag? or i can copy all the applied modifiers from one flag to other to save my time?
( I imported images as planes to make flags)

You won't be able to copy applied modifiers, but you could try looking through your backups to find a blend file with the modifiers unapplied.

You can read about this on the manual here.

  From the manual:

You can also check the folder where your blend file is for .blend1 and .blend2 files, etc. These are just backups that Blender will automatically make every time that you save your blend.


Snapping to Play Head in the VSE In the Video Sequence Editor, how can I make a strip selection snap to the Play Head (the vertical blue cursor line)?

Select strips.
Right click to open menu.
Select Snap to Playhead.


Camera is rendering in another collection I am using version 2.8 and Eevee to render. When I try to render my scene it goes blank. What I mean by that is that it just renders the background. I tried changing the active camera by control and number pad 0, but no change. I then tried going to the scene tab in the properties window and changing the camera. I then tried deleting all cameras but one. I thought that maybe somehow I am inside an object so I made everything but what I wanted to render invisible in the viewport and in the render. After each time I tried something I thought could be a solution I kept staring at a blank solid background.

Edit: Here's a link. http://pasteall.org/blend/index.php?id=52107

So I figured it out after a good night's rest. The "Display in render" option (Camera Icon) is hidden by default. In the outliner on the top right there is a drop-down menu that shows you all the restrictions you can toggle, (Selectable, Hide in the viewport, et cetera) and there it was "Display in render." It's the camera icon.


Illumination without HDRI (cycles) I would like to create a nice outside light for my interior scene, but without using hdri image (the rendering time increases a lot on my computer and most of all I can't find the way for correctly positioning the sun from hdri).
What's the best solution? Should I use a jpg image or sky background and then positioning a sun light source?

The problem with your question is that you are erroneously thinking that there are areas with lights and some without in a JPEG or other display referred image.

In reality, every single pixel is an emitter of light. As you may guess, with all of the crazy math involved in a ray tracing engine, all of that light ends up with a very complex interaction series in any image. This means that it is impossible to simulate real-world lighting without using some form of IBL.

Worse still, a JPEG is what is known as a display referred image. That is, the encoding of the image takes all of the data of a scene and maps it into the display referred range of 0.0 to 1.0. During this transition, you are losing a tremendous amount of the information in a scene.

The most ideal format for IBL is of course EXR[1]. This format permits storage of scene referred values from zero to infinity, which helps to encompass the complexity of most captured scenes.

[1] For those interested in the nerd stuff behind this statement, there is a great discussion of encoding quantization here.


Marvelous designer to Zbrush to Substance painter to Blender workflow issue I've been following the cyberpunk jacket tutorial I got by Travis Davids and everything has been going mostly smoothly until now when I imported my garment from Zbrush and Substance painter to Blender and something clearly is wrong but I'm not sure what it is.
Here is what it looks like in Substance painter

Iray (I think that's what Substance uses)

And here is what it looks like in Blender

As you can see some parts look right but most of it doesn't.
The fact that it looks fine in Substance but not blender makes me think there's something missing I have to do either in Blender or when I'm exporting to Blender.
In the tutorial, he brings it into Cinema 4d to get the final render but I'm using Blender.
I followed this tutorial on how to export Substance to Blender https://youtu.be/EiAQqOZqGHc.
Does anyone have any suggestions? I would greatly appreciate it!

I figured It out!
I noticed the UV is flipped when I compared Blender to Substance so I flipped it in Blender and manually aligned it and it's fixed now!