Proxy/Link –> Problem seeing colored Proxy rig over black Linked rig Hi blender stackexchange community!
I'm trying to Link my rigged character into a blank animation scene for the first time, to be able to rework my source scene in the future and get updates in all my animation scenes.
The collection-linking process works, then I create a proxy of the rig selecting only the Armature (that works too). My problem is that when I'm in Pose mode with the Proxy only selected, The black linked-collection (and rig) overlaps over my colored Proxy-rig (the "Bone Groups" colors I initially chose in my source scene). I actually somehow see some of the colored controllers(bones), but not the others.
That's the original colored Armature:

And that's when I show the linked-collection:

Is there a way to hide all the rigging stuff in the black linked-collection and only keep the geometry shown, so that the colored Proxy-rig controllers are the only ones showing up?
I tried to make the Proxy "In front" of the Linked-collection, but it doesn't work. And If I hide the linked-collection, I'm missing the geometry.
Thank you very much for your feedback!
Carl

I think I have the answer (sorry for English, it's not my main language). All you have to do is disable the rig in the viewport (hide too). Save the file. Then follow the steps you did before (link colecction and make proxy) and you are done.


Why isn't Armature>Separate Bones working for me I'm a blender noob.

I obtained a blender model which has two rigged low-poly hands attached to an armature with shoulders and arms.

I'd like to edit it so that it only has the right forearm and hand.

I think that I should be able to do this by selected the relevant bones and then using ctrl-alt-p to make the arm a separate armature.

But no matter what I try that command doesn't seem to do anything.

I'm using Blender 2.79, on a Mac.

In edit mode, select the bones you want in a different armature, then press P.


How do I get the Glare node to output transparent instead of Black background This is what I have so far:

The rendered image has a transparent background, but the glare filter creates an output with a black background, so after merging the two togheter, the background turns black but I need it to be transparent, what can I do?

Use Alpha Over to composite the two images:

To have transparency enable "Use Alpha"

NOTE that if you try to display the image on the render viewer using Color+Alpha (RGBA) you won't see the correct results. To view the glow information you should use Color only (RGB)

The glow information is there, you just can't see it,

The viewer is broken and cannot represent associated alpha correctly. Pixels that are emissive and transparent at the same time will not show (for example when rendering fire).

If you composite an image (or a solid color) behind it you'll see the correct results though.

If you need to export the image with transparency use EXR, do not use PNGs, then just bring the EXR sequence and composite using alpha over.


How to get the caption of a text object in Python? I've got a Blender file with a lot of text objects and I want to do some scripting modifications on specific text with specific caption.

Is it possible to get the caption of a text curve in Blender?

For example, in the image below the caption that I want to find in Python is: 'This is a test'

Yes, you can access the text via the body attribute,

Example:

# assume active object
obj = context.object
curve_text = obj.data

print(curve_text.body)

# set a new string
curve_text.body = "This is a NEW test :)"


light split along texture in cycles I recently applied a normal map to a model I'm using in cycles. I then added a lamp to get a better look at it. Then this happened:

Here are the nodes:
How do I smooth the light on the mesh?

Set the normal map to non-color data. This means that Blender will read it in linear space, which is what it expects for a normal map.
Also, please disconnect that alpha from the strength of the normal map unless you've got a good reason to have it there. It's (slightly) slowing down your render for probably no benefit.
If that normal map is ripped from the game, you might need to flip the green channel for it to show up correctly in Cycles. The fastest way to do this is to add an RGB curves node in the Cycles material (Add>Color>RGB Curves), click the G on the node so the curve only affects the green channel, and move the points at each end so the one on the left is at the top of the box and the one on the right is at the bottom of the box. This will make normal maps formatted for use with Unreal Engine 3 work better with Cycles' tangent space, although not perfectly. In the end the node should look like this:

Of course, you can also do this in a bitmap editor like Photoshop, Krita or GIMP.


How to create a low poly model from a high poly model I have a high poly model and I want to shift the resolution down.

I know about baking textures, but I was wondering wheter this is the best solution.

I don't need to capture all the details.

There is a function in zbrush that does this (you can choose how many percent of the polys that you want to keep), that shifts the resolution down but keeps most of the forms. It only tweeks it a little.

Your best option is to use the Decimate modifier. It allows you to control how much of your mesh your want to reduce.

The Decimate Modifier:


How can I set the geometric resolution of a primitive? I'm having trouble creating a high resolution sphere in Blender.

I can create a sphere with Add -> Mesh -> UV Sphere.  This sphere will be viewed very close to the camera, and it's obvious (in Unity) that the object is not round.

There doesn't seem to be any way to set or increase the number of vertices / segments in the sphere either during creation or afterward.  Is there a menu I'm supposed to be seeing that's not in my view?

^ This is all I'm seeing in Blender.  No obvious way to set the sphere's resolution.

^ Sphere looks pointy in the game.

Blender 2.8
In Blender 2.8, after adding a UV sphere, a flyout appears on the bottom of the 3D viewport:

I have no idea on how to access that with a keyboard shortcut.
earlier versions
If you press T before adding the UV sphere, you should see the "Transform" panel which allows you to set the  segments and rings.

If you already have the UV sphere and want to modify it instead of creating a new one from scratch, you could use the Subdivision Surface ("Subsurf") modifier.


Python: Select specific parent object automatically on selection change? I have written an add-on which visualizes objects on a racing game track.

Each in-game object is an empty object in Blender with one or more children mesh objects being the visible model as seen in-game. The empty holds the game-relevant properties in a PropertyGroup which are visualized in a custom Panel.

Basically, the object hierarchy looks like this:

ItemBox < Empty object holding custom properties the user is interested in

ItemBoxOuter < A model the user selects
ItemBoxQuestionMark < Just another model the user might also select

Start < Another empty holding custom properties

StartLine < Another model

and so on

Since empties are hard to select and often covered and encased by the models, I want to redirect the selection of such child mesh objects to the parent empty object. Is it possible to modify how the selection operator works here?

Background: At first I worked around this by letting the Panel which displays the PropertyGroup use the parent object to show its data. However, users began to move around the child model objects (having selected those), effectively keeping the in-game object at the same place as it uses the transform of the empty object.

I could solve this with an apphandler I registered to. I added a custom property to the model objects to recognize them in there.

def register():
    bpy.app.handlers.scene_update_post.append(addon.scene_update_post)

def unregister():
    bpy.app.handlers.scene_update_post.remove(addon.scene_update_post)

# ---- In the addon module ----

def scene_update_post(scene):
    ob = scene.objects.active
    if ob:
        # Redirect the selection of a model mesh object to the parent track object.
        if ob.is_model:
            scene.objects.active = ob.parent
            ob.parent.select = True
            ob.select = False

This works even when multi selecting objects!


How do I change back to normal default view from user perspective view? I don't know how to return to animating because it all disappeared when I hit 0 and it went to perspective view.

Just hold middle mouse button and drag to rotate the view.

The 5 on your Numpad switches between perspective and orthographic view.

Numpad 0 switches into Camera view.

Numpad 1  Front View

Ctrl Numpad 1 Bottom View

Numpad 3 Right View

Ctrl Numpad 3 Left View

Numpad 7 Top View.

Ctrl Numpad 7 Bottom View


Artifact on my model's nose I was following this tutorial for making a 3d avatar from scratch, and found that there was an artefact on the nose of my model. The modifiers used are the mirror modifier along the x axis and the subdivision modifier.
0 subdivisions:

1 subdivisions:

Can anyone explain why this artifact is occurring and what I can do to remove it?

i had the same problem a few months back, my solution to this was checking for duplicate vertex, check if a face on the inside of the mesh is preventing the merge, and recalculate normals, that or your vertex isnt aligned to 0 properly.
most of the time i fixed it by recalculating normals with Shift N
hope it helps


Colourful Play-Doh like Material How can I create a clay (in a Play-Doh style) material like the one in the image below?

Something like this might be a good start.

Two Voronoi textures are distorted by two noise textures, each Voronoi texture controls a color ramp with a few different colors.

The results are mixed together and get even more distorted by another noise texture. The Mapping node at the start controls the general direction of the clay strains.

Link to the .blend file:

You can play with all the values, maybe you get even closer to what you want.


Problem with image texture name in image node that not match with the texture being used in the model See the vids below that shows the problem.

https://youtu.be/LGhD4H9cn9Y

i was texturing in texture paint mode using the image named "Face X3.png". after heavy tweaking i decided to save the texture into different texture and name "Face X4.png". The problem was whenever i changed the texture in the image texture node the name is still "Face X3.png", even though clearly i was using "Face X4.png" My model also rendered correctly with the texture "Face X4.png".

This problem sometime exist since version 2.7x, i think it was some problem with the image saving feature after using the Blender texture paint mode.

I think you are confusing the name of the file, and the name of the texture slot inside Blender :

The name of the texture slot can be whatever you want (you can change it ie. in the Image Editor).

When you open a picture file, Blender automatically create a new slot and name it as the file. But, if you then change the file, the slot will keep it's old name, which can indeed be confusing.


How to match cycles texture with displacement modifier? I created a diffuse material in the node editor in cycles on a UV-unwrapped standard default plane from a noise texture.

Then, I added a displacement modifier and in the texture option, there was exactly one option. I wanted to exactly match that noise texture, but it doesn't. No matter what I do, the changes I made to the material node editor have 0 effect on the displacement map, which begs the question: where the hell is this displacement map from?

There are two forms of displacement texture. One is the Displacement modifier, which is a modifier and runs off of a texture. You can edit the texture by clicking the checkerboard-like icon when you have the Displacement modifier open. For that, you can choose a noise texture if you want, and there are some parameters you can apply. You could also choose the "image" option, to load an image of the noise texture you're using.

A better option for you, though, would be to use the "displacement" option in the material node editor. The final node in the editor has three inputs: Surface, Volume, and Displacement. Plug your noise texture into a Displacement node (from the Vector section), and connect that to the Displacement input. Then, in the settings for the material itself, set the Displacement mode to "Displacement Only" or "Displacement and Bump". The change won't be visible in layout mode, but it will be visible in render mode.

EDIT: To help with clarity, here's a screenshot indicating the "edit texture" option when using the Displacement modifier. To be clear, the "checkerboard icon" I was referring to is circled in red.

Here's a screenshot indicating the menu within the texture edit panel where you can control what type of texture you're using. It does not interface with the node editor, to my knowledge, but you can use an image of your noise texture. To be clear, the menu is circled in red.

Here's a screenshot presenting the node setup I suggested. There's no red circle in this one; I hope you're able to figure it out anyway.

For the "Displacement Only" and "Displacement and Bump" settings, go to the Material edit pane (in the panel on the right, where you found the modifiers), then the "Settings" section, and then the "Surface" section within that section. Please note that this option will not appear if you do not have "Cycles" selected as your renderer.


Howto convert Step(*.stp) to AutoCAD(*.fbx) with python Script (and also decimate the face ratio) Hello to every one who is reading this,

I know how to convert and decimate files in Blender. Now I would like to safe me some time and get a litle in to the scripting.

So I checked here for some Questions/Answers, @wiki.blender.ord for documentations and scripts. Like here https://docs.blender.org/api/blender_python_api_2_76_1/bpy.ops.import_mesh.html

Also ich have copyed and changed this little Script:

import bpy
import sys

argv = sys.argv
argv = argv[argv.index("--")+1:]

stl_in = argv[0]
fbx_out = argv[1]

bpy.ops.import_mesh.stl(filepath=stl_in)
bpy.ops.export_scene.obj(filepath=fbx_out)

As there is no import's for *.stp the exported fbx file by this script is garbage, if I convert a stl file with this.

Question 1: Is there a way to import *.stp File in to blender, with out converting the *.stp file in to *.stl or other by Blender acceptable type with external tools?

For the part of decimate of faces i found this script:
https://gist.github.com/wooddar/0a5f409dc67cc045c421

I have tryed following:

bpy.ops.import_mesh.stl(filepath=stl_in)
bpy.ops.object.modifier_add(type='DECIMATE')

bpy.context.object.modifiers["Decimate"].ratio = number_of_faces_in_stl_obj/max_faces

Here I have two problems, the first it didn't worked at all. The second on is how can i get the number_of_faces_in_stl_obj so I can calculate the ratio.

Question 2: After I've imported an object with 'bpy.ops.import_mesh.stl(filepath=stl_in)' do I get with 'bpy.context.object' to some thing like number_of_surfaces/polygons?

In andvence thank you for you help.

EDIT: Added my Questions

Is there a way to import *.stp File in to blender, with out converting the *.stp file in to *.stl or other by Blender acceptable type with external tools?

Unfortunately no. The current import tools available in Blender do not allow (to my knowledge) to read and / or interpret NURBS input data. Some way or another, this always has to be processed by an external application first, and then be brought into Blender in a second step.

There are a few tools out there which can assist in this, you already mentioned FreeCAD which does a good job on less complicated input files. Many times however you're stuck with proprietary commercial software. A solution that works well is Autodesk Showcase. It reads many industry standard formats, allows for dynamic tessellation of parts / files, gives you a nice visual representation, and exports well to .fbx, which is the preferred format (for me) to bring stuff into Blender. Main advantage: With this pipeline, custom split normals are generated and imported correctly.

  After I've imported an object with 'bpy.ops.import_mesh.stl(filepath=stl_in)' do I get with 'bpy.context.object' to some thing like number_of_surfaces/polygons?

Of course. You can use len(bpy.context.object.data.polygons) to get the polycount of the active object. len(bpy.context.object.data.vertices) and len(bpy.context.object.data.edges) are the vertex and edge counterparts. In essence, bpy.context.object.data.polygons and the like are Python lists, where you can access each individual face / edge / vertex.


when i use a text object i see text in the background that is not suppose to be there. what am i doing wrong that causes extra text to appear? So I am using a text object for a game over screen in BGE. i use the code:

if B ['GAME_OVER'] == True:
    T.text= 'Game Over \nYou Lose'

the problem is that at the starting point of the text object the word 'Text' appears directly over the first word. i use this in other places but it dosen't have the same problem. is there something i can check to find the issue or a setting i might have messed up in the process?

Sounds like you have a second text object there.


Unable to Loop Cut Odd Shape I created this odd shape through multiple loop cuts and extrusions, merged the faces (F) so I can start with a "clean slate". Now I'm unable to loop cut straight across this new face.
By loop cut I mean CTRL + R so if that's the wrong name for it let me know.

What are the rules to loop cutting? Why can't I cut across this new face?

The reason you cannot make a loop cut is because your front faces are n-gons (faces with more than 4 vertices).

You can fix it by using the knife tool (K) to connect the loose vertices and make them into quads.

Once it's done (all faces are quads), you will be able to make a loop cut.


Cant change objects' property - Writing to ID classes in this context is not allowed. location: :-1 I can change object's property using operator or just pasting bpy.data.objects["BF_platform_twelve"].hide_viewport = True at the beigining of file or in python console, but i need to change object's property by changing drop down value only.
This works fine, but i need to get rid of button.

When im just checking value everything works fine except editing objects property
layout.prop(mytool, "my_enum")

if mytool.my_enum == 'OP0':
     bpy.data.objects["BF_platform_twelve"].hide_viewport = True #Writing to ID classes in this context is not allowed. location: <unknown location>:-1
     layout.prop(camera, "lens", text="Угол обзора") #This works fine

Error:
Python: Traceback (most recent call last): File "D:\desktop\BF_Default.blend\blenderfight.py", line 51, in draw AttributeError: Writing to ID classes in this context is not allowed: BF_platform_twelve,  Object datablock, error setting Object.hide_viewport  location: <unknown location>:-1
Full code:
import bpy

class MyProperties(bpy.types.PropertyGroup):
    my_enum : bpy.props.EnumProperty(
        name= "",
        description= "sample text",
        items= [('OP0', "Ничего", ""),
                ('OP1', "Квадрат", ""),
                ('OP2', "Двенадцатигранник", "")
        ]
    )

class Platform_Panel(bpy.types.Panel):
    bl_label = "Платформа"
    bl_idname = "Platform_Panel111"
    bl_space_type = 'VIEW_3D'
    bl_region_type = 'UI'
    bl_category = "BlenderFight"

    def draw(self, context):
        layout = self.layout
        scene = context.scene
        mytool = scene.my_tool
        camera = bpy.data.cameras[bpy.context.scene.camera.name]
        render=bpy.data.scenes[0].render
        cycles=bpy.context.scene.cycles

        layout.prop(mytool, "my_enum")

        if mytool.my_enum == 'OP0':
            bpy.data.objects["BF_platform_twelve"].hide_viewport = True #Writing to ID classes in this context is not allowed. location: <unknown location>:-1
            layout.prop(camera, "lens", text="Угол обзора") #This works fine

classes = [MyProperties, Platform_Panel]

def register():
    for cls in classes:
        bpy.utils.register_class(cls)
        bpy.types.Scene.my_tool = bpy.props.PointerProperty(type= MyProperties)

def unregister():
    for cls in classes:
        bpy.utils.unregister_class(cls)
        del bpy.types.Scene.my_tool

if __name__ == "__main__":
    register()

Draw Def using only for UI.
I had to add "update" in DD menu props that call a function in case value was changed
def common_update(self, context, origin):
    if origin == 'my_enum':
        print('button_one', getattr(self, origin))
        # bpy.data.objects["Macbook_Gold"]["00_iSight Camera Indicator"] = getattr(self, origin)

class MyProperties(bpy.types.PropertyGroup):
my_enum : bpy.props.EnumProperty(
    update=lambda self, context: common_update(self, context, 'my_enum'), #<------------
    name= "",
    description= "sample text",
    items= [('OP0', "Ничего", ""),
            ('OP1', "Квадрат", ""),
            ('OP2', "Двенадцатигранник", "")
    ]
)


How to show operator properties when running operator in scripts or console? I run an operator in the console, but the operator properties are not shown in Tool Panel.

However, if I run the operator from search, the properties will be shown up.

How to show operator properties when running operator in scripts or console?

That is called the Redo Panel. Built in operators executed from the command line won't automatically show up here. You would need to make your own operator class with an execute function that has its own properties that are used in executing the operator.

import bpy
from bpy.props import IntProperty, FloatProperty

class BoxOperator(bpy.types.Operator):
    """example of making a box"""
    bl_idname = "object.box_operator"
    bl_label = "Simple Box Operator"
    bl_options = {"REGISTER","UNDO"}

    x_location = FloatProperty()

    def execute(self, context):
        bpy.ops.mesh.primitive_cube_add(enter_editmode=False, location=(self.x_location, 0, 0))
        return {'FINISHED'}

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

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

if __name__ == "__main__":
    register()

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

Executing this as a script will work. However, if you register this class and run it from the python console, you will still not get a redo panel. You would need to enter all of this line by line into the python console or execute the operator from the 3d view.


Convert VOXEL model to soft Mesh I'm working with models generated as voxels like those showing in the following picture from the internet:

I'm trying to do basically the same you see on the image: turn a voxel-based model into a soft-mesh based one. Don't mind abut texture mapping, just geometry.

Is this achievable in Blender?

I can't tell you how to import voxel data into Blender, but if there's no dedicated importer, you can try MeshLab to convert to a supported format. For example, PLY or STL to import as vertices. If there's no real surface yet, you may use MeshLab's pointcloud triangulation capabilities and export as .OBJ.

Once you have a mesh object in Blender with a surface, try the Laplacian Smooth Modifier, which lets you smooth mesh surfaces while retaining a lot of detail.  Go to Properties Editor > Modifiers and add it to your object.

More information: official documentation


How can I use the "Fill" in texture paint on only a single face instead of the entire uv map? Kinda like what I did with the red in the image, but more precise with the drawing. Also I'm pretty new to Blender so don't expect me to know everything yet

select your object

choose texture paint from the menu

tab -> edit mode

choose "face select mode"

select the faces you want to paint on

tab -> texture paint mode

click this button: paint mask

paint what you want -> now you just paint on that faces you selected

you can select the faces in the texture paint view too...just tap on select and choose your favorite selection mode

you can check a tutorial video here:
https://youtu.be/TYq49SLlot8.  (just be a little bit patient, my internet is not fast)


Moving camera around in camera view in Blender 2.8 In Blender 2.79b, you can move around in the camera view by pressing Shift+F.  When I tried it in Blender 2.8, it doesn't seem to do anything. Does anyone know how to do this in Blender 2.8?

You can link the camera to the viewport and then rotate/pan/zoom as you are used to from the viewport - very handy!
Just

press N tp show right menu
view tab
view accordeon
view lock accordeon
check "lock camera to view"

All credits to this guy on YouTube...


How to get a Blender Obj to render in Adobe Dimension properly? I would really appreciate any help. New to blender. I am trying to make a 3d model in blender then export as obj to take into Adobe Dimension. I have been trying for days and everything I make that I render in Dimension is black. My guess is the UV on my models. Pre made items like the monkey or far left tube with the top taken off work. but not the 2 center things i made using the circle mesh. Also I noticed the inside of the far left tube is always rendered black on the inside. I can also import other obj from online, add sub surface to smooth and then into dimension and it is fine. Any insight into what I need to change on my model to render correctly would be amazing. Thank you.

you can see that the ones that dont work are a different blue/gray colour in the 3D viewport. This means the normals are inverted and need to be flipped (your mesh is inside out). Select the object, go into edit mode, ctrl+F, flip normals and see if that fixes the colour.


Pose mode isn't working i've finished rigging and skinning my character in my blender file...  Now i want to animate my character, but when i try the pose mode, i can't move my bones...  I've tried everything.  I've also noticed my bones are blue when i select them.

You can find the .blend file here:  http://dropcanvas.com/1p1r0

thanks a lot for your help

You need to set the Manipulate Center Points to Off as shown below:

Now you will be able to rotate your bones as shown below:


Couldn't get the right coffee color and the thickness of glass cup I was trying to follow the coffee cup tutorial by Blender Guru on https://www.youtube.com/watch?v=fdWUjEMzDhg&t=235s
However, I have two major problems with my own project:
1， I couldn't get the right coffee color changing the "Color" and "Density" in Materials -> Volume (Volume absorption), I've also tried changing Base color in Principled BSDF but I got nothing close to real coffee color. Both colors don't work the way I thought.
2, There's no gap between liquid and the cup outer wall (no thinkness of the glass cup).

I've given a try for the glass material, it's not completely accurate but in my opinion it creates the illusion. I haven't changed the coffee material itself.


Tips for sculpting tile-like terrain I'm looking to make a terrain system sort of like in the fourth and fifth generation Pokémon games. It's just all gridded basically, and reuses the same pieces all over.

An example of the type of terrain I'm trying to create:

I just started using sculpt mode. The problem I ran into was that I can't get the edges of the pieces to line up without some ugly gap (I'm mainly talking about the mountain-side pieces). Does anyone know how to make it so this kind of thing can work, so the edges will line up without odd gaps?

As an expansion of gandalf3's answer, I'll give a quick workflow on how to make tiling easier...

Start with a mirror modifier on your object along both the X and Y axes.

Model the edges of the mesh. Since you have the mirror modifier, it will tile evenly along both the X and Y objects.

Apply the mirror modifier.

Hide the edges of the mesh (Select the edges you want to hide, then press H. To hide in sculpt mode press H (this will bring up box select) and select the very edges of the mesh), and model (or sculpt) the middle part of the rock.
Since you hid the outer edges, they will not be effected when modeling the rest of the rock.

Unhide the hidden edges (Alt+H)

Tile using the Array modifier.


How can I add a bone constraint to an armature bone if it only lets me select the individual bones outside of Object mode? I need to add some bone constraints (specifically IKs) to an armature and therefore need to select an individual bone. However, I can only do this in Edit mode which removes the option to add bone constraints in the first place. How can I do this properly?

File:

To create a constraint follow these steps:

1) Select a bone in your edit mode; in this way you are working with your armature and not with your main mesh

2) Then switch from Edit mode to Pose mode

When you clicked on Pose mode you'll see your selected bone changing color from orange to blue

3) Now you can select the bone you prefer and create whatever constraints you need. You found all the types of constraints here in the image below


Should I be concerned about this pivot point? I'm done modeling this figure, and I'm fixing to UV unwrap it. But before I do that, I want to make sure that everything is neat and ready. So I tried to apply the scale, rotation, and location of the objects. This is my first character I've ever done in Blender, so I'm not sure if this pivot point is behaving as it should or not. Here's what I mean.

So This beret type hat is parented to the main model. And it's location and scale and whatnot are applied. But the pivot point matches the model's pivot point. I tried to make the pivot point of the hat in the middle. Like this.

I set the origin to geometry, but that messed up the location. But if I apply the location, then the pivot point snaps back to the bottom of the model as it was before... Is that normal? When people model characters and parent objects to the mesh, is it okay for pivot point to be the same for every object that it is parented to, to be the same?
Well, thanks in advance everyone! I want to make sure that the UV unwrapping goes well, because it's the only thing in Blender I don't like doing. Is there anything else about applying location I need to know about before unwrapping?
Thanks again, and Godbless you guys!

The short answer is good news: This doesn't matter, because all of this kind of stuff won't really affect UV unwrapping or texturing, and you can go back and change it later if you need to. You might start to run into problems if you have a non-uniform scale, so it's best to apply a scale before UV-unwrapping. Blender will give you a warning if this is the case.

When you apply location, that means you are setting the origin of that object to the origin of the x-y-z volume, so that is exactly expected behavior.

Where you want that pivot point mostly depends on how you intend to animate your mesh. If you're using an armature, and mapping parts of your mesh to bones, then it doesn't really matter where the object origins are. If you want to be able to animate that hat as its own object, it probably makes more sense to keep the origin in the center of the geometry, because that's the point about which you'll animate rotations.

You can change your origin in the Object menu under Set Origin. Typically you'll either Set Origin to Geometry, or Set Origin to 3D cursor if you need the origin to be somewhere specific, like at the hinge of a door as opposed to its center.

So for example, if you wanted to keep the hat where it is, with the hat's origin at its center of geometry, here is how you would go about it.

Select the hat. Object > Set Origin > To Geometry
SHIFT+click the character to select it as well and hit CTRL+P > Set Parent.


Fixing Spiral Topology Trying to create an all quad mesh and I keep getting these spirals in my topology.  Any good tips on getting rid of spirals like this?

Go into edge mode ⎈ Ctrl↹ Tab and ⎇ Alt RMB select the spiraling edge loop. Follow it untill you hit a pole vertex with an uneven edge count.

Starting from the pole vertex, ⇧ Shift RMB select the chain of vertices which is perpendicular to the spiraling loop. V Rip them, then make new faces F joining the correct vertices on both sides.


What does the compression setting do to a PNG? I was most surprised to find that the compression setting in the render settings, made a huge difference in the file size of a png. Is there any image quality degradation with the compression on?

What does blender do to the png if the compression is at 100%, as apposed to 0%?

No, the compression slider does not affect the image quality.
PNG uses a lossless compression algorithm called DEFLATE (among some other things), which is the same as is used to produce .zip files.
Long story short, the only difference between PNG files with 0% and 100% compression is the CPU time it takes to perform the compression (and of course the resulting file size).
Some tests:
Saving a 1920x1080 render of the default cube:
0% compression:
0.66 seconds, 8116 kilobytes (8 megabytes)
Zipping an uncompressed png produced a 48 kilobyte file.
100% compression:
0.86 seconds, 36 kilobytes
That's a compression ratio of 225 (!) and a time difference of .2 seconds.
Saving a pure high-frequency noise image (also 1920x1080):
0% compression:
.9 seconds, 8116 kilobytes (8 megabytes)
Zipping an uncompressed png produced a 5496 kilobyte file.
100% compression:
2.01 seconds, 5108 kilobytes (5 megabytes)
That's a compression ratio of 1.58 and a time difference of 1.11 seconds.
All tests were conducted with blender and compression times measured from the "saving" time printed to stdout and averaged over five samples.
As you can see, more uniform images (like the grey flatness of an empty blender scene) are much more compressible than highly variable images (such as pure RGB noise). The time it takes to perform the compression isn't very significant even in a worst-case scenario, however that 1 extra second could add up when rendering an animation.


How to simulate particle so bigger particles will fall faster than smaller ones In Blender, i have a particle system with random size of particle element. How can i simulate so the bigger particle will fall faster than smaller particles. The idea is to have different 'drag' effect to each particles where the bigger the particle, the smaller the 'drag' will affect it or in simple word : the bigger particle will easily fight air resistence so it will fall faster. Is it any parameter to set to handle this task ?

So far i can think only to create multiple particle system with different 'drag' value then combine those particles systems.

edit :
additional notes...
 i'm not trying to simulate the ideal physical world, but real world. in ideal world v(speed) is not affected by mass, but by acceleration (a) or in this case gravity (g). v=v0+gt. and since the g is constant and no v0 (initial velocity) then the V will be the same -> in ideal world bigger and smaller fall the same, the only different is the energy need to stop them. So i want to simulate the real world where the bigger mass will 'easily' fight air resistance as its force (f=ma) is bigger so the air don't have enough energy to stop them. simple example : the real world like when bullet hits a wall and when debris is falling , the big chunk will fall faster (air can't hold it) while the smaller debris just need to float before hits the ground. The story will be different if there's no air.

Also what i mean by bigger particle is bigger in term of mass not just the volume. Bigger volume does not neccessarily have bigger mass. As in my example : bigger chunck of wall hit debris. Also i'm just curious if this can be done in blender simulation, i know for my case i can solve it with other way, but i'm just want to explore how far this blender sim can go.

Thanks

If you don't want a real world physics involved You can do that easily with Particle Texture.

Let assume that you want the particles to move downwards (-Z) emitted from a Plane.
Set the particle system Field Weights - > Gravity to 0
Set the direction of the particles to Normal : -3
Optionally, set the all the particles to be emitted from the Start frame
Set the size of the particles to some value. You don't need to randomize the size with the Random option at this point.
With the Emitter object selected go to Texture tab in Properties editor. Make sure you're in Particles Textures .
Create a new Texture.
Make the new texture to be of Type: Clouds and for Basis chose Cell Noise. Let Coordinates be Generated.
And finally in Influence deselect all and turn on Size in General and Velocity in Physics.

In this way the color of the texture will control the size and velocity of the particle by it's initial location. Lighter values will increase the size and velocity. Darker values will do the opposite.


Blender 2.83, compatibility with files from older versions This might be a silly question, but when opening a file from Blender 2.79 in Blender 2.81, the layout of the screen is different and some materials get messed up.

Does this or something like this occur when opening files from 2.81 in 2.83? I'm contemplating downloading the latest version and I'm in between projects and don't want it to mess up my workflow.

Thank you for your help!

Yes, you can do it (you can always have more versions of blender installed on the same computer). You only need some care about the liquid/smoke/fire simulations that have been updated recently.


Pan or zoom in the VSE I am trying to create some graphic matches on action (on either side of a transition, similar shapes are in the same place on the screen.

To accomplish this, I have an image with some targets which I would like to keep semi-transparent so that I can scale and move my footage underneath to precisely the right position.

I have considered pushing each clip into a separate plane on a separate screen, but I'm not sure how I would get a semi transparent overlay using this. Anyhow, it would be preferable to keep my edits within the VSE.

Any ideas?

I figured it out. Go to Add  > Effect Strip > Transform, then right click on the element that you want to transform (i.e. the x offset) and select Add Driver. Now you will be able to pan/zoom dynamically and edit this change with keyframes on the graph screen.


How to undo split normals? Is there a simple way to undo split normals? It seems that it can be done with Python code like described in Clear Custom Split Normals Data on all objects but how to do this for one object using the normal Blender user interface?
Steps to reproduce the problem I'm having (Blender version 2.90.1):

Create a new Blender file.
Delete default cube.
Add new mesh: Monkey
Right click (or any other way to open the Object context menu) the Monkey (Suzanne) and select "Shade smooth".
In Properties view: Object data properties, check Auto smooth and set angle to 50.

The top of the Monkey is now smooth but ears still have sharp edges. Adjusting the Auto Smooth angle results in live update to smoothing of the Monkey.

While Monkey is selected press TAB to enter Edit Mode
Select Mesh - Normals - Split from 3D Viewport menu.

Auto smooth is now broken. How to undo the split normals so that Auto Smooth angle setting of Monkey still works as between the steps 5 and 6? (Obviously I'm not asking how to press Ctrl+Z, imagine that there has been lots of edits to scene after the step 7.)
It seems that at least Mesh - Normals - Merge is not the correct answer. I would have expected merge to be opposite of split but this doesn't seem to be true here.

@scurest had the correct answer for this one. With Blender version 2.92 it seems undoing Mesh - Normals - Split is a bit harder:

Select the object and click "Clear Custom Split Normals Data" in properties editor - Object Data Properties - Geometry Data. (See image below.)
Press TAB to enter Object Edit mode (or select it from viewport top left corner).
Press key a to select all (or use Select - All from menu).
Select Edge - Clear Sharp from the viewport top menu.

It seems that with Blender version 2.92 the action Mesh - Normals - Split does both adding custom split normals data and marking all affected edges as sharp. To undo that, both must be fixed.
This is documented at https://docs.blender.org/manual/en/2.92/modeling/meshes/structure.html#modeling-meshes-normals-custom


Shapekey range animates in viewport but not in render I have a mesh with two shape keys (Basis and Key). I keyframed the value of Key from 0 to 1 and back to 0, and added a cyclic modifier to its f-curve, so that the mesh continuously "pulses" between Basis and Key. Then I add keyframes to Key's Range Max, to control how much the Key shape influences the mesh at different times.
When playing the animation in the 3d Viewport or rendering a still, everything behave as expected, but when rendering the animation, the keyframed Range Max is discarded. If I start rendering whilst the playhead is on a frame where Range Max = 1, it stays at 1 for the whole animation and it stays at 0 if I start rendering from a frame where Range Max = 0 (so in this case doesn't animate the shapekey at all).
I've search to see if it's a known bug and didn't find anything. Also saw that cyclic dependencies could be a problem but I don't think that's what's happening here.
Here's a simple test file to illustrate. Compare playing in Viewport, with rendering from frame 1 to 100, with rendering from frame 50 to 100.

Edit: looks like a bug so I filed a report here

It is a bug in 2.90 (and 2.8x). It is fixed in 2.91 alpha


Gooey / Transparent Material How would i replicate this look? I want to make some of the pokemon characters and have tried putting a transparent shader, a glass shader, and translucent.  I have tried in both blender internal and cycles. I want it to look quite cartoony, but have no idea how to achieve this look.

Slime:

Inner object:

You'll have to adjust the settings to suit your model and lighting. I used a couple of lamps, only one that cast shadows. Increasing the 'Fac' of the mix shader on the inner object material makes it brighter, and the two in the slime material control the slime's brightness and transparency. (Left is transparency, right is brightness.)

I used lamps with a size of zero to make the shadows sharper.


Is there an easy way to uv map a circle to a half of a sphere? The default map of a sphere is a square but i'm trying to map a circle to the top half of the sphere and doing it manually is tedious and inaccurate.

Let's say you have half a sphere:

go to orthongraphic top view (Numpad 7, and  Numpad 5  to togle orhto or perspective)
select all faces, press U, to unwrap, and select Project from view (bounds)

The bounds option means that blender fit the UV map to fit the bounds of the UV image. Note that this will only work without distortion if the image used for UV mapping is square.


While loop Drivers and additive movement Im working on a little project that uses drivers... I have used them extensively but Im failing to find a solution for this problem. In this project I wont use scripts. Also, this is not on BGE, but on the regular viewport.

Im trying to make a driver expression on an empty0 so that it's X location is added by 1 every time some other event happens. For example, if a cube location goes from 0 to 1, add+1 to empty0 once. But this must work on runtime, 24fps.

So this is the problem: driver expressions are little pieces of code that are run every frame change, therefore every time I do something like:

"add +1 to variable1 if some other variable2==1"

it doesn't do it only once, it will check 24 times a second if the variable2==1 and will add +1 to variable1 24 times in a second. I wanted it to only add +1 one single time every time the cube goes to x==1. If I move the cube back to zero, nothing should happen, If I move the cube back to 1 again, it should add+1 to empty0 xloc one more time only, until I repeat the process

If drivers had a "While loop" to check "while variable2==1" before making the addition to variable1, it would solve the problem. But I don't think there is, and I cannot think of another way of simulating a "while" using other drivers and tricks.

The core of the problem is the fact that a driver is being run 24 times a second and I wanted to add a simple +1 to x location of an object just once every time a cube location =1.

Maybe someone here has an idea of how to solve it...

Heres a blend file as example of the problem:

Add a property to keep track of the drivers previous value, after adding the location driver.
The update order of the drivers will have exactly one update/frame, where the new location of the driver isn't copied to the custom property.

(I will add more details later, if needed.)

  Minor point
  The self.location[0] with itself as a driver is not very elegant. Use a shape key if you want to have a visual indicator of 0 and 1 as in the example file.
  Also use the Transformation Constraints instead of the channel locks, since the channel locs won't stop changing of the number via the transform (N) panel.

Changing the property every full second

You can check for full seconds with frame%24 == 0.

Expression: var if frame%24 != 0 else var+1 if var1==1 else var
with var = empty.y and var1 = cube.x as in the original demo file.

Unraveled, this is:

# do nothing (value = var) for 23 of 24 frames
if (frame%24 != 0):
    return var
else:
    # on every 24th frame (frame%24 == 1) check for the condition
    if (var1 == 1):
        return var + 1
    else:
        return var


Blender not playing the right animations I made a simple block character to practice animating using armatures. I made four animations - idle, walking, running and jumping. It was working fine, I saved it and then closed it. The next day when I opened my blend file, and pressed Alt + A, it plays the Jumping animation. I thought maybe it was stuck on that animation last time, so I changed the animation, but now all the animations play the Jumping animation only.

I don't know what's wrong. Maybe it's something simple that I missed out or maybe I hit some shortcut key or feature by mistake and can't remember what I may have done. I've attached my .blend file. Please check it out and help me fix it, thank you.

Okay, this was simple and silly. Just like Serge L said in the comments to the question. You need to click on one of the bones and then change the animation.

Pretty silly, but I think there might be others who might face the same problem when they start learning, so I am posting it here.

Thank You Serge.


Make Fluid disappear I am currently modeling a sword for a friend and I would like to animate a bloodline in the center of the sword... now is my problem, if I would do this by using a fluid, the fluid would be supposed to disappear at a point, cause its logically not flowing out of the sword...

along this pit shall drop red fluid like an infinite cascade and disappear at the bottom. I did this pit by using a boolean, so I can imagin that I use this object again as boundary for the fluid, but how do I make the fluid infinitly come and go?

Or is there a was to make it with Texture particles to let it seem like its floating

You're using a fluid simulation, correct? If so, try adding an outflow object at the bottom of the sword.


Glass shows up black when I render it as a transparent png (no background) I'm trying to render a glass bottle on a transparent background. There is lighting set up, and you can see the glass when you render it on a background, but when you omit the background from showing up in the render, it comes out black.

How do I make it so the glass shows up normal and not black without a background?

Enable Film Transparent and Transparent Glass.


Is there a list of the node names for the node_tree.nodes.new() function in blender 2.82? I'm trying to add nodes to a material using bpy in blender 2.8, but I cannot find a list of names to refer to them in the new() function
IE:
mat.node_tree.nodes.new('ColorRamp')
doesn't work, because it is actually mat.node_tree.nodes.new('ShaderNodeValToRGB')
and I need a list of all the names of these, so if anyone knows where to find them I'd love to know, as I cannot find it in the documentation

I think this will give a list of all names. Note that which ones you can add depends on the type of node tree eg. you can't add "CompositorNodeXXX" nodes to a shader node tree.
[
  name
  for name in dir(bpy.types)
  if issubclass(getattr(bpy.types, name), bpy.types.Node)
  if getattr(bpy.types, name).is_registered_node_type()  # exclude base classes like Node
]

An easier way to find them, IMO, is if you have "Python Tooltips" turned on in prefs, you can hover over the items in the "Add" menu to see the name to use.


difference between scultping and modeling So I've been digging around and I keep hearing people talk about "scultping" and "modeling" like it's two different things. I understand that modeling is better for hard surfaces like weapons, furniture, and typically things that are made. While sculpting is more for organic things, like humans and animals/creatures.

Does this mean to create an animation I'd have to sculpt the characters and model everything else? Or can you model the character, sculpt it up to look nice and pretty and then animate that? I've heard some people say that they usually model a base mesh, sculpt it, and then remodel it again so it's suitable for animating but I'm entirely lost on how/why you'd basically "de-sculpt it".

Both are ways of adding and pushing/pulling vertices and faces to create a shape. It is possible to get the exact same results via either method, but like all tools, each one is better for certain jobs.

Your second sentence is generally correct, but do keep in mind that each one is usually better, not always better. It's also up to preference.

You do not HAVE to sculpt your characters, although it may be the best way to get the results you want. Other objects can be sculpted as well. It's all about the best way to get the end result.

In regards to the process you mentioned, that is a very common way of creating things like characters. The reason for doing it this way is because sculpting usually results in objects with high amounts of faces and terrible topology. Blender's Dyntopo  (Dynamic Topology) system is often used to sculpt, but it created a mesh entirely made of triangles. Triangles are generally avoided if possible, as they can cause deformation issues when animating (usually when combined with subdividing). A dense triangle mesh is going to animate a whole lot worse than a mesh that has nice topology and is composed entirely of quads. That is why the retopology process is used. You take a detailed model that is the final shape, but that wouldn't deform and animate well, and recreate it by placing the faces where you want them so that your model will deform well (there are a number of ways and tools to do this, but they all involve ways of 'sticking' the new faces on the sculpted model so that you simply have to restructure your model, not recreate it).

You can still sculpt on a mesh that has been modeled, and that is a common way of adding detail to a mesh while still having clean topology, as at that stage the multiresulution modifier would be used instead of Dyntopo, and the modifier keeps the topology by subdividing the mesh and allowing you to sculpt the subdivisions.


Move object in direction it's facing in Is there any way to change an object that is moving forward change its rotation and continue to move in the direction it is facing in, as if it was moved according to local coordinates? like a vehicle turning.
basically, i want the results of a follow path constraint with follow curve enabled but without the path. there should be a rotation value that can be changed in real time. is there any way to achieve this? maybe with animation nodes?

Here is one way to do it:
Select your car object and add a Follow Path constraint. Select a curve as the target. This curve will be the route the car will take.
In the same place as the car object, add an Empty. Put an Follow Path constraint on the empty. Select a curve as the target.
Select the car add a Damped Track constraint. Select the Empty as the target. (remember to select the right axis orientation depending on the situation; you might want to change it later.)
Select the Empty. Right click on the Offset value field of the Follow Path constraint and choose Add Driver.
Go to the Drivers window and select the Offset (Follow Path) in the list. Press N and click the Drivers tab. For the Type choose Scripted Expression. As Expression Type "var - 1" (or "var + 1" depending on the direction of the curve). Also "1" can be smaller or bigger; the value is dependent on the size of your car object. For the Input Variable choose Single Property. Choose the car object as the target or Prop.
Select the Car and right click on the Offset value field of the Follow Path constraint (of the car) and choose Copy Data Path.
Go back to the Input Variable of the driver and hover the mouse over field net to Path. Use Ctrl + v to paste the copied data path.
Select the car and change the Offset value of the Follow Path constraint. Now the empty will move ahead of the car because of the driver. And he distance it moves before the care follows is 1. The Damped Track will cause the car object to rotate.

EDIT:
I seem to have misread that you don't want to use a path. Sill i suspect you can achieve what you want with drivers. I'll try to look into it when i have more time.


'Rigify' with automatic weights makes my mesh disappear I'm making a human character. I'm trying to rig it with rigify - but I don't think I'm doing it correctly, as when I press ctrl+p > with automatic weights it makes the mesh disappear.

The blend file is here: http://www.pasteall.org/blend/36983
Also, a video and gif are on my Dropbox: https://www.dropbox.com/s/7tsr5dv25253gv8/rigging.gif?dl=0
https://www.dropbox.com/s/bv65dd1kzxkwwg1/rigging.mov?dl=0

Make sure you have checked AUTO RUN PYTHON SCRIPTS in the User Preferences

Just go to File/User Preferences/File
and then check the box

☑ 'Auto Run Python Scripts'


How to add "wrinkles/folds" to tube packaging I have this model right here that I created.

I want to add the "wrinkles/folds" to the mesh to make it look like it's been used a few times, kind of like this

Is there a good way to go about doing this? I've tried using the cloth brush but it creates too many wrinkles and doesn't quite look right. Do I just need to change the settings of the brush?

We can achieve this procedurally in the shader editor using displacement in only a few nodes.
We'll start with this approximation of your model.

In the shading workspace, we can add a texture coordinate and take the Generated coordinate space into a Separate XYZ node to look at our object over different axes over a 0-1 range.  In this picture I'm looking at the Z axis.  (Viewer node is just an emission shader, if you don't have Node Wrangler enabled.)

If we insert a Color Ramp here, we can use this later to designate an area of influence for our displacement.  Black means displacement will have no influence, where white is 100% influence.  We want deformation to happen below the top outer edge and fade away as it goes down the body of the model, so I ended up with a ramp looking like this:

To define our displacement, the effect looks most like a voronoi.  We can take the output of a voronoi texture (disclaimer: the scale numbers will be different depending on the scale of your object, find what works for you) into the height of a displacement node, and use our color ramp's output as the scale.  If you need to lower the overall scale, just lower the value of the handles in the color ramp.
Set your material's settings to displacement and bump aaand...

Well, it's almost there.  Depending on what you want, a midlevel closer to 1 probably makes more sense, and Smooth F1 for the Voronoi.  You can adjust the scale and area of influence with the handles and colors of your color ramp.  After some fiddling, here's where I landed.  (2 levels Subdivision Surface)

Extra fun:  You  can randomize the wrinkles by taking the random output from Object Info into the W value of a 4d texture.  This way each object will be uniquely distorted.


Transparent rendered object over tracked background I am ready to render my animation but it seems i have a problem with my texture of the object i animated.
In the image u can see that the object is transparent and I can look trough it.
So what is the problem here?

This is the node setup.

Thank you for your help!

The default nodes created when you solve a scene with motion tracking and hit "Setup Tracking Scene" don't really work in all cases.

The problem is that the 3D scene with the transparent background is not added using an Alpha Over node on top of the background.

The basic nodes you need looks more like this:

Or maybe even something like this:


Sphere with one squared corner I'm trying to replicate this logo to 3d space but I'm not able to make the last green portion.
Here is an image of the intended result :

You can get close with proportional editing.

Add a UV sphere and rotate it 45° in edit mode
Grab the top point and align it to the top right corner
Check ✓ Proportional Editing > Sharp, adjust Falloff so it fits


Silhouette chroma key effect - how to finish off? I'm so close to finishing this off but I can't get my foreground to be single matte color. I'm not sure where I need to place a node to do so. My foreground right now has some aberrations coming through due to bad lighting but how can I make the white area a solid color? Thanks]1

After your Mix node you will want to add either a Luminance Key node, or a ColorRamp node. Then just move the values around until you get what you are looking for.
Before:

After:

or

I hope this helps
-Tom


How can I use an existing text block as a data source? I don't want to load data from an external file location. Instead I want the user to drop an xml file into an open text window, then run a script that can use this file as a data source. The file will always have the extension .csv. But I don't know how to search for an existing datablock like this?

Currently its a hard coded path for testing:

# READ INPUT FILE

fp   = "/Users/davidmcsween/Downloads/TEST LIST.csv"

file = csv.reader( open( fp, newline='' ), delimiter=',' )

nameIdx = 3 # Column index of text object's name
bodyIdx = 4 # Column index of text object's body (content)

I had hoped that I could use

fp   = bpy.data.texts[", *,".csv"].name = "", *,".csv"

But this fails.

In as much as you can get all the texts in a blend file with [text for text in bpy.data.texts] and the filepath is text.filepath.  If a file is pasted into the text editor then it will have filepath = "".  I recommend using the text editor current text as your csv data.  A simple panel is added to the text editor properties, which ensures that the current csv file is

current_csv_file = context.edit_text

Firstly, a simple operator that prints out the csv data, split by "," line for line.

import bpy

def main(context):
    text = context.edit_text
    for line in text.lines:
        split = line.body.split(",")
        print(split)

class SimpleOperator(bpy.types.Operator):
    """Tooltip"""
    bl_idname = "text.import_csv"
    bl_label = "Import CSV"

    @classmethod
    def poll(cls, context):
        return context.active_object is not None

    def execute(self, context):
        main(context)
        return {'FINISHED'}

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

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

if __name__ == "__main__":
    register()

Can make a panel in the text editor UI like so

import bpy

class TextPTImportCSV(bpy.types.Panel):
    """Creates a Panel in the scene context of the properties editor"""
    bl_label = "Import CSV"
    bl_idname = "TEXT_PT_import_csv"
    bl_space_type = 'TEXT_EDITOR'
    bl_region_type = 'UI'

    @classmethod
    def poll(cls, context):
        text = context.edit_text
        return text.name[-4:].lower() == ".csv"

    def draw(self, context):
        layout = self.layout
        layout.label(context.edit_text.name)
        layout.operator("text.import_csv")

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

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

if __name__ == "__main__":
    register()

which running on the simple test file prints

['1', ' 1', ' 1', ' 1', ' 1', ' 1']
['2', ' 2', ' 2', ' 2', ' 2', ' 2']
['3', ' 3', ' 3', ' 3', ' 3', ' 3']

to the console.

EDIT: as a side note, split above will be a list of strings, and will need to be converted if they are other. Here is a basic way to make a key for your csv file.  Consider a file that has 4 columns, the first is an integer for frame, the next three a location.  Quite likely there is a way to use the text.lines as input to csv.reader (simple workaround would be to save to tmp file)

# key of csv file, [property name,  column(s), type]
key = [["frame", 0, int], # frame in col 1
       ["location", [1, 2, 3], float] # loc x, y, z in cols 1, 2, 3.
       ]
'''
data in csv like
1, 1.0, 1.0, 1.0
'''
split = ['1', ' 1.0', ' 1.0', '1.0']

for prop, cols, prop_type in key:
    if isinstance(cols, list):
        val = [prop_type(split[col]) for col in cols]
    elif isinstance(cols, int):
        val = prop_type(split[cols])

    print(prop, " = ", val)


Can't undo something in node editor I accidentally deleted a color ramp node that I was working all my colors on, and now when I cmd+z it doesn't do anything!

Check User Preferences➜Editing➜ Undo➜ Step is not set to 0.
Try undo from dropdown menu(assume tho you have tried this alraedy)
Try restoring default key layout.


How to save the default mode of a custom workspace? When designing new workspaces, there doesn't seem to be a way to save or define the default mode of that workspace.  You can duplicate one of the presets and go from there, which would work fine... but there isn't a preset for painting Vertices, even though this is one of the selectable modes.

Currently it would seem to be impossible to create a vertex painting workspace.

Is there a way to do this?

Either from the 3D View Sidebar > Tools tab or from the Properties Window > Active Tool tab there is a workspace panel.

The dropdown menu allows you to define a default workspace mode. After that save the startup file from the File > Defaults > Save Startup File menu entry so it is available next time you start a new session.


Bones don't respond to rigid body I made a character with ragdoll physics, in which I made boxes with active rigid bodies, and parented them to the bones. Most bones react well, except for the right leg, which pulls away from the body when I play the animation.

How do I make sure it won't fly off?

I'm using this tutorial https://youtu.be/GaZAI8RIq0Q

.blend file:

Found your problem, there's a magic 90 degrees on one of your empty objects, if you reset to 0 it works like you wanted.

You can see the other empty that connects the other leg, doesn't have that 90 degrees on the X Axis.
Cheers,


How can elements be selected and moved properly? I'm having trouble selecting and moving elements in a model.
The recording and file is here.
Steps to replicate:

Select element (i.e. face)
Move outward
Move inward
Tap on first selected element

Expected:

When moving outward, faces should not fold.
When moving inward, form crater.
When the former face is tapped, it should become selected.

Results:

When moving outward, faces fold.
When moving inward, the topology does not dip below the original surface.
When the former face is tapped again after moving inward, there is no feedback.

I think I might have accidentally ripped everything. How can this be fixed?

The problem is with the mirror modifier. You already have your entire object completely meshed out, but are then mirroring it over on itself. The extra geometry that you are unable to edit is actually the mirrored mesh from the other half.

You should delete half of the mesh so that the mirror modifier isn't flipping the mesh over onto itself.


How to highlight a polygon or a vertex under the pointer in Python? I am trying to figure out how to highlight a polygon or a vertex that could be under the mouse pointer in Python for 2.80. The highlighting is just a visual indication. I realize that I will be needing to scan for components and draw the shape, but just do not know how.

thanks

Look at these templates:
1) Operator Modal View3d Raycast: With this you will find the polygon of a mesh under the mouse cursor.
2) Operator Modal Draw: This contains an example of using BGL for drawing in 3d view. With this you will be able to draw the edges of the polygon you find from raycast.


Can a custom optimization code be added for doing accurate mesh deformation simulation in Blender? I am interested in doing a crash test on a motorcycle using my own optimization code. I typically use engineering software such as ANSYS do perform CAE. I would like to know if Blender is equipped well to take in custom python code for accurate simulation of crash test at the industrial level?

The following is the paper I want to use to optimize geometry and the perform crash test in Blender.

https://www.dynalook.com/conferences/12th-international-ls-dyna-conference/optimization-metal-forming18-a.pdf

Your question is a bit too broad.
Whether Blender will support your needs depends on many things, including what you mean by "equipped well", "accurate simulation", and "at the industrial level". It's certainly seen use in a wide variety of industrial applications.

Blender will give you an extremely flexible interactive 3D environment to display and examine results, and many other useful features, all fully controllable using Python. As a starting point, you may want to familiarise yourself with the mesh data sections of the Python API to see if it will give you what you want. https://docs.blender.org/api/current/index.html

Beyond that, Blender doesn't necessarily have the sort of physics solver functions you may be accustomed to from other software. Your code, whatever it is, might need to do more of the the physics 'heavy lifting' by itself, than perhaps you would have to do in a more dedicated scientific computing application.

Still, plenty of people have done FEA-type work and presentations using Blender before. Many of those have utilised/included numpy for calculations. There are Blender Conference talks from past years available on youtube - for example, on rendering supernovae, medical implant design with FEA testing stress/material forces, and others such as flood prevention design using Blender's built-in fluid sim, which in that case was adequate for their needs.

Blender's built in physics (eg rigid/soft body) solvers are primarily designed for graphics / speed-priority applications. So in terms of your crash test, you might determine that you'd need to solve the physics yourself. Again, this completely depends on what you mean when you say 'accurate simulation', and how critical scientifically accurate physics sim is to your project.

(edit: further response to follow-on comment):

Addressing what I meant about 'accuracy':

The various 'scientific'/engineering specific software, with serious academic/industrial applications, very much focus on real-world accurate integrators which minimize error (for example). This is one strong reason for using those sorts of programs.
Blender may not be that. Its integration methods might destabilize or constraints might blow up, as they're designed for speed (graphics/animation application) rather than low-error 'reality-proof' solving.
I don't know this for sure as I've not read that much of the source code. I would say that, to make your decision on how usable it is, you may need to check that yourself (if it is a concern).

But Blender will let you do that sort of computing within it, if you treat Blender as your 'display tool'. You can attach custom fields and enrich the mesh data any way you like from Python - so attaching all the metallurgic parameters is pretty simple, and that can then be linked to shaders.
Where exactly the division point between your simulation and Blender's provided functionality ends up being will just depend on how much your program itself needs to worry about. I would suggest you may need to do some 'toy example' proof-of-concept tests first, to find out if Blender will do what you need, to avoid finding unforeseen limitations later. Of course a major benefit is the open source code and documentation, meaning you can debug/directly check what Blender is doing under the hood, should you need to.


I'm using a high number of samples. Why is my render coming out in low quality? Can someone help me determine why my render is coming out in such low quality? I have Cycles up to 500 Render Samples, but I have no idea why it looks like it's only using one.

If you have any number other than 0 on the render layers, then your rendering will be limited to that value.

.

Solutions (choose one):

Make the number of samples on the render layer, the number of samples you need.
Turn that number back to 0 so that the sampling is controlled by the overall render settings for the scene.
Turn the layer sampling settings to "ignore"

See this post: Cycles render, noisy even when using a high number of samples


Install Python module for Blender I'd like to install some python modules which need to be compiled and use them in Blender. Usually I'd pip install them but that doesn't seem to be a possibility for Blender. I tried copying sys.path from my system python environment but it came up with quite a few errors.

The modules are cython and mdtraj - both are available using anaconda and pip but both need to be compiled for the python environment they're supposed to be run on.

So how should I go about installing/setting those up for use in Blender?

You need modules that work with the same Python version as the one shipped with blender (currently, blender 2.78 is shipped with Python 3.6.0).

My favorite Python distribution is anaconda. Here are the steps I just followed for blender 2.78 in linux (a similar setup should be easy to get for windows or macos).

Install anaconda.
Create an specific environment for the modules you need in blender:

conda create --name conda-python-blender python=3.6.0

Activate this environment:

source activate conda-python-blender

Install all your required libraries ("modules"):

conda install cython

You can also use pip if your library is not (yet) in anaconda repositories:

pip install mdtraj

Figure out the directory where your libraries are stored:

echo "import sys; print(sys.path)" | python

In my case, I get:

['', '/home/christophe/anaconda3/envs/conda-python-blender/lib/python36.zip', '/home/christophe/anaconda3/envs/conda-python-blender/lib/python3.6', '/home/christophe/anaconda3/envs/conda-python-blender/lib/python3.6/lib-dynload', '/home/christophe/anaconda3/envs/conda-python-blender/lib/python3.6/site-packages', '/home/christophe/anaconda3/envs/conda-python-blender/lib/python3.6/site-packages/setuptools-27.2.0-py3.6.egg']

You want the "site-packages" directory, so, in my case:

/home/christophe/anaconda3/envs/conda-python-blender/lib/python3.6/site-packages

Open blender, then go to the Python console and do the following as Rich Colburn said, that is adding the previous directory the the path where Python is looking for libraries:

  import sys
  sys.path.append('/home/christophe/anaconda3/envs/conda-python-blender/lib/python3.6/site-packages')

And that's it!

Optional step. If you want to make it permanent so that every time you open a new blender file, blender adds automatically the required directory to the path, then save the following lines in a file (say add-anaconda-libs-to-path.py) and put the file in ./scripts/startup/ (for me it is /home/christophe/.config/blender/2.78/scripts/startup/.

import sys
sys.path.append('/home/christophe/anaconda3/envs/conda-python-blender/lib/python3.6/site-packages')
def register():
    print("Added anaconda library to path")

A final note: unless you want to update your libraries with conda, you don't have to activate the conda-python-blender environment anymore as blender will use its own Python interpreter.


Prevent particles at the same place? I try a simple particle system, with this group on the layer 2 :

The result, placing it at Vertices places on a grid, using this group, is like :

The problem is that sometimes 2 or 3 objects are at the same time on the same place... I didn't found anywhere how to disallow that, I would like to have just 1 object at random places (less or equal to the number of vertices)
Thank you !
blend file

I think this way may meet your needs:

See key settings marked in the image above, very intuitive I suppose.


Everything in pinkish in cycles or "Scene World" I've been looking back at my blender projects and now all of them are completely pinkish when rendering with cycles (including in the live preview mode)

Also if I'm in LookDev mode and tick "Scene World" under "Shading/Lighting" everything also goes pinkish.

In the World area I am using a HDR file but there doesn't seem to be anything pink there.

Like metaphor_set mentioned the HDRI image couldn't be found at the given path. I had moved the contents of my Downloads folder to another folder because it had been getting too crowded.


how to duplicate and scale loop mesh with even offset How do I use the Array modifier for internal loops having constant offset at boundaries. in this figure every duplicated curve is not at equal distance from the previous one.

You can use Loopcuts for precise spacing.

Inset your shape
Add as many loopcuts as you need
Remove unnecessary edges

You can split the end result into different objects, convert to curves, etc... :)


Images as planes are not appearing in final render but in viewport are visible I imported images as panes to create mist effect using PNG images. These are not appearing in the final render but are appearing in the viewport in render mode.

When you drag an image into the viewport, or use Add > Image > Reference, or Add > Image > Background, those images will have no real geometry (they are just an empty with an image associated to it), and as such they are not renderable. They are just reference.
Use Add > Image > Images as Planes (or File > Import > Images as planes) to have an object that has 4 vertices and a face with the image used as a texture on the material.


how do you reduce the space between cuts when you use 'loop cut and slide'? how do you reduce the space between cuts when you use 'loop cut and slide'?

Hover over the mesh, wait for the loop cut appear on the mesh, click once and now you may move the mouse to move the loop cut to left, right, up or down as you like.

If you want to looking for multiple loop cuts at once, you may scroll the mouse wheel to have mulitple loops like this


Deforming UV mesh by dragging vertex I've recently gotten back into Blender and am currently unwrapping uvs for a model I'm developing. I remember vaguely of a feature that allows me to bend a uv mesh to expand or shrink areas by dragging a vertex in or out. An example where I find this useful is when I unwrap a head, and the face is microscopically in the middle compared to all the other features bordering the seams. I remember dragging areas on the face using the vertices to expand the face out and shrink the seam areas down so more detail can be shown on the actual face. Does anyone know how this is done or am I just mistaking this feature from another 3d program?

LIVE UNWRAP!
Thanks to moonboots comment, looking up proportional editing and uv map made me find the video that introduced the technique I was talking about: https://www.youtube.com/watch?v=SXyIhYcYmoo
Turns out I needed to have Live Unwrap checked and transform my pinned vertices on the EDGES of my unwrapped mesh.


Smoothed surface shows odd lighting I made this table for a game and it happens to have this weird lighting on the surface when I apply smooth shade.

Smooth shade on a low poly object will always fail (why do you even want to smooth shade it? what do you expect from the smooth shading?)
If you want to bevel angles, you need (in addition to smooth shading) to add subdivision modifier and then add as many supporting loops as you need (that's a lot to learn btw).


How do you create a sphere with a certain amount of edges? I am in the process of making a board game, and I need some customized dice.

I need 3, 4, 5, 6, 7, 8, 9, 10, 11 and 12 sided dice for my board game. I have looked around on model sharing websites, and all the models that I could find (free or $$) don't include D5, D7, D9 or D11 dice. So I decided to start modeling my own dice, but I can't figure out how to evenly space the faces/edges on the 7-12 sided dice.

I've been working with Blender for about a few months now, but i still consider myself a novice. I guess I was wondering if there was an easier method to create these dice? I was thinking, maybe to create a sphere with X amount of faces on it, so I tried to use the Ico Sphere option, but it only allows me to edit the subdivisions, not the total face amount. Is there a trick I can do or an add-on that might work well for me here to model these dice accurately?

EDIT:
Maybe another alternative would be to create a sphere and then using a boolean modifier, you subtract the desired amount of faces from the sphere leaving behind the desired dice amount? That could work...but the math behind it might be far more sophisticated than what I can do. blender doesnt have a feature that will do this math for me, will it? :P

EDIT 2: I posted this question on the mathematics stack exchange if you guys wanted to go look at it and it's detail.
https://math.stackexchange.com/questions/2683018/how-to-evenly-space-out-a-certain-amount-of-axes-off-of-one-center-point

Thank you for your time and response.

~Jared

Attempt at the D9

The first part of the code, is an algorithm to estimate N equally spaced points on a sphere.

Adapted from

Constructing Polyhedra from Repelling Points on a Sphere

  by Simon Tatham

  Scatters N points randomly on the surface of a sphere, allows them to
  move under mutual inverse-square repulsion while keeping them
  constrained to the sphere's surface, waits until they converge to
  fixed locations, and outputs their locations.

Once the points are determined to within a tolerance TOL they are
rotated to make one the north pole. A 1 radius UV sphere is createdand holes are bisected into the mesh by cutting with a plane normal to
the radial of each point, and moved rat along the 1 unit radius.

Image showing convex hulls of 9 points on left, and sphere with cutting planes on right.

The Code

Copy the code below, paste in text editor and run script. Change the parameters to suit. Note it might hang every now and then finding a solution , if so hit CtrlC in the system console.

import bpy
import bmesh
from mathutils import Vector
import random
from math import pi, asin, atan2, cos, sin, radians

# parmaaters
n = 9  # number of points on sphere
rat = .86 # how far along the radius to bisect
u_segments = 32  # UV sphere settings
v_segments = 32
thickness = 0.2  # solidify thickness
TOL = 1e-7

points = [Vector((0, 0, 1))]
for i in range(n - 1):
    theta = random.random() * radians(360)
    phi = 2 * asin(random.random() * 2 - 1)
    points.append(Vector((cos(theta) * cos(phi),
           sin(theta) * cos(phi),
           sin(phi))))

while True:
    # Determine the total force acting on each point.
    forces = []
    for i in range(len(points)):
        p = points[i]
        f = Vector()
        ftotal = 0
        for j in range(len(points)):
            if j == i: continue
            q = points[j]
            # Find the distance vector, and its length.
            dv = p - q
            dl = dv.length
            dl3 = dl * dl * dl
            fv = dv / dl3
            # Add to the total force on the point p.
            f = f + fv
        # Stick this in the forces array.
        forces.append(f)
        # Add to the running sum of the total forces/distances.
        ftotal = ftotal + f.length

    fscale = 1 if ftotal <= 0.25 else 0.25 / ftotal

    # Move each point, and normalise. While we do this, also track
    # the distance each point ends up moving.
    dist = 0
    for i in range(len(points)):
        p = points[i]
        f = forces[i]
        p2 = (p + fscale * f).normalized()

        dv = p - p2
        dist = dist + dv.length
        points[i] = p2
    # Done. Check for convergence and finish.
    if dist < TOL: # TOL
        break

context = bpy.context
scene = context.scene
# make one point north pole.
R = points[0].rotation_difference(Vector((0, 0, 1))).to_matrix()
points = [R @ p for p in points]

bm = bmesh.new()
#bmesh.ops.create_icosphere(bm, diameter=1, subdivisions=5 )
bmesh.ops.create_uvsphere(bm,
        diameter=1,
        u_segments=u_segments,
        v_segments=v_segments)

for p in points:
    ret = bmesh.ops.bisect_plane(bm,
            geom=bm.faces[:]+bm.edges[:]+bm.verts[:],
            plane_co= rat * p,
            plane_no=-p,
            clear_outer=False,
            clear_inner=True)
    '''
    # add visible cutting planes (using bisect)
    R = Vector(p).to_track_quat('Z', 'Y').to_matrix().to_4x4()
    R.translation = rat * p
    bmesh.ops.create_grid(bm, x_segments=1, y_segments=1, size=1, matrix=R)
    '''
me = bpy.data.meshes.new("dice")
bm.to_mesh(me)
ob = bpy.data.objects.new("dice", me)
scene.collection.objects.link(ob)
context.view_layer.objects.active = ob
ob.select_set(True)
ob.location = scene.cursor.location
# add a thickness modifier
sm = ob.modifiers.new("Solidify", 'SOLIDIFY')
sm.thickness = thickness

Alternatively could hard code in a set of  9 points.

from mathutils import Vector
raw = [
0.798313857169, -0.442003436215, 0.409057389405,
-0.552293193116, -0.798759837392, 0.238652364346,
-0.173114881688, 0.873088163724, -0.455794137855,
0.749969728716, 0.23229964104, -0.619340199553,
-0.872965308015, 0.388085187337, 0.295502044616,
-0.600669921728, -0.124465371314, -0.789749337749,
0.278179133859, -0.797203763248, -0.535800829925,
-0.105061227491, -0.0758822299659, 0.991566450448,
0.477641726235, 0.744841584279, 0.465907067653
]
it = iter(raw)
points = list(map(Vector, zip(it, it, it)))

EDIT:

Updated for 2.8, for prior version  see previous edit revision.


Video Editing stereo tracks I'm editing a video that needs a stereo effect (a sound moving from right to left) and I have the audio file without the effect. I just want to have two separate audio strips from that file for each stereo  (left/right) and fade the audio in each strip to accomplish the effect, but I can't find the way to indicate which strip corresponds to which stereo.

Is it possible to do that in Blender's Video Editing?.

In the Video Sequence Editor, add both audio clips.

On the left audio strip, set the Pan property to -1 under the Strip settings > Sound. On the right audio strip, set the pan property to 1.

Keyframe the Volume property (hover over it and press I to set a key) from 0 to 1 to make the audio fade from mute to 100% audible.

While this may work for some cases, I'd advise you to use a audio editing software (like the freeware audacity).


Load numpy array to imagebuff I need to load a 4 channel numpy array to the gl image buffer so I can swap it out using the bge texture module.

More generally I've installed opencv in blender and would like to display the results of a cv operation in the render window. I can send the results of "texture.ImageRender(scene, camera)" to a numpy array and use them in opencv but I currently have to view the results in a separate cv pop-up window.

Anyone have any experience with this because I'm not having much luck with the documentation.

Limitations in the API prevent bge.texture.ImageBuff from accepting outside arrays even if they match the flat structure of regular bge arrays.


Fluid geometry not flowing when baked inside of domain My goal was to have the head turn into fluid and fall down onto the floor of the domain. I have done a little with fluid sims in the past. I'll try to describe everything I did, but I think downloading the blend file will make the problem/solution clearer. I started by making a cube around the head, then designating it the domain. I then took the head(split into 2 parts from a previous animation, with the bowtie being the 3rd part) and designated all parts as a geometry. After baking the fluid, I played the animation, and it didn't flow. The domain cube didn't even disappear like it usually does. I made sure that mesh was checked in the domain, set viscosity to 0, looked inside the head to see if it was full of liquid, and there was nothing. I then set the initial velocity to see if the fluid would render, rebaked it, and got nothing again. I made sure the resolution and sampling steps were high, baked it, and still got nothing.
Why isn't the head-shaped fluid showing up or flowing and why is the domain not even disappearing? Do you think it's a cache issue?

Thanks!

Your inflow object (head) is not closed/manifold. Close it with faces. You can retruy it yourself. Insert a simple UV Sphere, make it inflow -> works. Insert another simple UV Sphere. Delete some faces. Make it inflow -> does not work.


How to create slanted edges and rounded handles for a tray? I'm trying to create this item:

I'm stuck on how to slant the edges up and to make handles. Can someone give me advice ?

I'd do it using a Mirror Modifier and a Solidify Modifier.

Create a quarter of the tray, with no thickness.
Add a Mirror Modifier and a Solidify Modifier
Tilt the handle using a 3D cursor as pivot (or proportional editing)
Tilt the sides just by moving upper vertices.

The solidify modifier keeps even thicknes for you, saving fiddling with vertices.


Changing a dimension always immediately resets to 0 I have an object that was originally imported as an .svg, but I converted it to a mesh. However, blender still will not allow me to give it a size for the third dimension. The file can be downloaded from here.
What is it about this object that prevents me from setting a non-zero value for its Y dimension (in the 'n' dialog)?

Dimensions work as a scale multiplier. As your mesh has a Y dimension of 0, you can multiply it by any number, the result will always be 0.
To get thickness you need to enter edit mode, select all and press E to extrude the faces.
Once the object has Y dimension different than 0 you will be able to vary it in the N panel.
Be aware that you have the snap option activated.


How should I make a realistic cucumber? I am making a 3d burger in Blender 2.92 and I don't know how to give the tomatoes and cucumbers in it a texture like in the real world.
For the cucumbers I gave a cube a subdiv modifier and then duplicated it. For the tomatoes I scaled two more duplicates. In the real world, These vegetables have a texture. I don't know where to find those textures or how to create them.
Edit: I actually only gave the vegetables a red and green colour, thats it. I want the vegetables to have these kind of textures.

Most of the information needed is already on this site.
Just to make your job a bit easier, here is how to make a cucumber slice.

Add a cylinder
Find a photo of a cucumber slice and a photo of a cucumber peel
Create and assign two materials (Add different materials to different parts of a mesh?)

Done.


Artifacts using Zero Alpha Shader I am trying to gradually make an object transparent. To this end I mixed in a Principled BSDF with an Alpha of zero.

However, this results in the following black artifacts in the picture (shaded image for comparison):

Is this due to some shady normals issue? is there a better way to make objects transparent?
Thanks in advance!

Assign a higher value to Render Properties > Light Paths > Max Bounces > Transparency


How to conform a mesh ontop of another mesh? I wanted to give my character a circle of differently colored belly fur, so I tried to place a circle onto the body.

I was having trouble figuring out how to attach this to the main body, snapping didn't seem to work to actually conform everything onto the body mesh, and moving manually is far too fiddly.

After searching for solutions I tried a Shrinkwrap modifier, but if this is an appropriate method I can't seem to make it work.

I would appreciate suggestions for how to make this work, or an alternative that might work better.

I seem to have arrived at a solution thanks to the comments by @Mobin.

Place circle mesh where you want it with Snapping -> Face

Circle mesh -> Edit mode -> Select face -> I to inset and create internal geometry. A few loop cuts to improve its ability to bend.

You need to get rid of the vertices in the middle, or the geometry does strange things when applying the shrinkwrap.

Then you give the circle a shrinkwrap modifier. Modifiers -> Shrinkwrap
Set the body as the target, change the offset to the smallest amount that doesn't clip through.


Component Selection Distance When selecting components, is there a way to control the "selection distance/area"? I don't want to select a component, even if I click ~20 pixels away from it.

Thanks in advance!

There is currently no setting for this. You can see in the Interface tab of the user preferences menu that there's a 'hotspot' distance for the handles of manipulators and similar settings for Pie menus. This is probably where you'd expect to find such a setting and it isn't exposed there.

Maybe more substantially, in this mirror of the Blender source code on line 446 a comment mentions that the below function uses a hardcoded value (line 392) of 5px for unselected vertices. This isn't necessarily the only way to select vertices in Blender but it seems to be the default.


Blender 2.8 compositor isn't saving me any time? I'm trying to squeeze out some animation highlights for a sizzle reel and wanted to save time by reusing my background with the compositor. Here is what was being rendered before I used a transparent background and set the ground plane to a shadow-catcher. This took about 15 to 20 minutes and have 32 of these to render:

So I saved an image with only the background in it and set up the compositor, thinking the program would either completely ignore most of the background (I set the ground plane as a shadowcatcher) or zip-thru the empty areas, but the square regions are taking just as long to compute empty space!

I followed this tutorial for my setup pretty much exactly, except the image I am using for the composited background is just the ground plane without the character:

https://www.blendernation.com/2017/04/17/use-new-blender-shadow-catcher/

Here is my compositor setup (for some reason the character isn't in the preview but obviously he is being rendered sans background):

What am I doing wrong? How can I save time rendering this image sequence? Eevee is not an option because the shadows don't blend as nice even if I crank up the settings

EDIT: Border rendering result not compositing correctly with background:

The topic of this question is how to save time rendering using the compositor so this is still relevant because using border-rendering WOULD save time if it worked with the compositor. Is there a way to do that? I turned "Crop to Render Region" off because keeping it on was literally cropping the image. But with it off, I have these black regions.

No adaptive sampling in Cycles in Blender versions prior to 2.83
Cycles used lack adaptive sampling functionality in versions lower than 2.83 so no matter what, the pixels being rendered used to get sampled as many times as there were samples defined in the render settings.
Mask with Holdout shader
You could make a plane, parent it to the camera(Ctlr+p) using Without Inverse option so it snaps to the camera and is oriented to it's local space, move the plane and cut a hole in it so it's sort of a mask. If you assign Holdout shader to it it will get rendered as transparency (transparent film enabled) and it will still get sampled, however those samples are going to be as easy to calculate as possible, so it will speed up the process greatly. You can make any shape of the mask just by modelling the hole the way you need it to be, however if it covers anything that you need in the render(like shadows for example) that will become invisible, so you need to be careful about what you mask.

You can see the masked areas outside the center of the image render a lot faster:

Adaptive sampling is added since Blender 2.83
From version 2.83 adaptive sampling is finally added and if enabled will render transparent areas a lot faster.


How to texture a huge city? I followed a tutorial to create a city using .osm map file, and ended up with a red-colored city, (with red buildings), I wanted to know how do I texture it?
Tutorial I followed

In the tutorial, he states something about a texture atlas, which I couldnt understand.
Thanks!

Around 2:00 minutes at the step 4 of the video tutorial : compose the texture atlas.
This texture is simply a single large image composed of several buildings facades and roofs images found on CGTextures.com.
So this is simply a copy/paste process.


How to make blend file take up less space Some of my models on my computer are taking up around 400-500 MB and I want to shed some space on my computer. I tried deleting objects and checking for animation data but the best I could get taken off was about 20 MB. How can I get a model to take up s few space as possible?

A few things come to mind. These affect not only filesize, but also performance.

Keep modifiers procedural as long as you can (Subdivision Surface, Array, Mirror, etc. Basically any modifier that adds geometry.)
Use linked duplicates, instancing and collection instances whenever you can. Instances don't increase filesize and are also better performance wise.

Procedural Modifiers - filesize 650KB

Applied Modifiers - filesize 20MB (30x increase)


Fluid on a deforming mesh Problem? Im trying to show a downspout eroding the soil away as an example.

I have tried:
A. Using a boolean to deform over time the (ground mesh(obstacle) OR animating shape keys for the (ground mesh(obstacle).

B. I then baked the fluid simulation and it does not follow the animated deformation?

It is driving me nuts, i did get this to work in MODO but I am falling in love  with Blender and its community.

Please help me..

It is quite simple. In the Fluid Obstacle settings, check Export Animated Mesh.

Also, make sure the obstacle is not set as Volume, or concave areas won't work as expected.


Is it possible to make randomly colored objects via the compositor in Blender Internal? Is it possible to have a per object random value between 0-1 that can be used to mix two colors in Blender Internal?

I am used to using the Object Info node in Cycles to accomplish this effect, however I have been unable to find an equivalent in Blender Internal without using third party addons.

This is relatively simple to do, pick your add on: Animation Nodes or Sverchok, and per Object color is easily done via Color props of an Object. You can use AN Object Attribute Out or SV Object Set nodes to change Object Color.

Turn on Object Color in Material, and change give different color per Object, easily visualized and will render in BI.


Textures in cycles are black I created a bridge, created the uvs and created a material with a texture in cycles. I can see the textured result when I set the viewport shading to material, but when I try to render the image, the material just appears to be black.

Any idea why this could happen?

blend file

The bridge is showing up as black because it has no shader on it. You need to add a shader to it to be able to render it. Let's use a diffuse shader.

In the node editor, Shift A Shader -> Diffuse
Connect the output from the Hue node to the color input of the diffuse shader.
Connect the BSDF output from the diffuse shader to the Material Output's Surface input.


Blender 2.79: Model Looks Disfigured When Using Viewport Render I'm trying to render this animation using the viewport render button, but the model comes out disfigured and I'm not sure why. This is in cycles with only textures. I don't know if this is an issue with some settings or the rigging

The clipping start was set to 0.1, causing some parts to be clipped. All I had to do was set it to a larger value


How to move the points of a Curve in Python while in Edit Mode I built a script that creates a bunch of curves. So far so good. Each curve (3d curve) is placed correctly a z=0 but the points of the curve are not at z=0. So I need to write a script that will put every point of the curve at z=0

I came up with this simple script after having select a curve :

bpy.ops.object.mode_set(mode='EDIT')
for p in bpy.context.object.data.splines.active.bezier_points:
    p.co.z = 0

But nothing happens, no crash but the point remain at their original Z

Thanks for the help

bpy.data.Curves don't currently have a secondary representation, like bpy.data.Mesh does. Meshes can be represented as a bmesh, and they can be manipulated by Python while the Mesh is in Edit Mode. Curves on the other hand (Spline, Bezier, NURBS) don't have an additional representation that lets you modify their data via script while in Edit Mode.

A solution is to switch the Edit Mode to Object Mode, then do your manipulation, then switch back to Edit Mode if you need.

in short

bpy.ops.object.mode_set(mode='OBJECT')
for p in bpy.context.object.data.splines.active.bezier_points:
    p.co.z = 0
bpy.ops.object.mode_set(mode='EDIT')

You won't notice it switching in and out of OBJECT mode, but the bezier_points will be updated, and it will be placed back in EDIT mode.

Ideasman42 states: "changes to bpy.context.object.data are not displayed, and they will be overwritten when exiting editmode."


How do I set up a 3rd person character with multiple animations in the Game Engine? I am using the Blender Game Engine to make a 3rd person game. I want the main character to have separate armatures/animations for the upper body and the lower body. For example I'd want my character to be able to jump, crouch, and run while shooting and aiming a gun. I have tried to make two armature modifiers but only my leg armature deforms my mesh.

Just use only one armature for your character.

Create your two different actions on the same armature. Make sure that no bone is used in different actions at the same time. (In your case: action one -> exclusively the upper body part, action two -> only bones of the lower half)

Last thing you have to do, is to select different Action-Layers for your actions in each action-actuator.